[gtk/matthiasc/for-master: 1/4] gtk-builder-tool: Simplify more




commit a73398f23a658f4506e41fda9f9975e4cc27f959
Author: Matthias Clasen <mclasen redhat com>
Date:   Tue Sep 28 21:58:29 2021 -0400

    gtk-builder-tool: Simplify more
    
    Simplify enum properties as well.
    
    Update affected tests.

 .../tools/simplify-data-3to4/assistant.expected    |   8 +-
 testsuite/tools/simplify-data-3to4/box.expected    | 280 ++++++++++-----------
 .../tools/simplify-data-3to4/checkbutton.expected  |   2 +-
 testsuite/tools/simplify-data-3to4/grid.expected   |  18 +-
 .../gtkfilechooserdialog.expected                  |   4 +-
 .../tools/simplify-data-3to4/notebook.expected     |   8 +-
 .../simplify-data-3to4/office-runner.expected      |  40 ++-
 testsuite/tools/simplify-data-3to4/stack.expected  |   4 +-
 .../tools/simplify-data-3to4/toolbar.expected      |   6 +-
 testsuite/tools/simplify-data/test3.expected       |   2 +-
 tools/gtk-builder-tool-simplify.c                  |  80 +++++-
 11 files changed, 259 insertions(+), 193 deletions(-)
---
diff --git a/testsuite/tools/simplify-data-3to4/assistant.expected 
b/testsuite/tools/simplify-data-3to4/assistant.expected
index 532abbb701..d73482b38f 100644
--- a/testsuite/tools/simplify-data-3to4/assistant.expected
+++ b/testsuite/tools/simplify-data-3to4/assistant.expected
@@ -4,20 +4,20 @@
   <object class="GtkAssistant" id="window1">
     <child>
       <object class="GtkAssistantPage">
-        <property name="title" translatable="yes">Page 1</property>
+        <property name="title" translatable="1">Page 1</property>
         <property name="child">
           <object class="GtkButton" id="button1">
-            <property name="label" translatable="yes">Button 1</property>
+            <property name="label" translatable="1">Button 1</property>
           </object>
         </property>
       </object>
     </child>
     <child>
       <object class="GtkAssistantPage">
-        <property name="title" translatable="yes">Page 2</property>
+        <property name="title" translatable="1">Page 2</property>
         <property name="child">
           <object class="GtkButton" id="button2">
-            <property name="label" translatable="yes">Button 2</property>
+            <property name="label" translatable="1">Button 2</property>
           </object>
         </property>
       </object>
diff --git a/testsuite/tools/simplify-data-3to4/box.expected b/testsuite/tools/simplify-data-3to4/box.expected
index 29c80079b0..54dde405b9 100644
--- a/testsuite/tools/simplify-data-3to4/box.expected
+++ b/testsuite/tools/simplify-data-3to4/box.expected
@@ -7,32 +7,32 @@
         <child>
           <object class="GtkBox">
             <property name="hexpand">1</property>
-            <property name="orientation">vertical</property>
+            <property name="orientation">1</property>
             <child>
               <object class="GtkBox">
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="hexpand">1</property>
                 <property name="vexpand">0</property>
                 <child>
                   <object class="GtkButton">
-                    <property name="halign">center</property>
-                    <property name="label" translatable="yes">_</property>
+                    <property name="halign">3</property>
+                    <property name="label" translatable="1">_</property>
                     <property name="focusable">1</property>
                     <property name="receives_default">1</property>
                   </object>
                 </child>
                 <child>
                   <object class="GtkButton">
-                    <property name="label" translatable="yes">F</property>
+                    <property name="label" translatable="1">F</property>
                     <property name="focusable">1</property>
                     <property name="receives_default">1</property>
                   </object>
                 </child>
                 <child>
                   <object class="GtkButton">
-                    <property name="halign">center</property>
+                    <property name="halign">3</property>
                     <property name="hexpand">1</property>
