app/actions/layers-actions.c app/actions/layers-commands.[ch]

2005-07-10  Michael Natterer  <mitch@gimp.org>

	* app/actions/layers-actions.c
	* app/actions/layers-commands.[ch]
	* app/core/core-enums.[ch]
	* app/core/gimpimage-undo-push.[ch]
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.[ch]
	* app/text/gimptextlayer-xcf.c
	* app/widgets/gimphelp-ids.h
	* app/widgets/gimplayertreeview.[ch]
	* app/xcf/xcf-load.c
	* app/xcf/xcf-private.h
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/layer.pdb
	* menus/image-menu.xml.in
	* libgimp/gimp.def: did a global s/preserve_trans/lock_alpha/ in
	preparation for more layer locking flags.

	* app/pdb/procedural_db.c
	* libgimp/gimplayer.[ch]: added compat stuff for preserve_trans.

	* app/pdb/layer_cmds.c
	* libgimp/gimplayer_pdb.[ch]: regenerated.

	* plug-ins/common/colortoalpha.c
	* plug-ins/common/iwarp.c
	* plug-ins/common/psd.c
	* plug-ins/common/psd_save.c
	* plug-ins/common/psp.c
	* plug-ins/common/rotate.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/common/vpropagate.c
	* plug-ins/script-fu/scripts/3d-outline.scm
	* plug-ins/script-fu/scripts/alien-glow-bar.scm
	* plug-ins/script-fu/scripts/alien-glow-bullet.scm
	* plug-ins/script-fu/scripts/alien-glow-logo.scm
	* plug-ins/script-fu/scripts/basic1-logo.scm
	* plug-ins/script-fu/scripts/basic2-logo.scm
	* plug-ins/script-fu/scripts/beveled-pattern-button.scm
	* plug-ins/script-fu/scripts/blend-anim.scm
	* plug-ins/script-fu/scripts/blended-logo.scm
	* plug-ins/script-fu/scripts/bovinated-logo.scm
	* plug-ins/script-fu/scripts/burn-in-anim.scm
	* plug-ins/script-fu/scripts/carved-logo.scm
	* plug-ins/script-fu/scripts/chalk.scm
	* plug-ins/script-fu/scripts/chip-away.scm
	* plug-ins/script-fu/scripts/comic-logo.scm
	* plug-ins/script-fu/scripts/coolmetal-logo.scm
	* plug-ins/script-fu/scripts/crystal-logo.scm
	* plug-ins/script-fu/scripts/drop-shadow.scm
	* plug-ins/script-fu/scripts/gimp-headers.scm
	* plug-ins/script-fu/scripts/gimp-labels.scm
	* plug-ins/script-fu/scripts/glowing-logo.scm
	* plug-ins/script-fu/scripts/gradient-bevel-logo.scm
	* plug-ins/script-fu/scripts/image-structure.scm
	* plug-ins/script-fu/scripts/neon-logo.scm
	* plug-ins/script-fu/scripts/perspective-shadow.scm
	* plug-ins/script-fu/scripts/starburst-logo.scm
	* plug-ins/script-fu/scripts/starscape-logo.scm
	* plug-ins/script-fu/scripts/textured-logo.scm
	* plug-ins/script-fu/scripts/title-header.scm
	* plug-ins/script-fu/scripts/waves-anim.scm
	* plug-ins/xjt/xjt.c: changed accordingly.
This commit is contained in:
Michael Natterer 2005-07-10 21:17:22 +00:00 committed by Michael Natterer
parent da0adc4f65
commit 20b4769cf5
69 changed files with 446 additions and 329 deletions

View File

@ -1,3 +1,68 @@
2005-07-10 Michael Natterer <mitch@gimp.org>
* app/actions/layers-actions.c
* app/actions/layers-commands.[ch]
* app/core/core-enums.[ch]
* app/core/gimpimage-undo-push.[ch]
* app/core/gimplayer-floating-sel.c
* app/core/gimplayer.[ch]
* app/text/gimptextlayer-xcf.c
* app/widgets/gimphelp-ids.h
* app/widgets/gimplayertreeview.[ch]
* app/xcf/xcf-load.c
* app/xcf/xcf-private.h
* app/xcf/xcf-save.c
* tools/pdbgen/pdb/layer.pdb
* menus/image-menu.xml.in
* libgimp/gimp.def: did a global s/preserve_trans/lock_alpha/ in
preparation for more layer locking flags.
* app/pdb/procedural_db.c
* libgimp/gimplayer.[ch]: added compat stuff for preserve_trans.
* app/pdb/layer_cmds.c
* libgimp/gimplayer_pdb.[ch]: regenerated.
* plug-ins/common/colortoalpha.c
* plug-ins/common/iwarp.c
* plug-ins/common/psd.c
* plug-ins/common/psd_save.c
* plug-ins/common/psp.c
* plug-ins/common/rotate.c
* plug-ins/common/threshold_alpha.c
* plug-ins/common/vpropagate.c
* plug-ins/script-fu/scripts/3d-outline.scm
* plug-ins/script-fu/scripts/alien-glow-bar.scm
* plug-ins/script-fu/scripts/alien-glow-bullet.scm
* plug-ins/script-fu/scripts/alien-glow-logo.scm
* plug-ins/script-fu/scripts/basic1-logo.scm
* plug-ins/script-fu/scripts/basic2-logo.scm
* plug-ins/script-fu/scripts/beveled-pattern-button.scm
* plug-ins/script-fu/scripts/blend-anim.scm
* plug-ins/script-fu/scripts/blended-logo.scm
* plug-ins/script-fu/scripts/bovinated-logo.scm
* plug-ins/script-fu/scripts/burn-in-anim.scm
* plug-ins/script-fu/scripts/carved-logo.scm
* plug-ins/script-fu/scripts/chalk.scm
* plug-ins/script-fu/scripts/chip-away.scm
* plug-ins/script-fu/scripts/comic-logo.scm
* plug-ins/script-fu/scripts/coolmetal-logo.scm
* plug-ins/script-fu/scripts/crystal-logo.scm
* plug-ins/script-fu/scripts/drop-shadow.scm
* plug-ins/script-fu/scripts/gimp-headers.scm
* plug-ins/script-fu/scripts/gimp-labels.scm
* plug-ins/script-fu/scripts/glowing-logo.scm
* plug-ins/script-fu/scripts/gradient-bevel-logo.scm
* plug-ins/script-fu/scripts/image-structure.scm
* plug-ins/script-fu/scripts/neon-logo.scm
* plug-ins/script-fu/scripts/perspective-shadow.scm
* plug-ins/script-fu/scripts/starburst-logo.scm
* plug-ins/script-fu/scripts/starscape-logo.scm
* plug-ins/script-fu/scripts/textured-logo.scm
* plug-ins/script-fu/scripts/title-header.scm
* plug-ins/script-fu/scripts/waves-anim.scm
* plug-ins/xjt/xjt.c: changed accordingly.
2005-07-10 Sven Neumann <sven@gimp.org>
* app/batch.c (batch_run): unified strings.

View File

