aboutsummaryrefslogtreecommitdiff
path: root/src/datetime-service.c
diff options
context:
space:
mode:
authorJavier Jardón <javier.jardon@codethink.co.uk>2011-08-16 15:18:37 +0100
committerJavier Jardón <javier.jardon@codethink.co.uk>2011-08-16 15:18:37 +0100
commit8d74e5b47c5134f906fcd728b836047b8a4ad81f (patch)
tree4e08199574a89d79af741f4889a0143f2941063e /src/datetime-service.c
parent535f3a157ed42ea19e74f1f2ed194500b29b150e (diff)
downloadayatana-indicator-datetime-8d74e5b47c5134f906fcd728b836047b8a4ad81f.tar.gz
ayatana-indicator-datetime-8d74e5b47c5134f906fcd728b836047b8a4ad81f.tar.bz2
ayatana-indicator-datetime-8d74e5b47c5134f906fcd728b836047b8a4ad81f.zip
Use the new GDateTime glib API to deal with time
Diffstat (limited to 'src/datetime-service.c')
-rw-r--r--src/datetime-service.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/datetime-service.c b/src/datetime-service.c
index 8d25b3c..d396f8e 100644
--- a/src/datetime-service.c
+++ b/src/datetime-service.c
@@ -299,25 +299,25 @@ quick_set_tz (DbusmenuMenuitem * menuitem, guint timestamp, gpointer user_data)
static gboolean
update_datetime (gpointer user_data)
{
- g_debug("Updating Date/Time");
+ GDateTime *datetime;
+ gchar *utf8;
- gchar longstr[128];
- time_t t;
- struct tm *ltime;
+ g_debug("Updating Date/Time");
- t = time(NULL);
- ltime = localtime(&t);
- if (ltime == NULL) {
+ datetime = g_date_time_new_now_local ();
+ if (datetime == NULL) {
g_warning("Error getting local time");
dbusmenu_menuitem_property_set(date, DBUSMENU_MENUITEM_PROP_LABEL, _("Error getting time"));
+ g_date_time_unref (datetime);
return FALSE;
}
- /* Translators: strftime(3) style date format on top of the menu when you click on the clock */
- strftime(longstr, 128, _("%A, %e %B %Y"), ltime);
-
- gchar * utf8 = g_locale_to_utf8(longstr, -1, NULL, NULL, NULL);
+ /* eranslators: strftime(3) style date format on top of the menu when you click on the clock */
+ utf8 = g_date_time_format (datetime, _("%A, %e %B %Y"));
+
dbusmenu_menuitem_property_set(date, DBUSMENU_MENUITEM_PROP_LABEL, utf8);
+
+ g_date_time_unref (datetime);
g_free(utf8);
return FALSE;
@@ -701,7 +701,7 @@ update_appointment_menu_items (gpointer user_data)
// Get today & work out query times
time(&curtime);
- struct tm *today = localtime(&curtime);
+ struct tm *today = localtime(&curtime);
const int mday = today->tm_mday;
const int mon = today->tm_mon;
const int year = today->tm_year;