[gimp] pdb, libgimp: fix enum type generation in the libgimp PDB wrappers



commit 271c656e2db802f4ef7bd01bc09c43ff0e4e56ab
Author: Michael Natterer <mitch gimp org>
Date:   Tue Jul 30 18:45:10 2019 +0200

    pdb, libgimp: fix enum type generation in the libgimp PDB wrappers
    
    Use the actual enum type not just G_TYPE_ENUM.

 libgimp/gimpbrush_pdb.c             |  2 +-
 libgimp/gimpbrushselect_pdb.c       |  4 ++--
 libgimp/gimpchannel_pdb.c           |  4 ++--
 libgimp/gimpcontext_pdb.c           | 24 ++++++++++++------------
 libgimp/gimpdrawable_pdb.c          |  6 +++---
 libgimp/gimpdrawablecolor_pdb.c     | 16 ++++++++--------
 libgimp/gimpdrawableedit_pdb.c      |  6 +++---
 libgimp/gimpfileops_pdb.c           |  8 ++++----
 libgimp/gimpgradient_pdb.c          |  4 ++--
 libgimp/gimpimage_pdb.c             | 18 +++++++++---------
 libgimp/gimpimagecolorprofile_pdb.c |  4 ++--
 libgimp/gimpimageconvert_pdb.c      |  6 +++---
 libgimp/gimpimagegrid_pdb.c         |  2 +-
 libgimp/gimpimageselect_pdb.c       | 14 +++++++-------
 libgimp/gimpimagetransform_pdb.c    |  4 ++--
 libgimp/gimpitem_pdb.c              |  2 +-
 libgimp/gimpitemtransform_pdb.c     |  6 +++---
 libgimp/gimplayer_pdb.c             | 16 ++++++++--------
 libgimp/gimpmessage_pdb.c           |  2 +-
 libgimp/gimppainttools_pdb.c        | 14 +++++++-------
 libgimp/gimpplugin_pdb.c            |  4 ++--
 libgimp/gimptextlayer_pdb.c         |  6 +++---
 libgimp/gimptexttool_pdb.c          |  4 ++--
 libgimp/gimpvectors_pdb.c           |  4 ++--
 pdb/lib.pl                          | 16 ++++++++++++++--
 25 files changed, 104 insertions(+), 92 deletions(-)
---
diff --git a/libgimp/gimpbrush_pdb.c b/libgimp/gimpbrush_pdb.c
index 5928bc5e15..89aa0fc225 100644
--- a/libgimp/gimpbrush_pdb.c
+++ b/libgimp/gimpbrush_pdb.c
@@ -527,7 +527,7 @@ gimp_brush_set_shape (const gchar             *name,
   GimpBrushGeneratedShape shape_out = 0;
 
   args = gimp_value_array_new_from_types (G_TYPE_STRING,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_BRUSH_GENERATED_SHAPE,
                                           G_TYPE_NONE);
   g_value_set_string (gimp_value_array_index (args, 0), name);
   g_value_set_enum (gimp_value_array_index (args, 1), shape_in);
diff --git a/libgimp/gimpbrushselect_pdb.c b/libgimp/gimpbrushselect_pdb.c
index afafc87b17..de40e2e537 100644
--- a/libgimp/gimpbrushselect_pdb.c
+++ b/libgimp/gimpbrushselect_pdb.c
@@ -66,7 +66,7 @@ gimp_brushes_popup (const gchar   *brush_callback,
                                           G_TYPE_STRING,
                                           G_TYPE_DOUBLE,
                                           GIMP_TYPE_INT32,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_LAYER_MODE,
                                           G_TYPE_NONE);
   g_value_set_string (gimp_value_array_index (args, 0), brush_callback);
   g_value_set_string (gimp_value_array_index (args, 1), popup_title);
@@ -147,7 +147,7 @@ gimp_brushes_set_popup (const gchar   *brush_callback,
                                           G_TYPE_STRING,
                                           G_TYPE_DOUBLE,
                                           GIMP_TYPE_INT32,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_LAYER_MODE,
                                           G_TYPE_NONE);
   g_value_set_string (gimp_value_array_index (args, 0), brush_callback);
   g_value_set_string (gimp_value_array_index (args, 1), brush_name);
diff --git a/libgimp/gimpchannel_pdb.c b/libgimp/gimpchannel_pdb.c
index 0c62ca291e..804a0b1aab 100644
--- a/libgimp/gimpchannel_pdb.c
+++ b/libgimp/gimpchannel_pdb.c
@@ -121,7 +121,7 @@ gimp_channel_new_from_component (gint32           image_ID,
   gint32 channel_ID = -1;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_TYPE,
                                           G_TYPE_STRING,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
@@ -203,7 +203,7 @@ gimp_channel_combine_masks (gint32         channel1_ID,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_CHANNEL_ID,
                                           GIMP_TYPE_CHANNEL_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_OPS,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT32,
                                           G_TYPE_NONE);
diff --git a/libgimp/gimpcontext_pdb.c b/libgimp/gimpcontext_pdb.c
index 5ef3ddd92c..40cf81dcf9 100644
--- a/libgimp/gimpcontext_pdb.c
+++ b/libgimp/gimpcontext_pdb.c
@@ -305,7 +305,7 @@ gimp_context_set_stroke_method (GimpStrokeMethod stroke_method)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_STROKE_METHOD,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), stroke_method);
 
