1d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
2d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
3d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// found in the LICENSE file.
4d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)
5d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)package org.chromium.chrome.browser.infobar;
6d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)
7d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)
8d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)/**
9d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) * A simple infobar that contains a message and a close icon on the right side.
10d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) * This is used only in the context of Java code and is not associated with any native
11d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) * InfoBarDelegate.
12116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch *
13116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch * TODO(newt): merge this into InfoBar.java
14d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) */
15d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)public class MessageInfoBar extends InfoBar {
16d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)
17d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    /**
18116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch     * Creates an infobar with a message and a close button.
19d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)     * @param title the text displayed in the infobar
20d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)     */
21116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch    public MessageInfoBar(CharSequence title) {
22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch        this(null, 0, title);
23d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    }
24d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)
25d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    /**
26116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch     * Creates an infobar with an icon, a message and a close button.
27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch     * @param listener A listener to be notified when the infobar is dismissed, or null.
28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch     * @param iconResourceId The icon to display in the infobar, or 0 if no icon should be shown.
29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch     * @param title The text to display in the infobar.
30d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)     */
31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch    public MessageInfoBar(InfoBarListeners.Dismiss listener, int iconResourceId,
32d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)            CharSequence title) {
33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch        super(listener, iconResourceId, title);
34d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    }
358bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)
368bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)    @Override
378bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)    public void onCloseButtonClicked() {
388bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)        super.dismissJavaOnlyInfoBar();
398bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)    }
40d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)}
41