[gimp] libgimp: add GDestroyNotify for image and item combo box data



commit c6bcb3114f0807f327917e54d3ed41929e1e374f
Author: Michael Natterer <mitch gimp org>
Date:   Wed Aug 7 23:16:25 2019 +0200

    libgimp: add GDestroyNotify for image and item combo box data

 libgimp/gimpimagecombobox.c              | 35 ++++++++++++++++----
 libgimp/gimpimagecombobox.h              |  3 +-
 libgimp/gimpitemcombobox.c               | 56 +++++++++++++++++++-------------
 libgimp/gimpitemcombobox.h               | 23 ++++++-------
 plug-ins/common/compose.c                |  2 +-
 plug-ins/common/depth-merge.c            |  8 ++---
 plug-ins/common/file-pdf-save.c          |  2 +-
 plug-ins/common/sample-colorize.c        |  4 +--
 plug-ins/common/van-gogh-lic.c           |  2 +-
 plug-ins/common/warp.c                   | 12 ++++---
 plug-ins/flame/flame.c                   |  2 +-
 plug-ins/gimpressionist/brush.c          |  2 +-
 plug-ins/lighting/lighting-ui.c          |  4 +--
 plug-ins/map-object/map-object-ui.c      |  4 +--
 plug-ins/script-fu/script-fu-interface.c | 10 +++---
 15 files changed, 105 insertions(+), 64 deletions(-)
---
diff --git a/libgimp/gimpimagecombobox.c b/libgimp/gimpimagecombobox.c
index b0e9b0468e..cc5bf6530e 100644
--- a/libgimp/gimpimagecombobox.c
+++ b/libgimp/gimpimagecombobox.c
@@ -56,6 +56,7 @@ struct _GimpImageComboBox
 
   GimpImageConstraintFunc  constraint;
   gpointer                 data;
+  GDestroyNotify           data_destroy;
 };
 
 struct _GimpImageComboBoxClass
@@ -64,6 +65,8 @@ struct _GimpImageComboBoxClass
 };
 
 
+static void  gimp_image_combo_box_finalize  (GObject                 *object);
+
 static void  gimp_image_combo_box_populate  (GimpImageComboBox       *combo_box);
 static void  gimp_image_combo_box_model_add (GtkListStore            *store,
                                              gint                     num_images,
@@ -85,14 +88,20 @@ static void  gimp_image_combo_box_changed   (GimpImageComboBox *combo_box);
 static const GtkTargetEntry target = { "application/x-gimp-image-id", 0 };
 
 
-G_DEFINE_TYPE (GimpImageComboBox, gimp_image_combo_box, GIMP_TYPE_INT_COMBO_BOX)
+G_DEFINE_TYPE (GimpImageComboBox, gimp_image_combo_box,
+               GIMP_TYPE_INT_COMBO_BOX)
+
+#define parent_class gimp_image_combo_box_parent_class
 
 
 static void
 gimp_image_combo_box_class_init (GimpImageComboBoxClass *klass)
 {
+  GObjectClass   *object_class = G_OBJECT_CLASS (klass);
   GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
+  object_class->finalize           = gimp_image_combo_box_finalize;
+
   widget_class->drag_data_received = gimp_image_combo_box_drag_data_received;
 }
 
@@ -107,10 +116,22 @@ gimp_image_combo_box_init (GimpImageComboBox *combo_box)
                      GDK_ACTION_COPY);
 }
 
