Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chrome / browser / chromeos / login / screens / device_disabled_screen_actor.h
blob7fdcc7dd41f0f9681aaa39a773a0b5bd0408ee34
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.
5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_ACTOR_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_ACTOR_H_
8 #include <string>
10 namespace chromeos {
12 // Interface between the device disabled screen and its representation.
13 class DeviceDisabledScreenActor {
14 public:
15 // Allows the representation to access information about the screen.
16 class Delegate {
17 public:
18 virtual ~Delegate() {
21 // Called when the actor is being destroyed. Note that if the Delegate is
22 // destroyed first, it must call SetDelegate(nullptr).
23 virtual void OnActorDestroyed(DeviceDisabledScreenActor* actor) = 0;
25 // Returns the domain that owns the device.
26 virtual const std::string& GetEnrollmentDomain() const = 0;
28 // Returns the message that should be shown to the user.
29 virtual const std::string& GetMessage() const = 0;
32 virtual ~DeviceDisabledScreenActor() {
35 virtual void Show() = 0;
36 virtual void Hide() = 0;
37 virtual void SetDelegate(Delegate* delegate) = 0;
38 virtual void UpdateMessage(const std::string& message) = 0;
41 } // namespace chromeos
43 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_DEVICE_DISABLED_SCREEN_ACTOR_H_