network_feature_pod_controller_legacy.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // Copyright 2018 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. #ifndef ASH_SYSTEM_NETWORK_NETWORK_FEATURE_POD_CONTROLLER_LEGACY_H_
  5. #define ASH_SYSTEM_NETWORK_NETWORK_FEATURE_POD_CONTROLLER_LEGACY_H_
  6. #include "ash/system/unified/feature_pod_controller_base.h"
  7. namespace ash {
  8. class NetworkFeaturePodButtonLegacy;
  9. class UnifiedSystemTrayController;
  10. // Controller of network feature pod button.
  11. class NetworkFeaturePodControllerLegacy : public FeaturePodControllerBase {
  12. public:
  13. NetworkFeaturePodControllerLegacy(
  14. UnifiedSystemTrayController* tray_controller);
  15. NetworkFeaturePodControllerLegacy(const NetworkFeaturePodControllerLegacy&) =
  16. delete;
  17. NetworkFeaturePodControllerLegacy& operator=(
  18. const NetworkFeaturePodControllerLegacy&) = delete;
  19. ~NetworkFeaturePodControllerLegacy() override;
  20. // FeaturePodControllerBase:
  21. FeaturePodButton* CreateButton() override;
  22. void OnIconPressed() override;
  23. void OnLabelPressed() override;
  24. SystemTrayItemUmaType GetUmaType() const override;
  25. private:
  26. void UpdateButton();
  27. // Unowned.
  28. UnifiedSystemTrayController* tray_controller_;
  29. NetworkFeaturePodButtonLegacy* button_ = nullptr;
  30. };
  31. } // namespace ash
  32. #endif // ASH_SYSTEM_NETWORK_NETWORK_FEATURE_POD_CONTROLLER_LEGACY_H_