-                    <property name="label" translatable="yes">E</property>
+                    <property name="label" translatable="1">E</property>
                     <property name="focusable">1</property>
                     <property name="receives_default">1</property>
                   </object>
@@ -40,7 +40,7 @@
                 <child>
                   <object class="GtkButton">
                     <property name="hexpand">1</property>
-                    <property name="label" translatable="yes">FE</property>
+                    <property name="label" translatable="1">FE</property>
                     <property name="focusable">1</property>
                     <property name="receives_default">1</property>
                   </object>
@@ -50,29 +50,29 @@
             <child>
               <object class="GtkBox">
                 <property name="can_focus">0</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="hexpand">1</property>
                 <property name="vexpand">0</property>
                 <child>
                   <object class="GtkButton">
-                    <property name="halign">center</property>
-                    <property name="label" translatable="yes">_</property>
+                    <property name="halign">3</property>
+                    <property name="label" translatable="1">_</property>
                     <property name="focusable">1</property>
                     <property name="receives_default">1</property>
                   </object>
                 </child>
                 <child>
                   <object class="GtkButton">
-                    <property name="label" translatable="yes">F</property>
+                    <property name="label" translatable="1">F</property>
                     <property name="focusable">1</property>
                     <property name="receives_default">1</property>
                   </object>
                 </child>
                 <child>
                   <object class="GtkButton">
-                    <property name="halign">center</property>
+                    <property name="halign">3</property>
                     <property name="hexpand">1</property>
-                    <property name="label" translatable="yes">E</property>
+                    <property name="label" translatable="1">E</property>
                     <property name="focusable">1</property>
                     <property name="receives_default">1</property>
                   </object>
@@ -80,7 +80,7 @@
                 <child>
                   <object class="GtkButton">
                     <property name="hexpand">1</property>
-                    <property name="label" translatable="yes">FE</property>
+                    <property name="label" translatable="1">FE</property>
                     <property name="focusable">1</property>
                     <property name="receives_default">1</property>
                   </object>
@@ -91,30 +91,30 @@
         </child>
         <child>
           <object class="GtkBox">
-            <property name="halign">center</property>
-            <property name="orientation">vertical</property>
+            <property name="halign">3</property>
+            <property name="orientation">1</property>
             <property name="can_focus">0</property>
             <property name="vexpand">1</property>
             <child>
               <object class="GtkButton">
-                <property name="valign">center</property>
-                <property name="label" translatable="yes">_</property>
+                <property name="valign">3</property>
+                <property name="label" translatable="1">_</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">F</property>
+                <property name="label" translatable="1">F</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">E</property>
+                <property name="label" translatable="1">E</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
               </object>
@@ -122,7 +122,7 @@
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">FE</property>
+                <property name="label" translatable="1">FE</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
               </object>
@@ -133,27 +133,27 @@
           <object class="GtkBox">
             <property name="hexpand">0</property>
             <property name="vexpand">1</property>
-            <property name="orientation">vertical</property>
+            <property name="orientation">1</property>
             <child>
               <object class="GtkButton">
-                <property name="valign">center</property>
-                <property name="label" translatable="yes">_I</property>
+                <property name="valign">3</property>
+                <property name="label" translatable="1">_I</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FI</property>
+                <property name="label" translatable="1">FI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">EI</property>
+                <property name="label" translatable="1">EI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
               </object>
