From 98441d4e31563b407b61905f3f125e51c22f9aba Mon Sep 17 00:00:00 2001 From: rbuj Date: Thu, 13 Feb 2020 12:42:24 +0100 Subject: Rewrite gpm-prefs.ui from scratch --- data/gpm-prefs.ui | 919 ++++++++++++++++++++++++++------------------------- src/gpm-prefs-core.c | 210 +++++------- 2 files changed, 556 insertions(+), 573 deletions(-) diff --git a/data/gpm-prefs.ui b/data/gpm-prefs.ui index 7ee19a7..81638ff 100644 --- a/data/gpm-prefs.ui +++ b/data/gpm-prefs.ui @@ -1,272 +1,319 @@ - + + - - - - 1 - 1 - 61 - 1 - 5 - - - 23 - 1 - 61 - 1 - 5 - + - 41 100 + 41 1 - 5 - - - 1 - 1 - 61 - 1 - 5 - - - 23 - 1 - 61 - 1 - 5 + 500 - - 1 - 1 - 61 - 1 - 5 + + True + False + window-close - - 23 - 1 - 61 - 1 - 5 + + True + False + help-browser - 5 + False Power Management Preferences - False - center-on-parent + mate-power-manager dialog + + + + - - True + + False vertical 2 + + + False + end + + + _Help + True + True + True + image_help + True + True + + + + True + True + 0 + + + + + Make Default + True + True + True + + + True + True + 1 + + + + + _Close + True + True + True + image_close + True + True + + + + True + True + 2 + + + + + False + False + 0 + + True True - 6 + 12 + 12 + 12 + 12 - + True - 12 + False + 12 + 12 + 12 + 12 vertical - 12 - + True - vertical - 6 - - - True - 0 - <b>Actions</b> - True - - - False - False - 0 - - + False + 0 + none - + True + False 12 - + True + False + 6 + 6 vertical 6 - + True + False 12 - True True - 0 + False Put computer to _sleep when inactive for: True combobox_ac_computer + 0 False + True 0 True + False + True + True 1 False - False + True 0 - + True + False 12 - True True - 0 + False When laptop lid is cl_osed: True combobox_ac_lid + 0 False + True 0 True + False + True + True 1 + False + True 1 - - False - 1 - + + + + True + False + Actions + + + + False + True 0 - + True - vertical - 6 + False + 0 + none - - True - 0 - <b>Display</b> - True - - - False - False - 0 - - - - + True + False 12 - + True + False vertical - 5 + 6 - + True + False 12 - True True - 0 + False Put _display to sleep when inactive for: True combobox_ac_display + 0 False + True 0 True + False + True + True 1 + False + True 0 - + True - 12 - True + False True - 0 + False Set display _brightness to: True hscale_ac_brightness + 0 False + True 0 - + True True adjustment3 - 0 - bottom + 1 + True + True 1 + False + True 1 @@ -276,6 +323,7 @@ True True False + start True True @@ -288,13 +336,21 @@ - - 1 - + + + + True + False + Display + + + + False + True 1 @@ -303,6 +359,7 @@ True + False On AC Power @@ -310,202 +367,222 @@ - + True - 12 + False + 12 + 12 + 12 + 12 vertical - 12 - + True - vertical - 6 - - - True - 0 - <b>Actions</b> - True - - - False - False - 0 - - + False + 0 + none - + True + False 12 - + True + False + 6 + 6 vertical 6 - + True + False 12 - True True - 0 + False Put computer to _sleep when inactive for: True combobox_battery_computer + 0 False + True 0 True + False + True + True 1 False - False + True 0 - + True + False 12 - True True - 0 + False When laptop lid is cl_osed: True combobox_battery_lid + 0 False + True 0 True + False + True + True 1 + False + True 1 - + True + False 12 - True True - 0 + False When battery po_wer is critically low: True combobox_battery_critical + 0 False + True 0 True + False + True + True 1 + False + True 2 - - False - 1 - + + + + True + False + Actions + + + + False + True 0 - + True - vertical - 6 + False + 0 + none - - True - 0 - <b>Display</b> - True - - - False - False - 0 - - - - + True + False 12 - + True + False + 6 + 6 vertical - 5 + 6 - + True + False 12 - True True - 0 + False Put _display to sleep when inactive for: True combobox_battery_display + 0 False + True 0 True + False + True + True 1 + False + True 0 @@ -515,6 +592,7 @@ True True False + start True True @@ -530,6 +608,7 @@ True True False + start True True @@ -542,13 +621,21 @@ - - 1 - + + + + True + False + Display + + + + False + True 1 @@ -560,6 +647,7 @@ True + False On Battery Power @@ -568,215 +656,191 @@ - + True - 12 + False + 12 + 12 + 12 + 12 vertical - 12 - + True - vertical - 6 + False + 0 + none - - True - 0 - <b>Actions</b> - True - - - False - False - 0 - - - - + True + False 12 - + True - vertical - 6 + False + 6 + 6 + 6 + 12 - + True - 12 - True - - - True - 0 - Put computer to _sleep when inactive for: - True - combobox_ups_computer - - - False - 0 - - - - - True - - - 1 - - + False + Put computer to _sleep when inactive for: + True + combobox_ups_computer + 0 - False - False - 0 + 0 + 0 - + True - 12 - True - - - True - 0 - When UPS power is l_ow: - True - combobox_ups_low - - - False - 0 - - - - - True - - - 1 - - + False + When UPS power is l_ow: + True + combobox_ups_low + 0 - 1 + 0 + 1 - + True - 12 - True - - - True - 0 - When UPS power is _critically low: - True - combobox_ups_critical - - - False - 0 - - - - - True - - - 1 - - + False + When UPS power is _critically low: + True + combobox_ups_critical + 0 - 2 + 0 + 2 + + + + + True + False + True + + + 1 + 0 + + + + + True + False + True + + + 1 + 1 + + + + + True + False + True + + + 1 + 2 - - False - 1 - + + + + True + False + Actions + + + + False + True 0 - + True - vertical - 6 - - - True - 0 - <b>Display</b> - True - - - False - False - 0 - - + False + 0 + none - + True + False 12 - + True - vertical - 5 + False + 6 + 6 + 6 + 12 - + True - 12 - True - - - True - 0 - Put _display to sleep when inactive for: - True - combobox_ups_display - - - False - 0 - - - - - True - - - 1 - - + False + Put _display to sleep when inactive for: + True + combobox_ups_display + 0 - 0 + 0 + 0 + + + + + True + False + True + + + 1 + 0 - - 1 - + + + + True + False + Display + + + + False + True 1 @@ -788,6 +852,7 @@ True + False On UPS Power @@ -796,141 +861,147 @@ - + True - 12 + False + 12 + 12 + 12 + 12 vertical - 12 - + True - vertical - 6 + False + 0 + none - - True - 0 - <b>Actions</b> - True - - - False - False - 0 - - - - + True + False 12 - + True + False + 6 + 6 vertical 6 - + True + False 12 - True True - 0 + False When the power _button is pressed: True combobox_general_power + 0 False + True 0 True + False + True + True 1 False - False + True 0 - + True + False 12 - True True - 0 + False When the _suspend button is pressed: True combobox_general_suspend + 0 False + True 0 True + False + True + True 1 + False + True 1 - - False - 1 - + + + + True + False + Actions + + + + False + True 0 - + True - vertical - 6 + False + 0 + none - - True - 0 - <b>Notification Area</b> - True - - - False - False - 0 - - - - + True + False 12 - + True + False + 6 + 6 vertical 6 @@ -939,8 +1010,11 @@ True True False + start True + True True + False @@ -954,9 +1028,11 @@ True True False + start True True radiobutton_notification_never + False @@ -970,9 +1046,11 @@ True True False + start True True radiobutton_notification_never + False @@ -986,9 +1064,11 @@ True True False + start True True radiobutton_notification_never + False @@ -1002,9 +1082,11 @@ True True False + start True True radiobutton_notification_never + False @@ -1015,13 +1097,21 @@ - - 1 - + + + + True + False + Notification Area + + + + False + True 1 @@ -1033,6 +1123,7 @@ True + False General @@ -1041,76 +1132,18 @@ - - False - 1 - - - - - True - end - - - gtk-help - True - True - True - False - Provides help about this program - True - - - False - False - 0 - True - - - - - Make Default - True - True - True - Sets this policy to be used by all users - - - False - False - 1 - - - - - gtk-close - True - True - True - True - False - Closes the program - True - - - False - False - 2 - - - False - end - 0 + True + 1 - button_help - button_defaults - button_close + button_help + button_defaults + button_close diff --git a/src/gpm-prefs-core.c b/src/gpm-prefs-core.c index e51e367..44467ff 100644 --- a/src/gpm-prefs-core.c +++ b/src/gpm-prefs-core.c @@ -41,6 +41,10 @@ #include "gpm-icon-names.h" #include "gpm-brightness.h" +#define GET_WIDGET(x) (GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, (x)))) +#define GET_NOTEBOOK(x) (GTK_NOTEBOOK (gtk_builder_get_object (prefs->priv->builder, (x)))) +#define GET_WINDOW(x) (GTK_WINDOW (gtk_builder_get_object (prefs->priv->builder, (x)))) + static void gpm_prefs_finalize (GObject *object); struct GpmPrefsPrivate @@ -109,7 +113,7 @@ void gpm_prefs_activate_window (GtkApplication *app, GpmPrefs *prefs) { GtkWindow *window; - window = GTK_WINDOW (gtk_builder_get_object (prefs->priv->builder, "dialog_preferences")); + window = GET_WINDOW ("dialog_preferences"); gtk_application_add_window (GTK_APPLICATION (app), window); gtk_window_present (window); } @@ -218,7 +222,7 @@ gpm_prefs_setup_action_combo (GpmPrefs *prefs, const gchar *widget_name, GPtrArray *array; GpmActionPolicy *actions_added; - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, widget_name)); + widget = GET_WIDGET (widget_name); value = g_settings_get_enum (prefs->priv->settings, gpm_pref_key); is_writable = g_settings_is_writable (prefs->priv->settings, gpm_pref_key); @@ -296,7 +300,7 @@ gpm_prefs_setup_time_combo (GpmPrefs *prefs, const gchar *widget_name, gboolean is_writable; GtkWidget *widget; - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, widget_name)); + widget = GET_WIDGET (widget_name); value = g_settings_get_int (prefs->priv->settings, gpm_pref_key); is_writable = g_settings_is_writable (prefs->priv->settings, gpm_pref_key); @@ -352,74 +356,6 @@ gpm_prefs_delete_event_cb (GtkWidget *widget, GdkEvent *event, GpmPrefs *prefs) return FALSE; } -/** setup the notification page */ -static void -prefs_setup_notification (GpmPrefs *prefs) -{ - gint icon_policy; - GtkWidget *radiobutton_icon_always; - GtkWidget *radiobutton_icon_present; - GtkWidget *radiobutton_icon_charge; - GtkWidget *radiobutton_icon_low; - GtkWidget *radiobutton_icon_never; - gboolean is_writable; - - icon_policy = g_settings_get_enum (prefs->priv->settings, GPM_SETTINGS_ICON_POLICY); - - radiobutton_icon_always = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, - "radiobutton_notification_always")); - radiobutton_icon_present = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, - "radiobutton_notification_present")); - radiobutton_icon_charge = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, - "radiobutton_notification_charge")); - radiobutton_icon_low = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, - "radiobutton_notification_low")); - radiobutton_icon_never = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, - "radiobutton_notification_never")); - - is_writable = g_settings_is_writable (prefs->priv->settings, GPM_SETTINGS_ICON_POLICY); - gtk_widget_set_sensitive (radiobutton_icon_always, is_writable); - gtk_widget_set_sensitive (radiobutton_icon_present, is_writable); - gtk_widget_set_sensitive (radiobutton_icon_charge, is_writable); - gtk_widget_set_sensitive (radiobutton_icon_low, is_writable); - gtk_widget_set_sensitive (radiobutton_icon_never, is_writable); - - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_always), - icon_policy == GPM_ICON_POLICY_ALWAYS); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_present), - icon_policy == GPM_ICON_POLICY_PRESENT); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_charge), - icon_policy == GPM_ICON_POLICY_CHARGE); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_low), - icon_policy == GPM_ICON_POLICY_LOW); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_never), - icon_policy == GPM_ICON_POLICY_NEVER); - - g_object_set_data (G_OBJECT (radiobutton_icon_always), "policy", - GINT_TO_POINTER (GPM_ICON_POLICY_ALWAYS)); - g_object_set_data (G_OBJECT (radiobutton_icon_present), "policy", - GINT_TO_POINTER (GPM_ICON_POLICY_PRESENT)); - g_object_set_data (G_OBJECT (radiobutton_icon_charge), "policy", - GINT_TO_POINTER (GPM_ICON_POLICY_CHARGE)); - g_object_set_data (G_OBJECT (radiobutton_icon_low), "policy", - GINT_TO_POINTER (GPM_ICON_POLICY_LOW)); - g_object_set_data (G_OBJECT (radiobutton_icon_never), "policy", - GINT_TO_POINTER (GPM_ICON_POLICY_NEVER)); - - /* only connect the callbacks after we set the value, else the settings - * keys gets written to (for a split second), and the icon flickers. */ - g_signal_connect (radiobutton_icon_always, "clicked", - G_CALLBACK (gpm_prefs_icon_radio_cb), prefs); - g_signal_connect (radiobutton_icon_present, "clicked", - G_CALLBACK (gpm_prefs_icon_radio_cb), prefs); - g_signal_connect (radiobutton_icon_charge, "clicked", - G_CALLBACK (gpm_prefs_icon_radio_cb), prefs); - g_signal_connect (radiobutton_icon_low, "clicked", - G_CALLBACK (gpm_prefs_icon_radio_cb), prefs); - g_signal_connect (radiobutton_icon_never, "clicked", - G_CALLBACK (gpm_prefs_icon_radio_cb), prefs); -} - static void prefs_setup_ac (GpmPrefs *prefs) { @@ -460,7 +396,7 @@ prefs_setup_ac (GpmPrefs *prefs) button_lid_actions); /* setup brightness slider */ - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hscale_ac_brightness")); + widget = GET_WIDGET ("hscale_ac_brightness"); g_settings_bind (prefs->priv->settings, GPM_SETTINGS_BRIGHTNESS_AC, gtk_range_get_adjustment (GTK_RANGE (widget)), "value", G_SETTINGS_BIND_DEFAULT); @@ -468,30 +404,22 @@ prefs_setup_ac (GpmPrefs *prefs) G_CALLBACK (gpm_prefs_format_percentage_cb), NULL); /* set up the checkboxes */ - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_ac_display_dim")); g_settings_bind (prefs->priv->settings, GPM_SETTINGS_IDLE_DIM_AC, - widget, "active", + GET_WIDGET ("checkbutton_ac_display_dim"), "active", G_SETTINGS_BIND_DEFAULT); if (prefs->priv->has_button_lid == FALSE) { - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hbox_ac_lid")); - gtk_widget_hide(widget); + gtk_widget_hide (GET_WIDGET ("box_ac_lid")); } if (prefs->priv->has_lcd == FALSE) { - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hbox_ac_brightness")); - - gtk_widget_hide(widget); - - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_ac_display_dim")); - - gtk_widget_hide(widget); + gtk_widget_hide (GET_WIDGET ("box_ac_brightness")); + gtk_widget_hide (GET_WIDGET ("checkbutton_ac_display_dim")); } } static void prefs_setup_battery (GpmPrefs *prefs) { - GtkWidget *widget; GtkNotebook *notebook; gint page; @@ -533,9 +461,8 @@ prefs_setup_battery (GpmPrefs *prefs) display_times); if (prefs->priv->has_batteries == FALSE) { - notebook = GTK_NOTEBOOK (gtk_builder_get_object (prefs->priv->builder, "notebook_preferences")); - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "vbox_battery")); - page = gtk_notebook_page_num (notebook, GTK_WIDGET (widget)); + notebook = GET_NOTEBOOK ("notebook_preferences"); + page = gtk_notebook_page_num (notebook, GET_WIDGET ("box_battery")); gtk_notebook_remove_page (notebook, page); return; } @@ -548,30 +475,23 @@ prefs_setup_battery (GpmPrefs *prefs) battery_critical_actions); /* set up the checkboxes */ - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_battery_display_reduce")); g_settings_bind (prefs->priv->settings, GPM_SETTINGS_BACKLIGHT_BATTERY_REDUCE, - widget, "active", + GET_WIDGET ("checkbutton_battery_display_reduce"), "active", G_SETTINGS_BIND_DEFAULT); - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_battery_display_dim")); g_settings_bind (prefs->priv->settings, GPM_SETTINGS_IDLE_DIM_BATT, - widget, "active", + GET_WIDGET ("checkbutton_battery_display_dim"), "active", G_SETTINGS_BIND_DEFAULT); - if (prefs->priv->has_button_lid == FALSE) { - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hbox_battery_lid")); + if (prefs->priv->has_button_lid == FALSE) + gtk_widget_hide (GET_WIDGET ("box_battery_lid")); - gtk_widget_hide(widget); - } - if (prefs->priv->has_lcd == FALSE) { - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "checkbutton_battery_display_dim")); - gtk_widget_hide(widget); - } + if (prefs->priv->has_lcd == FALSE) + gtk_widget_hide (GET_WIDGET ("checkbutton_battery_display_dim")); } static void prefs_setup_ups (GpmPrefs *prefs) { - GtkWidget *widget; GtkWidget *notebook; GtkWidget *window; gint page; @@ -606,15 +526,14 @@ prefs_setup_ups (GpmPrefs *prefs) display_times); window = gpm_window (prefs); - notebook = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "notebook_preferences")); + notebook = GET_WIDGET ("notebook_preferences"); gtk_widget_add_events (notebook, GDK_SCROLL_MASK); g_signal_connect (GTK_NOTEBOOK (notebook), "scroll-event", G_CALLBACK (gpm_dialog_page_scroll_event_cb), window); if (prefs->priv->has_ups == FALSE) { - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "vbox_ups")); - page = gtk_notebook_page_num (GTK_NOTEBOOK (notebook), GTK_WIDGET (widget)); + page = gtk_notebook_page_num (GTK_NOTEBOOK (notebook), GET_WIDGET ("box_ups")); gtk_notebook_remove_page (GTK_NOTEBOOK (notebook), page); return; } @@ -630,7 +549,6 @@ prefs_setup_ups (GpmPrefs *prefs) static void prefs_setup_general (GpmPrefs *prefs) { - GtkWidget *widget; const GpmActionPolicy power_button_actions[] = {GPM_ACTION_POLICY_INTERACTIVE, GPM_ACTION_POLICY_SUSPEND, @@ -651,11 +569,8 @@ prefs_setup_general (GpmPrefs *prefs) GPM_SETTINGS_BUTTON_SUSPEND, suspend_button_actions); - if (prefs->priv->has_button_suspend == FALSE) { - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "hbox_general_suspend")); - - gtk_widget_hide(widget); - } + if (prefs->priv->has_button_suspend == FALSE) + gtk_widget_hide (GET_WIDGET ("box_general_suspend")); } /** @@ -665,9 +580,6 @@ prefs_setup_general (GpmPrefs *prefs) static void gpm_prefs_init (GpmPrefs *prefs) { - GtkWidget *main_window; - GtkWidget *widget; - guint retval; GError *error = NULL; GPtrArray *devices = NULL; UpDevice *device; @@ -822,38 +734,76 @@ gpm_prefs_init (GpmPrefs *prefs) error = NULL; prefs->priv->builder = gtk_builder_new (); - retval = gtk_builder_add_from_resource (prefs->priv->builder, "/org/mate/powermanager/preferences/gpm-prefs.ui", &error); + (void) gtk_builder_add_from_resource (prefs->priv->builder, "/org/mate/powermanager/preferences/gpm-prefs.ui", &error); if (error) { egg_error ("failed to load ui: %s", error->message); } - main_window = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "dialog_preferences")); - /* Hide window first so that the dialogue resizes itself without redrawing */ - gtk_widget_hide (main_window); - gtk_window_set_default_icon_name (GPM_ICON_APP_ICON); + gtk_widget_hide (GET_WIDGET ("dialog_preferences")); - /* Get the main window quit */ - g_signal_connect (main_window, "delete_event", - G_CALLBACK (gpm_prefs_delete_event_cb), prefs); + gtk_widget_hide (GET_WIDGET ("button_defaults")); - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "button_close")); - g_signal_connect (widget, "clicked", - G_CALLBACK (gpm_prefs_close_cb), prefs); + /** setup the notification page */ + gint icon_policy; + GtkWidget *radiobutton_icon_always; + GtkWidget *radiobutton_icon_present; + GtkWidget *radiobutton_icon_charge; + GtkWidget *radiobutton_icon_low; + GtkWidget *radiobutton_icon_never; + + icon_policy = g_settings_get_enum (prefs->priv->settings, GPM_SETTINGS_ICON_POLICY); - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "button_help")); - g_signal_connect (widget, "clicked", - G_CALLBACK (gpm_prefs_help_cb), prefs); + radiobutton_icon_always = GET_WIDGET ("radiobutton_notification_always"); + radiobutton_icon_present = GET_WIDGET ("radiobutton_notification_present"); + radiobutton_icon_charge = GET_WIDGET ("radiobutton_notification_charge"); + radiobutton_icon_low = GET_WIDGET ("radiobutton_notification_low"); + radiobutton_icon_never = GET_WIDGET ("radiobutton_notification_never"); + + gtk_widget_set_sensitive (GET_WIDGET ("box_general_notification"), + g_settings_is_writable (prefs->priv->settings, GPM_SETTINGS_ICON_POLICY)); + + switch (icon_policy) { + case GPM_ICON_POLICY_ALWAYS: + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_always), TRUE); + break; + case GPM_ICON_POLICY_PRESENT: + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_present), TRUE); + break; + case GPM_ICON_POLICY_CHARGE: + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_charge), TRUE); + break; + case GPM_ICON_POLICY_LOW: + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_low), TRUE); + break; + case GPM_ICON_POLICY_NEVER: + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_icon_never), TRUE); + break; + } - widget = GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "button_defaults")); - gtk_widget_hide (widget); + g_object_set_data (G_OBJECT (radiobutton_icon_always), "policy", GINT_TO_POINTER (GPM_ICON_POLICY_ALWAYS)); + g_object_set_data (G_OBJECT (radiobutton_icon_present), "policy", GINT_TO_POINTER (GPM_ICON_POLICY_PRESENT)); + g_object_set_data (G_OBJECT (radiobutton_icon_charge), "policy", GINT_TO_POINTER (GPM_ICON_POLICY_CHARGE)); + g_object_set_data (G_OBJECT (radiobutton_icon_low), "policy", GINT_TO_POINTER (GPM_ICON_POLICY_LOW)); + g_object_set_data (G_OBJECT (radiobutton_icon_never), "policy", GINT_TO_POINTER (GPM_ICON_POLICY_NEVER)); + + gtk_builder_add_callback_symbols (prefs->priv->builder, + "on_dialog_preferences_delete_event", G_CALLBACK (gpm_prefs_delete_event_cb), + "on_button_help_clicked", G_CALLBACK (gpm_prefs_help_cb), + "on_button_close_clicked", G_CALLBACK (gpm_prefs_close_cb), + "on_radiobutton_notification_never_clicked", G_CALLBACK (gpm_prefs_icon_radio_cb), + "on_radiobutton_notification_low_clicked", G_CALLBACK (gpm_prefs_icon_radio_cb), + "on_radiobutton_notification_charge_clicked", G_CALLBACK (gpm_prefs_icon_radio_cb), + "on_radiobutton_notification_present_clicked", G_CALLBACK (gpm_prefs_icon_radio_cb), + "on_radiobutton_notification_always_clicked", G_CALLBACK (gpm_prefs_icon_radio_cb), + NULL); + gtk_builder_connect_signals (prefs->priv->builder, prefs); prefs_setup_ac (prefs); prefs_setup_battery (prefs); prefs_setup_ups (prefs); prefs_setup_general (prefs); - prefs_setup_notification (prefs); } /** @@ -897,5 +847,5 @@ gpm_prefs_new (void) GtkWidget * gpm_window (GpmPrefs *prefs) { - return GTK_WIDGET (gtk_builder_get_object (prefs->priv->builder, "dialog_preferences")); + return GET_WIDGET ("dialog_preferences"); } -- cgit v1.2.1