mirror of https://github.com/GNOME/gimp.git
613 lines
31 KiB
Perl
613 lines
31 KiB
Perl
# GIMP - The GNU Image Manipulation Program
|
|
# Copyright (C) 1998-2003 Manish Singh <yosh@gimp.org>
|
|
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
package Gimp::CodeGen::pdb;
|
|
|
|
%arg_types = (
|
|
int32 => { name => 'INT32',
|
|
gtype => 'G_TYPE_INT',
|
|
type => 'gint ',
|
|
const_type => 'gint ',
|
|
init_value => '0',
|
|
get_value_func => '$var = g_value_get_int ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_INT ($value)',
|
|
set_value_func => 'g_value_set_int ($value, $var)',
|
|
take_value_func => 'g_value_set_int ($value, $var)' },
|
|
|
|
float => { name => 'FLOAT',
|
|
gtype => 'G_TYPE_DOUBLE',
|
|
type => 'gdouble ',
|
|
const_type => 'gdouble ',
|
|
init_value => '0.0',
|
|
get_value_func => '$var = g_value_get_double ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_DOUBLE ($value)',
|
|
set_value_func => 'g_value_set_double ($value, $var)',
|
|
take_value_func => 'g_value_set_double ($value, $var)' },
|
|
|
|
string => { name => 'STRING',
|
|
gtype => 'G_TYPE_STRING',
|
|
type => 'gchar *',
|
|
const_type => 'const gchar *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer full)',
|
|
get_value_func => '$var = g_value_get_string ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_DUP_STRING ($value)',
|
|
set_value_func => 'g_value_set_string ($value, $var)',
|
|
take_value_func => 'g_value_take_string ($value, $var)' },
|
|
|
|
strv => { name => 'STRV',
|
|
gtype => 'G_TYPE_STRV',
|
|
type => 'gchar **',
|
|
const_type => 'const gchar **',
|
|
init_value => 'NULL',
|
|
in_annotate => '(array zero-terminated=1)',
|
|
out_annotate => '(array zero-terminated=1) (transfer full)',
|
|
get_value_func => '$var = g_value_get_boxed ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_DUP_STRV ($value)',
|
|
set_value_func => 'g_value_set_boxed ($value, $var)',
|
|
take_value_func => 'g_value_take_boxed ($value, $var)' },
|
|
|
|
bytes => { name => 'BYTES',
|
|
gtype => 'G_TYPE_BYTES',
|
|
type => 'GBytes *',
|
|
const_type => 'GBytes *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer full)',
|
|
get_value_func => '$var = g_value_get_boxed ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_DUP_BYTES ($value)',
|
|
set_value_func => 'g_value_set_boxed ($value, $var)',
|
|
take_value_func => 'g_value_take_boxed ($value, $var)' },
|
|
|
|
int32array => { name => 'INT32ARRAY',
|
|
gtype => 'GIMP_TYPE_INT32_ARRAY',
|
|
type => 'gint32 *',
|
|
const_type => 'const gint32 *',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type gint32)',
|
|
out_annotate => '(element-type gint32) (transfer full)',
|
|
get_value_func => '$var = gimp_value_get_int32_array ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_DUP_INT32_ARRAY ($value)',
|
|
set_value_func => 'gimp_value_set_int32_array ($value, $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_int32_array ($value, $var, $var_len)' },
|
|
|
|
floatarray => { name => 'FLOATARRAY',
|
|
gtype => 'GIMP_TYPE_FLOAT_ARRAY',
|
|
type => 'gdouble *',
|
|
const_type => 'const gdouble *',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type gdouble)',
|
|
out_annotate => '(element-type gdouble) (transfer full)',
|
|
get_value_func => '$var = gimp_value_get_float_array ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_DUP_FLOAT_ARRAY ($value)',
|
|
set_value_func => 'gimp_value_set_float_array ($value, $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_float_array ($value, $var, $var_len)' },
|
|
|
|
colorarray => { name => 'COLOR_ARRAY',
|
|
gtype => 'GIMP_TYPE_COLOR_ARRAY',
|
|
type => 'GeglColor **',
|
|
const_type => 'const GeglColor **',
|
|
init_value => 'NULL',
|
|
in_annotate => '(array zero-terminated=1)',
|
|
out_annotate => '(array zero-terminated=1) (transfer full)',
|
|
get_value_func => '$var = g_value_get_boxed ($value)',
|
|
dup_value_func => '$var = gimp_color_array_copy (g_value_get_boxed (gimp_value_array_index ($value)))',
|
|
set_value_func => 'g_value_set_boxed ($value, $var)',
|
|
take_value_func => 'g_value_take_boxed ($value, $var)' },
|
|
|
|
imagearray => { name => 'IMAGEARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpImage **',
|
|
const_type => 'const GimpImage **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpImage)',
|
|
out_annotate => '(element-type GimpImage) (transfer container)',
|
|
get_value_func => '$var = (const GimpImage **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_IMAGE, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_IMAGE, (GObject **) $var, $var_len)' },
|
|
|
|
itemarray => { name => 'ITEMARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpItem **',
|
|
const_type => 'const GimpItem **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpItem)',
|
|
out_annotate => '(element-type GimpItem) (transfer container)',
|
|
get_value_func => '$var = (const GimpItem **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_ITEM, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_ITEM, (GObject **) $var, $var_len)' },
|
|
|
|
layerarray => { name => 'LAYERARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpLayer **',
|
|
const_type => 'const GimpLayer **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpLayer)',
|
|
out_annotate => '(element-type GimpLayer) (transfer container)',
|
|
get_value_func => '$var = (const GimpLayer **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_LAYER, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_LAYER, (GObject **) $var, $var_len)' },
|
|
|
|
channelarray => { name => 'CHANNELARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpChannel **',
|
|
const_type => 'const GimpChannel **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpChannel)',
|
|
out_annotate => '(element-type GimpChannel) (transfer container)',
|
|
get_value_func => '$var = (const GimpChannel **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_CHANNEL, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_CHANNEL, (GObject **) $var, $var_len)' },
|
|
|
|
patharray => { name => 'PATHARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpPath **',
|
|
const_type => 'const GimpPath **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpPath)',
|
|
out_annotate => '(element-type GimpPath) (transfer container)',
|
|
get_value_func => '$var = (const GimpPath **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_PATH, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_PATH, (GObject **) $var, $var_len)' },
|
|
|
|
resourcearray => { name => 'RESOURCEARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpResource **',
|
|
const_type => 'const GimpResource **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpResource)',
|
|
out_annotate => '(element-type GimpResource) (transfer container)',
|
|
get_value_func => '$var = (const GimpResource **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_RESOURCE, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_RESOURCE, (GObject **) $var, $var_len)' },
|
|
|
|
brusharray => { name => 'BRUSHARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpBrush **',
|
|
const_type => 'const GimpBrush **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpBrush)',
|
|
out_annotate => '(element-type GimpBrush) (transfer container)',
|
|
get_value_func => '$var = (const GimpBrush **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_BRUSH, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_BRUSH, (GObject **) $var, $var_len)' },
|
|
|
|
fontarray => { name => 'FONTARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpFont **',
|
|
const_type => 'const GimpFont **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpFont)',
|
|
out_annotate => '(element-type GimpFont) (transfer container)',
|
|
get_value_func => '$var = (const GimpFont **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_FONT, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_FONT, (GObject **) $var, $var_len)' },
|
|
|
|
gradientarray => { name => 'GRADIENTARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpGradient **',
|
|
const_type => 'const GimpGradient **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpGradient)',
|
|
out_annotate => '(element-type GimpGradient) (transfer container)',
|
|
get_value_func => '$var = (const GimpGradient **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_GRADIENT, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_GRADIENT, (GObject **) $var, $var_len)' },
|
|
|
|
palettearray => { name => 'PALETTEARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpPalette **',
|
|
const_type => 'const GimpPalette **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpPalette)',
|
|
out_annotate => '(element-type GimpPalette) (transfer container)',
|
|
get_value_func => '$var = (const GimpPalette **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_PALETTE, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_PALETTE, (GObject **) $var, $var_len)' },
|
|
|
|
patternarray => { name => 'PATTERNARRAY',
|
|
gtype => 'GIMP_TYPE_OBJECT_ARRAY',
|
|
type => 'GimpPattern **',
|
|
const_type => 'const GimpPattern **',
|
|
array => 1,
|
|
init_value => 'NULL',
|
|
in_annotate => '(element-type GimpPattern)',
|
|
out_annotate => '(element-type GimpPattern) (transfer container)',
|
|
get_value_func => '$var = (const GimpPattern **) gimp_value_get_object_array ($value)',
|
|
dup_value_func => '{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index ($value)); if (a) $var = g_memdup2 (a->data, a->length * sizeof (gpointer)); }',
|
|
set_value_func => 'gimp_value_set_object_array ($value, GIMP_TYPE_PATTERN, (GObject **) $var, $var_len)',
|
|
take_value_func => 'gimp_value_take_object_array ($value, GIMP_TYPE_PATTERN, (GObject **) $var, $var_len)' },
|
|
|
|
geglcolor => { name => 'GEGLCOLOR',
|
|
gtype => 'GEGL_TYPE_COLOR',
|
|
type => 'GeglColor *',
|
|
const_type => 'GeglColor *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer full)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = g_value_dup_object (gimp_value_array_index ($value))',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_take_object ($value, $var)',
|
|
headers => [ qw(<cairo.h> "libgimpcolor/gimpcolor.h") ] },
|
|
|
|
display => { name => 'DISPLAY',
|
|
gtype => 'GIMP_TYPE_DISPLAY',
|
|
type => 'GimpDisplay *',
|
|
const_type => 'GimpDisplay *',
|
|
app_type => 'GimpDisplay *',
|
|
app_const_type => 'GimpDisplay *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_DISPLAY ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)' },
|
|
|
|
image => { name => 'IMAGE',
|
|
gtype => 'GIMP_TYPE_IMAGE',
|
|
type => 'GimpImage *',
|
|
const_type => 'GimpImage *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_IMAGE ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpimage.h") ] },
|
|
|
|
item => { name => 'ITEM',
|
|
gtype => 'GIMP_TYPE_ITEM',
|
|
type => 'GimpItem *',
|
|
const_type => 'GimpItem *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_ITEM ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpitem.h") ] },
|
|
|
|
layer => { name => 'LAYER',
|
|
gtype => 'GIMP_TYPE_LAYER',
|
|
type => 'GimpLayer *',
|
|
const_type => 'GimpLayer *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_LAYER ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimplayer.h") ] },
|
|
|
|
text_layer => { name => 'TEXT_LAYER',
|
|
gtype => 'GIMP_TYPE_TEXT_LAYER',
|
|
type => 'GimpTextLayer *',
|
|
const_type => 'GimpTextLayer *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_TEXT_LAYER ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("text/gimptextlayer.h") ] },
|
|
|
|
group_layer => { name => 'GROUP_LAYER',
|
|
gtype => 'GIMP_TYPE_GROUP_LAYER',
|
|
type => 'GimpGroupLayer *',
|
|
const_type => 'GimpGroupLayer *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_GROUP_LAYER ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpgrouplayer.h") ] },
|
|
|
|
channel => { name => 'CHANNEL',
|
|
gtype => 'GIMP_TYPE_CHANNEL',
|
|
type => 'GimpChannel *',
|
|
const_type => 'GimpChannel *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_CHANNEL ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpchannel.h") ] },
|
|
|
|
drawable => { name => 'DRAWABLE',
|
|
gtype => 'GIMP_TYPE_DRAWABLE',
|
|
type => 'GimpDrawable *',
|
|
const_type => 'GimpDrawable *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_DRAWABLE ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpdrawable.h") ] },
|
|
|
|
selection => { name => 'SELECTION',
|
|
gtype => 'GIMP_TYPE_SELECTION',
|
|
type => 'GimpSelection *',
|
|
const_type => 'GimpSelection *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_SELECTION ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpselection.h") ] },
|
|
|
|
layer_mask => { name => 'CHANNEL',
|
|
gtype => 'GIMP_TYPE_LAYER_MASK',
|
|
type => 'GimpLayerMask *',
|
|
const_type => 'GimpLayerMask *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_LAYER_MASK ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimplayermask.h") ] },
|
|
|
|
path => { name => 'PATH',
|
|
gtype => 'GIMP_TYPE_PATH',
|
|
type => 'GimpPath *',
|
|
const_type => 'GimpPath *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_PATH ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("vectors/gimppath.h") ] },
|
|
|
|
file => { name => 'FILE',
|
|
gtype => 'G_TYPE_FILE',
|
|
type => 'GFile *',
|
|
const_type => 'GFile *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer full)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_DUP_FILE ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)' },
|
|
|
|
parasite => { name => 'PARASITE',
|
|
gtype => 'GIMP_TYPE_PARASITE',
|
|
type => 'GimpParasite *',
|
|
const_type => 'const GimpParasite *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer full)',
|
|
get_value_func => '$var = g_value_get_boxed ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_DUP_PARASITE ($value)',
|
|
set_value_func => 'g_value_set_boxed ($value, $var)',
|
|
take_value_func => 'g_value_take_boxed ($value, $var)',
|
|
headers => [ qw("libgimpbase/gimpbase.h") ] },
|
|
|
|
param => { name => 'PARAM',
|
|
gtype => 'G_TYPE_PARAM_SPEC',
|
|
type => 'GParamSpec *',
|
|
const_type => 'GParamSpec *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer full)',
|
|
get_value_func => '$var = g_value_get_param ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_DUP_PARAM ($value)',
|
|
set_value_func => 'g_value_set_param ($value, $var)',
|
|
take_value_func => 'g_value_take_param ($value, $var)' },
|
|
|
|
# Special cases
|
|
enum => { name => 'ENUM',
|
|
gtype => 'G_TYPE_ENUM',
|
|
type => 'gint ',
|
|
const_type => 'gint ',
|
|
init_value => '0',
|
|
get_value_func => '$var = g_value_get_enum ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_ENUM ($value)',
|
|
set_value_func => 'g_value_set_enum ($value, $var)',
|
|
take_value_func => 'g_value_set_enum ($value, $var)' },
|
|
|
|
boolean => { name => 'BOOLEAN',
|
|
gtype => 'G_TYPE_BOOLEAN',
|
|
type => 'gboolean ',
|
|
const_type => 'gboolean ',
|
|
init_value => 'FALSE',
|
|
get_value_func => '$var = g_value_get_boolean ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_BOOLEAN ($value)',
|
|
set_value_func => 'g_value_set_boolean ($value, $var)',
|
|
take_value_func => 'g_value_set_boolean ($value, $var)' },
|
|
|
|
tattoo => { name => 'TATTOO',
|
|
gtype => 'G_TYPE_UINT',
|
|
type => 'guint ',
|
|
const_type => 'guint ',
|
|
init_value => '0',
|
|
get_value_func => '$var = g_value_get_uint ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_UINT ($value)',
|
|
set_value_func => 'g_value_set_uint ($value, $var)',
|
|
take_value_func => 'g_value_set_uint ($value, $var)' },
|
|
|
|
guide => { name => 'GUIDE',
|
|
gtype => 'G_TYPE_UINT',
|
|
type => 'guint ',
|
|
const_type => 'guint ',
|
|
init_value => '0',
|
|
get_value_func => '$var = g_value_get_uint ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_UINT ($value)',
|
|
set_value_func => 'g_value_set_uint ($value, $var)',
|
|
take_value_func => 'g_value_set_uint ($value, $var)' },
|
|
|
|
sample_point => { name => 'SAMPLE_POINT',
|
|
gtype => 'G_TYPE_UINT',
|
|
type => 'guint ',
|
|
const_type => 'guint ',
|
|
init_value => '0',
|
|
get_value_func => '$var = g_value_get_uint ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_UINT ($value)',
|
|
set_value_func => 'g_value_set_uint ($value, $var)',
|
|
take_value_func => 'g_value_set_uint ($value, $var)' },
|
|
|
|
export_options => { name => 'EXPORT_OPTIONS',
|
|
gtype => 'GIMP_TYPE_EXPORT_OPTIONS',
|
|
type => 'GimpExportOptions *',
|
|
const_type => 'GimpExportOptions *',
|
|
init_value => 'NULL',
|
|
in_annotate => '(nullable)',
|
|
out_annotate => '(transfer full)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = g_value_dup_object (gimp_value_array_index ($value))',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("libgimpbase/gimpbase.h") ] },
|
|
|
|
unit => { name => 'UNIT',
|
|
gtype => 'GIMP_TYPE_UNIT',
|
|
type => 'GimpUnit *',
|
|
const_type => 'GimpUnit *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_UNIT ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("libgimpbase/gimpbase.h") ] },
|
|
|
|
resource => { name => 'RESOURCE',
|
|
gtype => 'GIMP_TYPE_RESOURCE',
|
|
type => 'GimpResource *',
|
|
const_type => 'GimpResource *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_RESOURCE ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpresource.h") ] },
|
|
|
|
brush => { name => 'BRUSH',
|
|
gtype => 'GIMP_TYPE_BRUSH',
|
|
type => 'GimpBrush *',
|
|
const_type => 'GimpBrush *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_BRUSH ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpbrush.h") ] },
|
|
|
|
|
|
pattern => { name => 'PATTERN',
|
|
gtype => 'GIMP_TYPE_PATTERN',
|
|
type => 'GimpPattern *',
|
|
const_type => 'GimpPattern *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_PATTERN ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimppattern.h") ] },
|
|
|
|
gradient => { name => 'GRADIENT',
|
|
gtype => 'GIMP_TYPE_GRADIENT',
|
|
type => 'GimpGradient *',
|
|
const_type => 'GimpGradient *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_GRADIENT ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimpgradient.h") ] },
|
|
|
|
palette => { name => 'PALETTE',
|
|
gtype => 'GIMP_TYPE_PALETTE',
|
|
type => 'GimpPalette *',
|
|
const_type => 'GimpPalette *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_PALETTE ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("core/gimppalette.h") ] },
|
|
|
|
font => { name => 'FONT',
|
|
gtype => 'GIMP_TYPE_FONT',
|
|
type => 'GimpFont *',
|
|
const_type => 'GimpFont *',
|
|
init_value => 'NULL',
|
|
out_annotate => '(transfer none)',
|
|
get_value_func => '$var = g_value_get_object ($value)',
|
|
dup_value_func => '$var = GIMP_VALUES_GET_FONT ($value)',
|
|
set_value_func => 'g_value_set_object ($value, $var)',
|
|
take_value_func => 'g_value_set_object ($value, $var)',
|
|
headers => [ qw("text/gimpfont.h") ] }
|
|
);
|
|
|
|
# Split out the parts of an arg constraint
|
|
sub arg_parse {
|
|
my $arg = shift;
|
|
|
|
if ($arg =~ /^enum (\w+)(.*)/) {
|
|
my ($name, $remove) = ($1, $2);
|
|
my @retvals = ('enum', $name);
|
|
|
|
if ($remove && $remove =~ m@ \(no @) {
|
|
chop $remove; ($remove = substr($remove, 5)) =~ s/ $//;
|
|
push @retvals, split(/,\s*/, $remove);
|
|
}
|
|
|
|
return @retvals;
|
|
}
|
|
elsif ($arg =~ /^unit(?: \(min (.*?)\))?/) {
|
|
my @retvals = ('unit');
|
|
push @retvals, $1 if $1;
|
|
return @retvals;
|
|
}
|
|
elsif ($arg =~ /^(?:([+-.\dA-Z_][^\s]*) \s* (<=|<))?
|
|
\s* (\w+) \s*
|
|
(?:(<=|<) \s* ([+-.\dA-Z_][^\s]*))?
|
|
/x) {
|
|
return ($3, $1, $2, $5, $4);
|
|
}
|
|
}
|
|
|
|
1;
|