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 } 50