| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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_CHROMEOS_STATUS_NETWORK_MENU_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_STATUS_NETWORK_MENU_H_ |
| 6 #define CHROME_BROWSER_CHROMEOS_STATUS_NETWORK_MENU_H_ | 6 #define CHROME_BROWSER_CHROMEOS_STATUS_NETWORK_MENU_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 111 // Cancels the active menu. | 111 // Cancels the active menu. |
| 112 void CancelMenu(); | 112 void CancelMenu(); |
| 113 | 113 |
| 114 // Returns the Icon for a network strength between 0 and 100. | 114 // Returns the Icon for a network strength between 0 and 100. |
| 115 // |black| is used to specify whether to return a black icon for display | 115 // |black| is used to specify whether to return a black icon for display |
| 116 // on a light background or a white icon for display on a dark background. | 116 // on a light background or a white icon for display on a dark background. |
| 117 static SkBitmap IconForNetworkStrength(int strength, bool black); | 117 static SkBitmap IconForNetworkStrength(int strength, bool black); |
| 118 | 118 |
| 119 // Returns the Icon for a network strength for CellularNetwork |cellular|. | 119 // Returns the Icon for a network strength for CellularNetwork |cellular|. |
| 120 // This returns different colored bars depending on cellular data left. | 120 // This returns different colored bars depending on cellular data left. |
| 121 static SkBitmap IconForNetworkStrength(CellularNetwork cellular); | 121 static SkBitmap IconForNetworkStrength(const CellularNetwork* cellular); |
| 122 | 122 |
| 123 // This method will convert the |icon| bitmap to the correct size for display. | 123 // This method will convert the |icon| bitmap to the correct size for display. |
| 124 // If the |badge| icon is not empty, it will draw that on top of the icon. | 124 // If the |badge| icon is not empty, it will draw that on top of the icon. |
| 125 static SkBitmap IconForDisplay(SkBitmap icon, SkBitmap badge); | 125 static SkBitmap IconForDisplay(SkBitmap icon, SkBitmap badge); |
| 126 | 126 |
| 127 protected: | 127 protected: |
| 128 virtual bool IsBrowserMode() const = 0; | 128 virtual bool IsBrowserMode() const = 0; |
| 129 virtual gfx::NativeWindow GetNativeWindow() const = 0; | 129 virtual gfx::NativeWindow GetNativeWindow() const = 0; |
| 130 virtual void OpenButtonOptions() const = 0; | 130 virtual void OpenButtonOptions() const = 0; |
| 131 virtual bool ShouldOpenButtonOptions() const = 0; | 131 virtual bool ShouldOpenButtonOptions() const = 0; |
| 132 | 132 |
| 133 // Notify subclasses that connection to |network| was initiated. | 133 // Notify subclasses that connection to |network| was initiated. |
| 134 virtual void OnConnectNetwork(const Network& network, | 134 virtual void OnConnectNetwork(const Network* network, |
| 135 SkBitmap selected_icon_) {} | 135 SkBitmap selected_icon_) {} |
| 136 // Update the menu (e.g. when the network list or status has changed). | 136 // Update the menu (e.g. when the network list or status has changed). |
| 137 void UpdateMenu(); | 137 void UpdateMenu(); |
| 138 | 138 |
| 139 private: | 139 private: |
| 140 enum MenuItemFlags { | 140 enum MenuItemFlags { |
| 141 FLAG_DISABLED = 1 << 0, | 141 FLAG_DISABLED = 1 << 0, |
| 142 FLAG_TOGGLE_ETHERNET = 1 << 1, | 142 FLAG_TOGGLE_ETHERNET = 1 << 1, |
| 143 FLAG_TOGGLE_WIFI = 1 << 2, | 143 FLAG_TOGGLE_WIFI = 1 << 2, |
| 144 FLAG_TOGGLE_CELLULAR = 1 << 3, | 144 FLAG_TOGGLE_CELLULAR = 1 << 3, |
| (...skipping 26 matching lines...) Expand all Loading... |
| 171 }; | 171 }; |
| 172 typedef std::vector<MenuItem> MenuItemVector; | 172 typedef std::vector<MenuItem> MenuItemVector; |
| 173 | 173 |
| 174 // views::ViewMenuDelegate implementation. | 174 // views::ViewMenuDelegate implementation. |
| 175 virtual void RunMenu(views::View* source, const gfx::Point& pt); | 175 virtual void RunMenu(views::View* source, const gfx::Point& pt); |
| 176 | 176 |
| 177 // Called by RunMenu to initialize our list of menu items. | 177 // Called by RunMenu to initialize our list of menu items. |
| 178 void InitMenuItems(); | 178 void InitMenuItems(); |
| 179 | 179 |
| 180 // Shows network details in DOM UI options window. | 180 // Shows network details in DOM UI options window. |
| 181 void ShowTabbedNetworkSettings(const Network& network) const; | 181 void ShowTabbedNetworkSettings(const Network* network) const; |
| 182 | 182 |
| 183 // Show a NetworkConfigView modal dialog instance. | 183 // Show a NetworkConfigView modal dialog instance. |
| 184 // TODO(stevenjb): deprecate this once all of the UI is embedded in the menu. | 184 // TODO(stevenjb): deprecate this once all of the UI is embedded in the menu. |
| 185 void ShowNetworkConfigView(NetworkConfigView* view, bool focus_login) const; | 185 void ShowNetworkConfigView(NetworkConfigView* view, bool focus_login) const; |
| 186 | 186 |
| 187 // Wrappers for the ShowNetworkConfigView / ShowTabbedNetworkSettings. | 187 // Wrappers for the ShowNetworkConfigView / ShowTabbedNetworkSettings. |
| 188 void ShowWifi(const WifiNetwork& wifi, bool focus_login) const; | 188 void ShowWifi(const WifiNetwork* wifi, bool focus_login) const; |
| 189 void ShowCellular(const CellularNetwork& cellular, bool focus_login) const; | 189 void ShowCellular(const CellularNetwork* cellular, bool focus_login) const; |
| 190 void ActivateCellular(const CellularNetwork& cellular) const; | 190 void ActivateCellular(const CellularNetwork* cellular) const; |
| 191 void ShowEthernet(const EthernetNetwork& ethernet) const; | 191 void ShowEthernet(const EthernetNetwork* ethernet) const; |
| 192 void ShowOther() const; | 192 void ShowOther() const; |
| 193 | 193 |
| 194 // Set to true if we are currently refreshing the menu. | 194 // Set to true if we are currently refreshing the menu. |
| 195 bool refreshing_menu_; | 195 bool refreshing_menu_; |
| 196 | 196 |
| 197 // The number of wifi strength images. | 197 // The number of wifi strength images. |
| 198 static const int kNumWifiImages; | 198 static const int kNumWifiImages; |
| 199 | 199 |
| 200 // Bars image resources. | 200 // Bars image resources. |
| 201 static const int kBarsImages[]; | 201 static const int kBarsImages[]; |
| (...skipping 12 matching lines...) Expand all Loading... |
| 214 | 214 |
| 215 // If true, call into the settings UI for network configuration dialogs. | 215 // If true, call into the settings UI for network configuration dialogs. |
| 216 bool use_settings_ui_; | 216 bool use_settings_ui_; |
| 217 | 217 |
| 218 DISALLOW_COPY_AND_ASSIGN(NetworkMenu); | 218 DISALLOW_COPY_AND_ASSIGN(NetworkMenu); |
| 219 }; | 219 }; |
| 220 | 220 |
| 221 } // namespace chromeos | 221 } // namespace chromeos |
| 222 | 222 |
| 223 #endif // CHROME_BROWSER_CHROMEOS_STATUS_NETWORK_MENU_H_ | 223 #endif // CHROME_BROWSER_CHROMEOS_STATUS_NETWORK_MENU_H_ |
| OLD | NEW |