From c53679a64a9bdb3e576e68d8e3568a39de0a85c1 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 5 Feb 2009 11:14:44 +0100 Subject: Oh, two things. First is setting alignment of the two strings and also getting the time from an ISO8601 string --- src/im-menu-item.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/im-menu-item.c b/src/im-menu-item.c index 7ffa4bb..f0de2f9 100644 --- a/src/im-menu-item.c +++ b/src/im-menu-item.c @@ -2,6 +2,7 @@ #include "config.h" #endif +#include #include #include "im-menu-item.h" @@ -79,6 +80,9 @@ im_menu_item_init (ImMenuItem *self) priv->user = GTK_LABEL(gtk_label_new("")); priv->time = GTK_LABEL(gtk_label_new("")); + gtk_misc_set_alignment(GTK_MISC(priv->user), 0.0, 0.5); + gtk_misc_set_alignment(GTK_MISC(priv->time), 0.0, 0.5); + if (icon_group == NULL) { icon_group = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL); } @@ -139,8 +143,20 @@ time_cb (IndicateListener * listener, IndicateListenerServer * server, IndicateL ImMenuItemPrivate * priv = IM_MENU_ITEM_GET_PRIVATE(self); - gtk_label_set_label(priv->time, propertydata); - gtk_widget_show(priv->time); + GTimeVal time; + if (g_time_val_from_iso8601(propertydata, &time)) { + time_t timet; + struct tm * structtm; + + timet = time.tv_sec; + structtm = localtime(&timet); + + gchar timestring[80]; + strftime(timestring, 80, _("%I:%M"), structtm); + + gtk_label_set_label(priv->time, timestring); + gtk_widget_show(priv->time); + } return; } -- cgit v1.2.3