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 ASH_SYSTEM_TRAY_TRAY_IMAGE_ITEM_H_ | 5 #ifndef ASH_SYSTEM_TRAY_TRAY_IMAGE_ITEM_H_ |
6 #define ASH_SYSTEM_TRAY_TRAY_IMAGE_ITEM_H_ | 6 #define ASH_SYSTEM_TRAY_TRAY_IMAGE_ITEM_H_ |
7 | 7 |
8 #include "ash/system/tray/system_tray_item.h" | 8 #include "ash/system/tray/system_tray_item.h" |
9 | 9 |
10 namespace views { | 10 namespace views { |
11 class ImageView; | 11 class ImageView; |
12 } | 12 } |
13 | 13 |
14 namespace ash { | 14 namespace ash { |
15 class TrayItemView; | 15 class TrayItemView; |
16 | 16 |
17 class TrayImageItem : public SystemTrayItem { | 17 class TrayImageItem : public SystemTrayItem { |
18 public: | 18 public: |
19 TrayImageItem(SystemTray* system_tray, int resource_id); | 19 TrayImageItem(SystemTray* system_tray, int resource_id); |
20 virtual ~TrayImageItem(); | 20 ~TrayImageItem() override; |
21 | 21 |
22 views::View* tray_view(); | 22 views::View* tray_view(); |
23 | 23 |
24 // Changes the icon of the tray-view to the specified resource. | 24 // Changes the icon of the tray-view to the specified resource. |
25 void SetImageFromResourceId(int resource_id); | 25 void SetImageFromResourceId(int resource_id); |
26 | 26 |
27 protected: | 27 protected: |
28 virtual bool GetInitialVisibility() = 0; | 28 virtual bool GetInitialVisibility() = 0; |
29 | 29 |
30 // Overridden from SystemTrayItem. | 30 // Overridden from SystemTrayItem. |
31 virtual views::View* CreateTrayView(user::LoginStatus status) override; | 31 views::View* CreateTrayView(user::LoginStatus status) override; |
32 virtual views::View* CreateDefaultView(user::LoginStatus status) override; | 32 views::View* CreateDefaultView(user::LoginStatus status) override; |
33 virtual views::View* CreateDetailedView(user::LoginStatus status) override; | 33 views::View* CreateDetailedView(user::LoginStatus status) override; |
34 virtual void DestroyTrayView() override; | 34 void DestroyTrayView() override; |
35 virtual void DestroyDefaultView() override; | 35 void DestroyDefaultView() override; |
36 virtual void DestroyDetailedView() override; | 36 void DestroyDetailedView() override; |
37 virtual void UpdateAfterLoginStatusChange(user::LoginStatus status) override; | 37 void UpdateAfterLoginStatusChange(user::LoginStatus status) override; |
38 virtual void UpdateAfterShelfAlignmentChange( | 38 void UpdateAfterShelfAlignmentChange(ShelfAlignment alignment) override; |
39 ShelfAlignment alignment) override; | |
40 | 39 |
41 private: | 40 private: |
42 // Set the alignment of the image depending on the shelf alignment. | 41 // Set the alignment of the image depending on the shelf alignment. |
43 void SetItemAlignment(ShelfAlignment alignment); | 42 void SetItemAlignment(ShelfAlignment alignment); |
44 | 43 |
45 int resource_id_; | 44 int resource_id_; |
46 TrayItemView* tray_view_; | 45 TrayItemView* tray_view_; |
47 | 46 |
48 DISALLOW_COPY_AND_ASSIGN(TrayImageItem); | 47 DISALLOW_COPY_AND_ASSIGN(TrayImageItem); |
49 }; | 48 }; |
50 | 49 |
51 } // namespace ash | 50 } // namespace ash |
52 | 51 |
53 #endif // ASH_SYSTEM_TRAY_TRAY_IMAGE_ITEM_H_ | 52 #endif // ASH_SYSTEM_TRAY_TRAY_IMAGE_ITEM_H_ |
OLD | NEW |