@@ -654,7 +654,7 @@ gimp_context_set_paint_mode (GimpLayerMode paint_mode)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_MODE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), paint_mode);
 
@@ -866,7 +866,7 @@ gimp_context_set_line_cap_style (GimpCapStyle cap_style)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_CAP_STYLE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), cap_style);
 
@@ -937,7 +937,7 @@ gimp_context_set_line_join_style (GimpJoinStyle join_style)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_JOIN_STYLE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), join_style);
 
@@ -2227,7 +2227,7 @@ gimp_context_set_gradient_blend_color_space (GimpGradientBlendColorSpace blend_c
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_GRADIENT_BLEND_COLOR_SPACE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), blend_color_space);
 
@@ -2293,7 +2293,7 @@ gimp_context_set_gradient_repeat_mode (GimpRepeatMode repeat_mode)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_REPEAT_MODE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), repeat_mode);
 
@@ -2888,7 +2888,7 @@ gimp_context_set_sample_criterion (GimpSelectCriterion sample_criterion)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_SELECT_CRITERION,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), sample_criterion);
 
@@ -3253,7 +3253,7 @@ gimp_context_set_distance_metric (GeglDistanceMetric metric)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GEGL_TYPE_DISTANCE_METRIC,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), metric);
 
@@ -3330,7 +3330,7 @@ gimp_context_set_interpolation (GimpInterpolationType interpolation)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_INTERPOLATION_TYPE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), interpolation);
 
@@ -3404,7 +3404,7 @@ gimp_context_set_transform_direction (GimpTransformDirection transform_direction
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_TRANSFORM_DIRECTION,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), transform_direction);
 
@@ -3482,7 +3482,7 @@ gimp_context_set_transform_resize (GimpTransformResize transform_resize)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_TRANSFORM_RESIZE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), transform_resize);
 
@@ -3878,7 +3878,7 @@ gimp_context_set_ink_blob_type (GimpInkBlobType type)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_INK_BLOB_TYPE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), type);
 
diff --git a/libgimp/gimpdrawable_pdb.c b/libgimp/gimpdrawable_pdb.c
index 21f2d2ec51..da025e26d3 100644
--- a/libgimp/gimpdrawable_pdb.c
+++ b/libgimp/gimpdrawable_pdb.c
@@ -833,7 +833,7 @@ gimp_drawable_fill (gint32       drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_FILL_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_drawable_id (gimp_value_array_index (args, 0), drawable_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), fill_type);
@@ -882,7 +882,7 @@ gimp_drawable_offset (gint32         drawable_ID,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
                                           G_TYPE_BOOLEAN,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_OFFSET_TYPE,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT32,
                                           G_TYPE_NONE);
