[Xfce4-commits] <xfce4-settings:xrandr-display-settings> Simplify a bit the callbacks for the radio buttons

Jérôme Guelfucci noreply at xfce.org
Thu Jun 24 19:44:02 CEST 2010


Updating branch refs/heads/xrandr-display-settings
         to 4acee889e93ee919a87611c3ee46a4d4260d5fba (commit)
       from 0cdd686f0c398a7ad98fd49b6bafef31693bec1b (commit)

commit 4acee889e93ee919a87611c3ee46a4d4260d5fba
Author: Lionel Le Folgoc <mrpouit at gmail.com>
Date:   Thu Jun 24 18:57:54 2010 +0200

    Simplify a bit the callbacks for the radio buttons

 dialogs/display-settings/main.c |   36 ++++++++++++++----------------------
 1 files changed, 14 insertions(+), 22 deletions(-)

diff --git a/dialogs/display-settings/main.c b/dialogs/display-settings/main.c
index 532af5e..7babf7c 100644
--- a/dialogs/display-settings/main.c
+++ b/dialogs/display-settings/main.c
@@ -498,31 +498,23 @@ display_setting_resolutions_populate (GtkBuilder *builder)
 
 #ifdef HAS_RANDR_ONE_POINT_TWO
 static void
-display_setting_output_enabled (GtkToggleButton *togglebutton,
+display_setting_output_toggled (GtkToggleButton *togglebutton,
                                 GtkBuilder      *builder)
 {
-    if (xfce_randr)
-    {
-        if (gtk_toggle_button_get_active (togglebutton))
-            XFCE_RANDR_MODE (xfce_randr) = XFCE_RANDR_PREFERRED_MODE(xfce_randr);
-    }
-    display_setting_resolutions_populate (builder);
-    display_setting_refresh_rates_populate (builder);
-    display_setting_rotations_populate (builder);
-    display_setting_reflections_populate (builder);
-}
+    GObject *radio;
+    gint     is_active;
 
+    if (!xfce_randr)
+        return;
 
+    radio = gtk_builder_get_object (builder, "randr-on");
+    is_active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radio));
+
+    if (is_active && XFCE_RANDR_MODE (xfce_randr) == None)
+        XFCE_RANDR_MODE (xfce_randr) = XFCE_RANDR_PREFERRED_MODE (xfce_randr);
+    else if (!is_active && XFCE_RANDR_MODE (xfce_randr) != None)
+        XFCE_RANDR_MODE (xfce_randr) = None;
 
-static void
-display_setting_output_disabled (GtkToggleButton *togglebutton,
-                                 GtkBuilder      *builder)
-{
-    if (xfce_randr)
-    {
-        if (gtk_toggle_button_get_active (togglebutton))
-            XFCE_RANDR_MODE (xfce_randr) = None;
-    }
     display_setting_resolutions_populate (builder);
     display_setting_refresh_rates_populate (builder);
     display_setting_rotations_populate (builder);
@@ -789,11 +781,11 @@ display_settings_dialog_new (GtkBuilder *builder)
     {
         radio = gtk_builder_get_object (builder, "randr-on");
         gtk_widget_show (GTK_WIDGET (radio));
-        g_signal_connect (G_OBJECT (radio), "toggled", G_CALLBACK (display_setting_output_enabled), builder);
+        g_signal_connect (G_OBJECT (radio), "toggled", G_CALLBACK (display_setting_output_toggled), builder);
 
         radio = gtk_builder_get_object (builder, "randr-off");
         gtk_widget_show (GTK_WIDGET (radio));
-        g_signal_connect (G_OBJECT (radio), "toggled", G_CALLBACK (display_setting_output_disabled), builder);
+        g_signal_connect (G_OBJECT (radio), "toggled", G_CALLBACK (display_setting_output_toggled), builder);
 
         label = gtk_builder_get_object (builder, "label-reflection");
         gtk_widget_show (GTK_WIDGET (label));



More information about the Xfce4-commits mailing list