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_VIEWS_INFOBARS_INFOBAR_CONTAINER_VIEW_H_
6#define CHROME_BROWSER_UI_VIEWS_INFOBARS_INFOBAR_CONTAINER_VIEW_H_
7#pragma once
8
9#include "chrome/browser/ui/views/accessible_pane_view.h"
10#include "chrome/browser/ui/views/infobars/infobar_container.h"
11
12// The views-specific implementation of InfoBarContainer.
13class InfoBarContainerView : public AccessiblePaneView,
14                             public InfoBarContainer {
15 public:
16  explicit InfoBarContainerView(Delegate* delegate);
17  virtual ~InfoBarContainerView();
18
19 private:
20  // AccessiblePaneView:
21  virtual gfx::Size GetPreferredSize() OVERRIDE;
22  virtual void Layout() OVERRIDE;
23  virtual void GetAccessibleState(ui::AccessibleViewState* state) OVERRIDE;
24
25  // InfobarContainer:
26  virtual void PlatformSpecificAddInfoBar(InfoBar* infobar) OVERRIDE;
27  virtual void PlatformSpecificRemoveInfoBar(InfoBar* infobar) OVERRIDE;
28
29  DISALLOW_COPY_AND_ASSIGN(InfoBarContainerView);
30};
31
32#endif  // CHROME_BROWSER_UI_VIEWS_INFOBARS_INFOBAR_CONTAINER_VIEW_H_
33