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 CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_NETWORK_ERROR_VIEW_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_NETWORK_ERROR_VIEW_H_
8 #include "base/strings/string16.h"
9 #include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h"
13 class NetworkErrorModel
;
15 // Interface for dependency injection between ErrorScreen and its actual
16 // representation. Owned by ErrorScreen.
17 class NetworkErrorView
{
19 virtual ~NetworkErrorView() {}
21 // Prepare the contents to showing.
22 virtual void PrepareToShow() = 0;
24 // Shows the contents of the screen.
25 virtual void Show() = 0;
27 // Hides the contents of the screen.
28 virtual void Hide() = 0;
30 // Binds |model| to the view.
31 virtual void Bind(NetworkErrorModel
& model
) = 0;
33 // Unbinds model from the view.
34 virtual void Unbind() = 0;
36 // Switches to |screen|.
37 virtual void ShowScreen(OobeUI::Screen screen
) = 0;
40 } // namespace chromeos
42 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_NETWORK_ERROR_VIEW_H_