1dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// Use of this source code is governed by a BSD-style license that can be 3dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// found in the LICENSE file. 4dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 5dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#ifndef CHROME_BROWSER_UI_COCOA_INFOBARS_MOCK_CONFIRM_INFOBAR_DELEGATE_H_ 6dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#define CHROME_BROWSER_UI_COCOA_INFOBARS_MOCK_CONFIRM_INFOBAR_DELEGATE_H_ 7dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#pragma once 8dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 9dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "base/basictypes.h" 10dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "base/compiler_specific.h" 11dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "base/string16.h" 12dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "chrome/browser/tab_contents/confirm_infobar_delegate.h" 13dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 14dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenclass SkBitmap; 15dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 16dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenclass MockConfirmInfoBarDelegate : public ConfirmInfoBarDelegate { 17dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen public: 18dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen MockConfirmInfoBarDelegate(); 19dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual ~MockConfirmInfoBarDelegate(); 20dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 21dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen void set_dont_close_on_action() { closes_on_action_ = false; } 22dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool icon_accessed() const { return icon_accessed_; } 23dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool message_text_accessed() const { return message_text_accessed_; } 24dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool link_text_accessed() const { return link_text_accessed_; } 25dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool ok_clicked() const { return ok_clicked_; } 26dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool cancel_clicked() const { return cancel_clicked_; } 27dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool link_clicked() const { return link_clicked_; } 28dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool closed() const { return closed_; } 29dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 30dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen static const char kMessage[]; 31dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 32dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen private: 33dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // ConfirmInfoBarDelegate: 34dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual void InfoBarClosed() OVERRIDE; 35dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual SkBitmap* GetIcon() const OVERRIDE; 36dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual string16 GetMessageText() const OVERRIDE; 37dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual string16 GetButtonLabel(InfoBarButton button) const OVERRIDE; 38dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual bool Accept() OVERRIDE; 39dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual bool Cancel() OVERRIDE; 40dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual string16 GetLinkText() OVERRIDE; 41dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual bool LinkClicked(WindowOpenDisposition disposition) OVERRIDE; 42dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 43dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // Determines whether the infobar closes when an action is taken or not. 44dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool closes_on_action_; 45dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen mutable bool icon_accessed_; 46dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen mutable bool message_text_accessed_; 47dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen mutable bool link_text_accessed_; 48dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool ok_clicked_; 49dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool cancel_clicked_; 50dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool link_clicked_; 51dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen bool closed_; 52dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 53dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen DISALLOW_COPY_AND_ASSIGN(MockConfirmInfoBarDelegate); 54dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen}; 55dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 56dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#endif // CHROME_BROWSER_UI_COCOA_INFOBARS_MOCK_CONFIRM_INFOBAR_DELEGATE_H_ 57