mirror of https://github.com/GNOME/gimp.git
Create SF-RUN-MODE constant for use in Script-Fu. Fixes bug #479893.
2007-09-27 Kevin Cozens <kcozens@cvs.gnome.org> Create SF-RUN-MODE constant for use in Script-Fu. Fixes bug #479893. * plug-ins/script-fu/scheme-wrapper.c * plug-ins/script-fu/scheme-wrapper.h: Added set_run_mode_constant() which creates a new constant called SF-RUN-MODE. This constant can be used by Script-Fu scripts when calling a plug-in that needs to know the current run mode. * plug-ins/script-fu/script-fu-scripts.c * plug-ins/script-fu/script-fu-console.c * plug-ins/script-fu/script-fu.c * plug-ins/script-fu/script-fu-server.c: Added calls to create the new SF-RUN-MODE constant. * plug-ins/script-fu/scripts/difference-clouds.scm: Pass SF-RUN-MODE to the solid noise plug-in instead of always using RUN-INTERACTIVE. svn path=/trunk/; revision=23674
This commit is contained in:
parent
a5ed305f62
commit
0cb80bdcd8
19
ChangeLog
19
ChangeLog
|
@ -1,3 +1,22 @@
|
||||||
|
2007-09-27 Kevin Cozens <kcozens@cvs.gnome.org>
|
||||||
|
|
||||||
|
Create SF-RUN-MODE constant for use in Script-Fu. Fixes bug #479893.
|
||||||
|
|
||||||
|
* plug-ins/script-fu/scheme-wrapper.c
|
||||||
|
* plug-ins/script-fu/scheme-wrapper.h: Added set_run_mode_constant()
|
||||||
|
which creates a new constant called SF-RUN-MODE. This constant can
|
||||||
|
be used by Script-Fu scripts when calling a plug-in that needs to
|
||||||
|
know the current run mode.
|
||||||
|
|
||||||
|
* plug-ins/script-fu/script-fu-scripts.c
|
||||||
|
* plug-ins/script-fu/script-fu-console.c
|
||||||
|
* plug-ins/script-fu/script-fu.c
|
||||||
|
* plug-ins/script-fu/script-fu-server.c: Added calls to create the
|
||||||
|
new SF-RUN-MODE constant.
|
||||||
|
|
||||||
|
* plug-ins/script-fu/scripts/difference-clouds.scm: Pass SF-RUN-MODE
|
||||||
|
to the solid noise plug-in instead of always using RUN-INTERACTIVE.
|
||||||
|
|
||||||
2007-09-27 Michael Natterer <mitch@gimp.org>
|
2007-09-27 Michael Natterer <mitch@gimp.org>
|
||||||
|
|
||||||
* app/gui/ige-mac-menu.c: new version which correctly updates the
|
* app/gui/ige-mac-menu.c: new version which correctly updates the
|
||||||
|
|
|
@ -333,6 +333,19 @@ tinyscheme_deinit (void)
|
||||||
scheme_deinit (&sc);
|
scheme_deinit (&sc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Create an SF-RUN-MODE constant for use in scripts. */
|
||||||
|
/* It is set to the run mode state determined by GIMP. */
|
||||||
|
void
|
||||||
|
set_run_mode_constant (GimpRunMode run_mode)
|
||||||
|
{
|
||||||
|
pointer symbol;
|
||||||
|
|
||||||
|
symbol = sc.vptr->mk_symbol (&sc, "SF-RUN-MODE");
|
||||||
|
sc.vptr->scheme_define (&sc, sc.global_env, symbol,
|
||||||
|
sc.vptr->mk_integer (&sc, run_mode));
|
||||||
|
sc.vptr->setimmutable(symbol);
|
||||||
|
}
|
||||||
|
|
||||||
static void convert_string (gchar *str);
|
static void convert_string (gchar *str);
|
||||||
static pointer marshall_proc_db_call (scheme *sc, pointer a);
|
static pointer marshall_proc_db_call (scheme *sc, pointer a);
|
||||||
static pointer script_fu_register_call (scheme *sc, pointer a);
|
static pointer script_fu_register_call (scheme *sc, pointer a);
|
||||||
|
|
|
@ -40,6 +40,8 @@ void tinyscheme_init (const gchar *path,
|
||||||
gboolean local_register_scripts);
|
gboolean local_register_scripts);
|
||||||
void tinyscheme_deinit (void);
|
void tinyscheme_deinit (void);
|
||||||
|
|
||||||
|
void set_run_mode_constant (GimpRunMode run_mode);
|
||||||
|
|
||||||
void ts_interpret_stdin (void);
|
void ts_interpret_stdin (void);
|
||||||
|
|
||||||
/* if the return value is 0, success. error otherwise. */
|
/* if the return value is 0, success. error otherwise. */
|
||||||
|
|
|
@ -703,6 +703,7 @@ script_fu_eval_run (const gchar *name,
|
||||||
GimpRunMode run_mode;
|
GimpRunMode run_mode;
|
||||||
|
|
||||||
run_mode = params[0].data.d_int32;
|
run_mode = params[0].data.d_int32;
|
||||||
|
set_run_mode_constant (run_mode);
|
||||||
|
|
||||||
switch (run_mode)
|
switch (run_mode)
|
||||||
{
|
{
|
||||||
|
|
|
@ -887,12 +887,9 @@ script_fu_script_proc (const gchar *name,
|
||||||
|
|
||||||
if (status == GIMP_PDB_SUCCESS)
|
if (status == GIMP_PDB_SUCCESS)
|
||||||
{
|
{
|
||||||
GimpRunMode run_mode;
|
GimpRunMode run_mode = params[0].data.d_int32;
|
||||||
|
|
||||||
run_mode = params[0].data.d_int32;
|
set_run_mode_constant (run_mode);
|
||||||
|
|
||||||
if (script->num_args == 0)
|
|
||||||
run_mode = GIMP_RUN_NONINTERACTIVE;
|
|
||||||
|
|
||||||
switch (run_mode)
|
switch (run_mode)
|
||||||
{
|
{
|
||||||
|
@ -901,7 +898,8 @@ script_fu_script_proc (const gchar *name,
|
||||||
gint min_args = 0;
|
gint min_args = 0;
|
||||||
|
|
||||||
/* First, try to collect the standard script arguments... */
|
/* First, try to collect the standard script arguments... */
|
||||||
min_args = script_fu_collect_standard_args (script, nparams, params);
|
min_args = script_fu_collect_standard_args (script,
|
||||||
|
nparams, params);
|
||||||
|
|
||||||
/* ...then acquire the rest of arguments (if any) with a dialog */
|
/* ...then acquire the rest of arguments (if any) with a dialog */
|
||||||
if (script->num_args > min_args)
|
if (script->num_args > min_args)
|
||||||
|
|
|
@ -199,6 +199,7 @@ script_fu_server_run (const gchar *name,
|
||||||
GimpRunMode run_mode;
|
GimpRunMode run_mode;
|
||||||
|
|
||||||
run_mode = params[0].data.d_int32;
|
run_mode = params[0].data.d_int32;
|
||||||
|
set_run_mode_constant (run_mode);
|
||||||
|
|
||||||
switch (run_mode)
|
switch (run_mode)
|
||||||
{
|
{
|
||||||
|
|
|
@ -195,6 +195,9 @@ script_fu_run (const gchar *name,
|
||||||
tinyscheme_init (path, FALSE);
|
tinyscheme_init (path, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (param != NULL)
|
||||||
|
set_run_mode_constant ((GimpRunMode)param[0].data.d_int32);
|
||||||
|
|
||||||
/* Load all of the available scripts */
|
/* Load all of the available scripts */
|
||||||
script_fu_find_scripts (path);
|
script_fu_find_scripts (path);
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
|
|
||||||
(gimp-image-undo-group-start image)
|
(gimp-image-undo-group-start image)
|
||||||
|
|
||||||
; Add the cloud layer above the current layer
|
; Add the cloud layer above the current layer
|
||||||
(gimp-image-add-layer image diff-clouds -1)
|
(gimp-image-add-layer image diff-clouds -1)
|
||||||
|
|
||||||
; Clear the layer (so there are no noise in it)
|
; Clear the layer (so there are no noise in it)
|
||||||
|
@ -53,7 +53,7 @@
|
||||||
(gimp-layer-translate diff-clouds offset-x offset-y))
|
(gimp-layer-translate diff-clouds offset-x offset-y))
|
||||||
|
|
||||||
; Show the solid noise dialog
|
; Show the solid noise dialog
|
||||||
(plug-in-solid-noise RUN-INTERACTIVE image diff-clouds 0 0 0 1 4.0 4.0)
|
(plug-in-solid-noise SF-RUN-MODE image diff-clouds 0 0 0 1 4.0 4.0)
|
||||||
|
|
||||||
; Merge the clouds layer with the layer below
|
; Merge the clouds layer with the layer below
|
||||||
(gimp-image-merge-down image diff-clouds EXPAND-AS-NECESSARY)
|
(gimp-image-merge-down image diff-clouds EXPAND-AS-NECESSARY)
|
||||||
|
|
Loading…
Reference in New Issue