@@ -161,145 +161,145 @@
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">FEI</property>
+                <property name="label" translatable="1">FEI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_S</property>
+                <property name="label" translatable="1">_S</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FS</property>
+                <property name="label" translatable="1">FS</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">start</property>
+                <property name="valign">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">ES</property>
+                <property name="label" translatable="1">ES</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">FES</property>
+                <property name="label" translatable="1">FES</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">start</property>
+                <property name="valign">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_N</property>
+                <property name="label" translatable="1">_N</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FN</property>
+                <property name="label" translatable="1">FN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">end</property>
+                <property name="valign">2</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">EN</property>
+                <property name="label" translatable="1">EN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">FEN</property>
+                <property name="label" translatable="1">FEN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">end</property>
+                <property name="valign">2</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_C</property>
+                <property name="label" translatable="1">_C</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FC</property>
+                <property name="label" translatable="1">FC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">EC</property>
+                <property name="label" translatable="1">EC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">FEC</property>
+                <property name="label" translatable="1">FEC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_B</property>
+                <property name="label" translatable="1">_B</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FB</property>
+                <property name="label" translatable="1">FB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">baseline</property>
+                <property name="valign">4</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">EB</property>
+                <property name="label" translatable="1">EB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
                 <property name="vexpand">1</property>
-                <property name="label" translatable="yes">FEB</property>
+                <property name="label" translatable="1">FEB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">baseline</property>
+                <property name="valign">4</property>
               </object>
             </child>
           </object>
@@ -308,11 +308,11 @@
           <object class="GtkBox">
             <property name="hexpand">0</property>
             <property name="vexpand">1</property>
-            <property name="orientation">vertical</property>
+            <property name="orientation">1</property>
             <child>
               <object class="GtkButton">
-                <property name="valign">center</property>
-                <property name="label" translatable="yes">_I</property>
+                <property name="valign">3</property>
+                <property name="label" translatable="1">_I</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
                 <property name="vexpand">0</property>
@@ -320,7 +320,7 @@
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FI</property>
+                <property name="label" translatable="1">FI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
                 <property name="vexpand">0</property>
@@ -328,8 +328,8 @@
             </child>
             <child>
               <object class="GtkButton">
-                <property name="valign">center</property>
-                <property name="label" translatable="yes">EI</property>
+                <property name="valign">3</property>
+                <property name="label" translatable="1">EI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
                 <property name="vexpand">1</property>
@@ -337,7 +337,7 @@
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FEI</property>
+                <property name="label" translatable="1">FEI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
                 <property name="vexpand">1</property>
@@ -345,145 +345,145 @@
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_S</property>
+                <property name="label" translatable="1">_S</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">0</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FS</property>
+                <property name="label" translatable="1">FS</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">start</property>
+                <property name="valign">1</property>
                 <property name="vexpand">0</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">ES</property>
+                <property name="label" translatable="1">ES</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FES</property>
+                <property name="label" translatable="1">FES</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">start</property>
+                <property name="valign">1</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_N</property>
+                <property name="label" translatable="1">_N</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">0</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FN</property>
+                <property name="label" translatable="1">FN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">end</property>
+                <property name="valign">2</property>
                 <property name="vexpand">0</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">EN</property>
+                <property name="label" translatable="1">EN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FEN</property>
+                <property name="label" translatable="1">FEN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">end</property>
+                <property name="valign">2</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_C</property>
+                <property name="label" translatable="1">_C</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">0</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FC</property>
+                <property name="label" translatable="1">FC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">0</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">EC</property>
+                <property name="label" translatable="1">EC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FEC</property>
+                <property name="label" translatable="1">FEC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_B</property>
+                <property name="label" translatable="1">_B</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">0</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FB</property>
+                <property name="label" translatable="1">FB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">baseline</property>
+                <property name="valign">4</property>
                 <property name="vexpand">0</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">EB</property>
+                <property name="label" translatable="1">EB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FEB</property>
+                <property name="label" translatable="1">FEB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">baseline</property>
+                <property name="valign">4</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
@@ -493,11 +493,11 @@
           <object class="GtkBox">
             <property name="hexpand">0</property>
             <property name="vexpand">1</property>
-            <property name="orientation">vertical</property>
+            <property name="orientation">1</property>
             <child>
               <object class="GtkButton">
-                <property name="valign">center</property>
-                <property name="label" translatable="yes">_I</property>
+                <property name="valign">3</property>
+                <property name="label" translatable="1">_I</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
                 <property name="vexpand">1</property>
