1 // Copyright 2014 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_ENROLLMENT_AUTO_ENROLLMENT_CHECK_SCREEN_ACTOR_H_ 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_ENROLLMENT_AUTO_ENROLLMENT_CHECK_SCREEN_ACTOR_H_ 7 8 namespace chromeos { 9 10 // Interface between auto-enrollment check screen and its representation. 11 // Note, do not forget to call OnActorDestroyed in the dtor. 12 class AutoEnrollmentCheckScreenActor { 13 public: 14 // Allows us to get info from auto-enrollment check screen that we need. 15 class Delegate { 16 public: ~Delegate()17 virtual ~Delegate() {} 18 19 // Called when screen is exited. 20 virtual void OnExit() = 0; 21 22 // This method is called, when actor is being destroyed. Note, if Delegate 23 // is destroyed earlier then it has to call SetDelegate(NULL). 24 virtual void OnActorDestroyed(AutoEnrollmentCheckScreenActor* actor) = 0; 25 }; 26 ~AutoEnrollmentCheckScreenActor()27 virtual ~AutoEnrollmentCheckScreenActor() {} 28 29 virtual void Show() = 0; 30 virtual void SetDelegate(Delegate* delegate) = 0; 31 }; 32 33 } // namespace chromeos 34 35 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_ENROLLMENT_AUTO_ENROLLMENT_CHECK_SCREEN_ACTOR_H_ 36