message_center_frame_view.h revision 7dbb3d5cf0c15f500944d211057644d6a2f37371
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_VIEWS_MESSAGE_CENTER_MESSAGE_CENTER_FRAME_VIEW_H_
6#define CHROME_BROWSER_UI_VIEWS_MESSAGE_CENTER_MESSAGE_CENTER_FRAME_VIEW_H_
7
8#include "ui/views/window/non_client_view.h"
9
10namespace views {
11class Label;
12class LabelButton;
13class BubbleBorder;
14}
15
16namespace message_center {
17
18// The non-client frame view of the message center widget.
19class MessageCenterFrameView : public views::NonClientFrameView {
20 public:
21  explicit MessageCenterFrameView();
22  virtual ~MessageCenterFrameView();
23
24  // NonClientFrameView overrides:
25  virtual gfx::Rect GetBoundsForClientView() const OVERRIDE;
26  virtual gfx::Rect GetWindowBoundsForClientBounds(
27      const gfx::Rect& client_bounds) const OVERRIDE;
28  virtual int NonClientHitTest(const gfx::Point& point) OVERRIDE;
29  virtual void GetWindowMask(const gfx::Size& size,
30                             gfx::Path* window_mask) OVERRIDE;
31  virtual void ResetWindowControls() OVERRIDE;
32  virtual void UpdateWindowIcon() OVERRIDE;
33  virtual void UpdateWindowTitle() OVERRIDE;
34
35  // View overrides:
36  virtual gfx::Insets GetInsets() const OVERRIDE;
37  virtual const char* GetClassName() const OVERRIDE;
38
39 private:
40  DISALLOW_COPY_AND_ASSIGN(MessageCenterFrameView);
41};
42
43}  // namespace message_center
44
45#endif  // CHROME_BROWSER_UI_VIEWS_MESSAGE_CENTER_MESSAGE_CENTER_FRAME_VIEW_H_
46