@@ -505,7 +505,7 @@
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FI</property>
+                <property name="label" translatable="1">FI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
                 <property name="vexpand">1</property>
@@ -513,8 +513,8 @@
             </child>
             <child>
               <object class="GtkButton">
-                <property name="valign">center</property>
-                <property name="label" translatable="yes">EI</property>
+                <property name="valign">3</property>
+                <property name="label" translatable="1">EI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
                 <property name="vexpand">1</property>
@@ -522,7 +522,7 @@
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FEI</property>
+                <property name="label" translatable="1">FEI</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
                 <property name="vexpand">1</property>
@@ -530,145 +530,145 @@
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_S</property>
+                <property name="label" translatable="1">_S</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FS</property>
+                <property name="label" translatable="1">FS</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">start</property>
+                <property name="valign">1</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">ES</property>
+                <property name="label" translatable="1">ES</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FES</property>
+                <property name="label" translatable="1">FES</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">start</property>
+                <property name="valign">1</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_N</property>
+                <property name="label" translatable="1">_N</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FN</property>
+                <property name="label" translatable="1">FN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">end</property>
+                <property name="valign">2</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">EN</property>
+                <property name="label" translatable="1">EN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FEN</property>
+                <property name="label" translatable="1">FEN</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">end</property>
+                <property name="valign">2</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_C</property>
+                <property name="label" translatable="1">_C</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FC</property>
+                <property name="label" translatable="1">FC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">EC</property>
+                <property name="label" translatable="1">EC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FEC</property>
+                <property name="label" translatable="1">FEC</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">_B</property>
+                <property name="label" translatable="1">_B</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FB</property>
+                <property name="label" translatable="1">FB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">baseline</property>
+                <property name="valign">4</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">EB</property>
+                <property name="label" translatable="1">EB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">center</property>
+                <property name="valign">3</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
             <child>
               <object class="GtkButton">
-                <property name="label" translatable="yes">FEB</property>
+                <property name="label" translatable="1">FEB</property>
                 <property name="focusable">1</property>
                 <property name="receives_default">1</property>
-                <property name="valign">baseline</property>
+                <property name="valign">4</property>
                 <property name="vexpand">1</property>
               </object>
             </child>
diff --git a/testsuite/tools/simplify-data-3to4/checkbutton.expected 
b/testsuite/tools/simplify-data-3to4/checkbutton.expected
index 63b5655f7e..24ef3bcd37 100644
--- a/testsuite/tools/simplify-data-3to4/checkbutton.expected
+++ b/testsuite/tools/simplify-data-3to4/checkbutton.expected
@@ -4,7 +4,7 @@
   <object class="GtkWindow" id="window1">
     <property name="child">
       <object class="GtkBox" id="box1">
-        <property name="orientation">GTK_ORIENTATION_VERTICAL</property>
+        <property name="orientation">1</property>
         <child>
           <object class="GtkCheckButton" id="checkbutton1">
             <property name="hexpand">1</property>
diff --git a/testsuite/tools/simplify-data-3to4/grid.expected 
b/testsuite/tools/simplify-data-3to4/grid.expected
index deeb8b9c59..60f2972846 100644
--- a/testsuite/tools/simplify-data-3to4/grid.expected
+++ b/testsuite/tools/simplify-data-3to4/grid.expected
@@ -6,7 +6,7 @@
       <object class="GtkGrid" id="grid1">
         <child>
           <object class="GtkToggleButton" id="button1">
-            <property name="label" translatable="yes">Hello World!</property>
+            <property name="label" translatable="1">Hello World!</property>
             <property name="active">1</property>
             <property name="receives_default">1</property>
             <property name="hexpand">1</property>
@@ -23,7 +23,7 @@
         </child>
         <child>
           <object class="GtkCheckButton" id="button2">
