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. 4 5#ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_RESET_SCREEN_H_ 6#define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_RESET_SCREEN_H_ 7 8#include <string> 9 10#include "base/basictypes.h" 11#include "base/compiler_specific.h" 12#include "chrome/browser/chromeos/login/screens/reset_screen_actor.h" 13#include "chrome/browser/chromeos/login/screens/wizard_screen.h" 14 15namespace chromeos { 16 17// Representation independent class that controls screen showing reset to users. 18class ResetScreen : public WizardScreen, 19 public ResetScreenActor::Delegate { 20 public: 21 ResetScreen(ScreenObserver* observer, ResetScreenActor* actor); 22 virtual ~ResetScreen(); 23 24 // WizardScreen implementation: 25 virtual void PrepareToShow() OVERRIDE; 26 virtual void Show() OVERRIDE; 27 virtual void Hide() OVERRIDE; 28 virtual std::string GetName() const OVERRIDE; 29 30 // ResetScreenActor::Delegate implementation: 31 virtual void OnExit() OVERRIDE; 32 virtual void OnActorDestroyed(ResetScreenActor* actor) OVERRIDE; 33 34 private: 35 ResetScreenActor* actor_; 36 37 DISALLOW_COPY_AND_ASSIGN(ResetScreen); 38}; 39 40} // namespace chromeos 41 42#endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_RESET_SCREEN_H_ 43