@@ -1082,7 +1082,7 @@ gimp_drawable_foreground_extract (gint32                    drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_FOREGROUND_EXTRACT_MODE,
                                           GIMP_TYPE_DRAWABLE_ID,
                                           G_TYPE_NONE);
   gimp_value_set_drawable_id (gimp_value_array_index (args, 0), drawable_ID);
diff --git a/libgimp/gimpdrawablecolor_pdb.c b/libgimp/gimpdrawablecolor_pdb.c
index 79eca99012..d7b3dfd840 100644
--- a/libgimp/gimpdrawablecolor_pdb.c
+++ b/libgimp/gimpdrawablecolor_pdb.c
@@ -116,7 +116,7 @@ gimp_drawable_color_balance (gint32           drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_TRANSFER_MODE,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
@@ -220,7 +220,7 @@ gimp_drawable_curves_explicit (gint32                drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_HISTOGRAM_CHANNEL,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_FLOAT_ARRAY,
                                           G_TYPE_NONE);
@@ -271,7 +271,7 @@ gimp_drawable_curves_spline (gint32                drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_HISTOGRAM_CHANNEL,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_FLOAT_ARRAY,
                                           G_TYPE_NONE);
@@ -316,7 +316,7 @@ gimp_drawable_desaturate (gint32             drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_DESATURATE_MODE,
                                           G_TYPE_NONE);
   gimp_value_set_drawable_id (gimp_value_array_index (args, 0), drawable_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), desaturate_mode);