-            <property name="label" translatable="yes">Hello World!</property>
+            <property name="label" translatable="1">Hello World!</property>
             <property name="receives_default">1</property>
             <layout>
               <property name="column">1</property>
@@ -33,7 +33,7 @@
         </child>
         <child>
           <object class="GtkCheckButton" id="button3">
-            <property name="label" translatable="yes">Hello World!</property>
+            <property name="label" translatable="1">Hello World!</property>
             <property name="receives_default">1</property>
             <layout>
               <property name="column">2</property>
@@ -43,7 +43,7 @@
         </child>
         <child>
           <object class="GtkCheckButton" id="button4">
-            <property name="label" translatable="yes">Hello World!</property>
+            <property name="label" translatable="1">Hello World!</property>
             <property name="active">1</property>
             <property name="group">button3</property>
             <property name="receives_default">1</property>
@@ -55,7 +55,7 @@
         </child>
         <child>
           <object class="GtkToggleButton" id="button4a">
-            <property name="label" translatable="yes">Hello World!</property>
+            <property name="label" translatable="1">Hello World!</property>
             <property name="group">button4</property>
             <property name="receives_default">1</property>
             <layout>
@@ -100,8 +100,8 @@
           <object class="GtkButton" id="button8">
             <property name="focusable">1</property>
             <property name="receives_default">1</property>
-            <property name="halign">center</property>
-            <property name="valign">center</property>
+            <property name="halign">3</property>
+            <property name="valign">3</property>
             <layout>
               <property name="column">1</property>
               <property name="row">1</property>
@@ -112,8 +112,8 @@
           <object class="GtkButton" id="button9">
             <property name="focusable">1</property>
             <property name="receives_default">1</property>
-            <property name="halign">center</property>
-            <property name="valign">center</property>
+            <property name="halign">3</property>
+            <property name="valign">3</property>
             <layout>
               <property name="column">2</property>
               <property name="row">1</property>
diff --git a/testsuite/tools/simplify-data-3to4/gtkfilechooserdialog.expected 
b/testsuite/tools/simplify-data-3to4/gtkfilechooserdialog.expected
index b96ec784d8..9275810c54 100644
--- a/testsuite/tools/simplify-data-3to4/gtkfilechooserdialog.expected
+++ b/testsuite/tools/simplify-data-3to4/gtkfilechooserdialog.expected
@@ -9,7 +9,7 @@
     <child internal-child="content_area">
       <object class="GtkBox" id="dialog-vbox1">
         <property name="visible">0</property>
-        <property name="orientation">vertical</property>
+        <property name="orientation">1</property>
         <property name="border-width">0</property>
         <child>
           <object class="GtkFileChooserWidget" id="widget">
@@ -31,6 +31,6 @@
     </child>
   </template>
   <object class="GtkSizeGroup" id="buttons">
-    <property name="mode">vertical</property>
+    <property name="mode">2</property>
   </object>
 </interface>
diff --git a/testsuite/tools/simplify-data-3to4/notebook.expected 
b/testsuite/tools/simplify-data-3to4/notebook.expected
index b946bbaefd..e48a167727 100644
--- a/testsuite/tools/simplify-data-3to4/notebook.expected
+++ b/testsuite/tools/simplify-data-3to4/notebook.expected
@@ -8,12 +8,12 @@
           <object class="GtkNotebookPage">
             <property name="child">
               <object class="GtkButton" id="page1">
-                <property name="label" translatable="yes">Yes</property>
+                <property name="label" translatable="1">Yes</property>
               </object>
             </property>
             <property name="tab">
               <object class="GtkLabel" id="tab1">
-                <property name="label" translatable="yes">Tab 1</property>
+                <property name="label" translatable="1">Tab 1</property>
               </object>
             </property>
           </object>
@@ -22,12 +22,12 @@
           <object class="GtkNotebookPage">
             <property name="child">
               <object class="GtkButton" id="page2">