+static void
+gimp_image_combo_box_finalize (GObject *object)
+{
+  GimpImageComboBox *combo = GIMP_IMAGE_COMBO_BOX (object);
+
+  if (combo->data_destroy)
+    combo->data_destroy (combo->data);
+
+  G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
 /**
  * gimp_image_combo_box_new:
- * @constraint: a #GimpImageConstraintFunc or %NULL
- * @data:       a pointer that is passed to @constraint
+ * @constraint:   a #GimpImageConstraintFunc or %NULL
+ * @data:         a pointer that is passed to @constraint
+ * @data_destroy: Destroy function for @data.
  *
  * Creates a new #GimpIntComboBox filled with all currently opened
  * images. If a @constraint function is specified, it is called for
@@ -128,7 +149,8 @@ gimp_image_combo_box_init (GimpImageComboBox *combo_box)
  **/
 GtkWidget *
 gimp_image_combo_box_new (GimpImageConstraintFunc constraint,
-                          gpointer                data)
+                          gpointer                data,
+                          GDestroyNotify          data_destroy)
 {
   GimpImageComboBox *combo_box;
 
@@ -137,8 +159,9 @@ gimp_image_combo_box_new (GimpImageConstraintFunc constraint,
                             "ellipsize",     PANGO_ELLIPSIZE_MIDDLE,
                             NULL);
 
-  combo_box->constraint = constraint;
-  combo_box->data       = data;
+  combo_box->constraint   = constraint;
+  combo_box->data         = data;
+  combo_box->data_destroy = data_destroy;
 
   gimp_image_combo_box_populate (combo_box);
 
diff --git a/libgimp/gimpimagecombobox.h b/libgimp/gimpimagecombobox.h
index 146d0dacd8..150720f241 100644
--- a/libgimp/gimpimagecombobox.h
+++ b/libgimp/gimpimagecombobox.h
@@ -43,7 +43,8 @@ typedef gboolean (* GimpImageConstraintFunc) (gint32   image_id,
 GType       gimp_image_combo_box_get_type (void) G_GNUC_CONST;
 
 GtkWidget * gimp_image_combo_box_new (GimpImageConstraintFunc  constraint,
-                                      gpointer                 data);
+                                      gpointer                 data,
+                                      GDestroyNotify           data_destroy);
 
 
 G_END_DECLS
diff --git a/libgimp/gimpitemcombobox.c b/libgimp/gimpitemcombobox.c
index 4e4f0ed837..b8bc67df13 100644
--- a/libgimp/gimpitemcombobox.c
+++ b/libgimp/gimpitemcombobox.c
@@ -110,7 +110,8 @@ struct _GimpVectorsComboBoxClass
 
 static GtkWidget * gimp_item_combo_box_new (GType                       type,
                                             GimpItemConstraintFunc      constraint,
-                                            gpointer                    data);
+                                            gpointer                    data,
+                                            GDestroyNotify              data_destroy);
 
 static void  gimp_item_combo_box_populate  (GimpIntComboBox            *combo_box);
 static void  gimp_item_combo_box_model_add (GimpIntComboBox            *combo_box,
@@ -167,8 +168,9 @@ gimp_drawable_combo_box_init (GimpDrawableComboBox *combo_box)
 
 /**
  * gimp_drawable_combo_box_new:
- * @constraint: a #GimpDrawableConstraintFunc or %NULL
- * @data:       a pointer that is passed to @constraint
+ * @constraint:   a #GimpItemConstraintFunc or %NULL
+ * @data  :       a pointer that is passed to @constraint
+ * @data_destroy: Destroy function for @data
  *
  * Creates a new #GimpIntComboBox filled with all currently opened
  * drawables. If a @constraint function is specified, it is called for
@@ -185,11 +187,12 @@ gimp_drawable_combo_box_init (GimpDrawableComboBox *combo_box)
  * Since: 2.2
  **/
 GtkWidget *
-gimp_drawable_combo_box_new (GimpDrawableConstraintFunc constraint,
-                             gpointer                   data)
+gimp_drawable_combo_box_new (GimpItemConstraintFunc constraint,
+                             gpointer               data,
+                             GDestroyNotify         data_destroy)
 {
   return gimp_item_combo_box_new (GIMP_TYPE_DRAWABLE_COMBO_BOX,
-                                  constraint, data);
+                                  constraint, data, data_destroy);
 }
 
 
