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 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_CHROMEOS_LOGIN_NETWORK_SCREEN_DELEGATE_H_ 6#define CHROME_BROWSER_CHROMEOS_LOGIN_NETWORK_SCREEN_DELEGATE_H_ 7#pragma once 8 9#include "chrome/browser/chromeos/cros/network_library.h" 10#include "views/controls/button/button.h" 11 12namespace gfx { 13class Size; 14} // namespace gfx 15 16namespace chromeos { 17 18class KeyboardSwitchMenu; 19class LanguageSwitchMenu; 20 21// Interface that NetworkScreen exposes to the NetworkSelectionView. 22class NetworkScreenDelegate : public views::ButtonListener, 23 public NetworkLibrary::NetworkManagerObserver { 24 public: 25 // Cleares all error notifications. 26 virtual void ClearErrors() = 0; 27 28 // True is MessageBubble with error message is shown. 29 virtual bool is_error_shown() = 0; 30 31 virtual LanguageSwitchMenu* language_switch_menu() = 0; 32 virtual KeyboardSwitchMenu* keyboard_switch_menu() = 0; 33 34 virtual gfx::Size size() const = 0; 35 36 protected: 37 virtual ~NetworkScreenDelegate() {} 38}; 39 40} // namespace chromeos 41 42#endif // CHROME_BROWSER_CHROMEOS_LOGIN_NETWORK_SCREEN_DELEGATE_H_ 43