-                <property name="label" translatable="yes">No</property>
+                <property name="label" translatable="1">No</property>
               </object>
             </property>
             <property name="tab">
               <object class="GtkLabel" id="tab2">
-                <property name="label" translatable="yes">Tab 2</property>
+                <property name="label" translatable="1">Tab 2</property>
               </object>
             </property>
           </object>
diff --git a/testsuite/tools/simplify-data-3to4/office-runner.expected 
b/testsuite/tools/simplify-data-3to4/office-runner.expected
index 799691e703..405f5f125d 100644
--- a/testsuite/tools/simplify-data-3to4/office-runner.expected
+++ b/testsuite/tools/simplify-data-3to4/office-runner.expected
@@ -3,7 +3,7 @@
   <requires lib="gtk" version="4.0"/>
   <object class="GtkWindow" id="window1">
     <property name="border_width">12</property>
-    <property name="title" translatable="yes">Office Runner</property>
+    <property name="title" translatable="1">Office Runner</property>
     <property name="resizable">0</property>
     <property name="window_position">center</property>
     <property name="child">
@@ -11,7 +11,7 @@
         <property name="margin-start">12</property>
         <property name="margin-end">12</property>
         <property name="margin_bottom">12</property>
-        <property name="orientation">vertical</property>
+        <property name="orientation">1</property>
         <property name="spacing">12</property>
         <child>
           <object class="GtkNotebook" id="notebook1">
@@ -34,10 +34,10 @@
                     </child>
                     <child>
                       <object class="GtkLabel" id="label5">
-                        <property name="valign">start</property>
+                        <property name="valign">1</property>
                         <property name="hexpand">1</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes"> • Click the &quot;Run!&quot; button, and 
then dash to your desk or meeting.
+                        <property name="label" translatable="1"> • Click the &quot;Run!&quot; button, and 
then dash to your desk or meeting.
  • You are allowed to close your laptop lid to run faster
 </property>
                         <property name="use_markup">1</property>
@@ -49,7 +49,7 @@
                     </child>
                     <child>
                       <object class="GtkLabel" id="label7">
-                        <property name="label" translatable="yes">Rules</property>
+                        <property name="label" translatable="1">Rules</property>
                         <attributes>
                           <attribute name="scale" value="2"></attribute>
                         </attributes>
@@ -66,7 +66,7 @@
                 </property>
                 <property name="tab">
                   <object class="GtkLabel" id="label1">
-                    <property name="label" translatable="no">page 1</property>
+                    <property name="label" translatable="0">page 1</property>
                   </object>
                 </property>
               </object>
@@ -91,7 +91,7 @@
                       <object class="GtkLabel" id="time_label">
                         <property name="hexpand">1</property>
                         <property name="vexpand">1</property>
-                        <property name="label" translatable="no">00:00.00</property>
+                        <property name="label" translatable="0">00:00.00</property>
                         <attributes>
                           <attribute name="scale" value="10"></attribute>
                           <attribute name="font-features" value="tnum 1"></attribute>
@@ -106,7 +106,7 @@
                 </property>
                 <property name="tab">
                   <object class="GtkLabel" id="label2">
-                    <property name="label" translatable="no">page 2</property>
+                    <property name="label" translatable="0">page 2</property>
                   </object>
                 </property>
               </object>
@@ -129,17 +129,15 @@
                     </child>
                     <child>
                       <object class="GtkBox" id="box2">
-                        <property name="valign">center</property>
-                        <property name="orientation">vertical</property>
+                        <property name="valign">3</property>
+                        <property name="orientation">1</property>
                         <child>
                           <object class="GtkLabel" id="result_label">
-                            <property name="valign">start</property>
+                            <property name="css-classes">dim-label</property>
+                            <property name="valign">1</property>
                             <property name="xalign">0</property>
