1// Copyright 2013 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_STARTUP_GOOGLE_API_KEYS_INFOBAR_DELEGATE_H_
6#define CHROME_BROWSER_UI_STARTUP_GOOGLE_API_KEYS_INFOBAR_DELEGATE_H_
7
8#include "base/compiler_specific.h"
9#include "base/strings/string16.h"
10#include "components/infobars/core/confirm_infobar_delegate.h"
11#include "url/gurl.h"
12
13class InfoBarService;
14
15// An infobar that is run with a string and a "Learn More" link.
16class GoogleApiKeysInfoBarDelegate : public ConfirmInfoBarDelegate {
17 public:
18  // If Google API keys are missing, creates a missing Google API Keys infobar
19  // and delegate and adds the infobar to |infobar_service|.
20  static void Create(InfoBarService* infobar_service);
21
22 private:
23  GoogleApiKeysInfoBarDelegate();
24  virtual ~GoogleApiKeysInfoBarDelegate();
25
26  virtual base::string16 GetMessageText() const OVERRIDE;
27  virtual int GetButtons() const OVERRIDE;
28  virtual base::string16 GetLinkText() const OVERRIDE;
29  virtual bool LinkClicked(WindowOpenDisposition disposition) OVERRIDE;
30
31  DISALLOW_COPY_AND_ASSIGN(GoogleApiKeysInfoBarDelegate);
32};
33
34#endif  // CHROME_BROWSER_UI_STARTUP_GOOGLE_API_KEYS_INFOBAR_DELEGATE_H_
35