@ -177,11 +177,11 @@ static GimpActionEntry layers_actions[] =
static GimpToggleActionEntry layers_toggle_actions[] =
{
{ "layers-preserve-transparency", GIMP_STOCK_TRANSPARENCY,
N_("Kee_p Transparency"), NULL, NULL,
G_CALLBACK (layers_preserve_trans_cmd_callback),
{ "layers-lock-alpha", GIMP_STOCK_TRANSPARENCY,
N_("Lock Alph_a Channel"), NULL, NULL,
G_CALLBACK (layers_lock_alpha_cmd_callback),
FALSE,
GIMP_HELP_LAYER_KEEP_TRANSPARENCY },
GIMP_HELP_LAYER_LOCK_ALPHA },
{ "layers-mask-edit", GIMP_STOCK_EDIT,
N_("_Edit Layer Mask"), NULL, NULL,
@ -391,7 +391,7 @@ layers_actions_update (GimpActionGroup *group,
gboolean sel = FALSE;
gboolean alpha = FALSE; /* alpha channel present */
gboolean indexed = FALSE; /* is indexed */
gboolean preserve = FALSE;
gboolean lock_alpha = FALSE;
gboolean text_layer = FALSE;
GList *next = NULL;
GList *prev = NULL;
@ -409,9 +409,9 @@ layers_actions_update (GimpActionGroup *group,
{
GList *list;
mask = gimp_layer_get_mask (layer);
preserve = gimp_layer_get_preserve_trans (layer);
alpha = gimp_drawable_has_alpha (GIMP_DRAWABLE (layer));
mask = gimp_layer_get_mask (layer);
lock_alpha = gimp_layer_get_lock_alpha (layer);
alpha = gimp_drawable_has_alpha (GIMP_DRAWABLE (layer));
list = g_list_find (GIMP_LIST (gimage->layers)->list, layer);
@ -465,8 +465,8 @@ layers_actions_update (GimpActionGroup *group,
SET_SENSITIVE ("layers-alpha-add", layer && !fs && !alpha);
SET_SENSITIVE ("layers-preserve-transparency", layer);
SET_ACTIVE ("layers-preserve-transparency", preserve);
SET_SENSITIVE ("layers-lock-alpha", layer);
SET_ACTIVE ("layers-lock-alpha", lock_alpha);
SET_SENSITIVE ("layers-mask-add", layer && !fs && !ac && !mask);
SET_SENSITIVE ("layers-mask-apply", layer && !fs && !ac && mask);

View File

@ -779,28 +779,28 @@ layers_mode_cmd_callback (GtkAction *action,
}
void
layers_preserve_trans_cmd_callback (GtkAction *action,
gpointer data)
layers_lock_alpha_cmd_callback (GtkAction *action,
gpointer data)
{
GimpImage *gimage;
GimpLayer *layer;
gboolean preserve;
gboolean lock_alpha;
return_if_no_layer (gimage, layer, data);
preserve = gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action));
lock_alpha = gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action));
if (preserve != gimp_layer_get_preserve_trans (layer))
if (lock_alpha != gimp_layer_get_lock_alpha (layer))
{
GimpUndo *undo;
gboolean push_undo = TRUE;
undo = gimp_image_undo_can_compress (gimage, GIMP_TYPE_ITEM_UNDO,
GIMP_UNDO_LAYER_PRESERVE_TRANS);
GIMP_UNDO_LAYER_LOCK_ALPHA);
if (undo && GIMP_ITEM_UNDO (undo)->item == GIMP_ITEM (layer))
push_undo = FALSE;
gimp_layer_set_preserve_trans (layer, preserve, push_undo);
gimp_layer_set_lock_alpha (layer, lock_alpha, push_undo);
gimp_image_flush (gimage);
}
}

View File

@ -90,7 +90,7 @@ void layers_mode_cmd_callback (GtkAction *action,
gint value,
gpointer data);
void layers_preserve_trans_cmd_callback (GtkAction *action,
void layers_lock_alpha_cmd_callback (GtkAction *action,
gpointer data);

View File

@ -772,7 +772,7 @@ gimp_undo_type_get_type (void)
{ GIMP_UNDO_LAYER_REPOSITION, "GIMP_UNDO_LAYER_REPOSITION", "layer-reposition" },
{ GIMP_UNDO_LAYER_MODE, "GIMP_UNDO_LAYER_MODE", "layer-mode" },
{ GIMP_UNDO_LAYER_OPACITY, "GIMP_UNDO_LAYER_OPACITY", "layer-opacity" },
{ GIMP_UNDO_LAYER_PRESERVE_TRANS, "GIMP_UNDO_LAYER_PRESERVE_TRANS", "layer-preserve-trans" },
{ GIMP_UNDO_LAYER_LOCK_ALPHA, "GIMP_UNDO_LAYER_LOCK_ALPHA", "layer-lock-alpha" },
{ GIMP_UNDO_TEXT_LAYER, "GIMP_UNDO_TEXT_LAYER", "text-layer" },
{ GIMP_UNDO_TEXT_LAYER_MODIFIED, "GIMP_UNDO_TEXT_LAYER_MODIFIED", "text-layer-modified" },
{ GIMP_UNDO_LAYER_MASK_ADD, "GIMP_UNDO_LAYER_MASK_ADD", "layer-mask-add" },
@ -858,7 +858,7 @@ gimp_undo_type_get_type (void)
{ GIMP_UNDO_LAYER_REPOSITION, N_("Reposition layer"), NULL },
{ GIMP_UNDO_LAYER_MODE, N_("Set layer mode"), NULL },
{ GIMP_UNDO_LAYER_OPACITY, N_("Set layer opacity"), NULL },
{ GIMP_UNDO_LAYER_PRESERVE_TRANS, N_("Set preserve trans"), NULL },
{ GIMP_UNDO_LAYER_LOCK_ALPHA, N_("Lock/Unlock alpha channel"), NULL },
{ GIMP_UNDO_TEXT_LAYER, N_("Text"), NULL },
{ GIMP_UNDO_TEXT_LAYER_MODIFIED, N_("Text modified"), NULL },
{ GIMP_UNDO_LAYER_MASK_ADD, N_("Add layer mask"), NULL },

View File

@ -401,7 +401,7 @@ typedef enum /*< pdb-skip >*/
GIMP_UNDO_LAYER_REPOSITION, /*< desc="Reposition layer" >*/
GIMP_UNDO_LAYER_MODE, /*< desc="Set layer mode" >*/
GIMP_UNDO_LAYER_OPACITY, /*< desc="Set layer opacity" >*/
GIMP_UNDO_LAYER_PRESERVE_TRANS, /*< desc="Set preserve trans" >*/
GIMP_UNDO_LAYER_LOCK_ALPHA, /*< desc="Lock/Unlock alpha channel" >*/
GIMP_UNDO_TEXT_LAYER, /*< desc="Text" >*/
GIMP_UNDO_TEXT_LAYER_MODIFIED, /*< desc="Text modified" >*/
GIMP_UNDO_LAYER_MASK_ADD, /*< desc="Add layer mask" >*/

View File

@ -1669,7 +1669,7 @@ struct _LayerPropertiesUndo
{
GimpLayerModeEffects old_mode;
gdouble old_opacity;
gboolean old_preserve_trans;
gboolean old_lock_alpha;
};
static gboolean undo_push_layer_properties (GimpImage *gimage,
@ -1701,11 +1701,11 @@ gimp_image_undo_push_layer_opacity (GimpImage *gimage,
}
gboolean
gimp_image_undo_push_layer_preserve_trans (GimpImage *gimage,
const gchar *undo_desc,
GimpLayer *layer)
gimp_image_undo_push_layer_lock_alpha (GimpImage *gimage,
const gchar *undo_desc,
GimpLayer *layer)
{
return undo_push_layer_properties (gimage, GIMP_UNDO_LAYER_PRESERVE_TRANS,
return undo_push_layer_properties (gimage, GIMP_UNDO_LAYER_LOCK_ALPHA,
undo_desc, layer);
}
@ -1733,9 +1733,9 @@ undo_push_layer_properties (GimpImage *gimage,
{
LayerPropertiesUndo *lpu = new->data;
lpu->old_mode = gimp_layer_get_mode (layer);
lpu->old_opacity = gimp_layer_get_opacity (layer);
lpu->old_preserve_trans = gimp_layer_get_preserve_trans (layer);
lpu->old_mode = gimp_layer_get_mode (layer);
lpu->old_opacity = gimp_layer_get_opacity (layer);
lpu->old_lock_alpha = gimp_layer_get_lock_alpha (layer);
return TRUE;
}
@ -1773,13 +1773,13 @@ undo_pop_layer_properties (GimpUndo *undo,
}
break;
case GIMP_UNDO_LAYER_PRESERVE_TRANS:
case GIMP_UNDO_LAYER_LOCK_ALPHA:
{
gboolean preserve_trans;
gboolean lock_alpha;
preserve_trans = gimp_layer_get_preserve_trans (layer);
gimp_layer_set_preserve_trans (layer, lpu->old_preserve_trans, FALSE);
lpu->old_preserve_trans = preserve_trans;
lock_alpha = gimp_layer_get_lock_alpha (layer);
gimp_layer_set_lock_alpha (layer, lpu->old_lock_alpha, FALSE);
lpu->old_lock_alpha = lock_alpha;
}
break;

View File

@ -101,7 +101,7 @@ gboolean gimp_image_undo_push_layer_mode (GimpImage *gimage,
gboolean gimp_image_undo_push_layer_opacity (GimpImage *gimage,
const gchar *undo_desc,
GimpLayer *layer);
gboolean gimp_image_undo_push_layer_preserve_trans (GimpImage *gimage,
gboolean gimp_image_undo_push_layer_lock_alpha (GimpImage *gimage,
const gchar *undo_desc,
GimpLayer *layer);

View File

@ -71,7 +71,7 @@ floating_sel_attach (GimpLayer *layer,
}
/* set the drawable and allocate a backing store */
gimp_layer_set_preserve_trans (layer, FALSE, FALSE);
gimp_layer_set_lock_alpha (layer, FALSE, FALSE);
layer->fs.drawable = drawable;
layer->fs.backing_store = tile_manager_new (GIMP_ITEM (layer)->width,
GIMP_ITEM (layer)->height,
@ -411,7 +411,7 @@ floating_sel_composite (GimpLayer *layer,
PixelRegion fsPR;
GimpImage *gimage;
GimpLayer *d_layer = NULL;
gint preserve_trans;
gint lock_alpha;
gint active[MAX_CHANNELS];
gint offx, offy;
gint x1, y1, x2, y2;
@ -467,17 +467,17 @@ floating_sel_composite (GimpLayer *layer,
(x2 - x1), (y2 - y1), FALSE);
/* a kludge here to prevent the case of the drawable
* underneath having preserve transparency on, and disallowing
* underneath having lock alpha on, and disallowing
* the composited floating selection from being shown
*/
if (GIMP_IS_LAYER (layer->fs.drawable))
{
d_layer = GIMP_LAYER (layer->fs.drawable);
if ((preserve_trans = gimp_layer_get_preserve_trans (d_layer)))
gimp_layer_set_preserve_trans (d_layer, FALSE, FALSE);
if ((lock_alpha = gimp_layer_get_lock_alpha (d_layer)))
gimp_layer_set_lock_alpha (d_layer, FALSE, FALSE);
}
else
preserve_trans = FALSE;
lock_alpha = FALSE;
/* We need to set all gimage channels to active to make sure that
* nothing strange happens while applying the floating selection.
@ -500,9 +500,9 @@ floating_sel_composite (GimpLayer *layer,
NULL,
(x1 - offx), (y1 - offy));
/* restore preserve transparency */
if (preserve_trans)
gimp_layer_set_preserve_trans (d_layer, TRUE, FALSE);
/* restore lock alpha */
if (lock_alpha)
gimp_layer_set_lock_alpha (d_layer, TRUE, FALSE);
/* restore gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)

View File

@ -54,7 +54,7 @@ enum
{
OPACITY_CHANGED,
MODE_CHANGED,
PRESERVE_TRANS_CHANGED,
LOCK_ALPHA_CHANGED,
MASK_CHANGED,
LAST_SIGNAL
};
@ -208,11 +208,11 @@ gimp_layer_class_init (GimpLayerClass *klass)
gimp_marshal_VOID__VOID,
G_TYPE_NONE, 0);
layer_signals[PRESERVE_TRANS_CHANGED] =
g_signal_new ("preserve-trans-changed",
layer_signals[LOCK_ALPHA_CHANGED] =
g_signal_new ("lock-alpha-changed",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_FIRST,
G_STRUCT_OFFSET (GimpLayerClass, preserve_trans_changed),
G_STRUCT_OFFSET (GimpLayerClass, lock_alpha_changed),
NULL, NULL,
gimp_marshal_VOID__VOID,
G_TYPE_NONE, 0);
@ -262,18 +262,18 @@ gimp_layer_class_init (GimpLayerClass *klass)
klass->opacity_changed = NULL;
klass->mode_changed = NULL;
klass->preserve_trans_changed = NULL;
klass->lock_alpha_changed = NULL;
klass->mask_changed = NULL;
}
static void
gimp_layer_init (GimpLayer *layer)
{
layer->opacity = GIMP_OPACITY_OPAQUE;
layer->mode = GIMP_NORMAL_MODE;
layer->preserve_trans = FALSE;
layer->opacity = GIMP_OPACITY_OPAQUE;
layer->mode = GIMP_NORMAL_MODE;
layer->lock_alpha = FALSE;
layer->mask = NULL;
layer->mask = NULL;
/* floating selection */
layer->fs.backing_store = NULL;
@ -402,7 +402,7 @@ gimp_layer_get_active_components (const GimpDrawable *drawable,
for (i = 0; i < MAX_CHANNELS; i++)
active[i] = gimage->active[i];
if (gimp_drawable_has_alpha (drawable) && layer->preserve_trans)
if (gimp_drawable_has_alpha (drawable) && layer->lock_alpha)
active[gimp_drawable_bytes (drawable) - 1] = FALSE;
}
@ -468,9 +468,9 @@ gimp_layer_duplicate (GimpItem *item,
layer = GIMP_LAYER (item);
new_layer = GIMP_LAYER (new_item);
new_layer->mode = layer->mode;
new_layer->opacity = layer->opacity;
new_layer->preserve_trans = layer->preserve_trans;
new_layer->mode = layer->mode;
new_layer->opacity = layer->opacity;
new_layer->lock_alpha = layer->lock_alpha;
/* duplicate the layer mask if necessary */
if (layer->mask)
@ -1741,31 +1741,33 @@ gimp_layer_get_mode (const GimpLayer *layer)
}
void
gimp_layer_set_preserve_trans (GimpLayer *layer,
gboolean preserve,
gboolean push_undo)
gimp_layer_set_lock_alpha (GimpLayer *layer,
gboolean lock_alpha,
gboolean push_undo)
{
g_return_if_fail (GIMP_IS_LAYER (layer));
if (layer->preserve_trans != preserve)
lock_alpha = lock_alpha ? TRUE : FALSE;
if (layer->lock_alpha != lock_alpha)
{
if (push_undo && gimp_item_is_attached (GIMP_ITEM (layer)))
{
GimpImage *gimage = gimp_item_get_image (GIMP_ITEM (layer));
gimp_image_undo_push_layer_preserve_trans (gimage, NULL, layer);
gimp_image_undo_push_layer_lock_alpha (gimage, NULL, layer);
}
layer->preserve_trans = preserve ? TRUE : FALSE;
layer->lock_alpha = lock_alpha;
g_signal_emit (layer, layer_signals[PRESERVE_TRANS_CHANGED], 0);
g_signal_emit (layer, layer_signals[LOCK_ALPHA_CHANGED], 0);
}
}
gboolean
gimp_layer_get_preserve_trans (const GimpLayer *layer)
gimp_layer_get_lock_alpha (const GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_LAYER (layer), FALSE);
return layer->preserve_trans;
return layer->lock_alpha;
}

View File

@ -39,7 +39,7 @@ struct _GimpLayer
gdouble opacity; /* layer opacity */
GimpLayerModeEffects mode; /* layer combination mode */
gboolean preserve_trans; /* preserve transparency */
gboolean lock_alpha; /* lock the alpha channel */
GimpLayerMask *mask; /* possible layer mask */
@ -60,10 +60,10 @@ struct _GimpLayerClass
{
GimpDrawableClass parent_class;
void (* opacity_changed) (GimpLayer *layer);
void (* mode_changed) (GimpLayer *layer);
void (* preserve_trans_changed) (GimpLayer *layer);
void (* mask_changed) (GimpLayer *layer);
void (* opacity_changed) (GimpLayer *layer);
void (* mode_changed) (GimpLayer *layer);
void (* lock_alpha_changed) (GimpLayer *layer);
void (* mask_changed) (GimpLayer *layer);
};
@ -130,10 +130,10 @@ void gimp_layer_set_mode (GimpLayer *layer,
gboolean push_undo);
GimpLayerModeEffects gimp_layer_get_mode (const GimpLayer *layer);
void gimp_layer_set_preserve_trans (GimpLayer *layer,
gboolean preserve,
void gimp_layer_set_lock_alpha (GimpLayer *layer,
gboolean lock_alpha,
gboolean push_undo);
gboolean gimp_layer_get_preserve_trans (const GimpLayer *layer);
gboolean gimp_layer_get_lock_alpha (const GimpLayer *layer);
#endif /* __GIMP_LAYER_H__ */

View File

@ -164,7 +164,10 @@ procedural_db_init_procs (Gimp *gimp,
{ "gimp_undo_push_group_start", "gimp_image_undo_group_start" },
{ "gimp_undo_push_group_end", "gimp_image_undo_group_end" },
{ "gimp_channel_ops_duplicate", "gimp_image_duplicate" },
{ "gimp_channel_ops_offset", "gimp_drawable_offset" }
{ "gimp_channel_ops_offset", "gimp_drawable_offset" },
{ "gimp_layer_get_preserve_trans", "gimp_drawable_set_lock_alpha" },
{ "gimp_layer_set_preserve_trans", "gimp_drawable_set_lock_alpha" }
};
g_return_if_fail (GIMP_IS_GIMP (gimp));

View File

@ -164,7 +164,10 @@ procedural_db_init_procs (Gimp *gimp,
{ "gimp_undo_push_group_start", "gimp_image_undo_group_start" },
{ "gimp_undo_push_group_end", "gimp_image_undo_group_end" },
{ "gimp_channel_ops_duplicate", "gimp_image_duplicate" },
{ "gimp_channel_ops_offset", "gimp_drawable_offset" }
{ "gimp_channel_ops_offset", "gimp_drawable_offset" },
{ "gimp_layer_get_preserve_trans", "gimp_drawable_set_lock_alpha" },
{ "gimp_layer_set_preserve_trans", "gimp_drawable_set_lock_alpha" }
};
g_return_if_fail (GIMP_IS_GIMP (gimp));

View File

@ -164,7 +164,10 @@ procedural_db_init_procs (Gimp *gimp,
{ "gimp_undo_push_group_start", "gimp_image_undo_group_start" },
{ "gimp_undo_push_group_end", "gimp_image_undo_group_end" },
{ "gimp_channel_ops_duplicate", "gimp_image_duplicate" },
{ "gimp_channel_ops_offset", "gimp_drawable_offset" }
{ "gimp_channel_ops_offset", "gimp_drawable_offset" },
{ "gimp_layer_get_preserve_trans", "gimp_drawable_set_lock_alpha" },
{ "gimp_layer_set_preserve_trans", "gimp_drawable_set_lock_alpha" }
};
g_return_if_fail (GIMP_IS_GIMP (gimp));

View File

@ -52,8 +52,8 @@ static ProcRecord layer_from_mask_proc;
static ProcRecord layer_add_mask_proc;
static ProcRecord layer_remove_mask_proc;
static ProcRecord layer_is_floating_sel_proc;
static ProcRecord layer_get_preserve_trans_proc;
static ProcRecord layer_set_preserve_trans_proc;
static ProcRecord layer_get_lock_alpha_proc;
static ProcRecord layer_set_lock_alpha_proc;
static ProcRecord layer_get_apply_mask_proc;
static ProcRecord layer_set_apply_mask_proc;
static ProcRecord layer_get_show_mask_proc;
@ -83,8 +83,8 @@ register_layer_procs (Gimp *gimp)
procedural_db_register (gimp, &layer_add_mask_proc);
procedural_db_register (gimp, &layer_remove_mask_proc);
procedural_db_register (gimp, &layer_is_floating_sel_proc);
procedural_db_register (gimp, &layer_get_preserve_trans_proc);
procedural_db_register (gimp, &layer_set_preserve_trans_proc);
procedural_db_register (gimp, &layer_get_lock_alpha_proc);
procedural_db_register (gimp, &layer_set_lock_alpha_proc);
procedural_db_register (gimp, &layer_get_apply_mask_proc);
procedural_db_register (gimp, &layer_set_apply_mask_proc);
procedural_db_register (gimp, &layer_get_show_mask_proc);
@ -1157,10 +1157,10 @@ static ProcRecord layer_is_floating_sel_proc =
};
static Argument *
layer_get_preserve_trans_invoker (Gimp *gimp,
GimpContext *context,
GimpProgress *progress,
Argument *args)
layer_get_lock_alpha_invoker (Gimp *gimp,
GimpContext *context,
GimpProgress *progress,
Argument *args)
{
gboolean success = TRUE;
Argument *return_args;
@ -1170,15 +1170,15 @@ layer_get_preserve_trans_invoker (Gimp *gimp,
if (! (GIMP_IS_LAYER (layer) && ! gimp_item_is_removed (GIMP_ITEM (layer))))
success = FALSE;
return_args = procedural_db_return_args (&layer_get_preserve_trans_proc, success);
return_args = procedural_db_return_args (&layer_get_lock_alpha_proc, success);
if (success)
return_args[1].value.pdb_int = gimp_layer_get_preserve_trans (layer);
return_args[1].value.pdb_int = gimp_layer_get_lock_alpha (layer);
return return_args;
}
static ProcArg layer_get_preserve_trans_inargs[] =
static ProcArg layer_get_lock_alpha_inargs[] =
{
{
GIMP_PDB_LAYER,
@ -1187,55 +1187,55 @@ static ProcArg layer_get_preserve_trans_inargs[] =
}
};
static ProcArg layer_get_preserve_trans_outargs[] =
static ProcArg layer_get_lock_alpha_outargs[] =
{
{
GIMP_PDB_INT32,
"preserve_trans",
"The layer's preserve transperancy setting"
"lock_alpha",
"The layer's lock alpha channel setting"
}
};
static ProcRecord layer_get_preserve_trans_proc =
static ProcRecord layer_get_lock_alpha_proc =
{
"gimp_layer_get_preserve_trans",
"Get the preserve transperancy setting of the specified layer.",
"This procedure returns the specified layer's preserve transperancy setting.",
"gimp_layer_get_lock_alpha",
"Get the lock alpha channel setting of the specified layer.",
"This procedure returns the specified layer's lock alpha channel setting.",
"Spencer Kimball & Peter Mattis",
"Spencer Kimball & Peter Mattis",
"1995-1996",
NULL,
GIMP_INTERNAL,
1,
layer_get_preserve_trans_inargs,
layer_get_lock_alpha_inargs,
1,
layer_get_preserve_trans_outargs,
{ { layer_get_preserve_trans_invoker } }
layer_get_lock_alpha_outargs,
{ { layer_get_lock_alpha_invoker } }
};
static Argument *
layer_set_preserve_trans_invoker (Gimp *gimp,
GimpContext *context,
GimpProgress *progress,
Argument *args)
layer_set_lock_alpha_invoker (Gimp *gimp,
GimpContext *context,
GimpProgress *progress,
Argument *args)
{
gboolean success = TRUE;
GimpLayer *layer;
gboolean preserve_trans;
gboolean lock_alpha;
layer = (GimpLayer *) gimp_item_get_by_ID (gimp, args[0].value.pdb_int);
if (! (GIMP_IS_LAYER (layer) && ! gimp_item_is_removed (GIMP_ITEM (layer))))
success = FALSE;
preserve_trans = args[1].value.pdb_int ? TRUE : FALSE;
lock_alpha = args[1].value.pdb_int ? TRUE : FALSE;
if (success)
gimp_layer_set_preserve_trans (layer, preserve_trans, TRUE);
gimp_layer_set_lock_alpha (layer, lock_alpha, TRUE);
return procedural_db_return_args (&layer_set_preserve_trans_proc, success);
return procedural_db_return_args (&layer_set_lock_alpha_proc, success);
}
static ProcArg layer_set_preserve_trans_inargs[] =
static ProcArg layer_set_lock_alpha_inargs[] =
{
{
GIMP_PDB_LAYER,
@ -1244,26 +1244,26 @@ static ProcArg layer_set_preserve_trans_inargs[] =
},
{
GIMP_PDB_INT32,
"preserve_trans",
"The new layer's preserve transperancy setting"
"lock_alpha",
"The new layer's lock alpha channel setting"
}
};
static ProcRecord layer_set_preserve_trans_proc =
static ProcRecord layer_set_lock_alpha_proc =
{
"gimp_layer_set_preserve_trans",
"Set the preserve transperancy setting of the specified layer.",
"This procedure sets the specified layer's preserve transperancy setting.",
"gimp_layer_set_lock_alpha",
"Set the lock alpha channel setting of the specified layer.",
"This procedure sets the specified layer's lock alpha channel setting.",
"Spencer Kimball & Peter Mattis",
"Spencer Kimball & Peter Mattis",
"1995-1996",
NULL,
GIMP_INTERNAL,
2,
layer_set_preserve_trans_inargs,
layer_set_lock_alpha_inargs,
0,
NULL,
{ { layer_set_preserve_trans_invoker } }
{ { layer_set_lock_alpha_invoker } }
};
static Argument *

View File

@ -164,7 +164,10 @@ procedural_db_init_procs (Gimp *gimp,
{ "gimp_undo_push_group_start", "gimp_image_undo_group_start" },
{ "gimp_undo_push_group_end", "gimp_image_undo_group_end" },
{ "gimp_channel_ops_duplicate", "gimp_image_duplicate" },
{ "gimp_channel_ops_offset", "gimp_drawable_offset" }
{ "gimp_channel_ops_offset", "gimp_drawable_offset" },
{ "gimp_layer_get_preserve_trans", "gimp_drawable_set_lock_alpha" },
{ "gimp_layer_set_preserve_trans", "gimp_drawable_set_lock_alpha" }
};
g_return_if_fail (GIMP_IS_GIMP (gimp));

View File

@ -215,9 +215,9 @@ gimp_text_layer_from_layer (GimpLayer *layer,
drawable->type = gimp_drawable_type (GIMP_DRAWABLE (layer));
drawable->has_alpha = gimp_drawable_has_alpha (GIMP_DRAWABLE (layer));
GIMP_LAYER (text_layer)->opacity = gimp_layer_get_opacity (layer);
GIMP_LAYER (text_layer)->mode = gimp_layer_get_mode (layer);
GIMP_LAYER (text_layer)->preserve_trans = gimp_layer_get_preserve_trans (layer);
GIMP_LAYER (text_layer)->opacity = gimp_layer_get_opacity (layer);
GIMP_LAYER (text_layer)->mode = gimp_layer_get_mode (layer);
GIMP_LAYER (text_layer)->lock_alpha = gimp_layer_get_lock_alpha (layer);
gimp_text_layer_set_text (text_layer, text);

View File

@ -127,8 +127,8 @@
#define GIMP_HELP_LAYER_DIALOG "gimp-layer-dialog"
#define GIMP_HELP_LAYER_DIALOG_PAINT_MODE_MENU "gimp-layer-dialog-paint-mode-menu"
#define GIMP_HELP_LAYER_DIALOG_KEEP_TRANS_BUTTON "gimp-layer-dialog-keep-trans-button"
#define GIMP_HELP_LAYER_DIALOG_OPACITY_SCALE "gimp-layer-dialog-opacity-scale"
#define GIMP_HELP_LAYER_DIALOG_LOCK_ALPHA_BUTTON "gimp-layer-dialog-lock-alpha-button"
#define GIMP_HELP_LAYER_NEW "gimp-layer-new"
#define GIMP_HELP_LAYER_DUPLICATE "gimp-layer-duplicate"
@ -146,13 +146,13 @@
#define GIMP_HELP_LAYER_LOWER_TO_BOTTOM "gimp-layer-lower-to-bottom"
#define GIMP_HELP_LAYER_DESATURATE "gimp-layer-desaturate"
#define GIMP_HELP_LAYER_INVERT "gimp-layer-invert"
#define GIMP_HELP_LAYER_WHITE_BALANCE "gimp-layer-white-balance"
#define GIMP_HELP_LAYER_WHITE_BALANCE "gimp-layer-white-balance"
#define GIMP_HELP_LAYER_EQUALIZE "gimp-layer-equalize"
#define GIMP_HELP_LAYER_VISIBLE "gimp-layer-visible"
#define GIMP_HELP_LAYER_LINKED "gimp-layer-linked"
#define GIMP_HELP_LAYER_OPACITY "gimp-layer-opacity"
#define GIMP_HELP_LAYER_MODE "gimp-layer-mode"
#define GIMP_HELP_LAYER_KEEP_TRANSPARENCY "gimp-layer-keep-transparency"
#define GIMP_HELP_LAYER_LOCK_ALPHA "gimp-layer-lock-alpha"
#define GIMP_HELP_LAYER_MASK_ADD "gimp-layer-mask-add"
#define GIMP_HELP_LAYER_MASK_APPLY "gimp-layer-mask-apply"
#define GIMP_HELP_LAYER_MASK_DELETE "gimp-layer-mask-delete"

View File

@ -118,12 +118,12 @@ static void gimp_layer_tree_view_floating_selection_changed
static void gimp_layer_tree_view_paint_mode_menu_callback
(GtkWidget *widget,
GimpLayerTreeView *view);
static void gimp_layer_tree_view_preserve_button_toggled
(GtkWidget *widget,
GimpLayerTreeView *view);
static void gimp_layer_tree_view_opacity_scale_changed
(GtkAdjustment *adj,
GimpLayerTreeView *view);
static void gimp_layer_tree_view_lock_alpha_button_toggled
(GtkWidget *widget,
GimpLayerTreeView *view);
static void gimp_layer_tree_view_layer_signal_handler
(GimpLayer *layer,
@ -283,7 +283,7 @@ gimp_layer_tree_view_init (GimpLayerTreeView *view)
tree_view->model_columns[tree_view->n_model_columns] = G_TYPE_BOOLEAN;
tree_view->n_model_columns++;
view->options_box = gtk_table_new (2, 3, FALSE);
view->options_box = gtk_table_new (3, 3, FALSE);
gtk_table_set_col_spacings (GTK_TABLE (view->options_box), 2);
gtk_box_pack_start (GTK_BOX (view), view->options_box, FALSE, FALSE, 0);
gtk_box_reorder_child (GTK_BOX (view), view->options_box, 0);
@ -294,8 +294,9 @@ gimp_layer_tree_view_init (GimpLayerTreeView *view)
/* Paint mode menu */
view->paint_mode_menu = gimp_paint_mode_menu_new (FALSE);
gtk_box_pack_start (GTK_BOX (hbox), view->paint_mode_menu, TRUE, TRUE, 0);
gtk_widget_show (view->paint_mode_menu);
gimp_table_attach_aligned (GTK_TABLE (view->options_box), 0, 0,
_("Mode:"), 0.0, 0.5,
view->paint_mode_menu, 2, FALSE);
gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (view->paint_mode_menu),
GIMP_NORMAL_MODE,
@ -305,31 +306,6 @@ gimp_layer_tree_view_init (GimpLayerTreeView *view)
gimp_help_set_help_data (view->paint_mode_menu, NULL,
GIMP_HELP_LAYER_DIALOG_PAINT_MODE_MENU);
/* Preserve transparency toggle */
view->preserve_trans_toggle = toggle = gtk_check_button_new ();
gtk_box_pack_end (GTK_BOX (hbox), toggle, FALSE, FALSE, 0);
gtk_widget_show (toggle);
g_signal_connect (toggle, "toggled",
G_CALLBACK (gimp_layer_tree_view_preserve_button_toggled),
view);
gimp_help_set_help_data (toggle, _("Keep transparency"),
GIMP_HELP_LAYER_DIALOG_KEEP_TRANS_BUTTON);
gtk_widget_style_get (GTK_WIDGET (view),
"button_icon_size", &icon_size,
NULL);
image = gtk_image_new_from_stock (GIMP_STOCK_TRANSPARENCY, icon_size);
gtk_container_add (GTK_CONTAINER (toggle), image);
gtk_widget_show (image);
gimp_table_attach_aligned (GTK_TABLE (view->options_box), 0, 0,
_("Mode:"), 0.0, 0.5,
hbox, 2, FALSE);
/* Opacity scale */
view->opacity_adjustment =
@ -344,6 +320,31 @@ gimp_layer_tree_view_init (GimpLayerTreeView *view)
G_CALLBACK (gimp_layer_tree_view_opacity_scale_changed),
view);
/* Lock alpha toggle */
view->lock_alpha_toggle = toggle = gtk_check_button_new ();
gtk_box_pack_start (GTK_BOX (hbox), toggle, FALSE, FALSE, 0);
gtk_widget_show (toggle);
g_signal_connect (toggle, "toggled",
G_CALLBACK (gimp_layer_tree_view_lock_alpha_button_toggled),
view);
gimp_help_set_help_data (toggle, _("Lock alpha channel"),
GIMP_HELP_LAYER_DIALOG_LOCK_ALPHA_BUTTON);
gtk_widget_style_get (GTK_WIDGET (view),
"button-icon-size", &icon_size,
NULL);
image = gtk_image_new_from_stock (GIMP_STOCK_TRANSPARENCY, icon_size);
gtk_container_add (GTK_CONTAINER (toggle), image);
gtk_widget_show (image);
gimp_table_attach_aligned (GTK_TABLE (view->options_box), 2, 0,
_("Lock:"), 0.0, 0.5,
hbox, 2, FALSE);
gtk_widget_set_sensitive (view->options_box, FALSE);
view->italic_attrs = pango_attr_list_new ();
@ -358,10 +359,10 @@ gimp_layer_tree_view_init (GimpLayerTreeView *view)
attr->end_index = -1;
pango_attr_list_insert (view->bold_attrs, attr);
view->mode_changed_handler_id = 0;
view->opacity_changed_handler_id = 0;
view->preserve_trans_changed_handler_id = 0;
view->mask_changed_handler_id = 0;
view->mode_changed_handler_id = 0;
view->opacity_changed_handler_id = 0;
view->lock_alpha_changed_handler_id = 0;
view->mask_changed_handler_id = 0;
}
static void
@ -526,7 +527,7 @@ gimp_layer_tree_view_set_container (GimpContainerView *view,
gimp_container_remove_handler (old_container,
layer_view->opacity_changed_handler_id);
gimp_container_remove_handler (old_container,
layer_view->preserve_trans_changed_handler_id);
layer_view->lock_alpha_changed_handler_id);
gimp_container_remove_handler (old_container,
layer_view->mask_changed_handler_id);
gimp_container_remove_handler (old_container,
@ -545,8 +546,8 @@ gimp_layer_tree_view_set_container (GimpContainerView *view,
gimp_container_add_handler (container, "opacity-changed",
G_CALLBACK (gimp_layer_tree_view_layer_signal_handler),
view);
layer_view->preserve_trans_changed_handler_id =
gimp_container_add_handler (container, "preserve-trans-changed",
layer_view->lock_alpha_changed_handler_id =
gimp_container_add_handler (container, "lock-alpha-changed",
G_CALLBACK (gimp_layer_tree_view_layer_signal_handler),
view);
layer_view->mask_changed_handler_id =
@ -933,7 +934,7 @@ gimp_layer_tree_view_floating_selection_changed (GimpImage *gimage,
}
/* Paint Mode, Opacity and Preserve trans. callbacks */
/* Paint Mode, Opacity and Lock alpha callbacks */
#define BLOCK() \
g_signal_handlers_block_by_func (layer, \
@ -988,8 +989,8 @@ gimp_layer_tree_view_paint_mode_menu_callback (GtkWidget *widget,
}
static void
gimp_layer_tree_view_preserve_button_toggled (GtkWidget *widget,
GimpLayerTreeView *view)
gimp_layer_tree_view_lock_alpha_button_toggled (GtkWidget *widget,
GimpLayerTreeView *view)
{
GimpImage *gimage;
GimpLayer *layer;
@ -1001,24 +1002,24 @@ gimp_layer_tree_view_preserve_button_toggled (GtkWidget *widget,
if (layer)
{
gboolean preserve_trans;
gboolean lock_alpha;
preserve_trans = GTK_TOGGLE_BUTTON (widget)->active;
lock_alpha = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
if (gimp_layer_get_preserve_trans (layer) != preserve_trans)
if (gimp_layer_get_lock_alpha (layer) != lock_alpha)
{
GimpUndo *undo;
gboolean push_undo = TRUE;
/* compress opacity undos */
undo = gimp_image_undo_can_compress (gimage, GIMP_TYPE_ITEM_UNDO,
GIMP_UNDO_LAYER_PRESERVE_TRANS);
GIMP_UNDO_LAYER_LOCK_ALPHA);
if (undo && GIMP_ITEM_UNDO (undo)->item == GIMP_ITEM (layer))
push_undo = FALSE;
BLOCK();
gimp_layer_set_preserve_trans (layer, preserve_trans, push_undo);
gimp_layer_set_lock_alpha (layer, lock_alpha, push_undo);
UNBLOCK();
gimp_image_flush (gimage);
@ -1104,17 +1105,17 @@ gimp_layer_tree_view_update_options (GimpLayerTreeView *view,
UNBLOCK (view->paint_mode_menu,
gimp_layer_tree_view_paint_mode_menu_callback);
if (layer->preserve_trans !=
GTK_TOGGLE_BUTTON (view->preserve_trans_toggle)->active)
if (layer->lock_alpha !=
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (view->lock_alpha_toggle)))
{
BLOCK (view->preserve_trans_toggle,
gimp_layer_tree_view_preserve_button_toggled);
BLOCK (view->lock_alpha_toggle,
gimp_layer_tree_view_lock_alpha_button_toggled);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (view->preserve_trans_toggle),
layer->preserve_trans);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (view->lock_alpha_toggle),
layer->lock_alpha);
UNBLOCK (view->preserve_trans_toggle,
gimp_layer_tree_view_preserve_button_toggled);
UNBLOCK (view->lock_alpha_toggle,
gimp_layer_tree_view_lock_alpha_button_toggled);
}
if (layer->opacity * 100.0 != view->opacity_adjustment->value)

View File

@ -42,8 +42,8 @@ struct _GimpLayerTreeView
GtkWidget *options_box;
GtkWidget *paint_mode_menu;
GtkWidget *preserve_trans_toggle;
GtkAdjustment *opacity_adjustment;
GtkWidget *lock_alpha_toggle;
gint model_column_mask;
gint model_column_mask_visible;
@ -56,7 +56,7 @@ struct _GimpLayerTreeView
/*< private >*/
GQuark mode_changed_handler_id;
GQuark opacity_changed_handler_id;
GQuark preserve_trans_changed_handler_id;
GQuark lock_alpha_changed_handler_id;
GQuark mask_changed_handler_id;
GQuark alpha_changed_handler_id;
};

View File

@ -616,9 +616,9 @@ xcf_load_layer_props (XcfInfo *info,
}
break;
case PROP_PRESERVE_TRANSPARENCY:
case PROP_LOCK_ALPHA:
info->cp +=
xcf_read_int32 (info->fp, (guint32 *) &layer->preserve_trans, 1);
xcf_read_int32 (info->fp, (guint32 *) &layer->lock_alpha, 1);
break;
case PROP_APPLY_MASK:

View File

@ -22,33 +22,33 @@
typedef enum
{
PROP_END = 0,
PROP_COLORMAP = 1,
PROP_ACTIVE_LAYER = 2,
PROP_ACTIVE_CHANNEL = 3,
PROP_SELECTION = 4,
PROP_FLOATING_SELECTION = 5,
PROP_OPACITY = 6,
PROP_MODE = 7,
PROP_VISIBLE = 8,
PROP_LINKED = 9,
PROP_PRESERVE_TRANSPARENCY = 10,
PROP_APPLY_MASK = 11,
PROP_EDIT_MASK = 12,
PROP_SHOW_MASK = 13,
PROP_SHOW_MASKED = 14,
PROP_OFFSETS = 15,
PROP_COLOR = 16,
PROP_COMPRESSION = 17,
PROP_GUIDES = 18,
PROP_RESOLUTION = 19,
PROP_TATTOO = 20,
PROP_PARASITES = 21,
PROP_UNIT = 22,
PROP_PATHS = 23,
PROP_USER_UNIT = 24,
PROP_VECTORS = 25,
PROP_TEXT_LAYER_FLAGS = 26
PROP_END = 0,
PROP_COLORMAP = 1,
PROP_ACTIVE_LAYER = 2,
PROP_ACTIVE_CHANNEL = 3,
PROP_SELECTION = 4,
PROP_FLOATING_SELECTION = 5,
PROP_OPACITY = 6,
PROP_MODE = 7,
PROP_VISIBLE = 8,
PROP_LINKED = 9,
PROP_LOCK_ALPHA = 10,
PROP_APPLY_MASK = 11,
PROP_EDIT_MASK = 12,
PROP_SHOW_MASK = 13,
PROP_SHOW_MASKED = 14,
PROP_OFFSETS = 15,
PROP_COLOR = 16,
PROP_COMPRESSION = 17,
PROP_GUIDES = 18,
PROP_RESOLUTION = 19,
PROP_TATTOO = 20,
PROP_PARASITES = 21,
PROP_UNIT = 22,
PROP_PATHS = 23,
PROP_USER_UNIT = 24,
PROP_VECTORS = 25,
PROP_TEXT_LAYER_FLAGS = 26
} PropType;
typedef enum

View File

@ -503,8 +503,8 @@ xcf_save_layer_props (XcfInfo *info,
gimp_item_get_visible (GIMP_ITEM (layer))));
xcf_check_error (xcf_save_prop (info, gimage, PROP_LINKED, error,
gimp_item_get_linked (GIMP_ITEM (layer))));
xcf_check_error (xcf_save_prop (info, gimage, PROP_PRESERVE_TRANSPARENCY,
error, layer->preserve_trans));
xcf_check_error (xcf_save_prop (info, gimage, PROP_LOCK_ALPHA,
error, layer->lock_alpha));
if (layer->mask)
{
@ -720,16 +720,16 @@ xcf_save_prop (XcfInfo *info,
}
break;
case PROP_PRESERVE_TRANSPARENCY:
case PROP_LOCK_ALPHA:
{
guint32 preserve_trans;
guint32 lock_alpha;
preserve_trans = va_arg (args, guint32);
lock_alpha = va_arg (args, guint32);
size = 4;
xcf_write_prop_type_check_error (info, prop_type);
xcf_write_int32_check_error (info, &size, 1);
xcf_write_int32_check_error (info, &preserve_trans, 1);
xcf_write_int32_check_error (info, &lock_alpha, 1);
}
break;

View File

@ -352,6 +352,7 @@ EXPORTS
gimp_layer_from_mask
gimp_layer_get_apply_mask
gimp_layer_get_edit_mask
gimp_layer_get_lock_alpha
gimp_layer_get_mask
gimp_layer_get_mode
gimp_layer_get_opacity
@ -367,6 +368,7 @@ EXPORTS
gimp_layer_scale
gimp_layer_set_apply_mask
gimp_layer_set_edit_mask
gimp_layer_set_lock_alpha
gimp_layer_set_mode
gimp_layer_set_offsets
gimp_layer_set_opacity

View File

@ -82,3 +82,33 @@ gimp_layer_copy (gint32 layer_ID)
{
return _gimp_layer_copy (layer_ID, FALSE);
}
/**
* gimp_layer_get_preserve_trans:
* @layer_ID: The layer.
*
* This procedure is deprecated! Use gimp_layer_get_lock_alpha() instead.
*
* Returns: The layer's preserve transperancy setting.
*/
gboolean
gimp_layer_get_preserve_trans (gint32 layer_ID)
{
return gimp_layer_get_lock_alpha (layer_ID);
}
/**
* gimp_layer_set_preserve_trans:
* @layer_ID: The layer.
* @preserve_trans: The new layer's preserve transperancy setting.
*
* This procedure is deprecated! Use gimp_layer_set_lock_alpha() instead.
*
* Returns: TRUE on success.
*/
gboolean
gimp_layer_set_preserve_trans (gint32 layer_ID,
gboolean preserve_trans)
{
gimp_layer_set_lock_alpha (layer_ID, preserve_trans);
}

View File

@ -27,15 +27,20 @@ G_BEGIN_DECLS
/* For information look into the C source or the html documentation */
gint32 gimp_layer_new (gint32 image_ID,
const gchar *name,
gint width,
gint height,
GimpImageType type,
gdouble opacity,
GimpLayerModeEffects mode);
gint32 gimp_layer_copy (gint32 layer_ID);
gint32 gimp_layer_new (gint32 image_ID,
const gchar *name,
gint width,
gint height,
GimpImageType type,
gdouble opacity,
GimpLayerModeEffects mode);
gint32 gimp_layer_copy (gint32 layer_ID);
#ifndef GIMP_DISABLE_DEPRECATED
gboolean gimp_layer_get_preserve_trans (gint32 layer_ID);
gboolean gimp_layer_set_preserve_trans (gint32 layer_ID,
gboolean preserve_trans);
#endif /* GIMP_DISABLE_DEPRECATED */
G_END_DECLS

View File

@ -589,60 +589,60 @@ gimp_layer_is_floating_sel (gint32 layer_ID)
}
/**
* gimp_layer_get_preserve_trans:
* gimp_layer_get_lock_alpha:
* @layer_ID: The layer.
*
* Get the preserve transperancy setting of the specified layer.
* Get the lock alpha channel setting of the specified layer.
*
* This procedure returns the specified layer's preserve transperancy
* This procedure returns the specified layer's lock alpha channel
* setting.
*
* Returns: The layer's preserve transperancy setting.
* Returns: The layer's lock alpha channel setting.
*/
gboolean
gimp_layer_get_preserve_trans (gint32 layer_ID)
gimp_layer_get_lock_alpha (gint32 layer_ID)
{
GimpParam *return_vals;
gint nreturn_vals;
gboolean preserve_trans = FALSE;
gboolean lock_alpha = FALSE;
return_vals = gimp_run_procedure ("gimp_layer_get_preserve_trans",
return_vals = gimp_run_procedure ("gimp_layer_get_lock_alpha",
&nreturn_vals,
GIMP_PDB_LAYER, layer_ID,
GIMP_PDB_END);
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
preserve_trans = return_vals[1].data.d_int32;
lock_alpha = return_vals[1].data.d_int32;
gimp_destroy_params (return_vals, nreturn_vals);
return preserve_trans;
return lock_alpha;
}
/**
* gimp_layer_set_preserve_trans:
* gimp_layer_set_lock_alpha:
* @layer_ID: The layer.
* @preserve_trans: The new layer's preserve transperancy setting.
* @lock_alpha: The new layer's lock alpha channel setting.
*
* Set the preserve transperancy setting of the specified layer.
* Set the lock alpha channel setting of the specified layer.
*
* This procedure sets the specified layer's preserve transperancy
* This procedure sets the specified layer's lock alpha channel
* setting.
*
* Returns: TRUE on success.
*/
gboolean
gimp_layer_set_preserve_trans (gint32 layer_ID,
gboolean preserve_trans)
gimp_layer_set_lock_alpha (gint32 layer_ID,
gboolean lock_alpha)
{
GimpParam *return_vals;
gint nreturn_vals;
gboolean success = TRUE;
return_vals = gimp_run_procedure ("gimp_layer_set_preserve_trans",
return_vals = gimp_run_procedure ("gimp_layer_set_lock_alpha",
&nreturn_vals,
GIMP_PDB_LAYER, layer_ID,
GIMP_PDB_INT32, preserve_trans,
GIMP_PDB_INT32, lock_alpha,
GIMP_PDB_END);
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;

View File

@ -66,9 +66,9 @@ gboolean gimp_layer_add_mask (gint32 laye
gboolean gimp_layer_remove_mask (gint32 layer_ID,
GimpMaskApplyMode mode);
gboolean gimp_layer_is_floating_sel (gint32 layer_ID);
gboolean gimp_layer_get_preserve_trans (gint32 layer_ID);
gboolean gimp_layer_set_preserve_trans (gint32 layer_ID,
gboolean preserve_trans);
gboolean gimp_layer_get_lock_alpha (gint32 layer_ID);
gboolean gimp_layer_set_lock_alpha (gint32 layer_ID,
gboolean lock_alpha);
gboolean gimp_layer_get_apply_mask (gint32 layer_ID);
gboolean gimp_layer_set_apply_mask (gint32 layer_ID,
gboolean apply_mask);

View File

@ -430,7 +430,7 @@
</menu>
<menuitem action="drawable-visible" />
<menuitem action="drawable-linked" />
<menuitem action="layers-preserve-transparency" />
<menuitem action="layers-lock-alpha" />
</menu>
-->

View File

@ -167,7 +167,7 @@ run (const gchar *name,
gimp_drawable_is_rgb (drawable->drawable_id) &&
gimp_drawable_is_layer (drawable->drawable_id))
{
gboolean preserve_trans;
gboolean lock_alpha;
gimp_image_undo_group_start (image_ID);
@ -177,14 +177,14 @@ run (const gchar *name,
/* Reget the drawable, bpp might have changed */
drawable = gimp_drawable_get (drawable->drawable_id);
/* Unset 'Keep transparency' */
preserve_trans = gimp_layer_get_preserve_trans (drawable->drawable_id);
gimp_layer_set_preserve_trans (drawable->drawable_id, FALSE);
/* Unset 'Lock alpha' */
lock_alpha = gimp_layer_get_lock_alpha (drawable->drawable_id);
gimp_layer_set_lock_alpha (drawable->drawable_id, FALSE);
gimp_progress_init (_("Removing color..."));
gimp_rgn_iterate2 (drawable, 0 /* unused */, to_alpha_func, NULL);
gimp_layer_set_preserve_trans (drawable->drawable_id, preserve_trans);
gimp_layer_set_lock_alpha (drawable->drawable_id, lock_alpha);
gimp_image_undo_group_end (image_ID);

View File

@ -208,7 +208,7 @@ static guchar *dstimage = NULL;
static gint preview_width, preview_height;
static gint sel_width, sel_height;
static gint image_bpp;
static gint preserve_trans;
static gint lock_alpha;
static GimpVector2 *deform_vectors = NULL;
static GimpVector2 *deform_area_vectors = NULL;
static gint lastx, lasty;
@ -854,9 +854,9 @@ iwarp_init (void)
image_bpp = gimp_drawable_bpp (drawable->drawable_id);
if (gimp_drawable_is_layer (drawable->drawable_id))
preserve_trans = gimp_layer_get_preserve_trans (drawable->drawable_id);
lock_alpha = gimp_layer_get_lock_alpha (drawable->drawable_id);
else
preserve_trans = FALSE;
lock_alpha = FALSE;
preview_bpp = image_bpp;
@ -1415,7 +1415,7 @@ iwarp_deform (gint x,
/* Yeah, it is ugly but since color is a pointer into image-data
* I must not change color[image_bpp - 1] ...
*/
if (preserve_trans && (image_bpp == 4 || image_bpp == 2))
if (lock_alpha && (image_bpp == 4 || image_bpp == 2))
{
iwarp_preview_get_point (x + xi, y + yi, color);
alpha = color[image_bpp - 1];
@ -1423,7 +1423,7 @@ iwarp_deform (gint x,
iwarp_preview_get_point (xn, yn, color);
if (!preserve_trans && (image_bpp == 4 || image_bpp == 2))
if (!lock_alpha && (image_bpp == 4 || image_bpp == 2))
{
alpha = color[image_bpp - 1];
}

View File

@ -1050,7 +1050,7 @@ do_layer_record(FILE *fd, guint32 *offset, gint layernum)
(*offset)++;
IFDBG printf("\t\t\t\tLayer Flags: %d (%s, %s)\n", flags,
flags&1?"preserve transparency":"don't preserve transparency",
flags&1?"lock alpha":"don't lock alpha",
flags&2?"visible":"not visible");
layer->protecttrans = (flags & 1) ? TRUE : FALSE;
@ -2062,7 +2062,7 @@ load_image (const gchar *name)
gimp_layer_translate (layer_ID, layer->x, layer->y);
gimp_layer_set_preserve_trans (layer_ID, layer->protecttrans);
gimp_layer_set_lock_alpha (layer_ID, layer->protecttrans);
gimp_drawable_set_visible (layer_ID, layer->visible);
drawable = gimp_drawable_get (layer_ID);

View File

@ -954,7 +954,7 @@ save_layer_and_mask (FILE *fd, gint32 image_id)
write_gchar (fd, 0, "Clipping");
flags = 0;
if (gimp_layer_get_preserve_trans (PSDImageData.lLayers[i])) flags |= 1;
if (gimp_layer_get_lock_alpha (PSDImageData.lLayers[i])) flags |= 1;
if (! gimp_drawable_get_visible (PSDImageData.lLayers[i])) flags |= 2;
IFDBG printf (" Flags: %u\n", flags);
write_gchar (fd, flags, "Flags");

View File

@ -1204,7 +1204,7 @@ read_layer_block (FILE *f,
if (!visibility)
gimp_drawable_set_visible (layer_ID, FALSE);
gimp_layer_set_preserve_trans (layer_ID, transparency_protected);
gimp_layer_set_lock_alpha (layer_ID, transparency_protected);
if (major < 4)
if (try_fseek (f, sub_block_start + sub_init_len, SEEK_SET) < 0)

View File

@ -271,7 +271,7 @@ rotate_drawable (GimpDrawable *drawable)
gint bytes;
gint row, col;
gint offsetx, offsety;
gboolean was_preserve_transparency = FALSE;
gboolean was_lock_alpha = FALSE;
guchar *buffer;
guchar *src_row, *dest_row;
@ -284,10 +284,10 @@ rotate_drawable (GimpDrawable *drawable)
height = drawable->height;
bytes = drawable->bpp;
if (gimp_layer_get_preserve_trans (drawable->drawable_id))
if (gimp_layer_get_lock_alpha (drawable->drawable_id))
{
was_preserve_transparency = TRUE;
gimp_layer_set_preserve_trans (drawable->drawable_id, FALSE);
was_lock_alpha = TRUE;
gimp_layer_set_lock_alpha (drawable->drawable_id, FALSE);
}
if (rotvals.angle == 2) /* we're rotating by 180° */
@ -390,8 +390,8 @@ rotate_drawable (GimpDrawable *drawable)
width, height);
gimp_layer_set_offsets (drawable->drawable_id, offsetx, offsety);
if (was_preserve_transparency)
gimp_layer_set_preserve_trans (drawable->drawable_id, TRUE);
if (was_lock_alpha)
gimp_layer_set_lock_alpha (drawable->drawable_id, TRUE);
return;
}

View File

@ -124,9 +124,9 @@ run (const gchar *name,
{
case GIMP_RUN_INTERACTIVE:
/* Since a channel might be selected, we must check wheter RGB or not. */
if (gimp_layer_get_preserve_trans (drawable_id))
if (gimp_layer_get_lock_alpha (drawable_id))
{
g_message (_("The layer preserves transparency."));
g_message (_("The layer has its alpha channel locked."));
return;
}
if (!gimp_drawable_is_rgb (drawable_id) &&

View File

@ -1186,7 +1186,7 @@ vpropagate_dialog (GimpDrawable *drawable)
G_CALLBACK (vpropagate_toggle_button_update),
&propagate_alpha);
if (gimp_layer_get_preserve_trans (drawable->drawable_id))
if (gimp_layer_get_lock_alpha (drawable->drawable_id))
{
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), 0);
gtk_widget_set_sensitive (toggle, FALSE);

View File

@ -50,10 +50,10 @@
(gimp-context-set-background '(255 255 255))
(gimp-edit-fill bg-layer BACKGROUND-FILL)
(gimp-edit-clear pattern)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-context-set-foreground '(0 0 0))
(gimp-edit-fill logo-layer FOREGROUND-FILL)
(gimp-layer-set-preserve-trans logo-layer FALSE)
(gimp-layer-set-lock-alpha logo-layer FALSE)
(plug-in-gauss-iir 1 img logo-layer outline-blur-radius TRUE TRUE)
(gimp-drawable-set-visible pattern FALSE)

View File

@ -48,7 +48,7 @@
(gimp-image-add-layer img glow-layer -1)
(gimp-image-add-layer img ruler-layer -1)
; (gimp-layer-set-preserve-trans ruler-layer TRUE)
; (gimp-layer-set-lock-alpha ruler-layer TRUE)
(gimp-context-set-background bg-color)
(gimp-edit-fill bg-layer BACKGROUND-FILL)
(gimp-edit-clear glow-layer)

View File

@ -57,7 +57,7 @@
(gimp-image-add-layer img glow-layer -1)
(gimp-image-add-layer img bullet-layer -1)
; (gimp-layer-set-preserve-trans ruler-layer TRUE)
; (gimp-layer-set-lock-alpha ruler-layer TRUE)
(gimp-context-set-background bg-color)
(gimp-edit-fill bg-layer BACKGROUND-FILL)
(gimp-edit-clear glow-layer)

View File

@ -23,7 +23,7 @@
(script-fu-util-image-resize-from-layer img logo-layer)
(gimp-image-add-layer img bg-layer 1)
(gimp-image-add-layer img glow-layer 1)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-context-set-background '(0 0 0))
(gimp-edit-fill bg-layer BACKGROUND-FILL)
(gimp-edit-clear glow-layer)

View File

@ -17,7 +17,7 @@
(gimp-image-add-layer img shadow-layer 1)
(gimp-image-add-layer img bg-layer 2)
(gimp-context-set-foreground text-color)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-edit-fill logo-layer FOREGROUND-FILL)
(gimp-context-set-background bg-color)
(gimp-edit-fill bg-layer BACKGROUND-FILL)

View File

@ -31,11 +31,11 @@
(gimp-image-add-layer img shadow-layer 1)
(gimp-image-add-layer img highlight-layer 1)
(gimp-context-set-foreground text-color)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-edit-fill logo-layer FOREGROUND-FILL)
(gimp-edit-clear shadow-layer)
(gimp-context-set-foreground (color-highlight text-color))
(gimp-layer-set-preserve-trans highlight-layer TRUE)
(gimp-layer-set-lock-alpha highlight-layer TRUE)
(gimp-edit-fill highlight-layer FOREGROUND-FILL)
(gimp-context-set-background bg-color)
(gimp-drawable-fill bg-layer BACKGROUND-FILL)

View File

@ -93,7 +93,7 @@
; Color and position text
(gimp-context-set-background text-color)
(gimp-layer-set-preserve-trans textl TRUE)
(gimp-layer-set-lock-alpha textl TRUE)
(gimp-edit-fill textl BACKGROUND-FILL)
(gimp-layer-set-offsets textl

View File

@ -123,7 +123,7 @@
(if (> max-blur 0)
(let* ((layer-width (car (gimp-drawable-width upper-copy)))
(layer-height (car (gimp-drawable-height upper-copy))))
(gimp-layer-set-preserve-trans upper-copy FALSE)
(gimp-layer-set-lock-alpha upper-copy FALSE)
(gimp-layer-resize upper-copy
(+ layer-width (* blur 2))
(+ layer-height (* blur 2))
@ -136,7 +136,7 @@
blur
TRUE TRUE))
(set! blur (- max-blur blur))
(gimp-layer-set-preserve-trans lower-copy FALSE)
(gimp-layer-set-lock-alpha lower-copy FALSE)
(set! layer-width (car (gimp-drawable-width
lower-copy)))
(set! layer-height (car (gimp-drawable-height

View File

@ -157,7 +157,7 @@
(gimp-image-undo-disable img)
(gimp-context-set-foreground text-color)
(gimp-layer-set-preserve-trans text-layer TRUE)
(gimp-layer-set-lock-alpha text-layer TRUE)
(gimp-edit-fill text-layer FOREGROUND-FILL)
(apply-blended-logo-effect img text-layer b-size bg-color
blend-mode blend-fg blend-bg

View File

@ -44,24 +44,24 @@
(gimp-edit-fill bg-layer BACKGROUND-FILL)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans blur-layer TRUE)
(gimp-layer-set-lock-alpha blur-layer TRUE)
(gimp-context-set-background '(255 255 255))
(gimp-selection-all img)
(gimp-edit-fill blur-layer BACKGROUND-FILL)
(gimp-edit-clear blur-layer)
(gimp-context-set-background '(191 191 191))
(gimp-selection-none img)
(gimp-layer-set-preserve-trans blur-layer FALSE)
(gimp-layer-set-lock-alpha blur-layer FALSE)
(gimp-selection-layer-alpha logo-layer)
(gimp-edit-fill blur-layer BACKGROUND-FILL)
(plug-in-gauss-rle 1 img blur-layer 5.0 1 1)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-selection-all img)
(plug-in-solid-noise 1 img logo-layer 0 0 23 1 spots-x spots-y)
(gimp-brightness-contrast logo-layer 0 127)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans logo-layer FALSE)
(gimp-layer-set-lock-alpha logo-layer FALSE)
(plug-in-bump-map 1 img logo-layer blur-layer
135 50 10 0 0 0 30 TRUE FALSE 0)
(gimp-layer-set-offsets blur-layer 5 5)

View File

@ -58,7 +58,7 @@
(gimp-image-add-layer img bl-layer -2)
(gimp-drawable-set-name bl-layer bl-layer-name)
(gimp-drawable-set-visible bl-layer TRUE)
(gimp-layer-set-preserve-trans bl-layer TRUE)
(gimp-layer-set-lock-alpha bl-layer TRUE)
(gimp-layer-add-alpha bl-layer)
;--- add an alpha mask for blending and select it
@ -125,7 +125,7 @@
(gimp-selection-layer-alpha bl-layer)
(gimp-selection-sharpen img)
(gimp-selection-grow img corona-width)
(gimp-layer-set-preserve-trans bl-layer FALSE)
(gimp-layer-set-lock-alpha bl-layer FALSE)
(gimp-selection-feather img corona-width)
(gimp-context-set-foreground glow-color)
(gimp-edit-blend bl-layer FG-TRANSPARENT-MODE NORMAL-MODE

View File

@ -56,7 +56,7 @@
(gimp-image-add-channel img mask 0)
(gimp-layer-set-preserve-trans mask-layer TRUE)
(gimp-layer-set-lock-alpha mask-layer TRUE)
(gimp-context-set-background '(255 255 255))
(gimp-edit-fill mask-layer BACKGROUND-FILL)
(gimp-context-set-background '(0 0 0))

View File

@ -39,7 +39,7 @@
(gimp-edit-fill bg-layer BACKGROUND-FILL)
; the actual effect
(gimp-layer-set-preserve-trans logo-layer FALSE)
(gimp-layer-set-lock-alpha logo-layer FALSE)
(plug-in-gauss-rle 1 img logo-layer 2.0 1 1)
(plug-in-spread 1 img logo-layer 5.0 5.0)
(plug-in-ripple 1 img logo-layer 27 2 0 0 0 TRUE TRUE)
@ -93,7 +93,7 @@
(gimp-image-undo-disable img)
(gimp-context-set-foreground chalk-color)
(gimp-layer-set-preserve-trans text-layer TRUE)
(gimp-layer-set-lock-alpha text-layer TRUE)
(gimp-edit-fill text-layer FOREGROUND-FILL)
(apply-chalk-logo-effect img text-layer bg-color)
(gimp-image-undo-enable img)

View File

@ -55,7 +55,7 @@
(script-fu-util-image-resize-from-layer img logo-layer)
(gimp-image-add-layer img bg-layer 1)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-context-set-pattern pattern)
(gimp-context-set-background '(255 255 255))
@ -75,7 +75,7 @@
(gimp-edit-bucket-fill logo-layer 2 NORMAL-MODE 100 255 FALSE 1 1)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans bump-layer FALSE)
(gimp-layer-set-lock-alpha bump-layer FALSE)
(plug-in-spread 1 img bump-layer spread-amount spread-amount)
(gimp-selection-layer-alpha bump-layer)
(plug-in-gauss-rle 1 img bump-layer blur-amount TRUE TRUE)

View File

@ -51,29 +51,29 @@
(gimp-edit-fill bg-layer BACKGROUND-FILL)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans white-layer TRUE)
(gimp-layer-set-lock-alpha white-layer TRUE)
(gimp-context-set-background ol-color)
(gimp-selection-all img)
(gimp-edit-fill white-layer BACKGROUND-FILL)
(gimp-layer-set-preserve-trans white-layer FALSE)
(gimp-layer-set-lock-alpha white-layer FALSE)
(plug-in-spread 1 img white-layer (* 3 ol-width) (* 3 ol-width))
(plug-in-gauss-rle 1 img white-layer (* 2 ol-width) 1 1)
(plug-in-threshold-alpha 1 img white-layer 0)
(gimp-layer-set-preserve-trans white-layer TRUE)
(gimp-layer-set-lock-alpha white-layer TRUE)
(gimp-edit-fill white-layer BACKGROUND-FILL)
(gimp-selection-none img)
(gimp-context-set-background '(0 0 0))
(gimp-layer-set-preserve-trans black-layer TRUE)
(gimp-layer-set-lock-alpha black-layer TRUE)
(gimp-selection-all img)
(gimp-edit-fill black-layer BACKGROUND-FILL)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans black-layer FALSE)
(gimp-layer-set-lock-alpha black-layer FALSE)
(plug-in-gauss-rle 1 img black-layer ol-width 1 1)
(plug-in-threshold-alpha 1 img black-layer 0)
(gimp-context-set-gradient gradient)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-selection-all img)
(gimp-edit-blend logo-layer CUSTOM-MODE NORMAL-MODE
@ -83,7 +83,7 @@
(plug-in-noisify 1 img logo-layer 0 0.20 0.20 0.20 0.20)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans logo-layer FALSE)
(gimp-layer-set-lock-alpha logo-layer FALSE)
(gimp-brightness-contrast logo-layer 0 30)
(plug-in-threshold-alpha 1 img logo-layer 60)
(gimp-image-set-active-layer img logo-layer)

View File

@ -36,7 +36,7 @@
(gimp-image-add-layer img bg-layer 1)
(gimp-image-add-layer img reflect-layer 1)
(gimp-image-add-layer img shadow-layer 1)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-context-set-background bg-color)
(gimp-edit-fill bg-layer BACKGROUND-FILL)

View File

@ -165,7 +165,7 @@
(gimp-layer-set-mode layer1 OVERLAY-MODE)
(plug-in-gauss-rle 1 img text-layer blur TRUE TRUE)
(gimp-layer-set-preserve-trans text-layer TRUE)
(gimp-layer-set-lock-alpha text-layer TRUE)
(gimp-context-set-background '(0 0 0))
(gimp-edit-fill text-layer BACKGROUND-FILL)
(gimp-layer-set-mode text-layer OVERLAY-MODE)

View File

@ -132,7 +132,7 @@
(gimp-context-set-background shadow-color)
(gimp-edit-fill shadow-layer BACKGROUND-FILL)
(gimp-selection-none image)
(gimp-layer-set-preserve-trans shadow-layer FALSE)
(gimp-layer-set-lock-alpha shadow-layer FALSE)
(if (>= shadow-blur 1.0) (plug-in-gauss-rle 1
image
shadow-layer

View File

@ -50,7 +50,7 @@
(gimp-image-undo-disable img)
(gimp-image-resize img width height 0 0)
(gimp-image-add-layer img bg-layer 1)
(gimp-layer-set-preserve-trans text-layer TRUE)
(gimp-layer-set-lock-alpha text-layer TRUE)
(gimp-context-set-background text-color)
(gimp-edit-fill text-layer BACKGROUND-FILL)
@ -62,13 +62,13 @@
(shadow-layer (car (gimp-layer-copy text-layer TRUE))))
(gimp-image-add-layer img highlight-layer 1)
(gimp-layer-set-preserve-trans highlight-layer TRUE)
(gimp-layer-set-lock-alpha highlight-layer TRUE)
(gimp-image-add-layer img side-layer 1)
(gimp-layer-set-preserve-trans side-layer TRUE)
(gimp-layer-set-lock-alpha side-layer TRUE)
(gimp-image-add-layer img shadow-layer 1)
(gimp-layer-set-preserve-trans shadow-layer TRUE)
(gimp-layer-set-lock-alpha shadow-layer TRUE)
(gimp-context-set-background high-color)
(gimp-edit-fill highlight-layer BACKGROUND-FILL)
@ -82,7 +82,7 @@
(gimp-edit-fill shadow-layer BACKGROUND-FILL)
(gimp-layer-translate shadow-layer 5 5)
(gimp-layer-set-preserve-trans shadow-layer FALSE)
(gimp-layer-set-lock-alpha shadow-layer FALSE)
(plug-in-gauss-rle 1 img shadow-layer 5 TRUE TRUE)
(gimp-layer-set-opacity shadow-layer 60)
(gimp-image-lower-layer img shadow-layer)

View File

@ -52,8 +52,8 @@
(gimp-image-add-layer img shadow-layer 1)
(gimp-image-add-layer img bg-layer 2)
(gimp-layer-set-preserve-trans text-layer TRUE)
(gimp-layer-set-preserve-trans shadow-layer TRUE)
(gimp-layer-set-lock-alpha text-layer TRUE)
(gimp-layer-set-lock-alpha shadow-layer TRUE)
(gimp-context-set-background text-color)
(gimp-edit-fill text-layer BACKGROUND-FILL)

View File

@ -27,7 +27,7 @@
(gimp-context-set-background bg-color)
(gimp-edit-fill bg-layer BACKGROUND-FILL)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-context-set-background '(0 0 0))
(gimp-edit-fill logo-layer BACKGROUND-FILL)

View File

@ -43,20 +43,20 @@
(gimp-edit-fill bg-layer BACKGROUND-FILL)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans blur-layer TRUE)
(gimp-layer-set-lock-alpha blur-layer TRUE)
(gimp-context-set-background '(255 255 255))
(gimp-selection-all img)
(gimp-edit-fill blur-layer BACKGROUND-FILL)
(gimp-edit-clear blur-layer)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans blur-layer FALSE)
(gimp-layer-set-lock-alpha blur-layer FALSE)
(gimp-selection-layer-alpha logo-layer)
(gimp-edit-fill blur-layer BACKGROUND-FILL)
(plug-in-gauss-rle 1 img blur-layer bevel-width 1 1)
(gimp-selection-none img)
(gimp-context-set-background '(127 127 127))
(gimp-context-set-foreground '(255 255 255))
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-selection-all img)
(gimp-edit-blend logo-layer FG-BG-RGB-MODE NORMAL-MODE
@ -65,7 +65,7 @@
indentX indentY indentX (- height indentY))
(gimp-selection-none img)
(gimp-layer-set-preserve-trans logo-layer FALSE)
(gimp-layer-set-lock-alpha logo-layer FALSE)
(plug-in-bump-map 1 img logo-layer blur-layer 115 bevel-height 5 0 0 0 15 TRUE FALSE 0)
(gimp-layer-set-offsets blur-layer 5 5)
(gimp-invert blur-layer)

View File

@ -84,7 +84,7 @@
(begin
(gimp-selection-layer-alpha layer)
(gimp-selection-invert img)
(gimp-layer-set-preserve-trans layer FALSE)
(gimp-layer-set-lock-alpha layer FALSE)
(gimp-context-set-foreground padding-color)
(gimp-edit-bucket-fill layer FG-BUCKET-FILL NORMAL-MODE
padding-opacity 0 0 0 0)

View File

@ -128,14 +128,14 @@
(gimp-selection-shrink img (* inc-shrink 3))
(gimp-curves-spline tube-layer 4 6 (neon-spline3))
(gimp-layer-set-preserve-trans tube-layer 1)
(gimp-layer-set-lock-alpha tube-layer 1)
(gimp-selection-layer-alpha tube-layer)
(gimp-selection-invert img)
(gimp-context-set-background glow-color)
(gimp-edit-fill tube-layer BACKGROUND-FILL)
(gimp-selection-none img)
(gimp-layer-set-preserve-trans tube-layer 0)
(gimp-layer-set-lock-alpha tube-layer 0)
(gimp-curves-spline tube-layer 4 8 (neon-spline4))
(gimp-selection-load selection)

View File

@ -144,7 +144,7 @@
(if (>= shadow-blur 1.0)
(begin
(gimp-layer-set-preserve-trans shadow-layer FALSE)
(gimp-layer-set-lock-alpha shadow-layer FALSE)
(gimp-layer-resize shadow-layer
shadow-width
shadow-height

View File

@ -28,7 +28,7 @@
(gimp-image-add-layer img shadow-layer 1)
(gimp-image-add-layer img burst-layer 0)
(gimp-layer-add-mask burst-layer layer-mask)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-context-set-background bg-color)
(gimp-edit-fill bg-layer BACKGROUND-FILL)

View File

@ -69,7 +69,7 @@
(gimp-image-add-layer img glow-layer 1)
(gimp-image-add-layer img shadow-layer 1)
(gimp-image-add-channel img bump-channel 0)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-context-set-background '(0 0 0))
(gimp-edit-fill bg-layer BACKGROUND-FILL)

View File

@ -43,7 +43,7 @@
(gimp-image-add-layer img text-shadow-layer 0)
(gimp-selection-all img)
(gimp-context-set-pattern text-pattern)
(gimp-layer-set-preserve-trans logo-layer TRUE)
(gimp-layer-set-lock-alpha logo-layer TRUE)
(gimp-edit-bucket-fill logo-layer PATTERN-BUCKET-FILL NORMAL-MODE 100 0 FALSE 0 0)
(gimp-selection-none img)
(gimp-edit-clear text-shadow-layer)

View File

@ -116,7 +116,7 @@
; Text layer
(gimp-drawable-set-visible text-layer TRUE)
(gimp-layer-set-preserve-trans text-layer TRUE)
(gimp-layer-set-lock-alpha text-layer TRUE)
(gimp-edit-blend text-layer CUSTOM-MODE NORMAL-MODE
GRADIENT-LINEAR 100 0 REPEAT-NONE gradient-reverse

View File

@ -56,7 +56,7 @@
(- (+ num-frames 2)
remaining-frames) 10)
" (replace)")))
(gimp-layer-set-preserve-trans waves-layer FALSE)
(gimp-layer-set-lock-alpha waves-layer FALSE)
(gimp-image-add-layer image waves-layer -1)
(gimp-drawable-set-name waves-layer layer-name)

View File

@ -108,7 +108,7 @@ typedef enum
PROP_MODE = 7,
PROP_VISIBLE = 8,
PROP_LINKED = 9,
PROP_PRESERVE_TRANSPARENCY = 10,
PROP_LOCK_ALPHA = 10,
PROP_APPLY_MASK = 11,
PROP_EDIT_MASK = 12,
PROP_SHOW_MASK = 13,
@ -287,7 +287,7 @@ typedef struct
gint32 mode;
gint visible;
gint linked;
gint preserve_transparency;
gint lock_alpha;
gint apply_mask;
gint edit_mask;
gint show_mask;
@ -348,7 +348,7 @@ t_prop_table g_prop_table[PROP_TABLE_ENTRIES] = {
{ PROP_MODE, "md", PTYP_INT, 0.0, 0.0, 0.0 } ,
{ PROP_VISIBLE, "iv", PTYP_BOOLEAN, 0.0, 0.0, 0.0 } ,
{ PROP_LINKED, "ln", PTYP_BOOLEAN, 0.0, 0.0, 0.0 } ,
{ PROP_PRESERVE_TRANSPARENCY, "pt", PTYP_BOOLEAN, 0.0, 0.0, 0.0 } ,
{ PROP_LOCK_ALPHA, "pt", PTYP_BOOLEAN, 0.0, 0.0, 0.0 } ,
{ PROP_APPLY_MASK, "aml", PTYP_BOOLEAN, 0.0, 0.0, 0.0 } ,
{ PROP_EDIT_MASK, "eml", PTYP_BOOLEAN, 0.0, 0.0, 0.0 } ,
{ PROP_SHOW_MASK, "sml", PTYP_BOOLEAN, 0.0, 0.0, 0.0 } ,
@ -1435,8 +1435,8 @@ p_write_layer_prp(const gchar *dirname,
l_param.int_val1 = gimp_drawable_get_linked (layer_id);
p_write_prop (fp, PROP_LINKED, &l_param, wr_all_prp);
l_param.int_val1 = gimp_layer_get_preserve_trans (layer_id);
p_write_prop (fp, PROP_PRESERVE_TRANSPARENCY, &l_param, wr_all_prp);
l_param.int_val1 = gimp_layer_get_lock_alpha (layer_id);
p_write_prop (fp, PROP_LOCK_ALPHA, &l_param, wr_all_prp);
l_param.int_val1 = gimp_layer_get_apply_mask(layer_id);
p_write_prop (fp, PROP_APPLY_MASK, &l_param, wr_all_prp);
@ -1922,7 +1922,7 @@ t_layer_props * p_new_layer_prop(void)
l_new_prop->mode = g_prop_table[p_get_property_index(PROP_MODE)].default_val1;
l_new_prop->visible = p_invert(g_prop_table[p_get_property_index(PROP_VISIBLE)].default_val1);
l_new_prop->linked = g_prop_table[p_get_property_index(PROP_LINKED)].default_val1;
l_new_prop->preserve_transparency = g_prop_table[p_get_property_index(PROP_PRESERVE_TRANSPARENCY)].default_val1;
l_new_prop->lock_alpha = g_prop_table[p_get_property_index(PROP_LOCK_ALPHA)].default_val1;
l_new_prop->apply_mask = g_prop_table[p_get_property_index(PROP_APPLY_MASK)].default_val1;
l_new_prop->edit_mask = g_prop_table[p_get_property_index(PROP_EDIT_MASK)].default_val1;
l_new_prop->show_mask = g_prop_table[p_get_property_index(PROP_SHOW_MASK)].default_val1;
@ -2664,8 +2664,8 @@ gint p_scann_layer_prop(gchar *scan_ptr,
case PROP_LINKED:
l_new_prop->linked = l_param.int_val1;
break;
case PROP_PRESERVE_TRANSPARENCY:
l_new_prop->preserve_transparency = l_param.int_val1;
case PROP_LOCK_ALPHA:
l_new_prop->lock_alpha = l_param.int_val1;
break;
case PROP_APPLY_MASK:
l_new_prop->apply_mask = l_param.int_val1;
@ -3458,7 +3458,7 @@ load_xjt_image (const gchar *filename)
gimp_layer_set_offsets(l_layer_id, l_layer_prp_ptr->offx, l_layer_prp_ptr->offy);
gimp_drawable_set_visible (l_layer_id, l_layer_prp_ptr->visible);
gimp_drawable_set_linked (l_layer_id, l_layer_prp_ptr->linked);
gimp_layer_set_preserve_trans (l_layer_id, l_layer_prp_ptr->preserve_transparency);
gimp_layer_set_lock_alpha (l_layer_id, l_layer_prp_ptr->lock_alpha);
if (l_layer_prp_ptr->tattoo >= 0)
{
gimp_drawable_set_tattoo (l_layer_id, l_layer_prp_ptr->tattoo);

View File

@ -570,7 +570,7 @@ CODE
);
}
&layer_accessors('preserve_trans', 'boolean', 'preserve transperancy', 1, 1);
&layer_accessors('lock_alpha', 'boolean', 'lock alpha channel', 1, 1);
&layer_accessors('apply_mask', 'boolean', 'apply mask', 0, 0,
[ <<'CODE1', <<'CODE2' ]);