Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(649)

Side by Side Diff: ash/system/settings/tray_settings.h

Issue 11415014: Stop using shell::GetInstance()->system_tray() in system tray items (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Modified CL to provide TrayItems and Tray*Views with parent pointers instead. Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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_SETTINGS_TRAY_SETTINGS_H_ 5 #ifndef ASH_SYSTEM_SETTINGS_TRAY_SETTINGS_H_
6 #define ASH_SYSTEM_SETTINGS_TRAY_SETTINGS_H_ 6 #define ASH_SYSTEM_SETTINGS_TRAY_SETTINGS_H_
7 7
8 #include "ash/system/power/power_status_observer.h" 8 #include "ash/system/power/power_status_observer.h"
9 #include "ash/system/tray/system_tray_item.h" 9 #include "ash/system/tray/system_tray_item.h"
10 10
11 namespace ash { 11 namespace ash {
12
13 class SystemTray;
14
12 namespace internal { 15 namespace internal {
13 16
14 namespace tray { 17 namespace tray {
15 class SettingsDefaultView; 18 class SettingsDefaultView;
16 } 19 }
17 20
18 class TraySettings : public SystemTrayItem, 21 class TraySettings : public SystemTrayItem,
19 public PowerStatusObserver { 22 public PowerStatusObserver {
20 public: 23 public:
21 TraySettings(); 24 explicit TraySettings(SystemTray* system_tray);
22 virtual ~TraySettings(); 25 virtual ~TraySettings();
23 26
24 private: 27 private:
25 // Overridden from SystemTrayItem 28 // Overridden from SystemTrayItem
26 virtual views::View* CreateTrayView(user::LoginStatus status) OVERRIDE; 29 virtual views::View* CreateTrayView(user::LoginStatus status) OVERRIDE;
27 virtual views::View* CreateDefaultView(user::LoginStatus status) OVERRIDE; 30 virtual views::View* CreateDefaultView(user::LoginStatus status) OVERRIDE;
28 virtual views::View* CreateDetailedView(user::LoginStatus status) OVERRIDE; 31 virtual views::View* CreateDetailedView(user::LoginStatus status) OVERRIDE;
29 virtual void DestroyTrayView() OVERRIDE; 32 virtual void DestroyTrayView() OVERRIDE;
30 virtual void DestroyDefaultView() OVERRIDE; 33 virtual void DestroyDefaultView() OVERRIDE;
31 virtual void DestroyDetailedView() OVERRIDE; 34 virtual void DestroyDetailedView() OVERRIDE;
32 virtual void UpdateAfterLoginStatusChange(user::LoginStatus status) OVERRIDE; 35 virtual void UpdateAfterLoginStatusChange(user::LoginStatus status) OVERRIDE;
33 36
34 // Overridden from PowerStatusObserver. 37 // Overridden from PowerStatusObserver.
35 virtual void OnPowerStatusChanged(const PowerSupplyStatus& status) OVERRIDE; 38 virtual void OnPowerStatusChanged(const PowerSupplyStatus& status) OVERRIDE;
36 39
37 tray::SettingsDefaultView* default_view_; 40 tray::SettingsDefaultView* default_view_;
38 41
39 DISALLOW_COPY_AND_ASSIGN(TraySettings); 42 DISALLOW_COPY_AND_ASSIGN(TraySettings);
40 }; 43 };
41 44
42 } // namespace internal 45 } // namespace internal
43 } // namespace ash 46 } // namespace ash
44 47
45 #endif // ASH_SYSTEM_SETTINGS_TRAY_SETTINGS_H_ 48 #endif // ASH_SYSTEM_SETTINGS_TRAY_SETTINGS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698