![]() |
![]() |
![]() |
GIO Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy | Signals |
GTimeZoneMonitor is a utility class to monitor the local timezone for changes (ie: in response to the user manually changing the timezone to that of a different locale).
You must use this class in order for your program to notice changes
to the local timezone. It works by monitoring the /etc/localtime
file. When the timezone is found to have changed,
g_time_zone_refresh_local()
is called and the "changed" signal is
emitted on the GTimeZoneMonitor (in that order).
Windows support is not presently working.
typedef struct _GTimeZoneMonitor GTimeZoneMonitor;
This is an opaque structure type.
GTimeZoneMonitor * g_time_zone_monitor_get (void
);
Gets the singleton instance of the GTimeZoneMonitor class, creating it if required.
You should call g_object_unref()
on the result when you no longer
need it. Be aware, though, that this will not destroy the instance,
so if you connected to the changed signal, you are required to
disconnect from it for yourself.
There is only one instance of GTimeZoneMonitor and it dispatches its signals via the default GMainContext. There is no way to create an instance that will dispatch signals using a different context.
Returns : |
a reference to the GTimeZoneMonitor. |
"changed"
signalvoid user_function (GTimeZoneMonitor *monitor,
gpointer user_data) : Run First
Indicates that the local timezone has changed.
The g_time_zone_refresh_local()
function is called just before this
signal is emitted, so any new GTimeZone or GDateTime instances
created from signal handlers will be as per the new timezone.
Note that this signal is not emitted in response to entering or exiting daylight savings time within a given timezone. It's only for when the user has changed the timezone to that of a different location.
|
the GTimeZoneMonitor |
|
user data set when the signal handler was connected. |