[gnome-games/wip/exalm/gtk4: 55/59] ui: Stop using stack child properties and migrate to GtkStackPage



commit 70d42c2136f39df7ad20b9a6972ffc65171f67cf
Author: Alexander Mikhaylenko <exalm7659 gmail com>
Date:   Sat May 11 11:10:39 2019 +0500

    ui: Stop using stack child properties and migrate to GtkStackPage

 data/ui/collection-box.ui  | 40 +++++++++++++++++++++++-----------------
 data/ui/display-box.ui     |  6 ------
 src/ui/collection-box.vala |  5 +++--
 3 files changed, 26 insertions(+), 25 deletions(-)
---
diff --git a/data/ui/collection-box.ui b/data/ui/collection-box.ui
index a44d09a1..dd4de19d 100644
--- a/data/ui/collection-box.ui
+++ b/data/ui/collection-box.ui
@@ -29,34 +29,40 @@
               <class name="solid-background"/>
             </style>
             <child>
-              <object class="GamesEmptyCollection" id="empty_collection">
-                <property name="visible">True</property>
-              </object>
-              <packing>
+              <object class="GtkStackPage">
                 <property name="name">empty</property>
-              </packing>
+                <property name="child">
+                  <object class="GamesEmptyCollection" id="empty_collection">
+                    <property name="visible">True</property>
+                  </object>
+                </property>
+              </object>
             </child>
             <child>
-              <object class="GamesCollectionIconView" id="collection_view">
-                <property name="visible">True</property>
-                <signal name="game-activated" handler="on_game_activated"/>
-              </object>
-              <packing>
+              <object class="GtkStackPage" id="games_page">
                 <property name="name">games</property>
                 <property name="title" translatable="yes">Games</property>
-              </packing>
+                <property name="child">
+                  <object class="GamesCollectionIconView" id="collection_view">
+                    <property name="visible">True</property>
+                    <signal name="game-activated" handler="on_game_activated"/>
+                  </object>
+                </property>
+              </object>
             </child>
             <child>
-              <object class="GamesPlatformsView" id="platform_view">
-                <property name="visible">True</property>
-                <signal name="game-activated" handler="on_game_activated"/>
-              </object>
-              <packing>
+              <object class="GtkStackPage">
                 <property name="name">platform</property>
                 <!-- FIXME: the icon is meant to be used for text formatting -->
                 <property name="icon-name">view-list-bullet-symbolic</property>
                 <property name="title" translatable="yes">Platforms</property>
-              </packing>
+                <property name="child">
+                  <object class="GamesPlatformsView" id="platform_view">
+                    <property name="visible">True</property>
+                    <signal name="game-activated" handler="on_game_activated"/>
+                  </object>
+                </property>
+              </object>
             </child>
           </object>
         </child>
diff --git a/data/ui/display-box.ui b/data/ui/display-box.ui
index 8a2f6fee..e2806d52 100644
--- a/data/ui/display-box.ui
+++ b/data/ui/display-box.ui
@@ -20,18 +20,12 @@
               <object class="GamesErrorDisplay" id="error_display">
                 <property name="visible">True</property>
               </object>
-              <packing>
-                <property name="name">error</property>
-              </packing>
             </child>
             <child>
               <object class="GtkFrame" id="display_bin">
                 <property name="visible">True</property>
                 <property name="shadow-type">none</property>
               </object>
-              <packing>
-                <property name="name">display</property>
-              </packing>
             </child>
           </object>
         </child>
diff --git a/src/ui/collection-box.vala b/src/ui/collection-box.vala
index 7892f9e9..da36f07d 100644
--- a/src/ui/collection-box.vala
+++ b/src/ui/collection-box.vala
@@ -20,6 +20,8 @@ private class Games.CollectionBox : Gtk.Box {
        private CollectionIconView collection_view;
        [GtkChild]
        private PlatformsView platform_view;
+       [GtkChild]
+       private Gtk.StackPage games_page;
        [GtkChild (name = "viewstack")]
        private Gtk.Stack _viewstack;
        public Gtk.Stack viewstack {
@@ -59,8 +61,7 @@ private class Games.CollectionBox : Gtk.Box {
                loading_notification_binding = bind_property ("loading-notification", 
loading_notification_revealer, "reveal-child",
                                                              BindingFlags.DEFAULT);
 
-               var icon_name = Config.APPLICATION_ID + "-symbolic";
-               viewstack.child_set (collection_view, "icon-name", icon_name);
+               games_page.icon_name = Config.APPLICATION_ID + "-symbolic";
        }
 
        public void show_error (string error_message) {


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