-                            <property name="label" translatable="no">Silver Trophy!</property>
+                            <property name="label" translatable="0">Silver Trophy!</property>
                             <property name="use_markup">1</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
                             <attributes>
                               <attribute name="weight" value="bold"></attribute>
                               <attribute name="scale" value="1.5"></attribute>
@@ -148,18 +146,18 @@
                         </child>
                         <child>
                           <object class="GtkLabel" id="current_time_label">
-                            <property name="valign">start</property>
+                            <property name="valign">1</property>
                             <property name="xalign">0</property>
-                            <property name="label" translatable="no">You managed to finish the route with 
the 2nd best time ever, &lt;b&gt;48.15 seconds!&lt;/b&gt;    </property>
+                            <property name="label" translatable="0">You managed to finish the route with the 
2nd best time ever, &lt;b&gt;48.15 seconds!&lt;/b&gt;     </property>
                             <property name="use_markup">1</property>
                             <property name="wrap">1</property>
                           </object>
                         </child>
                         <child>
                           <object class="GtkLabel" id="better_time_label">
-                            <property name="valign">start</property>
+                            <property name="valign">1</property>
                             <property name="xalign">0</property>
-                            <property name="label" translatable="no">Only &lt;b&gt;3.75 seconds&lt;/b&gt; 
separate you from the gold trophy!</property>
+                            <property name="label" translatable="0">Only &lt;b&gt;3.75 seconds&lt;/b&gt; 
separate you from the gold trophy!</property>
                             <property name="use_markup">1</property>
                             <property name="wrap">1</property>
                           </object>
@@ -174,7 +172,7 @@
                 </property>
                 <property name="tab">
                   <object class="GtkLabel" id="label3">
-                    <property name="label" translatable="no">page 3</property>
+                    <property name="label" translatable="0">page 3</property>
                   </object>
                 </property>
               </object>
@@ -189,7 +187,7 @@
             <property name="use_action_appearance">False</property>
             <child>
               <object class="GtkLabel" id="run_button_label">
-                <property name="label" translatable="yes">Run!</property>
+                <property name="label" translatable="1">Run!</property>
                 <attributes>
                   <attribute name="scale" value="3"></attribute>
                 </attributes>
diff --git a/testsuite/tools/simplify-data-3to4/stack.expected 
b/testsuite/tools/simplify-data-3to4/stack.expected
index b8f1320c14..2f3962a521 100644
--- a/testsuite/tools/simplify-data-3to4/stack.expected
+++ b/testsuite/tools/simplify-data-3to4/stack.expected
@@ -20,7 +20,7 @@
                 <property name="needs-attention">1</property>
                 <property name="child">
                   <object class="GtkButton" id="page1">
-                    <property name="label" translatable="yes">Yes</property>
+                    <property name="label" translatable="1">Yes</property>
                   </object>
                 </property>
               </object>
@@ -32,7 +32,7 @@
                 <property name="icon-name">page2-icon</property>
                 <property name="child">
                   <object class="GtkButton" id="page2">
-                    <property name="label" translatable="yes">No</property>
+                    <property name="label" translatable="1">No</property>
                   </object>
                 </property>
               </object>
diff --git a/testsuite/tools/simplify-data-3to4/toolbar.expected 
b/testsuite/tools/simplify-data-3to4/toolbar.expected
index c9568b0605..d1bafefd5c 100644
--- a/testsuite/tools/simplify-data-3to4/toolbar.expected
+++ b/testsuite/tools/simplify-data-3to4/toolbar.expected
@@ -5,14 +5,14 @@
     <property name="css-classes">toolbar</property>
     <child>
       <object class="GtkButton">
-        <property name="label" translatable="yes">New</property>
+        <property name="label" translatable="1">New</property>
         <property name="icon-name">document-new</property>
-        <property name="tooltip-text" translatable="yes">Create a new document</property>
+        <property name="tooltip-text" translatable="1">Create a new document</property>
       </object>
     </child>
     <child>
       <object class="GtkSeparator">
