[glade] Enhancing GtkComboBox editing regarding tearoff menus



commit 9b06b5bb0968d58536918bfb80f4904825a569dd
Author: Tristan Van Berkom <tristan van berkom gmail com>
Date:   Mon May 13 18:35:25 2013 +0900

    Enhancing GtkComboBox editing regarding tearoff menus

 plugins/gtk+/glade-combo-box-text-editor.ui |   53 ++++++++++++++++++++++++++-
 plugins/gtk+/glade-gtk-combo-box.c          |   10 +++++
 plugins/gtk+/gtk+.xml.in                    |    8 +++--
 3 files changed, 66 insertions(+), 5 deletions(-)
---
diff --git a/plugins/gtk+/glade-combo-box-text-editor.ui b/plugins/gtk+/glade-combo-box-text-editor.ui
index 5b6dc45..78bb0bd 100644
--- a/plugins/gtk+/glade-combo-box-text-editor.ui
+++ b/plugins/gtk+/glade-combo-box-text-editor.ui
@@ -83,7 +83,7 @@
           </object>
           <packing>
             <property name="left_attach">0</property>
-            <property name="top_attach">8</property>
+            <property name="top_attach">9</property>
             <property name="width">2</property>
             <property name="height">1</property>
           </packing>
@@ -98,7 +98,7 @@
           </object>
           <packing>
             <property name="left_attach">2</property>
-            <property name="top_attach">8</property>
+            <property name="top_attach">9</property>
             <property name="width">3</property>
             <property name="height">1</property>
           </packing>
@@ -223,6 +223,52 @@
           </packing>
         </child>
         <child>
+          <object class="GladePropertyShell" id="add_tearoffs_editor">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="margin_left">12</property>
+            <property name="hexpand">False</property>
+            <property name="property_name">add-tearoffs</property>
+            <property name="editor_type">GladeEpropCheck</property>
+            <property name="custom_text" translatable="yes">Tearoff menus</property>
+          </object>
+          <packing>
+            <property name="left_attach">0</property>
+            <property name="top_attach">8</property>
+            <property name="width">2</property>
+            <property name="height">1</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GladePropertyLabel" id="tearoff_title_label">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="property_name">tearoff-title</property>
+          </object>
+          <packing>
+            <property name="left_attach">2</property>
+            <property name="top_attach">8</property>
+            <property name="width">1</property>
+            <property name="height">1</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GladePropertyShell" id="tearoff_title_editor">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="property_name">tearoff-title</property>
+          </object>
+          <packing>
+            <property name="left_attach">3</property>
+            <property name="top_attach">8</property>
+            <property name="width">2</property>
+            <property name="height">1</property>
+          </packing>
+        </child>
+        <child>
+          <placeholder/>
+        </child>
+        <child>
           <placeholder/>
         </child>
         <child>
@@ -270,6 +316,9 @@
       <editor id="has_frame_editor"/>
       <editor id="button_sensitivity_label"/>
       <editor id="button_sensitivity_editor"/>
+      <editor id="add_tearoffs_editor"/>
+      <editor id="tearoff_title_label"/>
+      <editor id="tearoff_title_editor"/>
     </child-editors>
   </template>
 </interface>
diff --git a/plugins/gtk+/glade-gtk-combo-box.c b/plugins/gtk+/glade-gtk-combo-box.c
index 3309ccf..cdfadf7 100644
--- a/plugins/gtk+/glade-gtk-combo-box.c
+++ b/plugins/gtk+/glade-gtk-combo-box.c
@@ -70,6 +70,16 @@ glade_gtk_combo_box_set_property (GladeWidgetAdaptor * adaptor,
         gtk_combo_box_set_entry_text_column (GTK_COMBO_BOX (object),
                                              g_value_get_int (value));
     }
+  else if (!strcmp (id, "add-tearoffs"))
+    {
+      GladeWidget *widget = glade_widget_get_from_gobject (object);
+
+      if (g_value_get_boolean (value))
+       glade_widget_property_set_sensitive (widget, "tearoff-title", TRUE, NULL);
+      else
+       glade_widget_property_set_sensitive (widget, "tearoff-title", FALSE,
+                                            _("Tearoff menus are disabled"));
+    }
   else
     GWA_GET_CLASS (GTK_TYPE_CONTAINER)->set_property (adaptor,
                                                       object, id, value);
diff --git a/plugins/gtk+/gtk+.xml.in b/plugins/gtk+/gtk+.xml.in
index 5d6d9fd..08dfe7d 100644
--- a/plugins/gtk+/gtk+.xml.in
+++ b/plugins/gtk+/gtk+.xml.in
@@ -1536,9 +1536,11 @@ range of values</_tooltip>
       </signals>
       <properties>
         <property id="model" create-type="GtkListStore"/>
+       <property id="cell-area" disabled="True"/>
         <property id="popup-shown" since="2.10"/>
         <property id="arrow-scaling" since="3.2"/>
-        <property id="tearoff-title" since="2.10"/>
+       <property id="add-tearoffs" needs-sync="True"/>
+        <property id="tearoff-title" since="2.10" translatable="True"/>
         <property id="active" ignore="True"/>
         <property id="active-id" ignore="True" since="3.0"/>
         <property id="id-column" since="3.0"/>
@@ -1581,12 +1583,12 @@ range of values</_tooltip>
        <property id="wrap-width" disabled="True"/>
        <property id="row-span-column" disabled="True"/>
        <property id="column-span-column" disabled="True"/>
-       <property id="add-tearoffs" disabled="True"/>
-       <property id="tearoff-title" disabled="True"/>
        <property id="entry-text-column" disabled="True"/>
        <property id="id-column" disabled="True"/>
        <property id="cell-area" disabled="True"/>
 
+       <property id="add-tearoffs" custom-layout="True"/>
+       <property id="tearoff-title" custom-layout="True"/>
        <property id="has-entry" custom-layout="True"/>
        <property id="has-frame" custom-layout="True"/>
        <property id="button-sensitivity" custom-layout="True"/>


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