Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / infobars / simple_alert_infobar_delegate.cc
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/infobars/simple_alert_infobar_delegate.h"
6
7 #include "chrome/browser/infobars/infobar_service.h"
8 #include "components/infobars/core/infobar.h"
9 #include "third_party/skia/include/core/SkBitmap.h"
10
11 // static
12 void SimpleAlertInfoBarDelegate::Create(InfoBarService* infobar_service,
13                                         int icon_id,
14                                         const base::string16& message,
15                                         bool auto_expire) {
16   infobar_service->AddInfoBar(ConfirmInfoBarDelegate::CreateInfoBar(
17       scoped_ptr<ConfirmInfoBarDelegate>(
18           new SimpleAlertInfoBarDelegate(icon_id, message, auto_expire))));
19 }
20
21 SimpleAlertInfoBarDelegate::SimpleAlertInfoBarDelegate(
22     int icon_id,
23     const base::string16& message,
24     bool auto_expire)
25     : ConfirmInfoBarDelegate(),
26       icon_id_(icon_id),
27       message_(message),
28       auto_expire_(auto_expire) {
29 }
30
31 SimpleAlertInfoBarDelegate::~SimpleAlertInfoBarDelegate() {
32 }
33
34 int SimpleAlertInfoBarDelegate::GetIconID() const {
35   return icon_id_;
36 }
37
38 base::string16 SimpleAlertInfoBarDelegate::GetMessageText() const {
39   return message_;
40 }
41
42 int SimpleAlertInfoBarDelegate::GetButtons() const {
43   return BUTTON_NONE;
44 }
45
46 bool SimpleAlertInfoBarDelegate::ShouldExpireInternal(
47     const NavigationDetails& details) const {
48   return auto_expire_ && ConfirmInfoBarDelegate::ShouldExpireInternal(details);
49 }