mirror of https://github.com/GNOME/gimp.git
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:
parent
da0adc4f65
commit
20b4769cf5
65
ChangeLog
65
ChangeLog
|
@ -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.
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
||||
|
|
|
@ -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 },
|
||||
|
|
|
@ -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" >*/
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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++)
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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__ */
|
||||
|
|
|
@ -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));
|
||||
|
|
|
@ -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));
|
||||
|
|
|
@ -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));
|
||||
|
|
|
@ -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 *
|
||||
|
|
|
@ -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));
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -430,7 +430,7 @@
|
|||
</menu>
|
||||
<menuitem action="drawable-visible" />
|
||||
<menuitem action="drawable-linked" />
|
||||
<menuitem action="layers-preserve-transparency" />
|
||||
<menuitem action="layers-lock-alpha" />
|
||||
</menu>
|
||||
|
||||
-->
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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];
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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");
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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) &&
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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))
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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' ]);
|
||||
|
|
Loading…
Reference in New Issue