Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(139)

Side by Side Diff: chromeos/dbus/system_clock_client.h

Issue 247663003: Date and Time dialog for when the clock isn't synced. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase, single quotes in browsertest js Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chromeos/dbus/fake_system_clock_client.cc ('k') | chromeos/dbus/system_clock_client.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROMEOS_DBUS_SYSTEM_CLOCK_CLIENT_H_ 5 #ifndef CHROMEOS_DBUS_SYSTEM_CLOCK_CLIENT_H_
6 #define CHROMEOS_DBUS_SYSTEM_CLOCK_CLIENT_H_ 6 #define CHROMEOS_DBUS_SYSTEM_CLOCK_CLIENT_H_
7 7
8 #include "base/observer_list.h" 8 #include "base/callback.h"
9 #include "chromeos/chromeos_export.h" 9 #include "chromeos/chromeos_export.h"
10 #include "chromeos/dbus/dbus_client.h" 10 #include "chromeos/dbus/dbus_client.h"
11 11
12 namespace chromeos { 12 namespace chromeos {
13 13
14 // SystemClockClient is used to communicate with the system clock. 14 // SystemClockClient is used to communicate with the system clock.
15 class CHROMEOS_EXPORT SystemClockClient : public DBusClient { 15 class CHROMEOS_EXPORT SystemClockClient : public DBusClient {
16 public: 16 public:
17 // Interface for observing changes from the system clock. 17 // Interface for observing changes from the system clock.
18 class Observer { 18 class Observer {
19 public: 19 public:
20 // Called when the status is updated. 20 // Called when the status is updated.
21 virtual void SystemClockUpdated() {} 21 virtual void SystemClockUpdated();
22
23 // Called when the system clock has become settable or unsettable, e.g.,
24 // when the clock syncs with or goes out of sync with the network.
25 virtual void SystemClockCanSetTimeChanged(bool can_set_time);
26
22 protected: 27 protected:
23 virtual ~Observer() {} 28 virtual ~Observer() {}
24 }; 29 };
25 30
26 virtual ~SystemClockClient(); 31 virtual ~SystemClockClient();
27 32
28 // Adds and removes the observer. 33 // Adds the given observer.
29 virtual void AddObserver(Observer* observer) = 0; 34 virtual void AddObserver(Observer* observer) = 0;
35 // Removes the given observer if this object has the observer.
30 virtual void RemoveObserver(Observer* observer) = 0; 36 virtual void RemoveObserver(Observer* observer) = 0;
31 // Returns true if this object has the given observer. 37 // Returns true if this object has the given observer.
32 virtual bool HasObserver(Observer* observer) = 0; 38 virtual bool HasObserver(Observer* observer) = 0;
33 39
40 // Sets the system clock.
41 virtual void SetTime(int64 time_in_seconds) = 0;
42
43 // Checks if the system time can be set.
44 virtual bool CanSetTime() = 0;
45
34 // Creates the instance. 46 // Creates the instance.
35 static SystemClockClient* Create(); 47 static SystemClockClient* Create();
36 48
37 protected: 49 protected:
38 // Create() should be used instead. 50 // Create() should be used instead.
39 SystemClockClient(); 51 SystemClockClient();
40 52
41 private: 53 private:
42 DISALLOW_COPY_AND_ASSIGN(SystemClockClient); 54 DISALLOW_COPY_AND_ASSIGN(SystemClockClient);
43 }; 55 };
44 56
45 } // namespace chromeos 57 } // namespace chromeos
46 58
47 #endif // CHROMEOS_DBUS_SYSTEM_CLOCK_CLIENT_H_ 59 #endif // CHROMEOS_DBUS_SYSTEM_CLOCK_CLIENT_H_
OLDNEW
« no previous file with comments | « chromeos/dbus/fake_system_clock_client.cc ('k') | chromeos/dbus/system_clock_client.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698