@@ -429,7 +429,7 @@ gimp_drawable_histogram (gint32                drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_HISTOGRAM_CHANNEL,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_NONE);
@@ -500,7 +500,7 @@ gimp_drawable_hue_saturation (gint32       drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_HUE_RANGE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
@@ -612,7 +612,7 @@ gimp_drawable_levels (gint32               drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_HISTOGRAM_CHANNEL,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_BOOLEAN,
@@ -746,7 +746,7 @@ gimp_drawable_threshold (gint32               drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_HISTOGRAM_CHANNEL,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_NONE);
diff --git a/libgimp/gimpdrawableedit_pdb.c b/libgimp/gimpdrawableedit_pdb.c
index 75424aec3b..e60f369360 100644
--- a/libgimp/gimpdrawableedit_pdb.c
+++ b/libgimp/gimpdrawableedit_pdb.c
@@ -101,7 +101,7 @@ gimp_drawable_edit_fill (gint32       drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_FILL_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_drawable_id (gimp_value_array_index (args, 0), drawable_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), fill_type);
@@ -155,7 +155,7 @@ gimp_drawable_edit_bucket_fill (gint32       drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_FILL_TYPE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_NONE);
@@ -226,7 +226,7 @@ gimp_drawable_edit_gradient_fill (gint32           drawable_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_GRADIENT_TYPE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_BOOLEAN,
                                           GIMP_TYPE_INT32,
diff --git a/libgimp/gimpfileops_pdb.c b/libgimp/gimpfileops_pdb.c
index a77456eea1..1f46fb8bf2 100644
--- a/libgimp/gimpfileops_pdb.c
+++ b/libgimp/gimpfileops_pdb.c
@@ -61,7 +61,7 @@ gimp_file_load (GimpRunMode  run_mode,
   GimpValueArray *return_vals;
   gint32 image_ID = -1;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_RUN_MODE,
                                           G_TYPE_STRING,
                                           G_TYPE_STRING,
                                           G_TYPE_NONE);
@@ -107,7 +107,7 @@ gimp_file_load_layer (GimpRunMode  run_mode,
   GimpValueArray *return_vals;
   gint32 layer_ID = -1;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_RUN_MODE,
                                           GIMP_TYPE_IMAGE_ID,
                                           G_TYPE_STRING,
                                           G_TYPE_NONE);
@@ -155,7 +155,7 @@ gimp_file_load_layers (GimpRunMode  run_mode,
   GimpValueArray *return_vals;
   gint *layer_ids = NULL;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_RUN_MODE,
                                           GIMP_TYPE_IMAGE_ID,
                                           G_TYPE_STRING,
                                           G_TYPE_NONE);
@@ -211,7 +211,7 @@ gimp_file_save (GimpRunMode  run_mode,
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_RUN_MODE,
                                           GIMP_TYPE_IMAGE_ID,
                                           GIMP_TYPE_DRAWABLE_ID,
                                           G_TYPE_STRING,
diff --git a/libgimp/gimpgradient_pdb.c b/libgimp/gimpgradient_pdb.c
index 656eb03a1c..6bf14048f9 100644
--- a/libgimp/gimpgradient_pdb.c
+++ b/libgimp/gimpgradient_pdb.c
@@ -986,7 +986,7 @@ gimp_gradient_segment_range_set_blending_function (const gchar             *name
   args = gimp_value_array_new_from_types (G_TYPE_STRING,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT32,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_GRADIENT_SEGMENT_TYPE,
                                           G_TYPE_NONE);
   g_value_set_string (gimp_value_array_index (args, 0), name);
   g_value_set_int (gimp_value_array_index (args, 1), start_segment);
@@ -1033,7 +1033,7 @@ gimp_gradient_segment_range_set_coloring_type (const gchar              *name,
   args = gimp_value_array_new_from_types (G_TYPE_STRING,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT32,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_GRADIENT_SEGMENT_COLOR,
                                           G_TYPE_NONE);
   g_value_set_string (gimp_value_array_index (args, 0), name);
   g_value_set_int (gimp_value_array_index (args, 1), start_segment);
diff --git a/libgimp/gimpimage_pdb.c b/libgimp/gimpimage_pdb.c
index c54470b7dd..95b7679e79 100644
--- a/libgimp/gimpimage_pdb.c
+++ b/libgimp/gimpimage_pdb.c
@@ -140,7 +140,7 @@ gimp_image_new (gint              width,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT32,
-                                          gimp_image_base_type_get_type(),
+                                          GIMP_TYPE_IMAGE_BASE_TYPE,
                                           G_TYPE_NONE);
   g_value_set_int (gimp_value_array_index (args, 0), width);
   g_value_set_int (gimp_value_array_index (args, 1), height);
@@ -189,8 +189,8 @@ gimp_image_new_with_precision (gint              width,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT32,
-                                          gimp_image_base_type_get_type(),
-                                          gimp_precision_get_type(),
+                                          GIMP_TYPE_IMAGE_BASE_TYPE,
+                                          GIMP_TYPE_PRECISION,
                                           G_TYPE_NONE);
   g_value_set_int (gimp_value_array_index (args, 0), width);
   g_value_set_int (gimp_value_array_index (args, 1), height);
@@ -1651,7 +1651,7 @@ gimp_image_merge_visible_layers (gint32        image_ID,
   gint32 layer_ID = -1;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          gimp_merge_type_get_type(),
+                                          GIMP_TYPE_MERGE_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), merge_type);
@@ -1697,7 +1697,7 @@ gimp_image_merge_down (gint32        image_ID,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
                                           GIMP_TYPE_LAYER_ID,
-                                          gimp_merge_type_get_type(),
+                                          GIMP_TYPE_MERGE_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   gimp_value_set_layer_id (gimp_value_array_index (args, 1), merge_layer_ID);
@@ -2287,7 +2287,7 @@ gimp_image_get_component_active (gint32          image_ID,
   gboolean active = FALSE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          gimp_channel_type_get_type(),
+                                          GIMP_TYPE_CHANNEL_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), component);
@@ -2329,7 +2329,7 @@ gimp_image_set_component_active (gint32          image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          gimp_channel_type_get_type(),
+                                          GIMP_TYPE_CHANNEL_TYPE,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
@@ -2371,7 +2371,7 @@ gimp_image_get_component_visible (gint32          image_ID,
   gboolean visible = FALSE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          gimp_channel_type_get_type(),
+                                          GIMP_TYPE_CHANNEL_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), component);
@@ -2413,7 +2413,7 @@ gimp_image_set_component_visible (gint32          image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          gimp_channel_type_get_type(),
+                                          GIMP_TYPE_CHANNEL_TYPE,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
diff --git a/libgimp/gimpimagecolorprofile_pdb.c b/libgimp/gimpimagecolorprofile_pdb.c
index 9fade49d29..c257a0df96 100644
--- a/libgimp/gimpimagecolorprofile_pdb.c
+++ b/libgimp/gimpimagecolorprofile_pdb.c
@@ -247,7 +247,7 @@ _gimp_image_convert_color_profile (gint32                    image_ID,
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT8_ARRAY,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_COLOR_RENDERING_INTENT,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
@@ -297,7 +297,7 @@ gimp_image_convert_color_profile_from_file (gint32                    image_ID,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
                                           G_TYPE_STRING,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_COLOR_RENDERING_INTENT,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
diff --git a/libgimp/gimpimageconvert_pdb.c b/libgimp/gimpimageconvert_pdb.c
index ddc444a6ce..c560eddc03 100644
--- a/libgimp/gimpimageconvert_pdb.c
+++ b/libgimp/gimpimageconvert_pdb.c
@@ -144,8 +144,8 @@ gimp_image_convert_indexed (gint32                  image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CONVERT_DITHER_TYPE,
+                                          GIMP_TYPE_CONVERT_PALETTE_TYPE,
                                           GIMP_TYPE_INT32,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_BOOLEAN,
@@ -241,7 +241,7 @@ gimp_image_convert_precision (gint32        image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_PRECISION,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), precision);
diff --git a/libgimp/gimpimagegrid_pdb.c b/libgimp/gimpimagegrid_pdb.c
index bc06b74006..92587f524c 100644
--- a/libgimp/gimpimagegrid_pdb.c
+++ b/libgimp/gimpimagegrid_pdb.c
@@ -428,7 +428,7 @@ gimp_image_grid_set_style (gint32        image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_GRID_STYLE,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), style);
diff --git a/libgimp/gimpimageselect_pdb.c b/libgimp/gimpimageselect_pdb.c
index 9f5f565c17..27c909a878 100644
--- a/libgimp/gimpimageselect_pdb.c
+++ b/libgimp/gimpimageselect_pdb.c
@@ -76,7 +76,7 @@ gimp_image_select_color (gint32          image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_OPS,
                                           GIMP_TYPE_DRAWABLE_ID,
                                           GIMP_TYPE_RGB,
                                           G_TYPE_NONE);
@@ -149,7 +149,7 @@ gimp_image_select_contiguous_color (gint32         image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_OPS,
                                           GIMP_TYPE_DRAWABLE_ID,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
@@ -206,7 +206,7 @@ gimp_image_select_rectangle (gint32         image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_OPS,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
@@ -272,7 +272,7 @@ gimp_image_select_round_rectangle (gint32         image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_OPS,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
@@ -336,7 +336,7 @@ gimp_image_select_ellipse (gint32         image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_OPS,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
@@ -397,7 +397,7 @@ gimp_image_select_polygon (gint32          image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_OPS,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_FLOAT_ARRAY,
                                           G_TYPE_NONE);
@@ -448,7 +448,7 @@ gimp_image_select_item (gint32         image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CHANNEL_OPS,
                                           GIMP_TYPE_ITEM_ID,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
diff --git a/libgimp/gimpimagetransform_pdb.c b/libgimp/gimpimagetransform_pdb.c
index 2f581e628d..2847f1cfc0 100644
--- a/libgimp/gimpimagetransform_pdb.c
+++ b/libgimp/gimpimagetransform_pdb.c
@@ -242,7 +242,7 @@ gimp_image_flip (gint32              image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_ORIENTATION_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), flip_type);
@@ -278,7 +278,7 @@ gimp_image_rotate (gint32           image_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_ROTATION_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), rotate_type);
diff --git a/libgimp/gimpitem_pdb.c b/libgimp/gimpitem_pdb.c
index 8527714035..4510ea99f9 100644
--- a/libgimp/gimpitem_pdb.c
+++ b/libgimp/gimpitem_pdb.c
@@ -997,7 +997,7 @@ gimp_item_set_color_tag (gint32       item_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_ITEM_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_COLOR_TAG,
                                           G_TYPE_NONE);
   gimp_value_set_item_id (gimp_value_array_index (args, 0), item_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), color_tag);
diff --git a/libgimp/gimpitemtransform_pdb.c b/libgimp/gimpitemtransform_pdb.c
index 12c132d593..3a0f8aaebd 100644
--- a/libgimp/gimpitemtransform_pdb.c
+++ b/libgimp/gimpitemtransform_pdb.c
@@ -129,7 +129,7 @@ gimp_item_transform_flip_simple (gint32              item_ID,
   gint32 ret_item_ID = -1;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_ITEM_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_ORIENTATION_TYPE,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_NONE);
@@ -362,7 +362,7 @@ gimp_item_transform_rotate_simple (gint32           item_ID,
   gint32 ret_item_ID = -1;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_ITEM_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_ROTATION_TYPE,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
@@ -576,7 +576,7 @@ gimp_item_transform_shear (gint32              item_ID,
   gint32 ret_item_ID = -1;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_ITEM_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_ORIENTATION_TYPE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_NONE);
   gimp_value_set_item_id (gimp_value_array_index (args, 0), item_ID);
diff --git a/libgimp/gimplayer_pdb.c b/libgimp/gimplayer_pdb.c
index 7f79c2a2d7..f6c7482635 100644
--- a/libgimp/gimplayer_pdb.c
+++ b/libgimp/gimplayer_pdb.c
@@ -71,10 +71,10 @@ _gimp_layer_new (gint32         image_ID,
   args = gimp_value_array_new_from_types (GIMP_TYPE_IMAGE_ID,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT32,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_IMAGE_TYPE,
                                           G_TYPE_STRING,
                                           G_TYPE_DOUBLE,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_LAYER_MODE,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
   g_value_set_int (gimp_value_array_index (args, 1), width);
@@ -554,7 +554,7 @@ gimp_layer_create_mask (gint32          layer_ID,
   gint32 mask_ID = -1;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_ADD_MASK_TYPE,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), mask_type);
@@ -704,7 +704,7 @@ gimp_layer_remove_mask (gint32            layer_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_MASK_APPLY_MODE,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), mode);
@@ -1171,7 +1171,7 @@ gimp_layer_set_mode (gint32        layer_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_LAYER_MODE,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), mode);
@@ -1244,7 +1244,7 @@ gimp_layer_set_blend_space (gint32              layer_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_LAYER_COLOR_SPACE,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), blend_space);
@@ -1317,7 +1317,7 @@ gimp_layer_set_composite_space (gint32              layer_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_LAYER_COLOR_SPACE,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), composite_space);
@@ -1390,7 +1390,7 @@ gimp_layer_set_composite_mode (gint32                 layer_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_LAYER_COMPOSITE_MODE,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), composite_mode);
diff --git a/libgimp/gimpmessage_pdb.c b/libgimp/gimpmessage_pdb.c
index 408d270c83..ec7f2136a4 100644
--- a/libgimp/gimpmessage_pdb.c
+++ b/libgimp/gimpmessage_pdb.c
@@ -118,7 +118,7 @@ gimp_message_set_handler (GimpMessageHandlerType handler)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_MESSAGE_HANDLER_TYPE,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), handler);
 
diff --git a/libgimp/gimppainttools_pdb.c b/libgimp/gimppainttools_pdb.c
index 1f3d7f9fea..f20e67d042 100644
--- a/libgimp/gimppainttools_pdb.c
+++ b/libgimp/gimppainttools_pdb.c
@@ -168,7 +168,7 @@ gimp_clone (gint32         drawable_ID,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
                                           GIMP_TYPE_DRAWABLE_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CLONE_TYPE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_DOUBLE,
                                           GIMP_TYPE_INT32,
@@ -268,7 +268,7 @@ gimp_convolve (gint32            drawable_ID,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
                                           G_TYPE_DOUBLE,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_CONVOLVE_TYPE,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_FLOAT_ARRAY,
                                           G_TYPE_NONE);
@@ -362,8 +362,8 @@ gimp_dodgeburn (gint32             drawable_ID,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
                                           G_TYPE_DOUBLE,
-                                          G_TYPE_ENUM,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_DODGE_BURN_TYPE,
+                                          GIMP_TYPE_TRANSFER_MODE,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_FLOAT_ARRAY,
                                           G_TYPE_NONE);
@@ -460,8 +460,8 @@ gimp_eraser (gint32                    drawable_ID,
   args = gimp_value_array_new_from_types (GIMP_TYPE_DRAWABLE_ID,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_FLOAT_ARRAY,
-                                          G_TYPE_ENUM,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_BRUSH_APPLICATION_MODE,
+                                          GIMP_TYPE_PAINT_APPLICATION_MODE,
                                           G_TYPE_NONE);
   gimp_value_set_drawable_id (gimp_value_array_index (args, 0), drawable_ID);
   g_value_set_int (gimp_value_array_index (args, 1), num_strokes);
@@ -670,7 +670,7 @@ gimp_paintbrush (gint32                    drawable_ID,
                                           G_TYPE_DOUBLE,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_FLOAT_ARRAY,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_PAINT_APPLICATION_MODE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_NONE);
   gimp_value_set_drawable_id (gimp_value_array_index (args, 0), drawable_ID);
diff --git a/libgimp/gimpplugin_pdb.c b/libgimp/gimpplugin_pdb.c
index 1f931107c1..8bbf1ede65 100644
--- a/libgimp/gimpplugin_pdb.c
+++ b/libgimp/gimpplugin_pdb.c
@@ -224,7 +224,7 @@ _gimp_plugin_icon_register (const gchar  *procedure_name,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (G_TYPE_STRING,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_ICON_TYPE,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_INT8_ARRAY,
                                           G_TYPE_NONE);
@@ -270,7 +270,7 @@ gimp_plugin_set_pdb_error_handler (GimpPDBErrorHandler handler)
   GimpValueArray *return_vals;
   gboolean success = TRUE;
 
-  args = gimp_value_array_new_from_types (G_TYPE_ENUM,
+  args = gimp_value_array_new_from_types (GIMP_TYPE_PDB_ERROR_HANDLER,
                                           G_TYPE_NONE);
   g_value_set_enum (gimp_value_array_index (args, 0), handler);
 
diff --git a/libgimp/gimptextlayer_pdb.c b/libgimp/gimptextlayer_pdb.c
index d68d07cd6b..7121316640 100644
--- a/libgimp/gimptextlayer_pdb.c
+++ b/libgimp/gimptextlayer_pdb.c
@@ -498,7 +498,7 @@ gimp_text_layer_set_hint_style (gint32            layer_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_TEXT_HINT_STYLE,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), style);
@@ -722,7 +722,7 @@ gimp_text_layer_set_base_direction (gint32            layer_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_TEXT_DIRECTION,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), direction);
@@ -797,7 +797,7 @@ gimp_text_layer_set_justification (gint32                layer_ID,
   gboolean success = TRUE;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_LAYER_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_TEXT_JUSTIFICATION,
                                           G_TYPE_NONE);
   gimp_value_set_layer_id (gimp_value_array_index (args, 0), layer_ID);
   g_value_set_enum (gimp_value_array_index (args, 1), justify);
diff --git a/libgimp/gimptexttool_pdb.c b/libgimp/gimptexttool_pdb.c
index 4feb314d40..a39b5a40cf 100644
--- a/libgimp/gimptexttool_pdb.c
+++ b/libgimp/gimptexttool_pdb.c
@@ -90,7 +90,7 @@ gimp_text_fontname (gint32        image_ID,
                                           GIMP_TYPE_INT32,
                                           G_TYPE_BOOLEAN,
                                           G_TYPE_DOUBLE,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_SIZE_TYPE,
                                           G_TYPE_STRING,
                                           G_TYPE_NONE);
   gimp_value_set_image_id (gimp_value_array_index (args, 0), image_ID);
@@ -155,7 +155,7 @@ gimp_text_get_extents_fontname (const gchar  *text,
 
   args = gimp_value_array_new_from_types (G_TYPE_STRING,
                                           G_TYPE_DOUBLE,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_SIZE_TYPE,
                                           G_TYPE_STRING,
                                           G_TYPE_NONE);
   g_value_set_string (gimp_value_array_index (args, 0), text);
diff --git a/libgimp/gimpvectors_pdb.c b/libgimp/gimpvectors_pdb.c
index c2563a96f1..2ae2de9dc3 100644
--- a/libgimp/gimpvectors_pdb.c
+++ b/libgimp/gimpvectors_pdb.c
@@ -554,7 +554,7 @@ gimp_vectors_stroke_flip (gint32              vectors_ID,
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_VECTORS_ID,
                                           GIMP_TYPE_INT32,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_ORIENTATION_TYPE,
                                           G_TYPE_DOUBLE,
                                           G_TYPE_NONE);
   gimp_value_set_vectors_id (gimp_value_array_index (args, 0), vectors_ID);
@@ -720,7 +720,7 @@ gimp_vectors_stroke_new_from_points (gint32                 vectors_ID,
   gint stroke_id = 0;
 
   args = gimp_value_array_new_from_types (GIMP_TYPE_VECTORS_ID,
-                                          G_TYPE_ENUM,
+                                          GIMP_TYPE_VECTORS_STROKE_TYPE,
                                           GIMP_TYPE_INT32,
                                           GIMP_TYPE_FLOAT_ARRAY,
                                           G_TYPE_BOOLEAN,
diff --git a/pdb/lib.pl b/pdb/lib.pl
index 845888edb6..23e49bd4f5 100644
--- a/pdb/lib.pl
+++ b/pdb/lib.pl
@@ -143,7 +143,7 @@ sub generate {
        my $arg_array = "";
        my $argc = 0;
        foreach (@inargs) {
-           my ($type) = &arg_parse($_->{type});
+           my ($type, @typeinfo) = &arg_parse($_->{type});
            my $arg = $arg_types{$type};
            my $var = $_->{name};
            my $desc = exists $_->{desc} ? $_->{desc} : "";
@@ -153,7 +153,19 @@ sub generate {
            $var .= '_ID' if $arg->{id};
 
            # This gets passed to gimp_value_array_new_with_types()
-           $value_array .= "$arg->{gtype},\n" . " " x 42;
+           if ($type eq 'enum') {
+               $enum_type = $typeinfo[0];
+               $enum_type =~ s/([a-z])([A-Z])/$1_$2/g;
+               $enum_type =~ s/([A-Z]+)([A-Z])/$1_$2/g;
+               $enum_type =~ tr/[a-z]/[A-Z]/;
+               $enum_type =~ s/^GIMP/GIMP_TYPE/;
+               $enum_type =~ s/^GEGL/GEGL_TYPE/;
+
+               $value_array .= "$enum_type,\n" .  " " x 42;
+           }
+           else {
+               $value_array .= "$arg->{gtype},\n" . " " x 42;
+           }
 
            $value = "gimp_value_array_index (args, $argc)";
 



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