mirror of
https://gitlab.gnome.org/GNOME/gimp
synced 2024-10-19 06:14:03 +00:00
register some missing enums.
2004-10-25 Michael Natterer <mitch@gimp.org> * libgimpbase/gimpbaseenums.[ch]: register some missing enums. * tools/pdbgen/enumcode.pl: removed code to generate plug-ins/script-fu/script-fu-constants.c, generate code to explicitely initialize and query all of libgimp*'s enums and write it to libgimp/gimpenums.c.tail * libgimp/gimpenums.h: regenerated. * libgimp/Makefile.am: append gimpenums.c.tail to gimpenums.c * libgimp/gimp.c (gimp_main): call g_type_init() and _gimp_enums_init(). * libgimp/gimp.def: added gimp_enums_get_type_names(). * plug-ins/script-fu/Makefile.am * plug-ins/script-fu/script-fu-constants.[ch]: removed these files. * plug-ins/script-fu/siod-wrapper.c: dynamically register all constants using gimp_enums_get_type_names() and introspection. Also register the built-in unit types. * plug-ins/script-fu/script-fu.c: changed accordingly.
This commit is contained in:
parent
76d874e29c
commit
b030530936
27
ChangeLog
27
ChangeLog
|
@ -1,3 +1,30 @@
|
|||
2004-10-25 Michael Natterer <mitch@gimp.org>
|
||||
|
||||
* libgimpbase/gimpbaseenums.[ch]: register some missing enums.
|
||||
|
||||
* tools/pdbgen/enumcode.pl: removed code to generate
|
||||
plug-ins/script-fu/script-fu-constants.c, generate code to
|
||||
explicitely initialize and query all of libgimp*'s enums
|
||||
and write it to libgimp/gimpenums.c.tail
|
||||
|
||||
* libgimp/gimpenums.h: regenerated.
|
||||
|
||||
* libgimp/Makefile.am: append gimpenums.c.tail to gimpenums.c
|
||||
|
||||
* libgimp/gimp.c (gimp_main): call g_type_init() and
|
||||
_gimp_enums_init().
|
||||
|
||||
* libgimp/gimp.def: added gimp_enums_get_type_names().
|
||||
|
||||
* plug-ins/script-fu/Makefile.am
|
||||
* plug-ins/script-fu/script-fu-constants.[ch]: removed these files.
|
||||
|
||||
* plug-ins/script-fu/siod-wrapper.c: dynamically register all
|
||||
constants using gimp_enums_get_type_names() and introspection.
|
||||
Also register the built-in unit types.
|
||||
|
||||
* plug-ins/script-fu/script-fu.c: changed accordingly.
|
||||
|
||||
2004-10-25 Michael Natterer <mitch@gimp.org>
|
||||
|
||||
Don't store human readable and translatable enum/flag strings in
|
||||
|
|
|
@ -7,3 +7,4 @@ _libs
|
|||
.deps
|
||||
*.la
|
||||
gimpenums.c
|
||||
gimpenums.c.tail
|
||||
|
|
|
@ -332,7 +332,7 @@ uninstall-local: uninstall-ms-lib uninstall-libtool-import-lib
|
|||
gen_sources = xgen-cec
|
||||
CLEANFILES = $(gen_sources)
|
||||
|
||||
$(srcdir)/gimpenums.c: $(srcdir)/gimpenums.h $(GIMP_MKENUMS)
|
||||
$(srcdir)/gimpenums.c: $(srcdir)/gimpenums.h $(srcdir)/gimpenums.c.tail $(GIMP_MKENUMS)
|
||||
$(GIMP_MKENUMS) \
|
||||
--fhead "#include \"config.h\"\n#include <glib-object.h>\n#include \"libgimpbase/gimpbase.h\"\n#include \"gimpenums.h\"" \
|
||||
--fprod "\n/* enumerations from \"@filename@\" */" \
|
||||
|
@ -343,5 +343,6 @@ $(srcdir)/gimpenums.c: $(srcdir)/gimpenums.h $(GIMP_MKENUMS)
|
|||
--dprod " { @VALUENAME@, @valuedesc@, @valuehelp@ }," \
|
||||
--dtail " { 0, NULL, NULL }\n };\n\n static GType type = 0;\n\n if (! type)\n {\n type = g_@type@_register_static (\"@EnumName@\", values);\n gimp_type_set_translation_domain (type, GETTEXT_PACKAGE \"-libgimp\");\n gimp_@type@_set_value_descriptions (type, descs);\n }\n\n return type;\n}\n" \
|
||||
$(srcdir)/gimpenums.h > xgen-cec \
|
||||
&& cat $(srcdir)/gimpenums.c.tail >> xgen-cec \
|
||||
&& cp xgen-cec $(@F) \
|
||||
&& rm -f xgen-cec
|
||||
|
|
|
@ -359,6 +359,8 @@ gimp_main (const GimpPlugInInfo *info,
|
|||
wire_set_writer (gimp_write);
|
||||
wire_set_flusher (gimp_flush);
|
||||
|
||||
g_type_init ();
|
||||
_gimp_enums_init ();
|
||||
|
||||
/* initialize units */
|
||||
{
|
||||
|
|
|
@ -144,6 +144,7 @@ EXPORTS
|
|||
gimp_edit_paste
|
||||
gimp_edit_stroke
|
||||
gimp_ellipse_select
|
||||
gimp_enums_get_type_names
|
||||
gimp_equalize
|
||||
gimp_eraser
|
||||
gimp_eraser_default
|
||||
|
|
|
@ -427,6 +427,11 @@ typedef enum
|
|||
} GimpTransferMode;
|
||||
|
||||
|
||||
void _gimp_enums_init (void);
|
||||
|
||||
const gchar ** gimp_enums_get_type_names (gint *n_type_names);
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GIMP_ENUMS_H__ */
|
||||
|
|
|
@ -143,6 +143,240 @@ gimp_image_type_get_type (void)
|
|||
return type;
|
||||
}
|
||||
|
||||
GType
|
||||
gimp_pdb_arg_type_get_type (void)
|
||||
{
|
||||
static const GEnumValue values[] =
|
||||
{
|
||||
{ GIMP_PDB_INT32, "GIMP_PDB_INT32", "int32" },
|
||||
{ GIMP_PDB_INT16, "GIMP_PDB_INT16", "int16" },
|
||||
{ GIMP_PDB_INT8, "GIMP_PDB_INT8", "int8" },
|
||||
{ GIMP_PDB_FLOAT, "GIMP_PDB_FLOAT", "float" },
|
||||
{ GIMP_PDB_STRING, "GIMP_PDB_STRING", "string" },
|
||||
{ GIMP_PDB_INT32ARRAY, "GIMP_PDB_INT32ARRAY", "int32array" },
|
||||
{ GIMP_PDB_INT16ARRAY, "GIMP_PDB_INT16ARRAY", "int16array" },
|
||||
{ GIMP_PDB_INT8ARRAY, "GIMP_PDB_INT8ARRAY", "int8array" },
|
||||
{ GIMP_PDB_FLOATARRAY, "GIMP_PDB_FLOATARRAY", "floatarray" },
|
||||
{ GIMP_PDB_STRINGARRAY, "GIMP_PDB_STRINGARRAY", "stringarray" },
|
||||
{ GIMP_PDB_COLOR, "GIMP_PDB_COLOR", "color" },
|
||||
{ GIMP_PDB_REGION, "GIMP_PDB_REGION", "region" },
|
||||
{ GIMP_PDB_DISPLAY, "GIMP_PDB_DISPLAY", "display" },
|
||||
{ GIMP_PDB_IMAGE, "GIMP_PDB_IMAGE", "image" },
|
||||
{ GIMP_PDB_LAYER, "GIMP_PDB_LAYER", "layer" },
|
||||
{ GIMP_PDB_CHANNEL, "GIMP_PDB_CHANNEL", "channel" },
|
||||
{ GIMP_PDB_DRAWABLE, "GIMP_PDB_DRAWABLE", "drawable" },
|
||||
{ GIMP_PDB_SELECTION, "GIMP_PDB_SELECTION", "selection" },
|
||||
{ GIMP_PDB_BOUNDARY, "GIMP_PDB_BOUNDARY", "boundary" },
|
||||
{ GIMP_PDB_PATH, "GIMP_PDB_PATH", "path" },
|
||||
{ GIMP_PDB_PARASITE, "GIMP_PDB_PARASITE", "parasite" },
|
||||
{ GIMP_PDB_STATUS, "GIMP_PDB_STATUS", "status" },
|
||||
{ GIMP_PDB_END, "GIMP_PDB_END", "end" },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static const GimpEnumDesc descs[] =
|
||||
{
|
||||
{ GIMP_PDB_INT32, "GIMP_PDB_INT32", NULL },
|
||||
{ GIMP_PDB_INT16, "GIMP_PDB_INT16", NULL },
|
||||
{ GIMP_PDB_INT8, "GIMP_PDB_INT8", NULL },
|
||||
{ GIMP_PDB_FLOAT, "GIMP_PDB_FLOAT", NULL },
|
||||
{ GIMP_PDB_STRING, "GIMP_PDB_STRING", NULL },
|
||||
{ GIMP_PDB_INT32ARRAY, "GIMP_PDB_INT32ARRAY", NULL },
|
||||
{ GIMP_PDB_INT16ARRAY, "GIMP_PDB_INT16ARRAY", NULL },
|
||||
{ GIMP_PDB_INT8ARRAY, "GIMP_PDB_INT8ARRAY", NULL },
|
||||
{ GIMP_PDB_FLOATARRAY, "GIMP_PDB_FLOATARRAY", NULL },
|
||||
{ GIMP_PDB_STRINGARRAY, "GIMP_PDB_STRINGARRAY", NULL },
|
||||
{ GIMP_PDB_COLOR, "GIMP_PDB_COLOR", NULL },
|
||||
{ GIMP_PDB_REGION, "GIMP_PDB_REGION", NULL },
|
||||
{ GIMP_PDB_DISPLAY, "GIMP_PDB_DISPLAY", NULL },
|
||||
{ GIMP_PDB_IMAGE, "GIMP_PDB_IMAGE", NULL },
|
||||
{ GIMP_PDB_LAYER, "GIMP_PDB_LAYER", NULL },
|
||||
{ GIMP_PDB_CHANNEL, "GIMP_PDB_CHANNEL", NULL },
|
||||
{ GIMP_PDB_DRAWABLE, "GIMP_PDB_DRAWABLE", NULL },
|
||||
{ GIMP_PDB_SELECTION, "GIMP_PDB_SELECTION", NULL },
|
||||
{ GIMP_PDB_BOUNDARY, "GIMP_PDB_BOUNDARY", NULL },
|
||||
{ GIMP_PDB_PATH, "GIMP_PDB_PATH", NULL },
|
||||
{ GIMP_PDB_PARASITE, "GIMP_PDB_PARASITE", NULL },
|
||||
{ GIMP_PDB_STATUS, "GIMP_PDB_STATUS", NULL },
|
||||
{ GIMP_PDB_END, "GIMP_PDB_END", NULL },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static GType type = 0;
|
||||
|
||||
if (! type)
|
||||
{
|
||||
type = g_enum_register_static ("GimpPDBArgType", values);
|
||||
gimp_type_set_translation_domain (type, GETTEXT_PACKAGE "-libgimp");
|
||||
gimp_enum_set_value_descriptions (type, descs);
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
GType
|
||||
gimp_pdb_proc_type_get_type (void)
|
||||
{
|
||||
static const GEnumValue values[] =
|
||||
{
|
||||
{ GIMP_INTERNAL, "GIMP_INTERNAL", "internal" },
|
||||
{ GIMP_PLUGIN, "GIMP_PLUGIN", "plugin" },
|
||||
{ GIMP_EXTENSION, "GIMP_EXTENSION", "extension" },
|
||||
{ GIMP_TEMPORARY, "GIMP_TEMPORARY", "temporary" },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static const GimpEnumDesc descs[] =
|
||||
{
|
||||
{ GIMP_INTERNAL, "GIMP_INTERNAL", NULL },
|
||||
{ GIMP_PLUGIN, "GIMP_PLUGIN", NULL },
|
||||
{ GIMP_EXTENSION, "GIMP_EXTENSION", NULL },
|
||||
{ GIMP_TEMPORARY, "GIMP_TEMPORARY", NULL },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static GType type = 0;
|
||||
|
||||
if (! type)
|
||||
{
|
||||
type = g_enum_register_static ("GimpPDBProcType", values);
|
||||
gimp_type_set_translation_domain (type, GETTEXT_PACKAGE "-libgimp");
|
||||
gimp_enum_set_value_descriptions (type, descs);
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
GType
|
||||
gimp_pdb_status_type_get_type (void)
|
||||
{
|
||||
static const GEnumValue values[] =
|
||||
{
|
||||
{ GIMP_PDB_EXECUTION_ERROR, "GIMP_PDB_EXECUTION_ERROR", "execution-error" },
|
||||
{ GIMP_PDB_CALLING_ERROR, "GIMP_PDB_CALLING_ERROR", "calling-error" },
|
||||
{ GIMP_PDB_PASS_THROUGH, "GIMP_PDB_PASS_THROUGH", "pass-through" },
|
||||
{ GIMP_PDB_SUCCESS, "GIMP_PDB_SUCCESS", "success" },
|
||||
{ GIMP_PDB_CANCEL, "GIMP_PDB_CANCEL", "cancel" },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static const GimpEnumDesc descs[] =
|
||||
{
|
||||
{ GIMP_PDB_EXECUTION_ERROR, "GIMP_PDB_EXECUTION_ERROR", NULL },
|
||||
{ GIMP_PDB_CALLING_ERROR, "GIMP_PDB_CALLING_ERROR", NULL },
|
||||
{ GIMP_PDB_PASS_THROUGH, "GIMP_PDB_PASS_THROUGH", NULL },
|
||||
{ GIMP_PDB_SUCCESS, "GIMP_PDB_SUCCESS", NULL },
|
||||
{ GIMP_PDB_CANCEL, "GIMP_PDB_CANCEL", NULL },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static GType type = 0;
|
||||
|
||||
if (! type)
|
||||
{
|
||||
type = g_enum_register_static ("GimpPDBStatusType", values);
|
||||
gimp_type_set_translation_domain (type, GETTEXT_PACKAGE "-libgimp");
|
||||
gimp_enum_set_value_descriptions (type, descs);
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
GType
|
||||
gimp_message_handler_type_get_type (void)
|
||||
{
|
||||
static const GEnumValue values[] =
|
||||
{
|
||||
{ GIMP_MESSAGE_BOX, "GIMP_MESSAGE_BOX", "message-box" },
|
||||
{ GIMP_CONSOLE, "GIMP_CONSOLE", "console" },
|
||||
{ GIMP_ERROR_CONSOLE, "GIMP_ERROR_CONSOLE", "error-console" },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static const GimpEnumDesc descs[] =
|
||||
{
|
||||
{ GIMP_MESSAGE_BOX, "GIMP_MESSAGE_BOX", NULL },
|
||||
{ GIMP_CONSOLE, "GIMP_CONSOLE", NULL },
|
||||
{ GIMP_ERROR_CONSOLE, "GIMP_ERROR_CONSOLE", NULL },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static GType type = 0;
|
||||
|
||||
if (! type)
|
||||
{
|
||||
type = g_enum_register_static ("GimpMessageHandlerType", values);
|
||||
gimp_type_set_translation_domain (type, GETTEXT_PACKAGE "-libgimp");
|
||||
gimp_enum_set_value_descriptions (type, descs);
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
GType
|
||||
gimp_stack_trace_mode_get_type (void)
|
||||
{
|
||||
static const GEnumValue values[] =
|
||||
{
|
||||
{ GIMP_STACK_TRACE_NEVER, "GIMP_STACK_TRACE_NEVER", "never" },
|
||||
{ GIMP_STACK_TRACE_QUERY, "GIMP_STACK_TRACE_QUERY", "query" },
|
||||
{ GIMP_STACK_TRACE_ALWAYS, "GIMP_STACK_TRACE_ALWAYS", "always" },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static const GimpEnumDesc descs[] =
|
||||
{
|
||||
{ GIMP_STACK_TRACE_NEVER, "GIMP_STACK_TRACE_NEVER", NULL },
|
||||
{ GIMP_STACK_TRACE_QUERY, "GIMP_STACK_TRACE_QUERY", NULL },
|
||||
{ GIMP_STACK_TRACE_ALWAYS, "GIMP_STACK_TRACE_ALWAYS", NULL },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static GType type = 0;
|
||||
|
||||
if (! type)
|
||||
{
|
||||
type = g_enum_register_static ("GimpStackTraceMode", values);
|
||||
gimp_type_set_translation_domain (type, GETTEXT_PACKAGE "-libgimp");
|
||||
gimp_enum_set_value_descriptions (type, descs);
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
GType
|
||||
gimp_progress_command_get_type (void)
|
||||
{
|
||||
static const GEnumValue values[] =
|
||||
{
|
||||
{ GIMP_PROGRESS_COMMAND_START, "GIMP_PROGRESS_COMMAND_START", "start" },
|
||||
{ GIMP_PROGRESS_COMMAND_END, "GIMP_PROGRESS_COMMAND_END", "end" },
|
||||
{ GIMP_PROGRESS_COMMAND_SET_TEXT, "GIMP_PROGRESS_COMMAND_SET_TEXT", "set-text" },
|
||||
{ GIMP_PROGRESS_COMMAND_SET_VALUE, "GIMP_PROGRESS_COMMAND_SET_VALUE", "set-value" },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static const GimpEnumDesc descs[] =
|
||||
{
|
||||
{ GIMP_PROGRESS_COMMAND_START, "GIMP_PROGRESS_COMMAND_START", NULL },
|
||||
{ GIMP_PROGRESS_COMMAND_END, "GIMP_PROGRESS_COMMAND_END", NULL },
|
||||
{ GIMP_PROGRESS_COMMAND_SET_TEXT, "GIMP_PROGRESS_COMMAND_SET_TEXT", NULL },
|
||||
{ GIMP_PROGRESS_COMMAND_SET_VALUE, "GIMP_PROGRESS_COMMAND_SET_VALUE", NULL },
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
static GType type = 0;
|
||||
|
||||
if (! type)
|
||||
{
|
||||
type = g_enum_register_static ("GimpProgressCommand", values);
|
||||
gimp_type_set_translation_domain (type, GETTEXT_PACKAGE "-libgimp");
|
||||
gimp_enum_set_value_descriptions (type, descs);
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
|
||||
/* Generated data ends here */
|
||||
|
||||
|
|
|
@ -26,10 +26,6 @@ G_BEGIN_DECLS
|
|||
/* For information look into the C source or the html documentation */
|
||||
|
||||
|
||||
/*
|
||||
* these enums that are registered with the type system
|
||||
*/
|
||||
|
||||
#define GIMP_TYPE_CHECK_SIZE (gimp_check_size_get_type ())
|
||||
|
||||
GType gimp_check_size_get_type (void) G_GNUC_CONST;
|
||||
|
@ -84,11 +80,7 @@ typedef enum
|
|||
} GimpImageType;
|
||||
|
||||
|
||||
/*
|
||||
* non-registered enums
|
||||
*/
|
||||
|
||||
typedef enum /*< skip >*/
|
||||
typedef enum /*< skip >*/
|
||||
{
|
||||
GIMP_UNIT_PIXEL = 0,
|
||||
|
||||
|
@ -102,7 +94,12 @@ typedef enum /*< skip >*/
|
|||
GIMP_UNIT_PERCENT = 65536 /*< pdb-skip >*/
|
||||
} GimpUnit;
|
||||
|
||||
typedef enum /*< skip >*/
|
||||
|
||||
#define GIMP_TYPE_PDB_ARG_TYPE (gimp_pdb_arg_type_get_type ())
|
||||
|
||||
GType gimp_pdb_arg_type_get_type (void) G_GNUC_CONST;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GIMP_PDB_INT32,
|
||||
GIMP_PDB_INT16,
|
||||
|
@ -129,7 +126,12 @@ typedef enum /*< skip >*/
|
|||
GIMP_PDB_END
|
||||
} GimpPDBArgType;
|
||||
|
||||
typedef enum /*< skip >*/
|
||||
|
||||
#define GIMP_TYPE_PDB_PROC_TYPE (gimp_pdb_proc_type_get_type ())
|
||||
|
||||
GType gimp_pdb_proc_type_get_type (void) G_GNUC_CONST;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GIMP_INTERNAL,
|
||||
GIMP_PLUGIN,
|
||||
|
@ -137,7 +139,12 @@ typedef enum /*< skip >*/
|
|||
GIMP_TEMPORARY
|
||||
} GimpPDBProcType;
|
||||
|
||||
typedef enum /*< skip >*/
|
||||
|
||||
#define GIMP_TYPE_PDB_STATUS_TYPE (gimp_pdb_status_type_get_type ())
|
||||
|
||||
GType gimp_pdb_status_type_get_type (void) G_GNUC_CONST;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GIMP_PDB_EXECUTION_ERROR,
|
||||
GIMP_PDB_CALLING_ERROR,
|
||||
|
@ -146,21 +153,36 @@ typedef enum /*< skip >*/
|
|||
GIMP_PDB_CANCEL
|
||||
} GimpPDBStatusType;
|
||||
|
||||
typedef enum /*< skip >*/
|
||||
|
||||
#define GIMP_TYPE_MESSAGE_HANDLER_TYPE (gimp_message_handler_type_get_type ())
|
||||
|
||||
GType gimp_message_handler_type_get_type (void) G_GNUC_CONST;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GIMP_MESSAGE_BOX,
|
||||
GIMP_CONSOLE,
|
||||
GIMP_ERROR_CONSOLE
|
||||
} GimpMessageHandlerType;
|
||||
|
||||
typedef enum /*< skip >*/
|
||||
|
||||
#define GIMP_TYPE_STACK_TRACE_MODE (gimp_stack_trace_mode_get_type ())
|
||||
|
||||
GType gimp_stack_trace_mode_get_type (void) G_GNUC_CONST;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GIMP_STACK_TRACE_NEVER,
|
||||
GIMP_STACK_TRACE_QUERY,
|
||||
GIMP_STACK_TRACE_ALWAYS
|
||||
} GimpStackTraceMode;
|
||||
|
||||
typedef enum /*< skip >*/
|
||||
|
||||
#define GIMP_TYPE_PROGRESS_COMMAND (gimp_progress_command_get_type ())
|
||||
|
||||
GType gimp_progress_command_get_type (void) G_GNUC_CONST;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GIMP_PROGRESS_COMMAND_START,
|
||||
GIMP_PROGRESS_COMMAND_END,
|
||||
|
|
|
@ -28,8 +28,6 @@ script_fu_SOURCES = \
|
|||
script-fu-interface.h \
|
||||
script-fu-text-console.h \
|
||||
script-fu-text-console.c \
|
||||
script-fu-constants.c \
|
||||
script-fu-constants.h \
|
||||
script-fu-intl.h \
|
||||
script-fu-scripts.c \
|
||||
script-fu-scripts.h \
|
||||
|
|
|
@ -28,7 +28,6 @@
|
|||
|
||||
#include "script-fu-types.h"
|
||||
|
||||
#include "script-fu-constants.h"
|
||||
#include "script-fu-console.h"
|
||||
#include "script-fu-interface.h"
|
||||
#include "script-fu-scripts.h"
|
||||
|
@ -281,6 +280,11 @@ init_procedures (void)
|
|||
static void
|
||||
init_constants (void)
|
||||
{
|
||||
const gchar **enum_type_names;
|
||||
gint n_enum_type_names;
|
||||
gint i;
|
||||
GimpUnit unit;
|
||||
|
||||
setvar (cintern ("gimp-directory"),
|
||||
strcons (-1, (gchar *) gimp_directory ()), NIL);
|
||||
|
||||
|
@ -296,8 +300,63 @@ init_constants (void)
|
|||
setvar (cintern ("gimp-sysconf-directory"),
|
||||
strcons (-1, (gchar *) gimp_sysconf_directory ()), NIL);
|
||||
|
||||
/* Generated constants */
|
||||
init_generated_constants ();
|
||||
enum_type_names = gimp_enums_get_type_names (&n_enum_type_names);
|
||||
|
||||
for (i = 0; i < n_enum_type_names; i++)
|
||||
{
|
||||
const gchar *enum_name = enum_type_names[i];
|
||||
GType enum_type = g_type_from_name (enum_name);
|
||||
GEnumClass *enum_class = g_type_class_ref (enum_type);
|
||||
GEnumValue *value;
|
||||
|
||||
for (value = enum_class->values; value->value_name; value++)
|
||||
{
|
||||
if (! strncmp ("GIMP_", value->value_name, 5))
|
||||
{
|
||||
gchar *scheme_name;
|
||||
gchar *s;
|
||||
|
||||
scheme_name = g_strdup (value->value_name + 5);
|
||||
|
||||
for (s = scheme_name; *s; s++)
|
||||
if (*s == '_')
|
||||
*s = '-';
|
||||
|
||||
g_print ("registering %s \"%s\" = %d\n",
|
||||
enum_name, scheme_name, value->value);
|
||||
|
||||
setvar (rintern (scheme_name), flocons (value->value), NIL);
|
||||
|
||||
g_free (scheme_name);
|
||||
}
|
||||
else
|
||||
{
|
||||
g_print ("EEK: enum %s has evil value \"%s\"\n",
|
||||
enum_name, value->value_name);
|
||||
}
|
||||
}
|
||||
|
||||
g_type_class_unref (enum_class);
|
||||
}
|
||||
|
||||
for (unit = GIMP_UNIT_PIXEL;
|
||||
unit < gimp_unit_get_number_of_built_in_units ();
|
||||
unit++)
|
||||
{
|
||||
gchar *tmp;
|
||||
gchar *scheme_name;
|
||||
|
||||
tmp = g_ascii_strup (gimp_unit_get_singular (unit), -1);
|
||||
scheme_name = g_strconcat ("UNIT-", tmp, NULL);
|
||||
g_free (tmp);
|
||||
|
||||
g_print ("registering GimpUnit \"%s\" = %d\n",
|
||||
scheme_name, unit);
|
||||
|
||||
setvar (rintern (scheme_name), flocons (unit), NIL);
|
||||
|
||||
g_free (scheme_name);
|
||||
}
|
||||
|
||||
/* These are for backwards compatibility; they should be removed sometime */
|
||||
setvar (cintern ("gimp-dir"),
|
||||
|
@ -329,13 +388,6 @@ init_constants (void)
|
|||
setvar (cintern ("BLUR"), flocons (GIMP_BLUR_CONVOLVE), NIL);
|
||||
setvar (cintern ("SHARPEN"), flocons (GIMP_SHARPEN_CONVOLVE), NIL);
|
||||
|
||||
setvar (cintern ("RGB-IMAGE"), flocons (GIMP_RGB_IMAGE), NIL);
|
||||
setvar (cintern ("RGBA-IMAGE"), flocons (GIMP_RGBA_IMAGE), NIL);
|
||||
setvar (cintern ("GRAY-IMAGE"), flocons (GIMP_GRAY_IMAGE), NIL);
|
||||
setvar (cintern ("GRAYA-IMAGE"), flocons (GIMP_GRAYA_IMAGE), NIL);
|
||||
setvar (cintern ("INDEXED-IMAGE"), flocons (GIMP_INDEXED_IMAGE), NIL);
|
||||
setvar (cintern ("INDEXEDA-IMAGE"), flocons (GIMP_INDEXEDA_IMAGE), NIL);
|
||||
|
||||
setvar (cintern ("WHITE-MASK"), flocons (GIMP_ADD_WHITE_MASK), NIL);
|
||||
setvar (cintern ("BLACK-MASK"), flocons (GIMP_ADD_BLACK_MASK), NIL);
|
||||
setvar (cintern ("ALPHA-MASK"), flocons (GIMP_ADD_ALPHA_MASK), NIL);
|
||||
|
|
|
@ -1,255 +0,0 @@
|
|||
/* The GIMP -- an image manipulation program
|
||||
* Copyright (C) 1995-2003 Spencer Kimball and Peter Mattis
|
||||
*
|
||||
* 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 2 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, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/* NOTE: This file is autogenerated by enumcode.pl. */
|
||||
|
||||
#include "siod/siod.h"
|
||||
|
||||
void
|
||||
init_generated_constants (void)
|
||||
{
|
||||
setvar (cintern ("ADD-WHITE-MASK"), flocons (0), NIL);
|
||||
setvar (cintern ("ADD-BLACK-MASK"), flocons (1), NIL);
|
||||
setvar (cintern ("ADD-ALPHA-MASK"), flocons (2), NIL);
|
||||
setvar (cintern ("ADD-ALPHA-TRANSFER-MASK"), flocons (3), NIL);
|
||||
setvar (cintern ("ADD-SELECTION-MASK"), flocons (4), NIL);
|
||||
setvar (cintern ("ADD-COPY-MASK"), flocons (5), NIL);
|
||||
|
||||
setvar (cintern ("FG-BG-RGB-MODE"), flocons (0), NIL);
|
||||
setvar (cintern ("FG-BG-HSV-MODE"), flocons (1), NIL);
|
||||
setvar (cintern ("FG-TRANSPARENT-MODE"), flocons (2), NIL);
|
||||
setvar (cintern ("CUSTOM-MODE"), flocons (3), NIL);
|
||||
|
||||
setvar (cintern ("BRUSH-HARD"), flocons (0), NIL);
|
||||
setvar (cintern ("BRUSH-SOFT"), flocons (1), NIL);
|
||||
|
||||
setvar (cintern ("FG-BUCKET-FILL"), flocons (0), NIL);
|
||||
setvar (cintern ("BG-BUCKET-FILL"), flocons (1), NIL);
|
||||
setvar (cintern ("PATTERN-BUCKET-FILL"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("CHANNEL-OP-ADD"), flocons (0), NIL);
|
||||
setvar (cintern ("CHANNEL-OP-SUBTRACT"), flocons (1), NIL);
|
||||
setvar (cintern ("CHANNEL-OP-REPLACE"), flocons (2), NIL);
|
||||
setvar (cintern ("CHANNEL-OP-INTERSECT"), flocons (3), NIL);
|
||||
|
||||
setvar (cintern ("RED-CHANNEL"), flocons (0), NIL);
|
||||
setvar (cintern ("GREEN-CHANNEL"), flocons (1), NIL);
|
||||
setvar (cintern ("BLUE-CHANNEL"), flocons (2), NIL);
|
||||
setvar (cintern ("GRAY-CHANNEL"), flocons (3), NIL);
|
||||
setvar (cintern ("INDEXED-CHANNEL"), flocons (4), NIL);
|
||||
setvar (cintern ("ALPHA-CHANNEL"), flocons (5), NIL);
|
||||
|
||||
setvar (cintern ("IMAGE-CLONE"), flocons (0), NIL);
|
||||
setvar (cintern ("PATTERN-CLONE"), flocons (1), NIL);
|
||||
|
||||
setvar (cintern ("NO-DITHER"), flocons (0), NIL);
|
||||
setvar (cintern ("FS-DITHER"), flocons (1), NIL);
|
||||
setvar (cintern ("FSLOWBLEED-DITHER"), flocons (2), NIL);
|
||||
setvar (cintern ("FIXED-DITHER"), flocons (3), NIL);
|
||||
|
||||
setvar (cintern ("MAKE-PALETTE"), flocons (0), NIL);
|
||||
setvar (cintern ("REUSE-PALETTE"), flocons (1), NIL);
|
||||
setvar (cintern ("WEB-PALETTE"), flocons (2), NIL);
|
||||
setvar (cintern ("MONO-PALETTE"), flocons (3), NIL);
|
||||
setvar (cintern ("CUSTOM-PALETTE"), flocons (4), NIL);
|
||||
|
||||
setvar (cintern ("NORMAL-CONVOL"), flocons (0), NIL);
|
||||
setvar (cintern ("ABSOLUTE-CONVOL"), flocons (1), NIL);
|
||||
setvar (cintern ("NEGATIVE-CONVOL"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("BLUR-CONVOLVE"), flocons (0), NIL);
|
||||
setvar (cintern ("SHARPEN-CONVOLVE"), flocons (1), NIL);
|
||||
|
||||
setvar (cintern ("DODGE"), flocons (0), NIL);
|
||||
setvar (cintern ("BURN"), flocons (1), NIL);
|
||||
|
||||
setvar (cintern ("FOREGROUND-FILL"), flocons (0), NIL);
|
||||
setvar (cintern ("BACKGROUND-FILL"), flocons (1), NIL);
|
||||
setvar (cintern ("WHITE-FILL"), flocons (2), NIL);
|
||||
setvar (cintern ("TRANSPARENT-FILL"), flocons (3), NIL);
|
||||
setvar (cintern ("PATTERN-FILL"), flocons (4), NIL);
|
||||
|
||||
setvar (cintern ("GRADIENT-SEGMENT-RGB"), flocons (0), NIL);
|
||||
setvar (cintern ("GRADIENT-SEGMENT-HSV-CCW"), flocons (1), NIL);
|
||||
setvar (cintern ("GRADIENT-SEGMENT-HSV-CW"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("GRADIENT-SEGMENT-LINEAR"), flocons (0), NIL);
|
||||
setvar (cintern ("GRADIENT-SEGMENT-CURVED"), flocons (1), NIL);
|
||||
setvar (cintern ("GRADIENT-SEGMENT-SINE"), flocons (2), NIL);
|
||||
setvar (cintern ("GRADIENT-SEGMENT-SPHERE-INCREASING"), flocons (3), NIL);
|
||||
setvar (cintern ("GRADIENT-SEGMENT-SPHERE-DECREASING"), flocons (4), NIL);
|
||||
|
||||
setvar (cintern ("GRADIENT-LINEAR"), flocons (0), NIL);
|
||||
setvar (cintern ("GRADIENT-BILINEAR"), flocons (1), NIL);
|
||||
setvar (cintern ("GRADIENT-RADIAL"), flocons (2), NIL);
|
||||
setvar (cintern ("GRADIENT-SQUARE"), flocons (3), NIL);
|
||||
setvar (cintern ("GRADIENT-CONICAL-SYMMETRIC"), flocons (4), NIL);
|
||||
setvar (cintern ("GRADIENT-CONICAL-ASYMMETRIC"), flocons (5), NIL);
|
||||
setvar (cintern ("GRADIENT-SHAPEBURST-ANGULAR"), flocons (6), NIL);
|
||||
setvar (cintern ("GRADIENT-SHAPEBURST-SPHERICAL"), flocons (7), NIL);
|
||||
setvar (cintern ("GRADIENT-SHAPEBURST-DIMPLED"), flocons (8), NIL);
|
||||
setvar (cintern ("GRADIENT-SPIRAL-CLOCKWISE"), flocons (9), NIL);
|
||||
setvar (cintern ("GRADIENT-SPIRAL-ANTICLOCKWISE"), flocons (10), NIL);
|
||||
|
||||
setvar (cintern ("HISTOGRAM-VALUE"), flocons (0), NIL);
|
||||
setvar (cintern ("HISTOGRAM-RED"), flocons (1), NIL);
|
||||
setvar (cintern ("HISTOGRAM-GREEN"), flocons (2), NIL);
|
||||
setvar (cintern ("HISTOGRAM-BLUE"), flocons (3), NIL);
|
||||
setvar (cintern ("HISTOGRAM-ALPHA"), flocons (4), NIL);
|
||||
|
||||
setvar (cintern ("ALL-HUES"), flocons (0), NIL);
|
||||
setvar (cintern ("RED-HUES"), flocons (1), NIL);
|
||||
setvar (cintern ("YELLOW-HUES"), flocons (2), NIL);
|
||||
setvar (cintern ("GREEN-HUES"), flocons (3), NIL);
|
||||
setvar (cintern ("CYAN-HUES"), flocons (4), NIL);
|
||||
setvar (cintern ("BLUE-HUES"), flocons (5), NIL);
|
||||
setvar (cintern ("MAGENTA-HUES"), flocons (6), NIL);
|
||||
|
||||
setvar (cintern ("ICON-TYPE-STOCK-ID"), flocons (0), NIL);
|
||||
setvar (cintern ("ICON-TYPE-INLINE-PIXBUF"), flocons (1), NIL);
|
||||
setvar (cintern ("ICON-TYPE-IMAGE-FILE"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("RGB"), flocons (0), NIL);
|
||||
setvar (cintern ("GRAY"), flocons (1), NIL);
|
||||
setvar (cintern ("INDEXED"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("RGB-IMAGE"), flocons (0), NIL);
|
||||
setvar (cintern ("RGBA-IMAGE"), flocons (1), NIL);
|
||||
setvar (cintern ("GRAY-IMAGE"), flocons (2), NIL);
|
||||
setvar (cintern ("GRAYA-IMAGE"), flocons (3), NIL);
|
||||
setvar (cintern ("INDEXED-IMAGE"), flocons (4), NIL);
|
||||
setvar (cintern ("INDEXEDA-IMAGE"), flocons (5), NIL);
|
||||
|
||||
setvar (cintern ("NORMAL-MODE"), flocons (0), NIL);
|
||||
setvar (cintern ("DISSOLVE-MODE"), flocons (1), NIL);
|
||||
setvar (cintern ("BEHIND-MODE"), flocons (2), NIL);
|
||||
setvar (cintern ("MULTIPLY-MODE"), flocons (3), NIL);
|
||||
setvar (cintern ("SCREEN-MODE"), flocons (4), NIL);
|
||||
setvar (cintern ("OVERLAY-MODE"), flocons (5), NIL);
|
||||
setvar (cintern ("DIFFERENCE-MODE"), flocons (6), NIL);
|
||||
setvar (cintern ("ADDITION-MODE"), flocons (7), NIL);
|
||||
setvar (cintern ("SUBTRACT-MODE"), flocons (8), NIL);
|
||||
setvar (cintern ("DARKEN-ONLY-MODE"), flocons (9), NIL);
|
||||
setvar (cintern ("LIGHTEN-ONLY-MODE"), flocons (10), NIL);
|
||||
setvar (cintern ("HUE-MODE"), flocons (11), NIL);
|
||||
setvar (cintern ("SATURATION-MODE"), flocons (12), NIL);
|
||||
setvar (cintern ("COLOR-MODE"), flocons (13), NIL);
|
||||
setvar (cintern ("VALUE-MODE"), flocons (14), NIL);
|
||||
setvar (cintern ("DIVIDE-MODE"), flocons (15), NIL);
|
||||
setvar (cintern ("DODGE-MODE"), flocons (16), NIL);
|
||||
setvar (cintern ("BURN-MODE"), flocons (17), NIL);
|
||||
setvar (cintern ("HARDLIGHT-MODE"), flocons (18), NIL);
|
||||
setvar (cintern ("SOFTLIGHT-MODE"), flocons (19), NIL);
|
||||
setvar (cintern ("GRAIN-EXTRACT-MODE"), flocons (20), NIL);
|
||||
setvar (cintern ("GRAIN-MERGE-MODE"), flocons (21), NIL);
|
||||
setvar (cintern ("COLOR-ERASE-MODE"), flocons (22), NIL);
|
||||
|
||||
setvar (cintern ("MASK-APPLY"), flocons (0), NIL);
|
||||
setvar (cintern ("MASK-DISCARD"), flocons (1), NIL);
|
||||
|
||||
setvar (cintern ("EXPAND-AS-NECESSARY"), flocons (0), NIL);
|
||||
setvar (cintern ("CLIP-TO-IMAGE"), flocons (1), NIL);
|
||||
setvar (cintern ("CLIP-TO-BOTTOM-LAYER"), flocons (2), NIL);
|
||||
setvar (cintern ("FLATTEN-IMAGE"), flocons (3), NIL);
|
||||
|
||||
setvar (cintern ("MESSAGE-BOX"), flocons (0), NIL);
|
||||
setvar (cintern ("CONSOLE"), flocons (1), NIL);
|
||||
setvar (cintern ("ERROR-CONSOLE"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("OFFSET-BACKGROUND"), flocons (0), NIL);
|
||||
setvar (cintern ("OFFSET-TRANSPARENT"), flocons (1), NIL);
|
||||
|
||||
setvar (cintern ("ORIENTATION-HORIZONTAL"), flocons (0), NIL);
|
||||
setvar (cintern ("ORIENTATION-VERTICAL"), flocons (1), NIL);
|
||||
setvar (cintern ("ORIENTATION-UNKNOWN"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("PDB-INT32"), flocons (0), NIL);
|
||||
setvar (cintern ("PDB-INT16"), flocons (1), NIL);
|
||||
setvar (cintern ("PDB-INT8"), flocons (2), NIL);
|
||||
setvar (cintern ("PDB-FLOAT"), flocons (3), NIL);
|
||||
setvar (cintern ("PDB-STRING"), flocons (4), NIL);
|
||||
setvar (cintern ("PDB-INT32ARRAY"), flocons (5), NIL);
|
||||
setvar (cintern ("PDB-INT16ARRAY"), flocons (6), NIL);
|
||||
setvar (cintern ("PDB-INT8ARRAY"), flocons (7), NIL);
|
||||
setvar (cintern ("PDB-FLOATARRAY"), flocons (8), NIL);
|
||||
setvar (cintern ("PDB-STRINGARRAY"), flocons (9), NIL);
|
||||
setvar (cintern ("PDB-COLOR"), flocons (10), NIL);
|
||||
setvar (cintern ("PDB-REGION"), flocons (11), NIL);
|
||||
setvar (cintern ("PDB-DISPLAY"), flocons (12), NIL);
|
||||
setvar (cintern ("PDB-IMAGE"), flocons (13), NIL);
|
||||
setvar (cintern ("PDB-LAYER"), flocons (14), NIL);
|
||||
setvar (cintern ("PDB-CHANNEL"), flocons (15), NIL);
|
||||
setvar (cintern ("PDB-DRAWABLE"), flocons (16), NIL);
|
||||
setvar (cintern ("PDB-SELECTION"), flocons (17), NIL);
|
||||
setvar (cintern ("PDB-BOUNDARY"), flocons (18), NIL);
|
||||
setvar (cintern ("PDB-PATH"), flocons (19), NIL);
|
||||
setvar (cintern ("PDB-PARASITE"), flocons (20), NIL);
|
||||
setvar (cintern ("PDB-STATUS"), flocons (21), NIL);
|
||||
setvar (cintern ("PDB-END"), flocons (22), NIL);
|
||||
|
||||
setvar (cintern ("INTERNAL"), flocons (0), NIL);
|
||||
setvar (cintern ("PLUGIN"), flocons (1), NIL);
|
||||
setvar (cintern ("EXTENSION"), flocons (2), NIL);
|
||||
setvar (cintern ("TEMPORARY"), flocons (3), NIL);
|
||||
|
||||
setvar (cintern ("PDB-EXECUTION-ERROR"), flocons (0), NIL);
|
||||
setvar (cintern ("PDB-CALLING-ERROR"), flocons (1), NIL);
|
||||
setvar (cintern ("PDB-PASS-THROUGH"), flocons (2), NIL);
|
||||
setvar (cintern ("PDB-SUCCESS"), flocons (3), NIL);
|
||||
setvar (cintern ("PDB-CANCEL"), flocons (4), NIL);
|
||||
|
||||
setvar (cintern ("PAINT-CONSTANT"), flocons (0), NIL);
|
||||
setvar (cintern ("PAINT-INCREMENTAL"), flocons (1), NIL);
|
||||
|
||||
setvar (cintern ("PROGRESS-COMMAND-START"), flocons (0), NIL);
|
||||
setvar (cintern ("PROGRESS-COMMAND-END"), flocons (1), NIL);
|
||||
setvar (cintern ("PROGRESS-COMMAND-SET-TEXT"), flocons (2), NIL);
|
||||
setvar (cintern ("PROGRESS-COMMAND-SET-VALUE"), flocons (3), NIL);
|
||||
|
||||
setvar (cintern ("REPEAT-NONE"), flocons (0), NIL);
|
||||
setvar (cintern ("REPEAT-SAWTOOTH"), flocons (1), NIL);
|
||||
setvar (cintern ("REPEAT-TRIANGULAR"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("ROTATE-90"), flocons (0), NIL);
|
||||
setvar (cintern ("ROTATE-180"), flocons (1), NIL);
|
||||
setvar (cintern ("ROTATE-270"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("RUN-INTERACTIVE"), flocons (0), NIL);
|
||||
setvar (cintern ("RUN-NONINTERACTIVE"), flocons (1), NIL);
|
||||
setvar (cintern ("RUN-WITH-LAST-VALS"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("PIXELS"), flocons (0), NIL);
|
||||
setvar (cintern ("POINTS"), flocons (1), NIL);
|
||||
|
||||
setvar (cintern ("STACK-TRACE-NEVER"), flocons (0), NIL);
|
||||
setvar (cintern ("STACK-TRACE-QUERY"), flocons (1), NIL);
|
||||
setvar (cintern ("STACK-TRACE-ALWAYS"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("SHADOWS"), flocons (0), NIL);
|
||||
setvar (cintern ("MIDTONES"), flocons (1), NIL);
|
||||
setvar (cintern ("HIGHLIGHTS"), flocons (2), NIL);
|
||||
|
||||
setvar (cintern ("UNIT-PIXEL"), flocons (0), NIL);
|
||||
setvar (cintern ("UNIT-INCH"), flocons (1), NIL);
|
||||
setvar (cintern ("UNIT-MM"), flocons (2), NIL);
|
||||
setvar (cintern ("UNIT-POINT"), flocons (3), NIL);
|
||||
setvar (cintern ("UNIT-PICA"), flocons (4), NIL);
|
||||
setvar (cintern ("UNIT-END"), flocons (5), NIL);
|
||||
|
||||
return;
|
||||
}
|
|
@ -1,24 +0,0 @@
|
|||
/* The GIMP -- an image manipulation program
|
||||
* Copyright (C) 1999 Manish Singh
|
||||
*
|
||||
* 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 2 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, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#ifndef __SCRIPT_FU_CONSTANTS_H__
|
||||
#define __SCRIPT_FU_CONSTANTS_H__
|
||||
|
||||
void init_generated_constants (void);
|
||||
|
||||
#endif /* __SCRIPT_FU_CONSTANTS_H__ */
|
|
@ -32,7 +32,6 @@
|
|||
|
||||
#include "siod-wrapper.h"
|
||||
#include "script-fu-console.h"
|
||||
#include "script-fu-constants.h"
|
||||
#include "script-fu-scripts.h"
|
||||
#include "script-fu-server.h"
|
||||
#include "script-fu-text-console.h"
|
||||
|
|
|
@ -28,7 +28,6 @@
|
|||
|
||||
#include "script-fu-types.h"
|
||||
|
||||
#include "script-fu-constants.h"
|
||||
#include "script-fu-console.h"
|
||||
#include "script-fu-interface.h"
|
||||
#include "script-fu-scripts.h"
|
||||
|
@ -281,6 +280,11 @@ init_procedures (void)
|
|||
static void
|
||||
init_constants (void)
|
||||
{
|
||||
const gchar **enum_type_names;
|
||||
gint n_enum_type_names;
|
||||
gint i;
|
||||
GimpUnit unit;
|
||||
|
||||
setvar (cintern ("gimp-directory"),
|
||||
strcons (-1, (gchar *) gimp_directory ()), NIL);
|
||||
|
||||
|
@ -296,8 +300,63 @@ init_constants (void)
|
|||
setvar (cintern ("gimp-sysconf-directory"),
|
||||
strcons (-1, (gchar *) gimp_sysconf_directory ()), NIL);
|
||||
|
||||
/* Generated constants */
|
||||
init_generated_constants ();
|
||||
enum_type_names = gimp_enums_get_type_names (&n_enum_type_names);
|
||||
|
||||
for (i = 0; i < n_enum_type_names; i++)
|
||||
{
|
||||
const gchar *enum_name = enum_type_names[i];
|
||||
GType enum_type = g_type_from_name (enum_name);
|
||||
GEnumClass *enum_class = g_type_class_ref (enum_type);
|
||||
GEnumValue *value;
|
||||
|
||||
for (value = enum_class->values; value->value_name; value++)
|
||||
{
|
||||
if (! strncmp ("GIMP_", value->value_name, 5))
|
||||
{
|
||||
gchar *scheme_name;
|
||||
gchar *s;
|
||||
|
||||
scheme_name = g_strdup (value->value_name + 5);
|
||||
|
||||
for (s = scheme_name; *s; s++)
|
||||
if (*s == '_')
|
||||
*s = '-';
|
||||
|
||||
g_print ("registering %s \"%s\" = %d\n",
|
||||
enum_name, scheme_name, value->value);
|
||||
|
||||
setvar (rintern (scheme_name), flocons (value->value), NIL);
|
||||
|
||||
g_free (scheme_name);
|
||||
}
|
||||
else
|
||||
{
|
||||
g_print ("EEK: enum %s has evil value \"%s\"\n",
|
||||
enum_name, value->value_name);
|
||||
}
|
||||
}
|
||||
|
||||
g_type_class_unref (enum_class);
|
||||
}
|
||||
|
||||
for (unit = GIMP_UNIT_PIXEL;
|
||||
unit < gimp_unit_get_number_of_built_in_units ();
|
||||
unit++)
|
||||
{
|
||||
gchar *tmp;
|
||||
gchar *scheme_name;
|
||||
|
||||
tmp = g_ascii_strup (gimp_unit_get_singular (unit), -1);
|
||||
scheme_name = g_strconcat ("UNIT-", tmp, NULL);
|
||||
g_free (tmp);
|
||||
|
||||
g_print ("registering GimpUnit \"%s\" = %d\n",
|
||||
scheme_name, unit);
|
||||
|
||||
setvar (rintern (scheme_name), flocons (unit), NIL);
|
||||
|
||||
g_free (scheme_name);
|
||||
}
|
||||
|
||||
/* These are for backwards compatibility; they should be removed sometime */
|
||||
setvar (cintern ("gimp-dir"),
|
||||
|
@ -329,13 +388,6 @@ init_constants (void)
|
|||
setvar (cintern ("BLUR"), flocons (GIMP_BLUR_CONVOLVE), NIL);
|
||||
setvar (cintern ("SHARPEN"), flocons (GIMP_SHARPEN_CONVOLVE), NIL);
|
||||
|
||||
setvar (cintern ("RGB-IMAGE"), flocons (GIMP_RGB_IMAGE), NIL);
|
||||
setvar (cintern ("RGBA-IMAGE"), flocons (GIMP_RGBA_IMAGE), NIL);
|
||||
setvar (cintern ("GRAY-IMAGE"), flocons (GIMP_GRAY_IMAGE), NIL);
|
||||
setvar (cintern ("GRAYA-IMAGE"), flocons (GIMP_GRAYA_IMAGE), NIL);
|
||||
setvar (cintern ("INDEXED-IMAGE"), flocons (GIMP_INDEXED_IMAGE), NIL);
|
||||
setvar (cintern ("INDEXEDA-IMAGE"), flocons (GIMP_INDEXEDA_IMAGE), NIL);
|
||||
|
||||
setvar (cintern ("WHITE-MASK"), flocons (GIMP_ADD_WHITE_MASK), NIL);
|
||||
setvar (cintern ("BLACK-MASK"), flocons (GIMP_ADD_BLACK_MASK), NIL);
|
||||
setvar (cintern ("ALPHA-MASK"), flocons (GIMP_ADD_ALPHA_MASK), NIL);
|
||||
|
|
|
@ -32,60 +32,7 @@ require 'util.pl';
|
|||
*write_file = \&Gimp::CodeGen::util::write_file;
|
||||
*FILE_EXT = \$Gimp::CodeGen::util::FILE_EXT;
|
||||
|
||||
my $enumfile = "$destdir/plug-ins/script-fu/script-fu-constants.c$FILE_EXT";
|
||||
open ENUMFILE, "> $enumfile" or die "Can't open $enumfile: $!\n";
|
||||
|
||||
print ENUMFILE <<'GPL';
|
||||
/* The GIMP -- an image manipulation program
|
||||
* Copyright (C) 1995-2003 Spencer Kimball and Peter Mattis
|
||||
*
|
||||
* 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 2 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, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/* NOTE: This file is autogenerated by enumcode.pl. */
|
||||
|
||||
GPL
|
||||
|
||||
print ENUMFILE <<CODE;
|
||||
#include "siod/siod.h"
|
||||
|
||||
void
|
||||
init_generated_constants (void)
|
||||
{
|
||||
CODE
|
||||
|
||||
foreach (sort keys %enums) {
|
||||
my $enum = $enums{$_};
|
||||
foreach $symbol (@{$enum->{symbols}}) {
|
||||
my $sym = $symbol;
|
||||
$sym =~ s/^GIMP\_//;
|
||||
$sym =~ s/_/-/g;
|
||||
|
||||
print ENUMFILE <<CODE;
|
||||
setvar (cintern ("$sym"), flocons ($enum->{mapping}->{$symbol}), NIL);
|
||||
CODE
|
||||
}
|
||||
print ENUMFILE "\n";
|
||||
}
|
||||
|
||||
print ENUMFILE " return;\n}\n";
|
||||
|
||||
close ENUMFILE;
|
||||
&write_file($enumfile);
|
||||
|
||||
$enumfile = "$destdir/libgimp/gimpenums.h$FILE_EXT";
|
||||
my $enumfile = "$destdir/libgimp/gimpenums.h$FILE_EXT";
|
||||
open ENUMFILE, "> $enumfile" or die "Can't open $enumfile: $!\n";
|
||||
|
||||
print ENUMFILE <<'LGPL';
|
||||
|
@ -150,6 +97,11 @@ foreach (sort keys %enums) {
|
|||
|
||||
print ENUMFILE <<HEADER;
|
||||
|
||||
void _gimp_enums_init (void);
|
||||
|
||||
const gchar ** gimp_enums_get_type_names (gint *n_type_names);
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* $guard */
|
||||
|
@ -157,3 +109,74 @@ HEADER
|
|||
|
||||
close ENUMFILE;
|
||||
&write_file($enumfile);
|
||||
|
||||
$enumfile = "$destdir/libgimp/gimpenums.c.tail$FILE_EXT";
|
||||
open ENUMFILE, "> $enumfile" or die "Can't open $enumfile: $!\n";
|
||||
|
||||
print ENUMFILE <<CODE;
|
||||
|
||||
typedef GType (* GimpGetTypeFunc) (void);
|
||||
|
||||
static GimpGetTypeFunc get_type_funcs[] =
|
||||
{
|
||||
CODE
|
||||
|
||||
foreach (sort keys %enums) {
|
||||
if (! ($_ =~ /GimpUnit/)) {
|
||||
my $enum = $enums{$_};
|
||||
my $func = $_;
|
||||
|
||||
for ($func) { s/Gimp//; s/PDB/Pdb/; s/([A-Z][^A-Z]+)/\L\1\E_/g; s/_$// }
|
||||
|
||||
print ENUMFILE " gimp_$func\_get_type,\n";
|
||||
}
|
||||
}
|
||||
|
||||
print ENUMFILE <<CODE;
|
||||
};
|
||||
|
||||
static const gchar *type_names[] =
|
||||
{
|
||||
CODE
|
||||
|
||||
foreach (sort keys %enums) {
|
||||
if (! ($_ =~ /GimpUnit/)) {
|
||||
my $enum = $enums{$_};
|
||||
my $gtype = $_;
|
||||
|
||||
print ENUMFILE " \"$gtype\",\n";
|
||||
}
|
||||
}
|
||||
|
||||
print ENUMFILE <<CODE;
|
||||
};
|
||||
|
||||
void
|
||||
_gimp_enums_init (void)
|
||||
{
|
||||
GimpGetTypeFunc *funcs;
|
||||
gint i;
|
||||
GType type;
|
||||
|
||||
for (i = 0, funcs = get_type_funcs; *funcs; i++, funcs++)
|
||||
{
|
||||
type = (*funcs) ();
|
||||
|
||||
g_type_class_ref (type);
|
||||
}
|
||||
}
|
||||
|
||||
const gchar **
|
||||
gimp_enums_get_type_names (gint *n_type_names)
|
||||
{
|
||||
g_return_val_if_fail (n_type_names != NULL, NULL);
|
||||
|
||||
*n_type_names = G_N_ELEMENTS (type_names);
|
||||
|
||||
return type_names;
|
||||
}
|
||||
|
||||
CODE
|
||||
|
||||
close ENUMFILE;
|
||||
&write_file($enumfile);
|
||||
|
|
Loading…
Reference in a new issue