[gnome-sudoku] Link the Undo/Redo buttons in headerbar



commit 5368fed91de32750e10a91c28b72958c3c9043eb
Author: Parin Porecha <parinporecha gmail com>
Date:   Thu Jun 5 21:43:20 2014 +0530

    Link the Undo/Redo buttons in headerbar
    
    https://bugzilla.gnome.org/show_bug.cgi?id=731275

 data/gnome-sudoku.ui  |   66 ++++++++++++++++++++++++++++--------------------
 src/gnome-sudoku.vala |   12 +++------
 2 files changed, 42 insertions(+), 36 deletions(-)
---
diff --git a/data/gnome-sudoku.ui b/data/gnome-sudoku.ui
index 14902c5..936533b 100644
--- a/data/gnome-sudoku.ui
+++ b/data/gnome-sudoku.ui
@@ -10,43 +10,53 @@
                 <property name="show_close_button">True</property>
                 <property name="title" translatable="yes">Sudoku</property>
                 <child>
-                    <object class="GtkButton" id="undo_button">
+                    <object class="GtkBox" id="undo_redo_box">
                         <property name="visible">True</property>
-                        <property name="sensitive">False</property>
-                        <property name="valign">center</property>
-                        <property name="tooltip-text" translatable="yes">Undo your last action</property>
-                        <property name="can_focus">True</property>
-                        <property name="focus_on_click">False</property>
-                        <property name="action-name">app.undo</property>
+                        <property name="homogeneous">True</property>
                         <style>
-                            <class name="image-button"/>
+                          <class name="raised"/>
+                          <class name="linked"/>
                         </style>
                         <child>
-                            <object class="GtkImage" id="undo_image">
-                                <property name="icon_name">edit-undo-symbolic</property>
+                            <object class="GtkButton" id="undo_button">
                                 <property name="visible">True</property>
-                                <property name="icon_size">1</property>
+                                <property name="sensitive">False</property>
+                                <property name="valign">center</property>
+                                <property name="tooltip-text" translatable="yes">Undo your last 
action</property>
+                                <property name="can_focus">True</property>
+                                <property name="focus_on_click">False</property>
+                                <property name="action-name">app.undo</property>
+                                <style>
+                                    <class name="image-button"/>
+                                </style>
+                                <child>
+                                    <object class="GtkImage" id="undo_image">
+                                        <property name="icon_name">edit-undo-symbolic</property>
+                                        <property name="visible">True</property>
+                                        <property name="icon_size">1</property>
+                                    </object>
+                                </child>
                             </object>
                         </child>
-                    </object>
-                </child>
-                <child>
-                    <object class="GtkButton" id="redo_button">
-                        <property name="visible">True</property>
-                        <property name="sensitive">False</property>
-                        <property name="valign">center</property>
-                        <property name="tooltip-text" translatable="yes">Redo your last action</property>
-                        <property name="can_focus">True</property>
-                        <property name="focus_on_click">False</property>
-                        <property name="action-name">app.redo</property>
-                        <style>
-                            <class name="image-button"/>
-                        </style>
                         <child>
-                            <object class="GtkImage" id="redo_image">
-                                <property name="icon_name">edit-redo-symbolic</property>
+                            <object class="GtkButton" id="redo_button">
                                 <property name="visible">True</property>
-                                <property name="icon_size">1</property>
+                                <property name="sensitive">False</property>
+                                <property name="valign">center</property>
+                                <property name="tooltip-text" translatable="yes">Redo your last 
action</property>
+                                <property name="can_focus">True</property>
+                                <property name="focus_on_click">False</property>
+                                <property name="action-name">app.redo</property>
+                                <style>
+                                    <class name="image-button"/>
+                                </style>
+                                <child>
+                                    <object class="GtkImage" id="redo_image">
+                                        <property name="icon_name">edit-redo-symbolic</property>
+                                        <property name="visible">True</property>
+                                        <property name="icon_size">1</property>
+                                    </object>
+                                </child>
                             </object>
                         </child>
                     </object>
diff --git a/src/gnome-sudoku.vala b/src/gnome-sudoku.vala
index e8f1299..aba8f24 100644
--- a/src/gnome-sudoku.vala
+++ b/src/gnome-sudoku.vala
@@ -22,8 +22,7 @@ public class Sudoku : Gtk.Application
     private Box controls_box; // Holds the controls
     private Box start_box; // Holds the new game screen
 
-    private Button undo_button;
-    private Button redo_button;
+    private Box undo_redo_box;
     private Button back_button;
 
     private Box easy_grid;
@@ -145,9 +144,8 @@ public class Sudoku : Gtk.Application
         grid_box = (Box) builder.get_object ("grid_box");
         controls_box = (Box) builder.get_object ("controls_box");
         start_box = (Box) builder.get_object ("start_box");
+        undo_redo_box = (Box) builder.get_object ("undo_redo_box");
 
-        undo_button = (Button) builder.get_object ("undo_button");
-        redo_button = (Button) builder.get_object ("redo_button");
         back_button = (Button) builder.get_object ("back_button");
 
         var clear_button = new Gtk.Button ();
@@ -311,8 +309,7 @@ public class Sudoku : Gtk.Application
         start_box.visible = true;
         back_button.visible = true;
         game_box.visible = false;
-        undo_button.visible = false;
-        redo_button.visible = false;
+        undo_redo_box.visible = false;
         header_bar_subtitle = header_bar.get_subtitle ();
         header_bar.set_subtitle (null);
         print_action.set_enabled (false);
@@ -364,8 +361,7 @@ public class Sudoku : Gtk.Application
         start_box.visible = false;
         back_button.visible = false;
         game_box.visible = true;
-        undo_button.visible = true;
-        redo_button.visible = true;
+        undo_redo_box.visible = true;
         header_bar.set_subtitle (header_bar_subtitle);
         print_action.set_enabled (true);
     }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]