1// Copyright (c) 2011 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#ifndef CHROME_BROWSER_UI_COLLECTED_COOKIES_INFOBAR_DELEGATE_H_
6#define CHROME_BROWSER_UI_COLLECTED_COOKIES_INFOBAR_DELEGATE_H_
7
8#include "components/infobars/core/confirm_infobar_delegate.h"
9
10class InfoBarService;
11
12// This class configures an infobar shown when the collected cookies dialog
13// is closed and the settings for one or more cookies have been changed.  The
14// user is shown a message indicating that a reload of the page is
15// required for the changes to take effect, and presented a button to perform
16// the reload right from the infobar.
17class CollectedCookiesInfoBarDelegate : public ConfirmInfoBarDelegate {
18 public:
19  // Creates a collected cookies infobar and delegate and adds the infobar to
20  // |infobar_service|.
21  static void Create(InfoBarService* infobar_service);
22
23 private:
24  CollectedCookiesInfoBarDelegate();
25  virtual ~CollectedCookiesInfoBarDelegate();
26
27  // ConfirmInfoBarDelegate:
28  virtual int GetIconID() const OVERRIDE;
29  virtual Type GetInfoBarType() const OVERRIDE;
30  virtual base::string16 GetMessageText() const OVERRIDE;
31  virtual int GetButtons() const OVERRIDE;
32  virtual base::string16 GetButtonLabel(InfoBarButton button) const OVERRIDE;
33  virtual bool Accept() OVERRIDE;
34
35  DISALLOW_COPY_AND_ASSIGN(CollectedCookiesInfoBarDelegate);
36};
37
38#endif  // CHROME_BROWSER_UI_COLLECTED_COOKIES_INFOBAR_DELEGATE_H_
39