@@ -221,8 +224,9 @@ gimp_channel_combo_box_init (GimpChannelComboBox *combo_box)
 
 /**
  * gimp_channel_combo_box_new:
- * @constraint: a #GimpDrawableConstraintFunc or %NULL
- * @data:       a pointer that is passed to @constraint
+ * @constraint:   a #GimpItemConstraintFunc or %NULL
+ * @data:         a pointer that is passed to @constraint
+ * @data_destroy: Destroy function for @data
  *
  * Creates a new #GimpIntComboBox filled with all currently opened
  * channels. See gimp_drawable_combo_box_new() for more information.
@@ -232,11 +236,12 @@ gimp_channel_combo_box_init (GimpChannelComboBox *combo_box)
  * Since: 2.2
  **/
 GtkWidget *
-gimp_channel_combo_box_new (GimpDrawableConstraintFunc constraint,
-                            gpointer                   data)
+gimp_channel_combo_box_new (GimpItemConstraintFunc constraint,
+                            gpointer               data,
+                            GDestroyNotify         data_destroy)
 {
   return gimp_item_combo_box_new (GIMP_TYPE_CHANNEL_COMBO_BOX,
-                                  constraint, data);
+                                  constraint, data, data_destroy);
 }
 
 
@@ -268,8 +273,9 @@ gimp_layer_combo_box_init (GimpLayerComboBox *combo_box)
 
 /**
  * gimp_layer_combo_box_new:
- * @constraint: a #GimpDrawableConstraintFunc or %NULL
- * @data:       a pointer that is passed to @constraint
+ * @constraint:   a #GimpItemConstraintFunc or %NULL
+ * @data:         a pointer that is passed to @constraint
+ * @data_destroy: Destroy function for @data
  *
  * Creates a new #GimpIntComboBox filled with all currently opened
  * layers. See gimp_drawable_combo_box_new() for more information.
@@ -279,11 +285,12 @@ gimp_layer_combo_box_init (GimpLayerComboBox *combo_box)
  * Since: 2.2
  **/
 GtkWidget *
-gimp_layer_combo_box_new (GimpDrawableConstraintFunc constraint,
-                          gpointer                   data)
+gimp_layer_combo_box_new (GimpItemConstraintFunc constraint,
+                          gpointer               data,
+                          GDestroyNotify         data_destroy)
 {
   return gimp_item_combo_box_new (GIMP_TYPE_LAYER_COMBO_BOX,
-                                  constraint, data);
+                                  constraint, data, data_destroy);
 }
 
 
@@ -316,8 +323,9 @@ gimp_vectors_combo_box_init (GimpVectorsComboBox *combo_box)
 
 /**
  * gimp_vectors_combo_box_new:
- * @constraint: a #GimpVectorsConstraintFunc or %NULL
- * @data:       a pointer that is passed to @constraint
+ * @constraint:   a #GimpItemConstraintFunc or %NULL
+ * @data:         a pointer that is passed to @constraint
+ * @data_destroy: Destroy function for @data
  *
  * Creates a new #GimpIntComboBox filled with all currently opened
  * vectors objects. If a @constraint function is specified, it is called for
@@ -334,18 +342,20 @@ gimp_vectors_combo_box_init (GimpVectorsComboBox *combo_box)
  * Since: 2.4
  **/
 GtkWidget *
