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.
5 #ifndef ASH_SYSTEM_CHROMEOS_NETWORK_TRAY_NETWORK_STATE_OBSERVER_H
6 #define ASH_SYSTEM_CHROMEOS_NETWORK_TRAY_NETWORK_STATE_OBSERVER_H
10 #include "base/compiler_specific.h"
11 #include "chromeos/network/network_state_handler_observer.h"
15 class TrayNetworkStateObserver : public chromeos::NetworkStateHandlerObserver {
19 // Called when the network state may have changed. If |list_changed| is
20 // true then the list of networks may have changed.
21 virtual void NetworkStateChanged(bool list_changed) = 0;
23 // Called when the properties for |network| may have been updated.
24 virtual void NetworkServiceChanged(
25 const chromeos::NetworkState* network) = 0;
28 virtual ~Delegate() {}
31 explicit TrayNetworkStateObserver(Delegate* delegate);
33 virtual ~TrayNetworkStateObserver();
35 // NetworkStateHandlerObserver overrides.
36 virtual void NetworkListChanged() override;
37 virtual void DeviceListChanged() override;
38 virtual void DefaultNetworkChanged(
39 const chromeos::NetworkState* network) override;
40 virtual void NetworkConnectionStateChanged(
41 const chromeos::NetworkState* network) override;
42 virtual void NetworkPropertiesUpdated(
43 const chromeos::NetworkState* network) override;
48 DISALLOW_COPY_AND_ASSIGN(TrayNetworkStateObserver);
53 #endif // ASH_SYSTEM_CHROMEOS_NETWORK_TRAY_NETWORK_STATE_OBSERVER_H