[glade/composite-templates-new: 2/6] Mega GTK+ 3.8 support commit.



commit 995ac2b1c1c0f125f8364984173e0fdeaaecc63f
Author: Tristan Van Berkom <tristan van berkom gmail com>
Date:   Sun Mar 31 19:58:17 2013 +0900

    Mega GTK+ 3.8 support commit.
    
      o Added GtkMenuButton with support
    
      o Made GtkToolbar & GtkCellRendererPixbuf use a GtkIconSize combo
        in the UI for properties installed as G_TYPE_UINT
    
      o Implemented new 'resource' mode for GtkImage editor
    
      o Added "since" attributes for everything introduced since 3.2 and later
    
      o Added deprecation attributes to any property/widget/signal that is
        deprecated (signals and properties don't use this attribute yet).
    
    Conflicts:
    
        plugins/gtk+/glade-gtk.c

 plugins/gtk+/glade-button-editor.c        |    9 ++-
 plugins/gtk+/glade-cell-renderer-editor.c |    6 +-
 plugins/gtk+/glade-gtk.c                  |   86 +++++++++++++----
 plugins/gtk+/glade-image-editor.c         |   70 +++++++++++++-
 plugins/gtk+/glade-image-editor.h         |    2 +
 plugins/gtk+/gtk+.xml.in                  |  152 +++++++++++++++++++++++-----
 6 files changed, 272 insertions(+), 53 deletions(-)
---
diff --git a/plugins/gtk+/glade-button-editor.c b/plugins/gtk+/glade-button-editor.c
index f1cce8e..0a0dc53 100644
--- a/plugins/gtk+/glade-button-editor.c
+++ b/plugins/gtk+/glade-button-editor.c
@@ -76,7 +76,6 @@ glade_button_editor_load (GladeEditable * editable, GladeWidget * widget)
     glade_editor_property_load_by_widget (GLADE_EDITOR_PROPERTY (l->data),
                                           widget);
 
-
   if (widget)
     {
       glade_widget_property_get (widget, "use-action-appearance",
@@ -516,6 +515,14 @@ glade_button_editor_new (GladeWidgetAdaptor * adaptor, GladeEditable * embed)
   gtk_box_pack_start (GTK_BOX (button_editor), button_editor->custom_radio,
                       FALSE, FALSE, 0);
 
+  /* Don't show the button customization for menu buttons */
+  if (g_type_is_a (glade_widget_adaptor_get_object_type (adaptor), GTK_TYPE_MENU_BUTTON))
+    {
+      gtk_widget_set_no_show_all (button_editor->standard_radio, TRUE);
+      gtk_widget_set_no_show_all (button_editor->custom_radio, TRUE);
+      gtk_widget_set_no_show_all (button_editor->standard_frame, TRUE);
+    }
+
   gtk_widget_show_all (GTK_WIDGET (button_editor));
 
   return GTK_WIDGET (button_editor);
diff --git a/plugins/gtk+/glade-cell-renderer-editor.c b/plugins/gtk+/glade-cell-renderer-editor.c
index 41beddf..9ce7869 100644
--- a/plugins/gtk+/glade-cell-renderer-editor.c
+++ b/plugins/gtk+/glade-cell-renderer-editor.c
@@ -320,8 +320,10 @@ glade_cell_renderer_editor_new (GladeWidgetAdaptor * adaptor,
 
       pclass = list->data;
 
-      if (glade_property_class_get_virtual (pclass))
-        continue;
+      /* "stock-size" is a normal property, but we virtualize it to use the GtkIconSize enumeration */
+      if (glade_property_class_get_virtual (pclass) &&
+         strcmp (glade_property_class_id (pclass), "stock-size") != 0)
+       continue;
 
       attr_name = g_strdup_printf ("attr-%s", glade_property_class_id (pclass));
       use_attr_name = g_strdup_printf ("use-attr-%s", glade_property_class_id (pclass));
diff --git a/plugins/gtk+/glade-gtk.c b/plugins/gtk+/glade-gtk.c
index 7804bd9..5d2b0b2 100644
--- a/plugins/gtk+/glade-gtk.c
+++ b/plugins/gtk+/glade-gtk.c
@@ -3323,6 +3323,9 @@ glade_gtk_entry_set_property (GladeWidgetAdaptor * adaptor,
             glade_widget_property_set_sensitive (gwidget, "primary-icon-pixbuf",
                                                  TRUE, NULL);
             break;
+          case GLADE_IMAGE_MODE_RESOURCE:
+           /* Doesnt apply for entry icons */
+           break;
         }
     }
   else if (!strcmp (id, "secondary-icon-mode"))
@@ -3352,6 +3355,9 @@ glade_gtk_entry_set_property (GladeWidgetAdaptor * adaptor,
                                                  "secondary-icon-pixbuf", TRUE,
                                                  NULL);
             break;
+          case GLADE_IMAGE_MODE_RESOURCE:
+           /* Doesnt apply for entry icons */
+           break;
         }
     }
   else if (!strcmp (id, "primary-icon-tooltip-text") ||
@@ -4334,13 +4340,18 @@ glade_gtk_image_read_widget (GladeWidgetAdaptor * adaptor,
       property = glade_widget_get_property (widget, "icon-name");
       glade_widget_property_set (widget, "image-mode", GLADE_IMAGE_MODE_ICON);
     }
+  else if (glade_widget_property_original_default (widget, "resource") == FALSE)
+    {
+      property = glade_widget_get_property (widget, "resource");
+      glade_widget_property_set (widget, "image-mode", GLADE_IMAGE_MODE_RESOURCE);
+    }
   else if (glade_widget_property_original_default (widget, "pixbuf") == FALSE)
     {
       property = glade_widget_get_property (widget, "pixbuf");
       glade_widget_property_set (widget, "image-mode",
                                  GLADE_IMAGE_MODE_FILENAME);
     }
-  else                          /*  if (glade_widget_property_original_default (widget, "stock") == FALSE) */
+  else  /*  if (glade_widget_property_original_default (widget, "stock") == FALSE) */
     {
       property = glade_widget_get_property (widget, "stock");
       glade_widget_property_set (widget, "image-mode", GLADE_IMAGE_MODE_STOCK);
@@ -4349,11 +4360,11 @@ glade_gtk_image_read_widget (GladeWidgetAdaptor * adaptor,
   glade_property_sync (property);
 }
 
-
-void
-glade_gtk_image_write_widget (GladeWidgetAdaptor * adaptor,
-                              GladeWidget * widget,
-                              GladeXmlContext * context, GladeXmlNode * node)
+static void
+glade_gtk_write_icon_size (GladeWidget * widget,
+                          GladeXmlContext * context,
+                          GladeXmlNode * node,
+                          const gchar *prop_name)
 {
   GladeXmlNode *prop_node;
   GladeProperty *size_prop;
@@ -4361,18 +4372,12 @@ glade_gtk_image_write_widget (GladeWidgetAdaptor * adaptor,
   GtkIconSize icon_size;
   gchar *value;
 
-  if (!glade_xml_node_verify (node, GLADE_XML_TAG_WIDGET))
-    return;
-
-  /* First chain up and write all the normal properties (including "use-stock")... */
-  GWA_GET_CLASS (GTK_TYPE_WIDGET)->write_widget (adaptor, widget, context,
-                                                 node);
-
   /* We have to save icon-size as an integer, the core will take care of 
    * loading the int value though.
    */
-  size_prop = glade_widget_get_property (widget, "icon-size");
-  if (!glade_property_original_default (size_prop))
+  size_prop = glade_widget_get_property (widget, prop_name);
+  if (glade_property_get_enabled (size_prop) &&
+      !glade_property_original_default (size_prop))
     {
       pclass = glade_property_get_class (size_prop);
       prop_node = glade_xml_node_new (context, GLADE_TAG_PROPERTY);
@@ -4388,6 +4393,20 @@ glade_gtk_image_write_widget (GladeWidgetAdaptor * adaptor,
     }
 }
 
+void
+glade_gtk_image_write_widget (GladeWidgetAdaptor * adaptor,
+                              GladeWidget * widget,
+                              GladeXmlContext * context, GladeXmlNode * node)
+{
+  if (!glade_xml_node_verify (node, GLADE_XML_TAG_WIDGET))
+    return;
+
+  /* First chain up and write all the normal properties (including "use-stock")... */
+  GWA_GET_CLASS (GTK_TYPE_WIDGET)->write_widget (adaptor, widget, context, node);
+
+  glade_gtk_write_icon_size (widget, context, node, "icon-size");
+}
+
 
 static void
 glade_gtk_image_set_image_mode (GObject * object, const GValue * value)
@@ -4405,12 +4424,12 @@ glade_gtk_image_set_image_mode (GObject * object, const GValue * value)
                                        NOT_SELECTED_MSG);
   glade_widget_property_set_sensitive (gwidget, "pixbuf", FALSE,
                                        NOT_SELECTED_MSG);
+  glade_widget_property_set_sensitive (gwidget, "resource", FALSE,
+                                       NOT_SELECTED_MSG);
   glade_widget_property_set_sensitive (gwidget, "icon-size", FALSE,
-                                       _
-                                       ("This property only applies to stock images"));
+                                       _("This property only applies to stock images"));
   glade_widget_property_set_sensitive (gwidget, "pixel-size", FALSE,
-                                       _
-                                       ("This property only applies to named icons"));
+                                       _("This property only applies to named icons"));
 
   switch ((type = g_value_get_int (value)))
     {
@@ -4424,6 +4443,10 @@ glade_gtk_image_set_image_mode (GObject * object, const GValue * value)
         glade_widget_property_set_sensitive (gwidget, "pixel-size", TRUE, NULL);
         break;
 
+      case GLADE_IMAGE_MODE_RESOURCE:
+        glade_widget_property_set_sensitive (gwidget, "resource", TRUE, NULL);
+        break;
+
       case GLADE_IMAGE_MODE_FILENAME:
         glade_widget_property_set_sensitive (gwidget, "pixbuf", TRUE, NULL);
       default:
@@ -4488,6 +4511,8 @@ glade_gtk_image_set_property (GladeWidgetAdaptor * adaptor,
           case GLADE_IMAGE_MODE_FILENAME:
             if (!strcmp (id, "stock") || !strcmp (id, "icon-name"))
               return;
+          case GLADE_IMAGE_MODE_RESOURCE:
+           /* Screw the resource mode here, we can't apply them at Glade's runtime anyway  */
           default:
             break;
         }
@@ -5995,6 +6020,21 @@ glade_gtk_toolbar_action_activate (GladeWidgetAdaptor * adaptor,
                                                          object, action_path);
 }
 
+/* Write the GtkIconSize as an integer */
+void
+glade_gtk_toolbar_write_widget (GladeWidgetAdaptor * adaptor,
+                               GladeWidget * widget,
+                               GladeXmlContext * context, GladeXmlNode * node)
+{
+  if (!glade_xml_node_verify (node, GLADE_XML_TAG_WIDGET))
+    return;
+
+  /* First chain up and write all the normal properties (including "use-stock")... */
+  GWA_GET_CLASS (GTK_TYPE_CONTAINER)->write_widget (adaptor, widget, context, node);
+
+  glade_gtk_write_icon_size (widget, context, node, "icon-size");
+}
+
 
 /* ----------------------------- GtkToolPalette ------------------------------ */
 void
@@ -9610,7 +9650,13 @@ glade_gtk_cell_renderer_write_properties (GladeWidget * widget,
           prop = glade_widget_get_property (widget, attr_name);
 
           if (!use_attr && prop)
-            glade_property_write (prop, context, node);
+           {
+             /* Special case to write GtkCellRendererPixbuf:stock-size */
+             if (strcmp (attr_name, "stock-size") == 0)
+               glade_gtk_write_icon_size (widget, context, node, "stock-size");
+             else
+               glade_property_write (prop, context, node);
+           }
 
           g_free (use_attr_str);
         }
diff --git a/plugins/gtk+/glade-image-editor.c b/plugins/gtk+/glade-image-editor.c
index 748b907..25b28d6 100644
--- a/plugins/gtk+/glade-image-editor.c
+++ b/plugins/gtk+/glade-image-editor.c
@@ -87,6 +87,10 @@ glade_image_editor_load (GladeEditable * editable, GladeWidget * widget)
             gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
                                           (image_editor->icon_radio), TRUE);
             break;
+          case GLADE_IMAGE_MODE_RESOURCE:
+            gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+                                          (image_editor->resource_radio), TRUE);
+            break;
           case GLADE_IMAGE_MODE_FILENAME:
             gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
                                           (image_editor->file_radio), TRUE);