-gimp_vectors_combo_box_new (GimpVectorsConstraintFunc constraint,
-                            gpointer                  data)
+gimp_vectors_combo_box_new (GimpItemConstraintFunc constraint,
+                            gpointer               data,
+                            GDestroyNotify         data_destroy)
 {
   return gimp_item_combo_box_new (GIMP_TYPE_VECTORS_COMBO_BOX,
-                                  constraint, data);
+                                  constraint, data, data_destroy);
 }
 
 
 static GtkWidget *
 gimp_item_combo_box_new (GType                  type,
                          GimpItemConstraintFunc constraint,
-                         gpointer               data)
+                         gpointer               data,
+                         GDestroyNotify         data_destroy)
 {
   GimpIntComboBox         *combo_box;
   GimpItemComboBoxPrivate *private;
@@ -360,6 +370,8 @@ gimp_item_combo_box_new (GType                  type,
   private->constraint = constraint;
   private->data       = data;
 
+  g_object_weak_ref (G_OBJECT (combo_box), (GWeakNotify) data_destroy, data);
+
   gimp_item_combo_box_populate (combo_box);
 
   g_signal_connect (combo_box, "changed",
diff --git a/libgimp/gimpitemcombobox.h b/libgimp/gimpitemcombobox.h
index 794846d594..1949a91df8 100644
--- a/libgimp/gimpitemcombobox.h
+++ b/libgimp/gimpitemcombobox.h
@@ -53,23 +53,24 @@ typedef gboolean (* GimpItemConstraintFunc) (gint32   image_id,
                                              gint32   item_id,
                                              gpointer data);
 
-typedef GimpItemConstraintFunc GimpVectorsConstraintFunc;
-typedef GimpItemConstraintFunc GimpDrawableConstraintFunc;
-
 
 GType       gimp_drawable_combo_box_get_type (void) G_GNUC_CONST;
 GType       gimp_channel_combo_box_get_type  (void) G_GNUC_CONST;
 GType       gimp_layer_combo_box_get_type    (void) G_GNUC_CONST;
 GType       gimp_vectors_combo_box_get_type  (void) G_GNUC_CONST;
 
-GtkWidget * gimp_drawable_combo_box_new (GimpDrawableConstraintFunc constraint,
-                                         gpointer                   data);
-GtkWidget * gimp_channel_combo_box_new  (GimpDrawableConstraintFunc constraint,
-                                         gpointer                   data);
-GtkWidget * gimp_layer_combo_box_new    (GimpDrawableConstraintFunc constraint,
-                                         gpointer                   data);
-GtkWidget * gimp_vectors_combo_box_new  (GimpVectorsConstraintFunc  constraint,
-                                         gpointer                   data);
+GtkWidget * gimp_drawable_combo_box_new (GimpItemConstraintFunc constraint,
+                                         gpointer               data,
+                                         GDestroyNotify         data_destroy);
+GtkWidget * gimp_channel_combo_box_new  (GimpItemConstraintFunc constraint,
+                                         gpointer               data,
+                                         GDestroyNotify         data_destroy);
+GtkWidget * gimp_layer_combo_box_new    (GimpItemConstraintFunc constraint,
+                                         gpointer               data,
+                                         GDestroyNotify         data_destroy);
+GtkWidget * gimp_vectors_combo_box_new  (GimpItemConstraintFunc constraint,
+                                         gpointer               data,
+                                         GDestroyNotify         data_destroy);
 
 
 G_END_DECLS
diff --git a/plug-ins/common/compose.c b/plug-ins/common/compose.c
index e77b4748ee..27d342e479 100644
--- a/plug-ins/common/compose.c
+++ b/plug-ins/common/compose.c
@@ -1191,7 +1191,7 @@ compose_dialog (const gchar *compose_type,
 
       composeint.selected[j].is_ID = TRUE;
 
-      combo = gimp_drawable_combo_box_new (check_gray, NULL);
+      combo = gimp_drawable_combo_box_new (check_gray, NULL, NULL);
       composeint.channel_menu[j] = combo;
 
       model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo));
diff --git a/plug-ins/common/depth-merge.c b/plug-ins/common/depth-merge.c
index b5eb936e7e..cf6e102e13 100644
--- a/plug-ins/common/depth-merge.c
+++ b/plug-ins/common/depth-merge.c
@@ -669,7 +669,7 @@ DepthMerge_dialog (DepthMerge *dm)
   gtk_grid_attach (GTK_GRID (grid), label, 0, 0, 1, 1);
   gtk_widget_show (label);
 
-  combo = gimp_drawable_combo_box_new (dm_constraint, dm);
+  combo = gimp_drawable_combo_box_new (dm_constraint, dm, NULL);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), dm->params.source1,
                               G_CALLBACK (dialogSource1ChangedCallback),
                               dm);
