Chromium Code Reviews| Index: ui/chromeos/network/network_list_delegate.h |
| diff --git a/ui/chromeos/network/network_list_delegate.h b/ui/chromeos/network/network_list_delegate.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..fc201f2cce6d63223c3345f03792649c21eb75ff |
| --- /dev/null |
| +++ b/ui/chromeos/network/network_list_delegate.h |
| @@ -0,0 +1,57 @@ |
| +// Copyright 2014 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef UI_CHROMEOS_NETWORK_NETWORK_LIST_DELEGATE_H_ |
| +#define UI_CHROMEOS_NETWORK_NETWORK_LIST_DELEGATE_H_ |
| + |
| +#include "ui/chromeos/ui_chromeos_export.h" |
| + |
| +namespace chromeos { |
| +class NetworkState; |
| +} |
| + |
| +namespace views { |
| +class Label; |
| +class View; |
| +} |
| + |
| +namespace ui { |
| + |
| +struct NetworkInfo; |
| + |
| +class UI_CHROMEOS_EXPORT NetworkListDelegate { |
| + public: |
| + virtual ~NetworkListDelegate() {} |
| + |
| + // Returns true if |network| should not be added to the list. |
| + virtual bool ShouldSkipNetwork(const chromeos::NetworkState& network) = 0; |
| + |
| + // Creates and returns a View with the information in |info|. |
| + virtual views::View* CreateViewForNetwork(const NetworkInfo& info) = 0; |
| + |
| + // Returns true if |view| is currently under the cursor. Note that |view| is |
| + // guaranteed to be a View returned from |CreateViewForNetwork()|. |
| + virtual bool IsViewHovered(views::View* view) = 0; |
| + |
| + // Returns whether only VPN networks should be listed. |
| + virtual bool ShouldListOnlyVPN() const = 0; |
| + |
| + // Updates |view| with the information in |info|. Note that |view| is |
| + // guaranteed to be a View returned from |CreateViewForNetwork()|. |
| + virtual void UpdateViewForNetwork(views::View* view, |
| + const NetworkInfo& info) = 0; |
| + |
| + // Returns whether any View was updated that needs a relayout of the list. |
| + virtual bool OnNetworkListIsEmpty() = 0; |
|
stevenjb
2014/07/24 19:13:54
The purpose of this is unclear and appears to be u
sadrul
2014/07/24 20:38:45
Good catch. Removed.
|
| + |
| + // Creates a Label to be displayed in the list to present some information |
| + // (e.g. unavailability of network etc.). |
| + virtual views::Label* CreateInfoLabel() = 0; |
| + |
| + virtual void RelayoutScrollList() = 0; |
| +}; |
| + |
| +} // namespace ui |
| + |
| +#endif // UI_CHROMEOS_NETWORK_NETWORK_LIST_DELEGATE_H_ |