OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_ICON_WIN_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_ICON_WIN_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_ICON_WIN_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_ICON_WIN_H_ |
7 | 7 |
8 #include <windows.h> | 8 #include <windows.h> |
9 #include <shellapi.h> | 9 #include <shellapi.h> |
10 | 10 |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
75 | 75 |
76 // Not owned. | 76 // Not owned. |
77 ui::MenuModel* menu_model_; | 77 ui::MenuModel* menu_model_; |
78 | 78 |
79 // Context menu associated with this icon (if any). | 79 // Context menu associated with this icon (if any). |
80 scoped_ptr<views::MenuRunner> menu_runner_; | 80 scoped_ptr<views::MenuRunner> menu_runner_; |
81 | 81 |
82 DISALLOW_COPY_AND_ASSIGN(StatusIconWin); | 82 DISALLOW_COPY_AND_ASSIGN(StatusIconWin); |
83 }; | 83 }; |
84 | 84 |
85 // Implements status notifications using Windows 8 metro style notifications. | |
86 class StatusIconMetro : public StatusIcon { | |
87 public: | |
88 // Constructor which provides this icon's unique ID and messaging window. | |
89 explicit StatusIconMetro(UINT id); | |
90 virtual ~StatusIconMetro(); | |
91 | |
92 // Overridden from StatusIcon: | |
93 virtual void SetImage(const gfx::ImageSkia& image) OVERRIDE; | |
94 virtual void SetPressedImage(const gfx::ImageSkia& image) OVERRIDE; | |
95 virtual void SetToolTip(const base::string16& tool_tip) OVERRIDE; | |
96 virtual void DisplayBalloon(const gfx::ImageSkia& icon, | |
97 const base::string16& title, | |
98 const base::string16& contents) OVERRIDE; | |
99 protected: | |
100 virtual void UpdatePlatformContextMenu( | |
101 StatusIconMenuModel* menu) OVERRIDE; | |
102 | |
103 private: | |
104 base::string16 tool_tip_; | |
105 const UINT id_; | |
106 | |
107 DISALLOW_COPY_AND_ASSIGN(StatusIconMetro); | |
108 }; | |
109 | |
110 #endif // CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_ICON_WIN_H_ | 85 #endif // CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_ICON_WIN_H_ |
OLD | NEW |