@@ -683,7 +683,7 @@ DepthMerge_dialog (DepthMerge *dm)
   gtk_grid_attach (GTK_GRID (grid), label, 0, 1, 1, 1);
   gtk_widget_show (label);
 
-  combo = gimp_drawable_combo_box_new (dm_constraint, dm);
+  combo = gimp_drawable_combo_box_new (dm_constraint, dm, NULL);
   gtk_widget_set_margin_bottom (combo, 6);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), dm->params.depthMap1,
                               G_CALLBACK (dialogDepthMap1ChangedCallback),
@@ -697,7 +697,7 @@ DepthMerge_dialog (DepthMerge *dm)
   gtk_grid_attach (GTK_GRID (grid), label, 0, 2, 1, 1);
   gtk_widget_show (label);
 
-  combo = gimp_drawable_combo_box_new (dm_constraint, dm);
+  combo = gimp_drawable_combo_box_new (dm_constraint, dm, NULL);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), dm->params.source2,
                               G_CALLBACK (dialogSource2ChangedCallback),
                               dm);
@@ -711,7 +711,7 @@ DepthMerge_dialog (DepthMerge *dm)
   gtk_grid_attach (GTK_GRID (grid), label, 0, 3, 1, 1);
   gtk_widget_show (label);
 
-  combo = gimp_drawable_combo_box_new (dm_constraint, dm);
+  combo = gimp_drawable_combo_box_new (dm_constraint, dm, NULL);
   gtk_widget_set_margin_bottom (combo, 6);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), dm->params.depthMap2,
                               G_CALLBACK (dialogDepthMap2ChangedCallback),
diff --git a/plug-ins/common/file-pdf-save.c b/plug-ins/common/file-pdf-save.c
index 9cfe4d93c2..451d26fc09 100644
--- a/plug-ins/common/file-pdf-save.c
+++ b/plug-ins/common/file-pdf-save.c
@@ -972,7 +972,7 @@ gui_multi (void)
 
   h_box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5);
 
-  img_combo = gimp_image_combo_box_new (NULL, NULL);
+  img_combo = gimp_image_combo_box_new (NULL, NULL, NULL);
   gtk_box_pack_start (GTK_BOX (h_box), img_combo, FALSE, FALSE, 0);
 
   add_image = gtk_button_new_with_label (_("Add this image"));
diff --git a/plug-ins/common/sample-colorize.c b/plug-ins/common/sample-colorize.c
index 03b787f432..143b287f57 100644
--- a/plug-ins/common/sample-colorize.c
+++ b/plug-ins/common/sample-colorize.c
@@ -1356,7 +1356,7 @@ smp_dialog (void)
   gtk_grid_attach (GTK_GRID (grid), label, 0, ty, 1, 1);
   gtk_widget_show (label);
 
-  combo = gimp_layer_combo_box_new (smp_constrain, NULL);
+  combo = gimp_layer_combo_box_new (smp_constrain, NULL, NULL);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), g_values.dst_id,
                               G_CALLBACK (smp_dest_combo_callback),
                               NULL);
@@ -1370,7 +1370,7 @@ smp_dialog (void)
   gtk_grid_attach (GTK_GRID (grid), label, 3, ty, 1, 1);
   gtk_widget_show (label);
 
-  combo = gimp_layer_combo_box_new (smp_constrain, NULL);
+  combo = gimp_layer_combo_box_new (smp_constrain, NULL, NULL);
 
   gimp_int_combo_box_prepend (GIMP_INT_COMBO_BOX (combo),
                               GIMP_INT_STORE_VALUE,     SMP_INV_GRADIENT,
diff --git a/plug-ins/common/van-gogh-lic.c b/plug-ins/common/van-gogh-lic.c
index 589aebdbd5..a83226a0a7 100644
--- a/plug-ins/common/van-gogh-lic.c
+++ b/plug-ins/common/van-gogh-lic.c
@@ -712,7 +712,7 @@ create_main_dialog (void)
   gtk_box_pack_start (GTK_BOX (vbox), grid, FALSE, FALSE, 0);
   gtk_widget_show (grid);
 
-  combo = gimp_drawable_combo_box_new (effect_image_constrain, NULL);
+  combo = gimp_drawable_combo_box_new (effect_image_constrain, NULL, NULL);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo),
                               licvals.effect_image_id,
                               G_CALLBACK (gimp_int_combo_box_get_active),