@@ -158,6 +162,8 @@ set_stock_mode (GladeImageEditor * image_editor)
   glade_command_set_property (property, NULL);
   property = glade_widget_get_property (gwidget, "pixbuf");
   glade_command_set_property (property, NULL);
+  property = glade_widget_get_property (gwidget, "resource");
+  glade_command_set_property (property, NULL);
 
   property = glade_widget_get_property (gwidget, "stock");
   glade_property_get_default (property, &value);
@@ -178,11 +184,27 @@ set_icon_mode (GladeImageEditor * image_editor)
   glade_command_set_property (property, NULL);
   property = glade_widget_get_property (gwidget, "pixbuf");
   glade_command_set_property (property, NULL);
+  property = glade_widget_get_property (gwidget, "resource");
+  glade_command_set_property (property, NULL);
   property = glade_widget_get_property (gwidget, "image-mode");
   glade_command_set_property (property, GLADE_IMAGE_MODE_ICON);
 }
 
+static void
+set_resource_mode (GladeImageEditor * image_editor)
+{
+  GladeProperty *property;
+  GladeWidget   *gwidget = glade_editable_loaded_widget (GLADE_EDITABLE (image_editor));
 
+  property = glade_widget_get_property (gwidget, "stock");
+  glade_command_set_property (property, NULL);
+  property = glade_widget_get_property (gwidget, "icon-name");
+  glade_command_set_property (property, NULL);
+  property = glade_widget_get_property (gwidget, "pixbuf");
+  glade_command_set_property (property, NULL);
+  property = glade_widget_get_property (gwidget, "image-mode");
+  glade_command_set_property (property, GLADE_IMAGE_MODE_RESOURCE);
+}
 
 static void
 set_file_mode (GladeImageEditor * image_editor)