-        <property name="orientation">vertical</property>
+        <property name="orientation">1</property>
       </object>
     </child>
     <child>
diff --git a/testsuite/tools/simplify-data/test3.expected b/testsuite/tools/simplify-data/test3.expected
index 511e7ee76b..a3adce5a8e 100644
--- a/testsuite/tools/simplify-data/test3.expected
+++ b/testsuite/tools/simplify-data/test3.expected
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <interface>
   <object class="GtkWindow">
-    <property name="visible" translatable="yes">0</property>
+    <property name="visible" translatable="1">0</property>
   </object>
 </interface>
diff --git a/tools/gtk-builder-tool-simplify.c b/tools/gtk-builder-tool-simplify.c
index 3eb5a21f78..e9d15f6582 100644
--- a/tools/gtk-builder-tool-simplify.c
+++ b/tools/gtk-builder-tool-simplify.c
@@ -579,6 +579,52 @@ property_is_boolean (Element      *element,
   return FALSE;
 }
 
+static gboolean
+property_is_enum (Element      *element,
+                  MyParserData *data,
+                  GType        *type)
+{
+  GParamSpec *pspec = NULL;
+  const char *class_name;
+  const char *property_name;
+  int i;
+  PropKind kind;
+
+  kind = get_prop_kind (element);
+  class_name = get_class_name (element);
+  property_name = "";
+
+  for (i = 0; element->attribute_names[i]; i++)
+    {
+      if (strcmp (element->attribute_names[i], "name") == 0)
+        property_name = (const char *)element->attribute_values[i];
+    }
+
+  if (class_name && property_name)
+    pspec = get_property_pspec (data, class_name, property_name, kind);
+  if (pspec && G_TYPE_IS_ENUM (G_PARAM_SPEC_VALUE_TYPE (pspec)))
+    {
+      *type = G_PARAM_SPEC_VALUE_TYPE (pspec);
+      return TRUE;
+    }
+
+  *type = G_TYPE_NONE;
+  return FALSE;
+}
+
+static char *
+canonical_enum_value (MyParserData *data,
+                      GType         type,
+                      const char   *string)
+{
+  GValue value = G_VALUE_INIT;
+
+  if (gtk_builder_value_from_string_type (data->builder, type, string, &value, NULL))
+    return g_strdup_printf ("%d", g_value_get_enum (&value));
+
+  return NULL;
+}
+
 static void
 warn_missing_property (Element      *element,
                        MyParserData *data,
@@ -1871,16 +1917,38 @@ simplify_element (Element      *element,
                   MyParserData *data)
 {
   GList *l;
+  GType type;
 
   if (!is_pcdata_element (element))
-    g_clear_pointer (&element->data, g_free);
-  else if (g_str_equal (element->element_name, "property") &&
-           property_is_boolean (element, data))
     {
-      const char *b = canonical_boolean_value (data, element->data);
-      g_free (element->data);
-      element->data = g_strdup (b);
+      g_clear_pointer (&element->data, g_free);
     }
+  else if (g_str_equal (element->element_name, "property"))
+    {
+      if (property_is_boolean (element, data))
+        {
+          const char *b = canonical_boolean_value (data, element->data);
+          g_free (element->data);
+          element->data = g_strdup (b);
+        }
+      else if (property_is_enum (element, data, &type))
+        {
+          char *e = canonical_enum_value (data, type, element->data);
+          g_free (element->data);
+          element->data = e;
+        }
+
+      for (int i = 0; element->attribute_names[i]; i++)
+        {
+          if (g_str_equal (element->attribute_names[i], "translatable"))
+            {
+              const char *b = canonical_boolean_value (data, element->attribute_values[i]);
+              g_free (element->attribute_values[i]);
+              element->attribute_values[i] = g_strdup (b);
+              break;
+            }
+        }
+     }
 
   l = element->children;
   while (l)


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