[Goodies-commits] r5736 - xfce4-power-manager/trunk/src
Ali Abdallah
aliov at xfce.org
Tue Oct 21 21:02:55 CEST 2008
Author: aliov
Date: 2008-10-21 19:02:55 +0000 (Tue, 21 Oct 2008)
New Revision: 5736
Modified:
xfce4-power-manager/trunk/src/xfpm-battery.c
Log:
GtkDialog to notify about critical battery power when libnotify is missing
Modified: xfce4-power-manager/trunk/src/xfpm-battery.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-battery.c 2008-10-21 14:27:36 UTC (rev 5735)
+++ xfce4-power-manager/trunk/src/xfpm-battery.c 2008-10-21 19:02:55 UTC (rev 5736)
@@ -775,7 +775,7 @@
const gchar *message;
message = _("Your battery charge level is critical "\
- "save your work to avoid data loss");
+ "save your work to avoid losing data");
#ifdef HAVE_LIBNOTIFY
@@ -803,8 +803,39 @@
}
xfpm_notify_show_notification(n,6);
#else
- /*FIXME Show the options in GtkDialog */
-
+ GtkWidget *dialog;
+ dialog = gtk_message_dialog_new (NULL,
+ GTK_DIALOG_MODAL,
+ GTK_MESSAGE_WARNING,
+ GTK_BUTTONS_CANCEL,
+ message,
+ NULL);
+ if ( priv->power_management & SYSTEM_CAN_HIBERNATE )
+ {
+ GtkWidget *hibernate = gtk_button_new_with_label(_("Hibernate"));
+ gtk_widget_show(hibernate);
+ gtk_dialog_add_action_widget(GTK_DIALOG(dialog),hibernate,GTK_RESPONSE_OK);
+ }
+
+ if ( priv->power_management & SYSTEM_CAN_SHUTDOWN )
+ {
+ GtkWidget *shutdown = gtk_button_new_with_label(_("Shutdown"));
+ gtk_widget_show(shutdown);
+ gtk_dialog_add_action_widget(GTK_DIALOG(dialog),shutdown,GTK_RESPONSE_ACCEPT);
+ }
+
+ switch(gtk_dialog_run(GTK_DIALOG(dialog)))
+ {
+ case GTK_RESPONSE_OK:
+ g_signal_emit(G_OBJECT(batt),signals[XFPM_ACTION_REQUEST],0,XFPM_DO_HIBERNATE,TRUE);
+ break;
+ case GTK_RESPONSE_ACCEPT:
+ g_signal_emit(G_OBJECT(batt),signals[XFPM_ACTION_REQUEST],0,XFPM_DO_SHUTDOWN,TRUE);
+ break;
+ default:
+ break;
+ }
+ gtk_widget_destroy(dialog);
#endif
}
More information about the Goodies-commits
mailing list