1 // Copyright (c) 2013 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_WRONG_HWID_SCREEN_H_ 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_WRONG_HWID_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/wizard_screen.h" 13 #include "chrome/browser/chromeos/login/screens/wrong_hwid_screen_actor.h" 14 15 namespace chromeos { 16 17 // Representation independent class that controls screen showing warning about 18 // malformed HWID to users. 19 class WrongHWIDScreen : public WizardScreen, 20 public WrongHWIDScreenActor::Delegate { 21 public: 22 WrongHWIDScreen(ScreenObserver* observer, WrongHWIDScreenActor* actor); 23 virtual ~WrongHWIDScreen(); 24 25 // WizardScreen implementation: 26 virtual void PrepareToShow() OVERRIDE; 27 virtual void Show() OVERRIDE; 28 virtual void Hide() OVERRIDE; 29 virtual std::string GetName() const OVERRIDE; 30 31 // WrongHWIDScreenActor::Delegate implementation: 32 virtual void OnExit() OVERRIDE; 33 virtual void OnActorDestroyed(WrongHWIDScreenActor* actor) OVERRIDE; 34 35 private: 36 WrongHWIDScreenActor* actor_; 37 38 DISALLOW_COPY_AND_ASSIGN(WrongHWIDScreen); 39 }; 40 41 } // namespace chromeos 42 43 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_WRONG_HWID_SCREEN_H_ 44 45