diff --git a/plug-ins/common/warp.c b/plug-ins/common/warp.c
index 50aefd45d8..68912a979c 100644
--- a/plug-ins/common/warp.c
+++ b/plug-ins/common/warp.c
@@ -460,7 +460,8 @@ warp_dialog (gint32 drawable_id)
   gtk_widget_show (label);
 
   combo = gimp_drawable_combo_box_new (warp_map_constrain,
-                                       GINT_TO_POINTER (drawable_id));
+                                       GINT_TO_POINTER (drawable_id),
+                                       NULL);
   gtk_widget_set_margin_start (combo, 12);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), dvals.warp_map,
                               G_CALLBACK (gimp_int_combo_box_get_active),
@@ -608,7 +609,8 @@ warp_dialog (gint32 drawable_id)
   gtk_widget_show (label);
 
   combo = gimp_drawable_combo_box_new (warp_map_constrain,
-                                       GINT_TO_POINTER (drawable_id));
+                                       GINT_TO_POINTER (drawable_id),
+                                       NULL);
   gtk_widget_set_margin_start (combo, 12);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), dvals.mag_map,
                               G_CALLBACK (gimp_int_combo_box_get_active),
@@ -666,7 +668,8 @@ warp_dialog (gint32 drawable_id)
   /* ---------  Gradient map menu ----------------  */
 
   combo = gimp_drawable_combo_box_new (warp_map_constrain,
-                                       GINT_TO_POINTER (drawable_id));
+                                       GINT_TO_POINTER (drawable_id),
+                                       NULL);
   gtk_widget_set_margin_start (combo, 12);
   gtk_grid_attach (GTK_GRID (grid), combo, 2, 0, 1, 1);
                     // GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
@@ -711,7 +714,8 @@ warp_dialog (gint32 drawable_id)
 
   /* ---------  Vector map menu ----------------  */
   combo = gimp_drawable_combo_box_new (warp_map_constrain,
-                                       GINT_TO_POINTER (drawable_id));
+                                       GINT_TO_POINTER (drawable_id),
+                                       NULL);
   gtk_widget_set_margin_start (combo, 12);
   gtk_grid_attach (GTK_GRID (grid), combo, 2, 1, 1, 1);
                    // GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
diff --git a/plug-ins/flame/flame.c b/plug-ins/flame/flame.c
index 37f8783f20..55bfe8fdaf 100644
--- a/plug-ins/flame/flame.c
+++ b/plug-ins/flame/flame.c
@@ -1173,7 +1173,7 @@ flame_dialog (void)
     gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
     gtk_widget_show (label);
 
-    combo = gimp_drawable_combo_box_new (cmap_constrain, NULL);
+    combo = gimp_drawable_combo_box_new (cmap_constrain, NULL, NULL);
 
     gtk_label_set_mnemonic_widget (GTK_LABEL (label), combo);
 
diff --git a/plug-ins/gimpressionist/brush.c b/plug-ins/gimpressionist/brush.c
index 2b9f2b8efa..7a1670c8ab 100644
--- a/plug-ins/gimpressionist/brush.c
+++ b/plug-ins/gimpressionist/brush.c
@@ -597,7 +597,7 @@ create_brushpage (GtkNotebook *notebook)
   gtk_size_group_add_widget (group, tmpw);
   g_object_unref (group);
 
-  combo = gimp_drawable_combo_box_new (validdrawable, NULL);
+  combo = gimp_drawable_combo_box_new (validdrawable, NULL, NULL);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), -1,
                               G_CALLBACK (brushdmenuselect),
                               NULL);
