autofill_cc_infobar_delegate.h revision dc0f95d653279beabeb9817299e2902918ba123e
172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// Use of this source code is governed by a BSD-style license that can be 3c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// found in the LICENSE file. 4c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 5c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#ifndef CHROME_BROWSER_AUTOFILL_AUTOFILL_CC_INFOBAR_DELEGATE_H_ 6c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#define CHROME_BROWSER_AUTOFILL_AUTOFILL_CC_INFOBAR_DELEGATE_H_ 73345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#pragma once 8c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 93345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#include "base/string16.h" 10dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "chrome/browser/tab_contents/confirm_infobar_delegate.h" 11c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 12dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenclass AutofillManager; 13c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 14c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// An InfoBar delegate that enables the user to allow or deny storing credit 15c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// card information gathered from a form submission. 16c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochclass AutoFillCCInfoBarDelegate : public ConfirmInfoBarDelegate { 17c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch public: 18dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen AutoFillCCInfoBarDelegate(TabContents* tab_contents, AutofillManager* host); 1972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen 2072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen private: 21c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch virtual ~AutoFillCCInfoBarDelegate(); 22c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 2372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen // ConfirmInfoBarDelegate: 24c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch virtual bool ShouldExpire( 2572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen const NavigationController::LoadCommittedDetails& details) const; 26c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch virtual void InfoBarClosed(); 27c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch virtual SkBitmap* GetIcon() const; 2872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen virtual Type GetInfoBarType() const; 2972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen virtual string16 GetMessageText() const; 3072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen virtual string16 GetButtonLabel(InfoBarButton button) const; 31c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch virtual bool Accept(); 32c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch virtual bool Cancel(); 333345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick virtual string16 GetLinkText(); 34c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch virtual bool LinkClicked(WindowOpenDisposition disposition); 35c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 36dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // The AutofillManager that initiated this InfoBar. 37dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen AutofillManager* host_; 38c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 39c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch DISALLOW_COPY_AND_ASSIGN(AutoFillCCInfoBarDelegate); 40c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch}; 41c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 42c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#endif // CHROME_BROWSER_AUTOFILL_AUTOFILL_CC_INFOBAR_DELEGATE_H_ 43