@@ -194,6 +216,8 @@ set_file_mode (GladeImageEditor * image_editor)
   glade_command_set_property (property, NULL);
   property = glade_widget_get_property (gwidget, "icon-name");
   glade_command_set_property (property, NULL);
+  property = glade_widget_get_property (gwidget, "resource");
+  glade_command_set_property (property, NULL);
   property = glade_widget_get_property (gwidget, "image-mode");
   glade_command_set_property (property, GLADE_IMAGE_MODE_FILENAME);
 }
@@ -222,7 +246,6 @@ stock_toggled (GtkWidget * widget, GladeImageEditor * image_editor)
   glade_editable_load (GLADE_EDITABLE (image_editor), gwidget);
 }
 
-
 static void
 icon_toggled (GtkWidget * widget, GladeImageEditor * image_editor)
 {
@@ -249,6 +272,31 @@ icon_toggled (GtkWidget * widget, GladeImageEditor * image_editor)
 }
 
 static void
+resource_toggled (GtkWidget * widget, GladeImageEditor * image_editor)
+{
+  GladeWidget   *gwidget = glade_editable_loaded_widget (GLADE_EDITABLE (image_editor));
+
+  if (glade_editable_loading (GLADE_EDITABLE (image_editor)) || !gwidget)
+    return;
+
+  if (!gtk_toggle_button_get_active
+      (GTK_TOGGLE_BUTTON (image_editor->resource_radio)))
+    return;
+
+  glade_editable_block (GLADE_EDITABLE (image_editor));
+
+  glade_command_push_group (_("Setting %s to use a resource name"),
+                            glade_widget_get_name (gwidget));
+  set_resource_mode (image_editor);
+  glade_command_pop_group ();
+
+  glade_editable_unblock (GLADE_EDITABLE (image_editor));
+
+  /* reload buttons and sensitivity and stuff... */
+  glade_editable_load (GLADE_EDITABLE (image_editor), gwidget);
+}
+
+static void
 file_toggled (GtkWidget * widget, GladeImageEditor * image_editor)
 { 
   GladeWidget   *gwidget = glade_editable_loaded_widget (GLADE_EDITABLE (image_editor));
@@ -338,6 +386,20 @@ glade_image_editor_new (GladeWidgetAdaptor * adaptor, GladeEditable * embed)
   table_attach (table, GTK_WIDGET (eprop), 1, 1);
   image_editor->properties = g_list_prepend (image_editor->properties, eprop);
 
+  /* Resource image... */
+  eprop =
+      glade_widget_adaptor_create_eprop_by_name (adaptor, "resource", FALSE,
+                                                 TRUE);
+  hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
+  image_editor->resource_radio = gtk_radio_button_new_from_widget
+      (GTK_RADIO_BUTTON (image_editor->stock_radio));
+  gtk_box_pack_start (GTK_BOX (hbox), image_editor->resource_radio, FALSE, FALSE,
+                      2);
+  gtk_box_pack_start (GTK_BOX (hbox), glade_editor_property_get_item_label (eprop), TRUE, TRUE, 2);
+  table_attach (table, hbox, 0, 2);
+  table_attach (table, GTK_WIDGET (eprop), 1, 2);
+  image_editor->properties = g_list_prepend (image_editor->properties, eprop);
+
   /* Filename... */
   eprop =
       glade_widget_adaptor_create_eprop_by_name (adaptor, "pixbuf", FALSE,
@@ -348,8 +410,8 @@ glade_image_editor_new (GladeWidgetAdaptor * adaptor, GladeEditable * embed)
   gtk_box_pack_start (GTK_BOX (hbox), image_editor->file_radio, FALSE, FALSE,
                       2);
   gtk_box_pack_start (GTK_BOX (hbox), glade_editor_property_get_item_label (eprop), TRUE, TRUE, 2);
-  table_attach (table, hbox, 0, 2);
-  table_attach (table, GTK_WIDGET (eprop), 1, 2);
+  table_attach (table, hbox, 0, 3);
+  table_attach (table, GTK_WIDGET (eprop), 1, 3);
   image_editor->properties = g_list_prepend (image_editor->properties, eprop);
 
   /* Image size frame... */
@@ -393,6 +455,8 @@ glade_image_editor_new (GladeWidgetAdaptor * adaptor, GladeEditable * embed)
                     G_CALLBACK (stock_toggled), image_editor);
   g_signal_connect (G_OBJECT (image_editor->icon_radio), "toggled",
                     G_CALLBACK (icon_toggled), image_editor);
+  g_signal_connect (G_OBJECT (image_editor->resource_radio), "toggled",
+                    G_CALLBACK (resource_toggled), image_editor);
   g_signal_connect (G_OBJECT (image_editor->file_radio), "toggled",
                     G_CALLBACK (file_toggled), image_editor);
 
diff --git a/plugins/gtk+/glade-image-editor.h b/plugins/gtk+/glade-image-editor.h
index 6851c03..e6c8de8 100644
--- a/plugins/gtk+/glade-image-editor.h
+++ b/plugins/gtk+/glade-image-editor.h
@@ -38,6 +38,7 @@ typedef struct _GladeImageEditorClass   GladeImageEditorClass;
 typedef enum {
        GLADE_IMAGE_MODE_STOCK = 0, /* default */
        GLADE_IMAGE_MODE_ICON,
+       GLADE_IMAGE_MODE_RESOURCE,
        GLADE_IMAGE_MODE_FILENAME
 } GladeImageEditMode;
 
@@ -49,6 +50,7 @@ struct _GladeImageEditor
 
        GtkWidget *stock_radio;    /* Create the image from stock-id */
        GtkWidget *icon_radio;     /* Create the image with the icon theme */
+       GtkWidget *resource_radio; /* Create the image from GResource data */
        GtkWidget *file_radio;     /* Create the image from filename (libglade only) */
 
        GtkWidget *size_radio;     /* Set size with GtkIconSize */
diff --git a/plugins/gtk+/gtk+.xml.in b/plugins/gtk+/gtk+.xml.in
index 831c553..22d4439 100644
--- a/plugins/gtk+/gtk+.xml.in
+++ b/plugins/gtk+/gtk+.xml.in
@@ -27,6 +27,8 @@
        <signal id="damage-event" since="2.14"/>
        <signal id="state-flags-changed" since="3.0"/>
        <signal id="style-updated" since="3.0"/>
+       <signal id="style-set" deprecated="True"/>
+       <signal id="state-changed" deprecated="True"/>
       </signals>
 
       <actions>
@@ -51,6 +53,7 @@
       </actions>
 
       <properties>
+       <property id="opacity" since="3.8" />
        <property id="tooltip-text" since="2.12" weight="4.2" translatable="True" multiline="True" />
         <property id="can-focus" common="True" save-always="True"/>
        <property id="has-default" common="True" ignore="True"/>
@@ -380,6 +383,7 @@ embedded in another object</_tooltip>
            <value-type>GtkAccelGroup</value-type>
          </parameter-spec>
        </property>
+       <property id="attached-to" since="3.4" ignore="True"/>
        <property id="opacity" since="2.12" ignore="True"/>
        <property id="startup-id" since="2.12"/>
        <property id="deletable" since="2.10"/>
@@ -500,6 +504,7 @@ embedded in another object</_tooltip>
 
       <signals>
        <signal id="move-selected" since="2.10"/>
+       <signal id="insert" since="3.2"/>
       </signals>
 
       <packing-properties>
@@ -621,6 +626,7 @@ embedded in another object</_tooltip>
       <child-set-property-function>glade_gtk_toolbar_set_child_property</child-set-property-function>
       <child-get-property-function>glade_gtk_toolbar_get_child_property</child-get-property-function>
       <action-activate-function>glade_gtk_toolbar_action_activate</action-activate-function>
+      <write-widget-function>glade_gtk_toolbar_write_widget</write-widget-function>
 
       <actions>
         <action id="launch_editor" _name="Edit&#8230;" stock="gtk-edit" important="True"/>
@@ -641,7 +647,24 @@ embedded in another object</_tooltip>
            <value id="GTK_TOOLBAR_BOTH_HORIZ" _name="Text beside icons"/>
          </displayable-values>
        </property>
-       <property id="icon-size" since="2.10" optional="True" optional-default="False" weight="0.5"/>
+       <!-- We have to save/load icon-size as int, and fake the enum -->
+       <property id="icon-size" since="2.10" optional="True" optional-default="False" weight="0.5"
+                 default="GTK_ICON_SIZE_LARGE_TOOLBAR">
+         <parameter-spec>
+           <type>GParamEnum</type>
+           <value-type>GtkIconSize</value-type>
+         </parameter-spec>
+         <_tooltip>A symbolic icon size for the stock icon</_tooltip>
+         <displayable-values>
+           <value id="GTK_ICON_SIZE_INVALID" _name="Invalid"/>
+           <value id="GTK_ICON_SIZE_MENU" _name="Menu"/>
+           <value id="GTK_ICON_SIZE_SMALL_TOOLBAR" _name="Small Toolbar"/>
+           <value id="GTK_ICON_SIZE_LARGE_TOOLBAR" _name="Large Toolbar"/>
+           <value id="GTK_ICON_SIZE_BUTTON" _name="Button"/>
+           <value id="GTK_ICON_SIZE_DND" _name="Drag &amp; Drop"/>
+           <value id="GTK_ICON_SIZE_DIALOG" _name="Dialog"/>
+         </displayable-values>
+       </property>
       </properties>
 
       <packing-properties>
@@ -679,17 +702,7 @@ embedded in another object</_tooltip>
       <properties>
        <property id="icon-size-set" disabled="True"/>
        <property id="toolbar-style" save-always="True" optional="True" optional-default="False" 
weight="0.4"/>
-       <property id="icon-size" optional="True" optional-default="False" weight="0.5">
-         <displayable-values>
-           <value id="GTK_ICON_SIZE_INVALID" _name="Invalid"/>
-           <value id="GTK_ICON_SIZE_MENU" _name="Menu"/>
-           <value id="GTK_ICON_SIZE_SMALL_TOOLBAR" _name="Small Toolbar"/>
-           <value id="GTK_ICON_SIZE_LARGE_TOOLBAR" _name="Large Toolbar"/>
-           <value id="GTK_ICON_SIZE_BUTTON" _name="Button"/>
-           <value id="GTK_ICON_SIZE_DND" _name="Drag &amp; Drop"/>
-           <value id="GTK_ICON_SIZE_DIALOG" _name="Dialog"/>
-         </displayable-values>
-       </property>
+       <property id="icon-size" optional="True" optional-default="False" weight="0.5"/>
       </properties>
 
       <packing-properties>
@@ -927,6 +940,37 @@ embedded in another object</_tooltip>
       </signals>
 
       <properties>
+       <property id="attributes" since="3.6" disabled="True"/>
+       <property id="input-purpose" since="3.6">
+         <displayable-values>
+           <value id="GTK_INPUT_PURPOSE_FREE_FORM" _name="Free Form"/>
+           <value id="GTK_INPUT_PURPOSE_ALPHA" _name="Alpha"/>
+           <value id="GTK_INPUT_PURPOSE_DIGITS" _name="Digits"/>
+           <value id="GTK_INPUT_PURPOSE_NUMBER" _name="Number"/>
+           <value id="GTK_INPUT_PURPOSE_PHONE" _name="Phone"/>
+           <value id="GTK_INPUT_PURPOSE_URL" _name="URL"/>
+           <value id="GTK_INPUT_PURPOSE_EMAIL" _name="Email"/>
+           <value id="GTK_INPUT_PURPOSE_NAME" _name="Name"/>
+           <value id="GTK_INPUT_PURPOSE_PASSWORD" _name="Password"/>
+           <value id="GTK_INPUT_PURPOSE_PIN" _name="Pin Code"/>
+         </displayable-values>
+       </property>
+       <property id="input-hints" since="3.6">
+         <displayable-values>
+           <value id="GTK_INPUT_HINT_NONE" _name="None"/>
+           <value id="GTK_INPUT_HINT_SPELLCHECK" _name="Spellcheck"/>
+           <value id="GTK_INPUT_HINT_NO_SPELLCHECK" _name="No Spellcheck"/>
+           <value id="GTK_INPUT_HINT_WORD_COMPLETION" _name="Word Completion"/>
+           <value id="GTK_INPUT_HINT_LOWERCASE" _name="Lowercase"/>
+           <value id="GTK_INPUT_HINT_UPPERCASE_CHARS" _name="Uppercase Chars"/>
+           <value id="GTK_INPUT_HINT_UPPERCASE_WORDS" _name="Uppercase Words"/>
+           <value id="GTK_INPUT_HINT_UPPERCASE_SENTENCES" _name="Uppercase Sentences"/>
+           <value id="GTK_INPUT_HINT_INHIBIT_OSK" _name="Inhibit Onscreen Keyboard"/>
+         </displayable-values>
+       </property>
+
+       <property id="attributes" since="3.6" disabled="True"/>
+
        <property id="text" translatable="True" custom-layout="True"/>
         <property id="buffer" create-type="GtkEntryBuffer" since="2.18" custom-layout="True"/>
 
@@ -1005,6 +1049,8 @@ embedded in another object</_tooltip>
 
       <properties>
        <property id="im-module" disabled="True"/>
+       <property id="input-purpose" since="3.6"/>
+       <property id="input-hints" since="3.6"/>
        <property id="wrap-mode">
          <displayable-values>
            <value id="GTK_WRAP_NONE" _name="None"/>
@@ -1024,6 +1070,7 @@ embedded in another object</_tooltip>
       <write-widget-function>glade_gtk_button_write_widget</write-widget-function>
 
       <properties>
+       <property id="always-show-image" since="3.6"/>
        <property id="receives-default" save-always="True"/>
        <property id="image" parentless-widget="True" create-type="GtkImage" custom-layout="True"/>
        <property id="use-stock" visible="False" custom-layout="True"/>
@@ -1103,6 +1150,10 @@ embedded in another object</_tooltip>
       <signals>
        <signal id="wrapped" since="2.10"/>
        <signal id="preedit-changed" since="2.20"/>
+       <signal id="pressed" deprecated="True"/>
+       <signal id="released" deprecated="True"/>
+       <signal id="enter" deprecated="True"/>
+       <signal id="leave" deprecated="True"/>
       </signals>
 
       <properties>
@@ -1215,7 +1266,7 @@ embedded in another object</_tooltip>
       <set-property-function>glade_gtk_color_button_set_property</set-property-function>
       <properties>
        <property id="title" translatable="True"/>
-       <property id="color" default="Black" optional="True" optional-default="False"/>
+       <property id="color" default="Black" deprecated="True" optional="True" optional-default="False"/>
        <property id="alpha" optional="True" optional-default="False"/>
        <property id="rgba" default="Black" optional="True" optional-default="False" since="3.0"/>
 
@@ -1261,6 +1312,7 @@ embedded in another object</_tooltip>
       </internal-children>
       
       <signals>
+       <signal id="format-entry-text" since="3.4"/>
        <signal id="move-action" since="2.12"/>
        <signal id="popdown" since="2.12"/>
        <signal id="popup" since="2.12"/>
@@ -1268,6 +1320,7 @@ embedded in another object</_tooltip>
       <properties>
         <property id="model" create-type="GtkListStore"/>
         <property id="popup-shown" since="2.10"/>
+        <property id="arrow-scaling" since="3.2"/>
         <property id="tearoff-title" since="2.10"/>
         <property id="active" ignore="True"/>
         <property id="active-id" since="3.0"/>
@@ -1334,6 +1387,7 @@ embedded in another object</_tooltip>
        <property id="id-column" disabled="True"/>
        <property id="active-id" disabled="True"/>
        <property id="cell-area" disabled="True"/>
+       <property id="show-default-item" since="3.2"/>
       </properties>
     </glade-widget-class>
 
@@ -1359,6 +1413,7 @@ embedded in another object</_tooltip>
 
     <glade-widget-class name="GtkLevelBar" generic-name="levelbar" _title="Level Bar" since="3.6">
       <properties>
+       <property id="inverted" since="3.8"/>
        <property id="mode">
          <displayable-values>
            <value id="GTK_LEVEL_BAR_MODE_CONTINUOUS" _name="Continuous"/>
@@ -1383,6 +1438,7 @@ embedded in another object</_tooltip>
        <property id="stock" stock-icon="True" custom-layout="True" default="gtk-missing-image"/>
        <property id="icon-name" _name="Icon Name" themed-icon="True" custom-layout="True" />
        <property id="pixbuf" _name="File Name" custom-layout="True"/>
+       <property id="resource" _name="Resource Name" custom-layout="True" ignore="True" since="3.8"/>
        <property id="pixel-size" custom-layout="True"/>
        <!-- We have to save/load icon-size as int, and fake the enum -->
        <property id="icon-size" _name="Icon Size" custom-layout="True" 
@@ -1575,6 +1631,7 @@ embedded in another object</_tooltip>
       <properties>
        <property id="group" since="2.12"/>
        <property id="group-name" since="2.24"/>
+       <property id="initial-gap" since="3.2"/>
        <property id="page" save="False">
          <_tooltip>Set the current page (strictly for editing purposes)</_tooltip>
        </property>
@@ -1780,6 +1837,17 @@ embedded in another object</_tooltip>
        </property>
       </properties>
     </glade-widget-class>
+
+    <!-- Declare menu button here because the arrow-type values already exist -->
+    <glade-widget-class name="GtkMenuButton" generic-name="menubutton" _title="Menu Button" since="3.6">
+      <properties>
+       <property id="label" default=""/>
+        <property id="custom-child" default="True"/>
+        <property id="menu-model" disabled="True"/>
+        <property id="popup" ignore="True"/>
+        <property id="align-widget" ignore="True"/>
+      </properties>
+    </glade-widget-class>
     
     <glade-widget-class name="GtkLayout" generic-name="layout" _title="Layout" use-placeholders="False">
       <create-widget-function>glade_gtk_create_fixed_widget</create-widget-function>
@@ -1831,6 +1899,7 @@ embedded in another object</_tooltip>
       <properties>
        <property id="label" disabled="True"/>
        <property id="label-widget" disabled="True"/>
+        <property id="resize-toplevel" since="3.2"/>
 
        <!-- Atk activate property -->
        <property id="atk-activate" _name="Activate" ignore="True" atk-property="True" save="False" 
@@ -1847,6 +1916,7 @@ embedded in another object</_tooltip>
     
     <glade-widget-class name="GtkScrolledWindow" generic-name="scrolledwindow" _title="Scrolled Window">
       <properties>
+        <property id="kinetic-scrolling" since="3.4"/>
         <property id="shadow-type" default="GTK_SHADOW_IN"/>
         <property id="min-content-width" since="3.0"/>
         <property id="min-content-height" since="3.0"/>
@@ -2023,8 +2093,8 @@ embedded in another object</_tooltip>
       </properties>
       <packing-properties>
        <property id="title" translatable="True" since="2.10"/>
-       <property id="header-image" since="2.10"/>
-       <property id="sidebar-image" since="2.10"/>
+       <property id="header-image" since="2.10" deprecated="True"/>
+       <property id="sidebar-image" since="2.10" deprecated="True"/>
         <property id="complete" ignore="True" _name="Initially Complete">
          <_tooltip>Whether this page will initially be marked as complete regardless of user 
input.</_tooltip>
        </property>
@@ -2273,7 +2343,7 @@ embedded in another object</_tooltip>
                        toplevel="True"/>
     <glade-widget-class name="GtkTreeSelection" generic-name="treeselection" _title="Tree Selection">
       <properties>
-        <property id="mode">
+        <property id="mode" since="3.2">
          <displayable-values>
            <value id="GTK_SELECTION_NONE" _name="None"/>
            <value id="GTK_SELECTION_SINGLE" _name="Single"/>
@@ -2305,6 +2375,7 @@ embedded in another object</_tooltip>
       </internal-children>
 
       <properties>
+        <property id="activate-on-single-click" since="3.8"/>
         <property id="level-indentation" since="2.12"/>
         <property id="show-expanders" since="2.12"/>
         <property id="enable-grid-lines" ignore="True">
@@ -2387,6 +2458,7 @@ embedded in another object</_tooltip>
       </actions>
 
       <properties>
+        <property id="activate-on-single-click" since="3.8"/>
         <property id="item-orientation" since="2.22"/>
         <property id="item-padding" since="2.18"/>
         <property id="text-column" disabled="True"/>
@@ -2440,8 +2512,9 @@ embedded in another object</_tooltip>
          </parameter-spec>
        </property>
 
-        <property id="cell-background-gdk" common="True" save="False" custom-layout="True"/>
-        <property id="attr-cell-background-gdk" _name="Cell Background Color column" save="False" 
default="-1" custom-layout="True">
+        <property id="cell-background-gdk" common="True" save="False" custom-layout="True" 
deprecated="True"/>
+        <property id="attr-cell-background-gdk" _name="Cell Background Color column" save="False" 
default="-1"
+                  deprecated="True" custom-layout="True">
          <parameter-spec>
            <type>GParamInt</type>
            <min>-1</min>
@@ -2636,7 +2709,6 @@ embedded in another object</_tooltip>
          </parameter-spec>
        </property>
 
-
         <property id="background" save="False" custom-layout="True"/>
         <property id="attr-background" _name="Background Color Name column" save="False" default="-1" 
custom-layout="True">
          <parameter-spec>
@@ -2651,8 +2723,9 @@ embedded in another object</_tooltip>
          </parameter-spec>
        </property>
 
-        <property id="background-gdk" save="False" custom-layout="True"/>
-        <property id="attr-background-gdk" _name="Background Color column" save="False" default="-1" 
custom-layout="True">
+        <property id="background-gdk" save="False" custom-layout="True" deprecated="True"/>
+        <property id="attr-background-gdk" _name="Background Color column" save="False" default="-1"
+                 deprecated="True" custom-layout="True">
          <parameter-spec>
            <type>GParamInt</type>
            <min>-1</min>
@@ -2751,9 +2824,9 @@ embedded in another object</_tooltip>
          </parameter-spec>
        </property>
 
-        <property id="foreground-gdk" save="False" custom-layout="True"/>
+        <property id="foreground-gdk" save="False" custom-layout="True" deprecated="True"/>
         <property id="attr-foreground-gdk" _name="Foreground Color column" save="False" default="-1" 
-                 custom-layout="True">
+                  deprecated="True" custom-layout="True">
          <parameter-spec>
            <type>GParamInt</type>
            <min>-1</min>
@@ -3081,6 +3154,21 @@ embedded in another object</_tooltip>
            <type>GParamBoolean</type>
          </parameter-spec>
        </property>
+
+        <property id="placeholder-text" save="False" custom-layout="True" since="3.6"/>
+        <property id="attr-placeholder-text" _name="Placeholder text" 
+                 save="False" default="-1" custom-layout="True" since="3.6">
+         <parameter-spec>
+           <type>GParamInt</type>
+           <min>-1</min>
+         </parameter-spec>
+          <_tooltip>The column in the model to load the value from</_tooltip>
+       </property>
+        <property id="use-attr-placeholder-text" default="True" save="False" visible="False">
+         <parameter-spec>
+           <type>GParamBoolean</type>
+         </parameter-spec>
+       </property>
       </properties>
     </glade-widget-class>
 
@@ -3388,7 +3476,13 @@ embedded in another object</_tooltip>
          </parameter-spec>
        </property>
 
-        <property id="stock-size" save="False" custom-layout="True"/>
+       <!-- We have to save/load stock-size as int, and fake the enum -->
+        <property id="stock-size" save="False" custom-layout="True">
+         <parameter-spec>
+           <type>GParamEnum</type>
+           <value-type>GtkIconSize</value-type>
+         </parameter-spec>
+       </property>
         <property id="attr-stock-size" _name="Stock Size column" save="False" default="-1" 
custom-layout="True">
          <parameter-spec>
            <type>GParamInt</type>
@@ -3664,9 +3758,12 @@ embedded in another object</_tooltip>
 
     <glade-widget-class name="GtkTextTag" generic-name="texttag" _title="Text Tag" >
       <properties>
-       <property id="background-gdk" default="White" optional="True" optional-default="False"/>
-       <property id="foreground-gdk" default="Black" optional="True" optional-default="False"/>
-       <property id="paragraph-background-gdk" default="White" optional="True" optional-default="False"/>
+       <property id="background-gdk" default="White" deprecated="True" optional="True" 
optional-default="False"/>
+       <property id="foreground-gdk" default="Black" deprecated="True" optional="True" 
optional-default="False"/>
+       <property id="paragraph-background-gdk" default="White" deprecated="True" optional="True" 
optional-default="False"/>
+       <property id="background-rgba" default="White" since="3.2" optional="True" optional-default="False"/>
+       <property id="foreground-rgba" default="Black" since="3.2" optional="True" optional-default="False"/>
+       <property id="paragraph-background-rgba" default="White" since="3.2" optional="True" 
optional-default="False"/>
        <property id="language" optional="True" optional-default="False"/>
 
        <!-- Disabled state parameters -->
@@ -3830,6 +3927,7 @@ embedded in another object</_tooltip>
     <glade-widget-class-ref name="GtkToggleButton"/>
     <glade-widget-class-ref name="GtkCheckButton"/>
     <glade-widget-class-ref name="GtkRadioButton"/>
+    <glade-widget-class-ref name="GtkMenuButton"/>
     <glade-widget-class-ref name="GtkSwitch"/>
 
     <glade-widget-class-ref name="GtkEntry"/>


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