OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef ASH_COMMON_SYSTEM_CHROMEOS_NETWORK_NETWORK_DETAILED_VIEW_H_ | |
6 #define ASH_COMMON_SYSTEM_CHROMEOS_NETWORK_NETWORK_DETAILED_VIEW_H_ | |
7 | |
8 #include "ash/common/system/tray/tray_details_view.h" | |
9 #include "chromeos/network/network_state_handler.h" | |
10 | |
11 namespace ash { | |
12 namespace tray { | |
13 | |
14 // Abstract base class for all NetworkDetailedView derived subclasses, | |
15 // which includes NetworkWifiDetailedView and NetworkStateListDetailedView. | |
16 class NetworkDetailedView : public TrayDetailsView { | |
17 public: | |
18 enum DetailedViewType { | |
19 LIST_VIEW, | |
20 STATE_LIST_VIEW, | |
21 WIFI_VIEW, | |
22 }; | |
23 | |
24 explicit NetworkDetailedView(SystemTrayItem* owner) | |
25 : TrayDetailsView(owner) {} | |
26 | |
27 virtual void Init() = 0; | |
28 | |
29 virtual DetailedViewType GetViewType() const = 0; | |
30 | |
31 // Called when the contents of the network list have changed or when any | |
32 // Manager properties (e.g. technology state) have changed. | |
33 // (Called only from TrayNetworkStateObserver). | |
34 virtual void Update() = 0; | |
35 | |
36 protected: | |
37 ~NetworkDetailedView() override {} | |
38 }; | |
39 | |
40 } // namespace tray | |
41 } // namespace ash | |
42 | |
43 #endif // ASH_COMMON_SYSTEM_CHROMEOS_NETWORK_NETWORK_DETAILED_VIEW_H_ | |
OLD | NEW |