diff --git a/plug-ins/lighting/lighting-ui.c b/plug-ins/lighting/lighting-ui.c
index 919bf2c7d2..99c5b02b48 100644
--- a/plug-ins/lighting/lighting-ui.c
+++ b/plug-ins/lighting/lighting-ui.c
@@ -839,7 +839,7 @@ create_bump_page (void)
                           grid,  "sensitive",
                           G_BINDING_SYNC_CREATE);
 
-  combo = gimp_drawable_combo_box_new (bumpmap_constrain, NULL);
+  combo = gimp_drawable_combo_box_new (bumpmap_constrain, NULL, NULL);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), mapvals.bumpmap_id,
                               G_CALLBACK (gimp_int_combo_box_get_active),
                               &mapvals.bumpmap_id);
@@ -932,7 +932,7 @@ create_environment_page (void)
                           grid,   "sensitive",
                           G_BINDING_SYNC_CREATE);
 
-  combo = gimp_drawable_combo_box_new (envmap_constrain, NULL);
+  combo = gimp_drawable_combo_box_new (envmap_constrain, NULL, NULL);
   gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo), mapvals.envmap_id,
                               G_CALLBACK (envmap_combo_callback),
                               NULL);
diff --git a/plug-ins/map-object/map-object-ui.c b/plug-ins/map-object/map-object-ui.c
index 2aa9930b52..4e411dabe3 100644
--- a/plug-ins/map-object/map-object-ui.c
+++ b/plug-ins/map-object/map-object-ui.c
@@ -1094,7 +1094,7 @@ create_box_page (void)
     {
       GtkWidget *combo;
 
-      combo = gimp_drawable_combo_box_new (box_constrain, NULL);
+      combo = gimp_drawable_combo_box_new (box_constrain, NULL, NULL);
       gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo),
                                   mapvals.boxmap_id[i],
                                   G_CALLBACK (gimp_int_combo_box_get_active),
@@ -1186,7 +1186,7 @@ create_cylinder_page (void)
       GtkWidget *combo;
       GtkWidget *label;
 
-      combo = gimp_drawable_combo_box_new (cylinder_constrain, NULL);
+      combo = gimp_drawable_combo_box_new (cylinder_constrain, NULL, NULL);
       gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo),
                                   mapvals.cylindermap_id[i],
                                   G_CALLBACK (gimp_int_combo_box_get_active),
diff --git a/plug-ins/script-fu/script-fu-interface.c b/plug-ins/script-fu/script-fu-interface.c
index 3066b694b1..24d4e26761 100644
--- a/plug-ins/script-fu/script-fu-interface.c
+++ b/plug-ins/script-fu/script-fu-interface.c
@@ -302,27 +302,27 @@ script_fu_interface (SFScript  *script,
           switch (arg->type)
             {
             case SF_IMAGE:
-              widget = gimp_image_combo_box_new (NULL, NULL);
+              widget = gimp_image_combo_box_new (NULL, NULL, NULL);
               ID_ptr = &arg->value.sfa_image;
               break;
 
             case SF_DRAWABLE:
-              widget = gimp_drawable_combo_box_new (NULL, NULL);
+              widget = gimp_drawable_combo_box_new (NULL, NULL, NULL);
               ID_ptr = &arg->value.sfa_drawable;
               break;
 
             case SF_LAYER:
-              widget = gimp_layer_combo_box_new (NULL, NULL);
+              widget = gimp_layer_combo_box_new (NULL, NULL, NULL);
               ID_ptr = &arg->value.sfa_layer;
               break;
 
             case SF_CHANNEL:
-              widget = gimp_channel_combo_box_new (NULL, NULL);
+              widget = gimp_channel_combo_box_new (NULL, NULL, NULL);
               ID_ptr = &arg->value.sfa_channel;
               break;
 
             case SF_VECTORS:
-              widget = gimp_vectors_combo_box_new (NULL, NULL);
+              widget = gimp_vectors_combo_box_new (NULL, NULL, NULL);
               ID_ptr = &arg->value.sfa_vectors;
               break;
 


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