removed the "Layer" typedef.

2001-01-29  Michael Natterer  <mitch@gimp.org>

	* app/apptypes.h: removed the "Layer" typedef.

	* app/layer.[ch]: removed the defines of the old function names.

	Don't implement methods of the parent class (get_name, get_tattoo, ...)
	but define them as macros. They will go to a separate "pdb_glue.h"
	header because they are used only by the PDB to simplify code
	generation (no application file should say gimp_layer_get_tattoo()
	but always gimp_drawable_get_tatoo()).

	* app/channel.h
	* app/channel_ops.c
	* app/channels_dialog.c
	* app/commands.c
	* app/convert.c
	* app/disp_callbacks.c
	* app/floating_sel.[ch]
	* app/gdisplay.c
	* app/gimage.c
	* app/gimage_mask.c
	* app/gimage_mask.h
	* app/gimpdnd.c
	* app/gimpdrawable.h
	* app/gimpimage.[ch]
	* app/gimplayermask.h
	* app/global_edit.c
	* app/image_new.c
	* app/layer_select.c
	* app/layers_dialog.c
	* app/resize.c
	* app/undo.c
	* app/xcf.[ch]
	* app/pdb/drawable_cmds.c
	* app/pdb/floating_sel_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/tools/bucket_fill.c
	* app/tools/by_color_select.c
	* app/tools/clone.c
	* app/tools/crop.c
	* app/tools/edit_selection.c
	* app/tools/ink.c
	* app/tools/move.c
	* app/tools/paint_core.c
	* app/tools/rect_select.c
	* app/tools/text_tool.c
	* app/tools/transform_core.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/floating_sel.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb: changed accordingly, cleanup.
This commit is contained in:
Michael Natterer 2001-01-28 23:25:25 +00:00 committed by Michael Natterer
parent 8ddebdf79a
commit a2ae989ff3
113 changed files with 3157 additions and 3274 deletions

View File

@ -1,3 +1,57 @@
2001-01-29 Michael Natterer <mitch@gimp.org>
* app/apptypes.h: removed the "Layer" typedef.
* app/layer.[ch]: removed the defines of the old function names.
Don't implement methods of the parent class (get_name, get_tattoo, ...)
but define them as macros. They will go to a separate "pdb_glue.h"
header because they are used only by the PDB to simplify code
generation (no application file should say gimp_layer_get_tattoo()
but always gimp_drawable_get_tatoo()).
* app/channel.h
* app/channel_ops.c
* app/channels_dialog.c
* app/commands.c
* app/convert.c
* app/disp_callbacks.c
* app/floating_sel.[ch]
* app/gdisplay.c
* app/gimage.c
* app/gimage_mask.c
* app/gimage_mask.h
* app/gimpdnd.c
* app/gimpdrawable.h
* app/gimpimage.[ch]
* app/gimplayermask.h
* app/global_edit.c
* app/image_new.c
* app/layer_select.c
* app/layers_dialog.c
* app/resize.c
* app/undo.c
* app/xcf.[ch]
* app/pdb/drawable_cmds.c
* app/pdb/floating_sel_cmds.c
* app/pdb/image_cmds.c
* app/pdb/layer_cmds.c
* app/tools/bucket_fill.c
* app/tools/by_color_select.c
* app/tools/clone.c
* app/tools/crop.c
* app/tools/edit_selection.c
* app/tools/ink.c
* app/tools/move.c
* app/tools/paint_core.c
* app/tools/rect_select.c
* app/tools/text_tool.c
* app/tools/transform_core.c
* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/floating_sel.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/layer.pdb: changed accordingly, cleanup.
2001-01-28 Michael Natterer <mitch@gimp.org>
* app/Makefile.am

View File

@ -917,9 +917,9 @@ void
layers_previous_cmd_callback (GtkWidget *widget,
gpointer client_data)
{
GDisplay *gdisp;
Layer *new_layer;
gint current_layer;
GDisplay *gdisp;
GimpLayer *new_layer;
gint current_layer;
return_if_no_display (gdisp);
@ -940,9 +940,9 @@ void
layers_next_cmd_callback (GtkWidget *widget,
gpointer client_data)
{
GDisplay *gdisp;
Layer *new_layer;
gint current_layer;
GDisplay *gdisp;
GimpLayer *new_layer;
gint current_layer;
return_if_no_display (gdisp);
@ -1053,7 +1053,7 @@ layers_add_alpha_channel_cmd_callback (GtkWidget *widget,
GDisplay *gdisp;
return_if_no_display (gdisp);
layer_add_alpha ( gdisp->gimage->active_layer);
gimp_layer_add_alpha ( gdisp->gimage->active_layer);
gdisplays_flush ();
}
@ -1075,7 +1075,7 @@ layers_resize_to_image_cmd_callback (GtkWidget *widget,
GDisplay *gdisp;
return_if_no_display (gdisp);
layer_resize_to_image (gdisp->gimage->active_layer);
gimp_layer_resize_to_image (gdisp->gimage->active_layer);
gdisplays_flush ();
}

View File

@ -49,8 +49,6 @@ typedef GimpChannel Channel; /* convenience */
typedef struct _GimpLayer GimpLayer;
typedef struct _GimpLayerMask GimpLayerMask;
typedef GimpLayer Layer; /* convenience */
typedef struct _GimpImage GimpImage;
typedef GimpImage GImage;

View File

@ -23,8 +23,6 @@
#include "gimpdrawable.h"
/* OPERATIONS */
/* Half way point where a region is no longer visible in a selection */
#define HALF_WAY 127
@ -71,18 +69,19 @@ typedef struct _ChannelUndo ChannelUndo;
struct _ChannelUndo
{
Channel *channel; /* the actual channel */
gint prev_position; /* former position in list */
Channel *prev_channel; /* previous active channel */
Channel *channel; /* the actual channel */
gint prev_position; /* former position in list */
Channel *prev_channel; /* previous active channel */
};
/* Special undo type */
typedef struct _MaskUndo MaskUndo;
struct _MaskUndo
{
TileManager *tiles; /* the actual mask */
gint x, y; /* offsets */
TileManager *tiles; /* the actual mask */
gint x, y; /* offsets */
};
@ -221,7 +220,4 @@ void channel_layer_mask (Channel *mask,
void channel_invalidate_bounds (Channel *channel);
#define gimp_drawable_channel GIMP_IS_CHANNEL
#endif /* __CHANNEL_H__ */

View File

@ -567,13 +567,13 @@ duplicate (GimpImage *gimage)
{
PixelRegion srcPR, destPR;
GimpImage *new_gimage;
Layer *layer, *new_layer;
Layer *floating_layer;
GimpLayer *layer, *new_layer;
GimpLayer *floating_layer;
Channel *channel, *new_channel;
GSList *list;
GList *glist;
Guide *guide = NULL;
Layer *active_layer = NULL;
GimpLayer *active_layer = NULL;
Channel *active_channel = NULL;
GimpDrawable *new_floating_sel_drawable = NULL;
GimpDrawable *floating_sel_drawable = NULL;
@ -608,16 +608,16 @@ duplicate (GimpImage *gimage)
layer = NULL;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
new_layer = layer_copy (layer, FALSE);
new_layer = gimp_layer_copy (layer, FALSE);
gimp_drawable_set_gimage(GIMP_DRAWABLE(new_layer), new_gimage);
gimp_drawable_set_gimage (GIMP_DRAWABLE (new_layer), new_gimage);
/* Make sure the copied layer doesn't say: "<old layer> copy" */
layer_set_name(GIMP_LAYER(new_layer),
layer_get_name(GIMP_LAYER(layer)));
gimp_object_set_name (GIMP_OBJECT (new_layer),
gimp_object_get_name (GIMP_OBJECT (layer)));
/* Make sure if the layer has a layer mask, it's name isn't screwed up */
if (new_layer->mask)

View File

@ -82,7 +82,7 @@ struct _ChannelsDialog
ChannelType components[3];
Channel *active_channel;
Layer *floating_sel;
GimpLayer *floating_sel;
GSList *channel_widgets;
};

View File

@ -917,9 +917,9 @@ void
layers_previous_cmd_callback (GtkWidget *widget,
gpointer client_data)
{
GDisplay *gdisp;
Layer *new_layer;
gint current_layer;
GDisplay *gdisp;
GimpLayer *new_layer;
gint current_layer;
return_if_no_display (gdisp);
@ -940,9 +940,9 @@ void
layers_next_cmd_callback (GtkWidget *widget,
gpointer client_data)
{
GDisplay *gdisp;
Layer *new_layer;
gint current_layer;
GDisplay *gdisp;
GimpLayer *new_layer;
gint current_layer;
return_if_no_display (gdisp);
@ -1053,7 +1053,7 @@ layers_add_alpha_channel_cmd_callback (GtkWidget *widget,
GDisplay *gdisp;
return_if_no_display (gdisp);
layer_add_alpha ( gdisp->gimage->active_layer);
gimp_layer_add_alpha ( gdisp->gimage->active_layer);
gdisplays_flush ();
}
@ -1075,7 +1075,7 @@ layers_resize_to_image_cmd_callback (GtkWidget *widget,
GDisplay *gdisp;
return_if_no_display (gdisp);
layer_resize_to_image (gdisp->gimage->active_layer);
gimp_layer_resize_to_image (gdisp->gimage->active_layer);
gdisplays_flush ();
}

View File

@ -329,7 +329,7 @@ typedef struct _Color Color;
typedef struct _QuantizeObj QuantizeObj;
typedef void (* Pass1_Func) (QuantizeObj *);
typedef void (* Pass2i_Func) (QuantizeObj *);
typedef void (* Pass2_Func) (QuantizeObj *, Layer *, TileManager *);
typedef void (* Pass2_Func) (QuantizeObj *, GimpLayer *, TileManager *);
typedef void (* Cleanup_Func) (QuantizeObj *);
typedef unsigned long ColorFreq;
typedef ColorFreq *CFHistogram;
@ -416,13 +416,13 @@ static void indexed_cancel_callback (GtkWidget *, gpointer);
static void indexed_custom_palette_button_callback (GtkWidget *widget, gpointer data);
static void indexed_palette_select_destroy_callback (GtkWidget *widget, gpointer data);
static void rgb_converter (Layer *, TileManager *, int);
static void grayscale_converter (Layer *, TileManager *, int);
static void rgb_converter (GimpLayer *, TileManager *, int);
static void grayscale_converter (GimpLayer *, TileManager *, int);
static void zero_histogram_gray (CFHistogram);
static void zero_histogram_rgb (CFHistogram);
static void generate_histogram_gray (CFHistogram, Layer *, int alpha_dither);
static void generate_histogram_rgb (CFHistogram, Layer *, int col_limit, int alpha_dither);
static void generate_histogram_gray (CFHistogram, GimpLayer *, int alpha_dither);
static void generate_histogram_rgb (CFHistogram, GimpLayer *, int col_limit, int alpha_dither);
static QuantizeObj* initialize_median_cut (int, int, ConvertDitherType,
ConvertPaletteType, int);
@ -552,14 +552,9 @@ convert_to_indexed (GimpImage *gimage)
if (dialog->num_cols == 256)
{
if ((!gimp_image_is_empty (gimage))
&&
(
gimage->layers->next
||
layer_has_alpha ((Layer *) gimage->layers->data)
)
)
if ((! gimp_image_is_empty (gimage)) &&
(gimage->layers->next ||
gimp_layer_has_alpha ((GimpLayer *) gimage->layers->data)))
{
dialog->num_cols = 255;
}
@ -756,14 +751,9 @@ convert_to_indexed (GimpImage *gimage)
/* if the image isn't non-alpha/layered, set the default number of
colours to one less than max, to leave room for a transparent index
for transparent/animated GIFs */
if ((!gimp_image_is_empty (gimage))
&&
(
gimage->layers->next
||
layer_has_alpha ((Layer *) gimage->layers->data)
)
)
if ((! gimp_image_is_empty (gimage)) &&
(gimage->layers->next ||
gimp_layer_has_alpha ((GimpLayer *) gimage->layers->data)))
{
frame = gtk_frame_new (_("[ Warning ]"));
gtk_box_pack_start (GTK_BOX (main_vbox), frame, FALSE, FALSE, 0);
@ -1146,7 +1136,7 @@ make_remap_table (const unsigned char old_palette[],
}
static void
remap_indexed_layer (Layer *layer,
remap_indexed_layer (GimpLayer *layer,
unsigned char *remap_table,
int num_entries)
{
@ -1157,7 +1147,7 @@ remap_indexed_layer (Layer *layer,
unsigned char* src;
unsigned char* dest;
has_alpha = layer_has_alpha (layer) ? 1 : 0;
has_alpha = gimp_layer_has_alpha (layer) ? 1 : 0;
pixel_region_init (&srcPR,
GIMP_DRAWABLE(layer)->tiles, 0, 0,
GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height,
@ -1201,8 +1191,8 @@ convert_image (GImage *gimage,
ConvertPaletteType palette_type)
{
QuantizeObj *quantobj;
Layer *layer;
Layer *floating_layer;
GimpLayer *layer;
GimpLayer *floating_layer;
GimpImageBaseType old_type;
GSList *list;
GimpImageType new_layer_type;
@ -1262,7 +1252,7 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
if (old_type == GRAY)
generate_histogram_gray (quantobj->histogram, layer, alpha_dither);
@ -1328,10 +1318,10 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
switch (new_type)
{
case RGB:
@ -1412,7 +1402,7 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
remap_indexed_layer (layer, remap_table, num_entries);
@ -1468,7 +1458,7 @@ convert_image (GImage *gimage,
}
static void
rgb_converter (Layer *layer,
rgb_converter (GimpLayer *layer,
TileManager *new_tiles,
int old_type)
{
@ -1481,7 +1471,7 @@ rgb_converter (Layer *layer,
unsigned char *cmap;
void *pr;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
@ -1542,7 +1532,7 @@ rgb_converter (Layer *layer,
}
static void
grayscale_converter (Layer *layer,
grayscale_converter (GimpLayer *layer,
TileManager *new_tiles,
int old_type)
{
@ -1555,7 +1545,7 @@ grayscale_converter (Layer *layer,
unsigned char *cmap;
void *pr;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
@ -1638,7 +1628,7 @@ zero_histogram_rgb (CFHistogram histogram)
static void
generate_histogram_gray (CFHistogram histogram,
Layer *layer,
GimpLayer *layer,
int alpha_dither)
{
PixelRegion srcPR;
@ -1647,7 +1637,7 @@ generate_histogram_gray (CFHistogram histogram,
void *pr;
gboolean has_alpha;
has_alpha = (gboolean) layer_has_alpha(layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
for (pr = pixel_regions_register (1, &srcPR);
@ -1667,7 +1657,7 @@ generate_histogram_gray (CFHistogram histogram,
static void
generate_histogram_rgb (CFHistogram histogram,
Layer *layer,
GimpLayer *layer,
int col_limit,
int alpha_dither)
{
@ -1681,7 +1671,7 @@ generate_histogram_rgb (CFHistogram histogram,
int row, col, coledge;
int offsetx, offsety;
has_alpha = (gboolean) layer_has_alpha(layer);
has_alpha = gimp_layer_has_alpha (layer);
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
@ -2991,7 +2981,7 @@ custompal_pass1 (QuantizeObj *quantobj)
static void
median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3008,7 +2998,7 @@ median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3052,7 +3042,7 @@ median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
static void
median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3071,7 +3061,7 @@ median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3129,7 +3119,7 @@ median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
static void
median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3156,7 +3146,7 @@ median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE(layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3204,7 +3194,7 @@ median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
static void
median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3233,7 +3223,7 @@ median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE (layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3310,7 +3300,7 @@ median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
static void
median_cut_pass2_nodestruct_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3332,7 +3322,7 @@ median_cut_pass2_nodestruct_dither_rgb (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3485,7 +3475,7 @@ init_error_limit (const int error_freedom)
static void
median_cut_pass2_fs_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3516,7 +3506,7 @@ median_cut_pass2_fs_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
src_bytes = GIMP_DRAWABLE(layer)->bytes;
@ -3681,7 +3671,7 @@ median_cut_pass2_gray_init (QuantizeObj *quantobj)
static void
median_cut_pass2_fs_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3726,7 +3716,7 @@ median_cut_pass2_fs_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE(layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
src_bytes = GIMP_DRAWABLE(layer)->bytes;

View File

@ -196,7 +196,7 @@ crop_buffer (TileManager *tiles,
}
TileManager *
edit_cut (GImage *gimage,
edit_cut (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *cut;
@ -250,7 +250,7 @@ edit_cut (GImage *gimage,
}
TileManager *
edit_copy (GImage *gimage,
edit_copy (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *copy;
@ -298,31 +298,31 @@ edit_copy (GImage *gimage,
}
GimpLayer *
edit_paste (GImage *gimage,
edit_paste (GimpImage *gimage,
GimpDrawable *drawable,
TileManager *paste,
gboolean paste_into)
{
Layer *layer;
gint x1, y1, x2, y2;
gint cx, cy;
GimpLayer *layer;
gint x1, y1, x2, y2;
gint cx, cy;
/* Make a new layer: iff drawable == NULL,
* user is pasting into an empty display.
*/
if (drawable != NULL)
layer = layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
else
layer = layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{
@ -374,12 +374,12 @@ edit_paste (GImage *gimage,
}
gboolean
edit_paste_as_new (GImage *invoke,
edit_paste_as_new (GimpImage *invoke,
TileManager *paste)
{
GImage *gimage;
Layer *layer;
GDisplay *gdisp;
GimpImage *gimage;
GimpLayer *layer;
GDisplay *gdisp;
if (!global_buf)
return FALSE;
@ -392,11 +392,11 @@ edit_paste_as_new (GImage *invoke,
gimp_image_set_resolution (gimage, invoke->xresolution, invoke->yresolution);
gimp_image_set_unit (gimage, invoke->unit);
layer = layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{
@ -416,7 +416,7 @@ edit_paste_as_new (GImage *invoke,
}
gboolean
edit_clear (GImage *gimage,
edit_clear (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *buf_tiles;
@ -455,7 +455,7 @@ edit_clear (GImage *gimage,
}
gboolean
edit_fill (GImage *gimage,
edit_fill (GimpImage *gimage,
GimpDrawable *drawable,
GimpFillType fill_type)
{

View File

@ -23,8 +23,6 @@
#include "gimpdrawable.h"
/* OPERATIONS */
/* Half way point where a region is no longer visible in a selection */
#define HALF_WAY 127
@ -71,18 +69,19 @@ typedef struct _ChannelUndo ChannelUndo;
struct _ChannelUndo
{
Channel *channel; /* the actual channel */
gint prev_position; /* former position in list */
Channel *prev_channel; /* previous active channel */
Channel *channel; /* the actual channel */
gint prev_position; /* former position in list */
Channel *prev_channel; /* previous active channel */
};
/* Special undo type */
typedef struct _MaskUndo MaskUndo;
struct _MaskUndo
{
TileManager *tiles; /* the actual mask */
gint x, y; /* offsets */
TileManager *tiles; /* the actual mask */
gint x, y; /* offsets */
};
@ -221,7 +220,4 @@ void channel_layer_mask (Channel *mask,
void channel_invalidate_bounds (Channel *channel);
#define gimp_drawable_channel GIMP_IS_CHANNEL
#endif /* __CHANNEL_H__ */

View File

@ -23,8 +23,6 @@
#include "gimpdrawable.h"
/* OPERATIONS */
/* Half way point where a region is no longer visible in a selection */
#define HALF_WAY 127
@ -71,18 +69,19 @@ typedef struct _ChannelUndo ChannelUndo;
struct _ChannelUndo
{
Channel *channel; /* the actual channel */
gint prev_position; /* former position in list */
Channel *prev_channel; /* previous active channel */
Channel *channel; /* the actual channel */
gint prev_position; /* former position in list */
Channel *prev_channel; /* previous active channel */
};
/* Special undo type */
typedef struct _MaskUndo MaskUndo;
struct _MaskUndo
{
TileManager *tiles; /* the actual mask */
gint x, y; /* offsets */
TileManager *tiles; /* the actual mask */
gint x, y; /* offsets */
};
@ -221,7 +220,4 @@ void channel_layer_mask (Channel *mask,
void channel_invalidate_bounds (Channel *channel);
#define gimp_drawable_channel GIMP_IS_CHANNEL
#endif /* __CHANNEL_H__ */

View File

@ -567,13 +567,13 @@ duplicate (GimpImage *gimage)
{
PixelRegion srcPR, destPR;
GimpImage *new_gimage;
Layer *layer, *new_layer;
Layer *floating_layer;
GimpLayer *layer, *new_layer;
GimpLayer *floating_layer;
Channel *channel, *new_channel;
GSList *list;
GList *glist;
Guide *guide = NULL;
Layer *active_layer = NULL;
GimpLayer *active_layer = NULL;
Channel *active_channel = NULL;
GimpDrawable *new_floating_sel_drawable = NULL;
GimpDrawable *floating_sel_drawable = NULL;
@ -608,16 +608,16 @@ duplicate (GimpImage *gimage)
layer = NULL;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
new_layer = layer_copy (layer, FALSE);
new_layer = gimp_layer_copy (layer, FALSE);
gimp_drawable_set_gimage(GIMP_DRAWABLE(new_layer), new_gimage);
gimp_drawable_set_gimage (GIMP_DRAWABLE (new_layer), new_gimage);
/* Make sure the copied layer doesn't say: "<old layer> copy" */
layer_set_name(GIMP_LAYER(new_layer),
layer_get_name(GIMP_LAYER(layer)));
gimp_object_set_name (GIMP_OBJECT (new_layer),
gimp_object_get_name (GIMP_OBJECT (layer)));
/* Make sure if the layer has a layer mask, it's name isn't screwed up */
if (new_layer->mask)

View File

@ -23,6 +23,12 @@
#include "gimpobject.h"
/* PDB stuff */
#define gimp_drawable_layer GIMP_IS_LAYER
#define gimp_drawable_layer_mask GIMP_IS_LAYER_MASK
#define gimp_drawable_channel GIMP_IS_CHANNEL
#define GIMP_TYPE_DRAWABLE (gimp_drawable_get_type ())
#define GIMP_DRAWABLE(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE, GimpDrawable))
#define GIMP_IS_DRAWABLE(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE))

View File

@ -196,7 +196,7 @@ crop_buffer (TileManager *tiles,
}
TileManager *
edit_cut (GImage *gimage,
edit_cut (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *cut;
@ -250,7 +250,7 @@ edit_cut (GImage *gimage,
}
TileManager *
edit_copy (GImage *gimage,
edit_copy (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *copy;
@ -298,31 +298,31 @@ edit_copy (GImage *gimage,
}
GimpLayer *
edit_paste (GImage *gimage,
edit_paste (GimpImage *gimage,
GimpDrawable *drawable,
TileManager *paste,
gboolean paste_into)
{
Layer *layer;
gint x1, y1, x2, y2;
gint cx, cy;
GimpLayer *layer;
gint x1, y1, x2, y2;
gint cx, cy;
/* Make a new layer: iff drawable == NULL,
* user is pasting into an empty display.
*/
if (drawable != NULL)
layer = layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
else
layer = layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{
@ -374,12 +374,12 @@ edit_paste (GImage *gimage,
}
gboolean
edit_paste_as_new (GImage *invoke,
edit_paste_as_new (GimpImage *invoke,
TileManager *paste)
{
GImage *gimage;
Layer *layer;
GDisplay *gdisp;
GimpImage *gimage;
GimpLayer *layer;
GDisplay *gdisp;
if (!global_buf)
return FALSE;
@ -392,11 +392,11 @@ edit_paste_as_new (GImage *invoke,
gimp_image_set_resolution (gimage, invoke->xresolution, invoke->yresolution);
gimp_image_set_unit (gimage, invoke->unit);
layer = layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{
@ -416,7 +416,7 @@ edit_paste_as_new (GImage *invoke,
}
gboolean
edit_clear (GImage *gimage,
edit_clear (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *buf_tiles;
@ -455,7 +455,7 @@ edit_clear (GImage *gimage,
}
gboolean
edit_fill (GImage *gimage,
edit_fill (GimpImage *gimage,
GimpDrawable *drawable,
GimpFillType fill_type)
{

View File

@ -329,7 +329,7 @@ typedef struct _Color Color;
typedef struct _QuantizeObj QuantizeObj;
typedef void (* Pass1_Func) (QuantizeObj *);
typedef void (* Pass2i_Func) (QuantizeObj *);
typedef void (* Pass2_Func) (QuantizeObj *, Layer *, TileManager *);
typedef void (* Pass2_Func) (QuantizeObj *, GimpLayer *, TileManager *);
typedef void (* Cleanup_Func) (QuantizeObj *);
typedef unsigned long ColorFreq;
typedef ColorFreq *CFHistogram;
@ -416,13 +416,13 @@ static void indexed_cancel_callback (GtkWidget *, gpointer);
static void indexed_custom_palette_button_callback (GtkWidget *widget, gpointer data);
static void indexed_palette_select_destroy_callback (GtkWidget *widget, gpointer data);
static void rgb_converter (Layer *, TileManager *, int);
static void grayscale_converter (Layer *, TileManager *, int);
static void rgb_converter (GimpLayer *, TileManager *, int);
static void grayscale_converter (GimpLayer *, TileManager *, int);
static void zero_histogram_gray (CFHistogram);
static void zero_histogram_rgb (CFHistogram);
static void generate_histogram_gray (CFHistogram, Layer *, int alpha_dither);
static void generate_histogram_rgb (CFHistogram, Layer *, int col_limit, int alpha_dither);
static void generate_histogram_gray (CFHistogram, GimpLayer *, int alpha_dither);
static void generate_histogram_rgb (CFHistogram, GimpLayer *, int col_limit, int alpha_dither);
static QuantizeObj* initialize_median_cut (int, int, ConvertDitherType,
ConvertPaletteType, int);
@ -552,14 +552,9 @@ convert_to_indexed (GimpImage *gimage)
if (dialog->num_cols == 256)
{
if ((!gimp_image_is_empty (gimage))
&&
(
gimage->layers->next
||
layer_has_alpha ((Layer *) gimage->layers->data)
)
)
if ((! gimp_image_is_empty (gimage)) &&
(gimage->layers->next ||
gimp_layer_has_alpha ((GimpLayer *) gimage->layers->data)))
{
dialog->num_cols = 255;
}
@ -756,14 +751,9 @@ convert_to_indexed (GimpImage *gimage)
/* if the image isn't non-alpha/layered, set the default number of
colours to one less than max, to leave room for a transparent index
for transparent/animated GIFs */
if ((!gimp_image_is_empty (gimage))
&&
(
gimage->layers->next
||
layer_has_alpha ((Layer *) gimage->layers->data)
)
)
if ((! gimp_image_is_empty (gimage)) &&
(gimage->layers->next ||
gimp_layer_has_alpha ((GimpLayer *) gimage->layers->data)))
{
frame = gtk_frame_new (_("[ Warning ]"));
gtk_box_pack_start (GTK_BOX (main_vbox), frame, FALSE, FALSE, 0);
@ -1146,7 +1136,7 @@ make_remap_table (const unsigned char old_palette[],
}
static void
remap_indexed_layer (Layer *layer,
remap_indexed_layer (GimpLayer *layer,
unsigned char *remap_table,
int num_entries)
{
@ -1157,7 +1147,7 @@ remap_indexed_layer (Layer *layer,
unsigned char* src;
unsigned char* dest;
has_alpha = layer_has_alpha (layer) ? 1 : 0;
has_alpha = gimp_layer_has_alpha (layer) ? 1 : 0;
pixel_region_init (&srcPR,
GIMP_DRAWABLE(layer)->tiles, 0, 0,
GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height,
@ -1201,8 +1191,8 @@ convert_image (GImage *gimage,
ConvertPaletteType palette_type)
{
QuantizeObj *quantobj;
Layer *layer;
Layer *floating_layer;
GimpLayer *layer;
GimpLayer *floating_layer;
GimpImageBaseType old_type;
GSList *list;
GimpImageType new_layer_type;
@ -1262,7 +1252,7 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
if (old_type == GRAY)
generate_histogram_gray (quantobj->histogram, layer, alpha_dither);
@ -1328,10 +1318,10 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
switch (new_type)
{
case RGB:
@ -1412,7 +1402,7 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
remap_indexed_layer (layer, remap_table, num_entries);
@ -1468,7 +1458,7 @@ convert_image (GImage *gimage,
}
static void
rgb_converter (Layer *layer,
rgb_converter (GimpLayer *layer,
TileManager *new_tiles,
int old_type)
{
@ -1481,7 +1471,7 @@ rgb_converter (Layer *layer,
unsigned char *cmap;
void *pr;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
@ -1542,7 +1532,7 @@ rgb_converter (Layer *layer,
}
static void
grayscale_converter (Layer *layer,
grayscale_converter (GimpLayer *layer,
TileManager *new_tiles,
int old_type)
{
@ -1555,7 +1545,7 @@ grayscale_converter (Layer *layer,
unsigned char *cmap;
void *pr;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
@ -1638,7 +1628,7 @@ zero_histogram_rgb (CFHistogram histogram)
static void
generate_histogram_gray (CFHistogram histogram,
Layer *layer,
GimpLayer *layer,
int alpha_dither)
{
PixelRegion srcPR;
@ -1647,7 +1637,7 @@ generate_histogram_gray (CFHistogram histogram,
void *pr;
gboolean has_alpha;
has_alpha = (gboolean) layer_has_alpha(layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
for (pr = pixel_regions_register (1, &srcPR);
@ -1667,7 +1657,7 @@ generate_histogram_gray (CFHistogram histogram,
static void
generate_histogram_rgb (CFHistogram histogram,
Layer *layer,
GimpLayer *layer,
int col_limit,
int alpha_dither)
{
@ -1681,7 +1671,7 @@ generate_histogram_rgb (CFHistogram histogram,
int row, col, coledge;
int offsetx, offsety;
has_alpha = (gboolean) layer_has_alpha(layer);
has_alpha = gimp_layer_has_alpha (layer);
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
@ -2991,7 +2981,7 @@ custompal_pass1 (QuantizeObj *quantobj)
static void
median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3008,7 +2998,7 @@ median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3052,7 +3042,7 @@ median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
static void
median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3071,7 +3061,7 @@ median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3129,7 +3119,7 @@ median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
static void
median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3156,7 +3146,7 @@ median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE(layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3204,7 +3194,7 @@ median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
static void
median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3233,7 +3223,7 @@ median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE (layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3310,7 +3300,7 @@ median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
static void
median_cut_pass2_nodestruct_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3332,7 +3322,7 @@ median_cut_pass2_nodestruct_dither_rgb (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3485,7 +3475,7 @@ init_error_limit (const int error_freedom)
static void
median_cut_pass2_fs_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3516,7 +3506,7 @@ median_cut_pass2_fs_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
src_bytes = GIMP_DRAWABLE(layer)->bytes;
@ -3681,7 +3671,7 @@ median_cut_pass2_gray_init (QuantizeObj *quantobj)
static void
median_cut_pass2_fs_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3726,7 +3716,7 @@ median_cut_pass2_fs_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE(layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
src_bytes = GIMP_DRAWABLE(layer)->bytes;

View File

@ -567,13 +567,13 @@ duplicate (GimpImage *gimage)
{
PixelRegion srcPR, destPR;
GimpImage *new_gimage;
Layer *layer, *new_layer;
Layer *floating_layer;
GimpLayer *layer, *new_layer;
GimpLayer *floating_layer;
Channel *channel, *new_channel;
GSList *list;
GList *glist;
Guide *guide = NULL;
Layer *active_layer = NULL;
GimpLayer *active_layer = NULL;
Channel *active_channel = NULL;
GimpDrawable *new_floating_sel_drawable = NULL;
GimpDrawable *floating_sel_drawable = NULL;
@ -608,16 +608,16 @@ duplicate (GimpImage *gimage)
layer = NULL;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
new_layer = layer_copy (layer, FALSE);
new_layer = gimp_layer_copy (layer, FALSE);
gimp_drawable_set_gimage(GIMP_DRAWABLE(new_layer), new_gimage);
gimp_drawable_set_gimage (GIMP_DRAWABLE (new_layer), new_gimage);
/* Make sure the copied layer doesn't say: "<old layer> copy" */
layer_set_name(GIMP_LAYER(new_layer),
layer_get_name(GIMP_LAYER(layer)));
gimp_object_set_name (GIMP_OBJECT (new_layer),
gimp_object_get_name (GIMP_OBJECT (layer)));
/* Make sure if the layer has a layer mask, it's name isn't screwed up */
if (new_layer->mask)

View File

@ -94,21 +94,21 @@ static void gimp_image_get_active_channels (GimpImage *gimage,
/* projection functions */
static void project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest);
static void project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
@ -552,11 +552,11 @@ gimp_image_resize (GimpImage *gimage,
gint offset_x,
gint offset_y)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GList *guide_list;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GList *guide_list;
gimp_add_busy_cursors ();
@ -624,9 +624,9 @@ gimp_image_resize (GimpImage *gimage,
/* Reposition all layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layer_translate (layer, offset_x, offset_y);
gimp_layer_translate (layer, offset_x, offset_y);
}
/* Make sure the projection matches the gimage size */
@ -646,17 +646,17 @@ gimp_image_scale (GimpImage *gimage,
gint new_width,
gint new_height)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
if ((new_width == 0) || (new_height == 0))
{
@ -707,8 +707,9 @@ gimp_image_scale (GimpImage *gimage,
list = gimage->layers;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
if (layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
layer = (GimpLayer *) list->data;
if (gimp_layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
{
/* Since 0 < img_scale_w, img_scale_h, failure due to one or more
* vanishing scaled layer dimensions. Implicit delete implemented
@ -1373,23 +1374,23 @@ gboolean
gimp_image_set_tattoo_state (GimpImage *gimage,
Tattoo val)
{
Layer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
GimpLayer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
for (layers = gimage->layers; layers; layers = g_slist_next (layers))
{
Tattoo ltattoo;
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
ltattoo = layer_get_tattoo (layer);
ltattoo = gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
if (ltattoo > maxval)
maxval = ltattoo;
if (gimp_image_get_channel_by_tattoo (gimage, ltattoo) != NULL)
@ -1485,7 +1486,7 @@ gimp_image_colormap_changed (const GimpImage *gimage,
static void
project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1500,7 +1501,7 @@ project_intensity (GimpImage *gimage,
static void
project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1515,7 +1516,7 @@ project_intensity_alpha (GimpImage *gimage,
static void
project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest)
{
@ -1528,7 +1529,7 @@ project_indexed (GimpImage *gimage,
static void
project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1579,14 +1580,16 @@ project_channel (GimpImage *gimage,
static void
gimp_image_free_layers (GimpImage *gimage)
{
GSList *list;
Layer *layer;
GSList *list;
GimpLayer *layer;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer_delete (layer);
layer = (GimpLayer *) list->data;
gtk_object_unref (GTK_OBJECT (layer));
}
g_slist_free (gimage->layers);
g_slist_free (gimage->layer_stack);
}
@ -1616,7 +1619,7 @@ gimp_image_construct_layers (GimpImage *gimage,
gint w,
gint h)
{
Layer *layer;
GimpLayer *layer;
gint x1, y1, x2, y2;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion * mask;
@ -1662,18 +1665,18 @@ gimp_image_construct_layers (GimpImage *gimage,
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible and not floating selections
to the list */
if (!layer_is_floating_sel (layer) &&
if (! gimp_layer_is_floating_sel (layer) &&
gimp_drawable_visible (GIMP_DRAWABLE (layer)))
reverse_list = g_slist_prepend (reverse_list, layer);
}
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
x1 = CLAMP (off_x, x, x + w);
@ -1802,7 +1805,7 @@ gimp_image_initialize_projection (GimpImage *gimage,
gint h)
{
GSList *list;
Layer *layer;
GimpLayer *layer;
gint coverage = 0;
PixelRegion PR;
guchar clear[4] = { 0, 0, 0, 0 };
@ -1816,11 +1819,11 @@ gimp_image_initialize_projection (GimpImage *gimage,
{
gint off_x, off_y;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)) &&
! layer_has_alpha (layer) &&
! gimp_layer_has_alpha (layer) &&
(off_x <= x) &&
(off_y <= y) &&
(off_x + gimp_drawable_width (GIMP_DRAWABLE (layer)) >= x + w) &&
@ -1844,8 +1847,8 @@ gimp_image_get_active_channels (GimpImage *gimage,
GimpDrawable *drawable,
gint *active)
{
Layer *layer;
gint i;
GimpLayer *layer;
gint i;
/* first, blindly copy the gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)
@ -1864,7 +1867,7 @@ gimp_image_get_active_channels (GimpImage *gimage,
if (GIMP_IS_LAYER (drawable))
{
layer = GIMP_LAYER (drawable);
if (layer_has_alpha (layer) && layer->preserve_trans)
if (gimp_layer_has_alpha (layer) && layer->preserve_trans)
active[gimp_drawable_bytes (drawable) - 1] = 0;
}
}
@ -1890,31 +1893,30 @@ gimp_image_construct (GimpImage *gimage,
if (gimage->layers)
{
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*) gimage->layers->data),
gimp_drawable_offsets (GIMP_DRAWABLE ((GimpLayer*) gimage->layers->data),
&xoff, &yoff);
}
if ((gimage->layers) && /* There's a layer. */
(!g_slist_next(gimage->layers)) && /* It's the only layer. */
(layer_has_alpha((Layer*)(gimage->layers->data))) && /* It's !flat. */
(! g_slist_next (gimage->layers)) && /* It's the only layer. */
(gimp_layer_has_alpha ((GimpLayer *) (gimage->layers->data))) && /* It's !flat. */
/* It's visible. */
(gimp_drawable_visible (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(gimp_drawable_width (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_visible (GIMP_DRAWABLE (gimage->layers->data))) &&
(gimp_drawable_width (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->width) &&
(gimp_drawable_height (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_height (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->height) && /* Covers all. */
/* Not indexed. */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(((Layer*)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE (gimage->layers->data))) &&
(((GimpLayer *)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
)
{
gint xoff;
gint yoff;
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)),
gimp_drawable_offsets (GIMP_DRAWABLE (gimage->layers->data),
&xoff, &yoff);
if ((xoff==0) && (yoff==0)) /* Starts at 0,0 */
{
PixelRegion srcPR, destPR;
@ -1923,8 +1925,7 @@ gimp_image_construct (GimpImage *gimage,
g_warning("Can use cow-projection hack. Yay!");
pixel_region_init (&srcPR, gimp_drawable_data
(GIMP_DRAWABLE
((Layer*)(gimage->layers->data))),
(GIMP_DRAWABLE (gimage->layers->data)),
x, y, w,h, FALSE);
pixel_region_init (&destPR,
gimp_image_projection (gimage),
@ -2111,7 +2112,7 @@ gimp_image_invalidate_layer_previews (GimpImage *gimage)
for (tmp = gimage->layers; tmp; tmp = g_slist_next (tmp))
{
layer = (Layer *) tmp->data;
layer = (GimpLayer *) tmp->data;
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (layer), TRUE);
}
@ -2136,11 +2137,11 @@ gimp_image_invalidate_channel_previews (GimpImage *gimage)
gint
gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg)
const GimpLayer *layer_arg)
{
Layer *layer;
GSList *layers;
gint index;
GimpLayer *layer;
GSList *layers;
gint index;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), -1);
@ -2148,7 +2149,7 @@ gimp_image_get_layer_index (const GimpImage *gimage,
layers;
layers = g_slist_next (layers), index++)
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer == layer_arg)
return index;
@ -2157,16 +2158,16 @@ gimp_image_get_layer_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer = (Layer *) g_slist_nth_data (gimage->layers, layer_index);
layer = (GimpLayer *) g_slist_nth_data (gimage->layers, layer_index);
return layer;
}
@ -2195,7 +2196,7 @@ gimp_image_get_channel_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_active_layer (const GimpImage *gimage)
{
g_return_val_if_fail (gimage != NULL, NULL);
@ -2212,12 +2213,12 @@ gimp_image_get_active_channel (const GimpImage *gimage)
return gimage->active_channel;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tattoo)
{
Layer *layer;
GSList *layers;
GimpLayer *layer;
GSList *layers;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2225,9 +2226,9 @@ gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
layers;
layers = g_slist_next (layers))
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer_get_tattoo (layer) == tattoo)
if (gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)) == tattoo)
return layer;
}
@ -2322,7 +2323,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
g_return_val_if_fail (segs != NULL, FALSE);
@ -2333,7 +2334,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
*/
if ((layer = gimage->active_layer))
{
*segs = layer_boundary (layer, n_segs);
*segs = gimp_layer_boundary (layer, n_segs);
return TRUE;
}
else
@ -2344,9 +2345,9 @@ gimp_image_layer_boundary (const GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL);
@ -2358,18 +2359,18 @@ gimp_image_set_active_layer (GimpImage *gimage,
{
if (! gimage->layers)
return NULL;
layer = (Layer *) gimage->layers->data;
layer = (GimpLayer *) gimage->layers->data;
}
if (! layer)
return NULL;
/* Configure the layer stack to reflect this change */
gimage->layer_stack = g_slist_remove (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, layer);
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set the active layer */
gimage->active_layer = layer;
@ -2466,30 +2467,30 @@ gimp_image_set_component_visible (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y)
{
Layer *layer;
GSList *list;
GimpLayer *layer;
GSList *list;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer_pick_correlate (layer, x, y))
if (gimp_layer_pick_correlate (layer, x, y))
return layer;
}
return NULL;
}
Layer *
GimpLayer *
gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2513,9 +2514,9 @@ gimp_image_raise_layer (GimpImage *gimage,
}
Layer *
GimpLayer *
gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2540,11 +2541,9 @@ gimp_image_lower_layer (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, curpos+1, TRUE);
}
Layer *
GimpLayer *
gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2563,7 +2562,7 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return NULL;
}
if (! layer_has_alpha (layer_arg))
if (! gimp_layer_has_alpha (layer_arg))
{
g_message (_("Can't raise Layer without alpha"));
return NULL;
@ -2572,10 +2571,9 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, 0, TRUE);
}
Layer *
GimpLayer *
gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2588,9 +2586,9 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
curpos = g_slist_index (list, layer_arg);
if (curpos < 0)
return NULL;
length = g_slist_length (list);
if (curpos == length-1)
{
g_message (_("Layer is already on bottom"));
@ -2600,20 +2598,19 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, length-1, TRUE);
}
Layer *
GimpLayer *
gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo)
{
Layer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
GimpLayer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2644,9 +2641,10 @@ gimp_image_position_layer (GimpImage *gimage,
return NULL;
/* check if we want to move it below a bottom layer without alpha */
layer = (Layer *) g_slist_last (list)->data;
layer = (GimpLayer *) g_slist_last (list)->data;
if (new_index == list_length - 1 &&
!layer_has_alpha (layer))
! gimp_layer_has_alpha (layer))
{
g_message (_("BG has no alpha, layer was placed above"));
new_index--;
@ -2674,14 +2672,14 @@ gimp_image_position_layer (GimpImage *gimage,
return layer_arg;
}
Layer *
GimpLayer *
gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2696,7 +2694,7 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2728,12 +2726,12 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_flatten (GimpImage *gimage)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2747,7 +2745,7 @@ gimp_image_flatten (GimpImage *gimage)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2761,27 +2759,27 @@ gimp_image_flatten (GimpImage *gimage)
return layer;
}
Layer *
GimpLayer *
gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer *current_layer,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer_list = gimage->layers;
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == current_layer)
{
layer_list = g_slist_next (layer_list);
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
merge_list = g_slist_append (merge_list, layer);
@ -2812,7 +2810,7 @@ gimp_image_merge_down (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type)
@ -2820,9 +2818,9 @@ gimp_image_merge_layers (GimpImage *gimage,
GSList *reverse_list = NULL;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
Layer *merge_layer;
Layer *layer;
Layer *bottom;
GimpLayer *merge_layer;
GimpLayer *layer;
GimpLayer *bottom;
LayerModeEffects bottom_mode;
guchar bg[4] = {0, 0, 0, 0};
GimpImageType type;
@ -2847,7 +2845,7 @@ gimp_image_merge_layers (GimpImage *gimage,
count = 0;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
switch (merge_type)
@ -2925,9 +2923,10 @@ gimp_image_merge_layers (GimpImage *gimage,
case INDEXED: type = INDEXED_GIMAGE; break;
}
merge_layer = layer_new (gimage, (x2 - x1), (y2 - y1),
type, gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
merge_layer = gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
type,
gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
g_message ("gimp_image_merge_layers: could not allocate merge layer");
@ -2961,10 +2960,10 @@ gimp_image_merge_layers (GimpImage *gimage,
*/
merge_layer =
layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
@ -2988,7 +2987,7 @@ gimp_image_merge_layers (GimpImage *gimage,
/* Find the index in the layer list of the bottom layer--we need this
* in order to add the final, merged layer to the layer list correctly
*/
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
position =
g_slist_length (gimage->layers) -
gimp_image_get_layer_index (gimage, layer);
@ -3010,13 +3009,14 @@ gimp_image_merge_layers (GimpImage *gimage,
}
/* Copy the tattoo and parasites of the bottom layer to the new layer */
layer_set_tattoo(merge_layer, layer_get_tattoo(layer));
gimp_drawable_set_tattoo (GIMP_DRAWABLE (merge_layer),
gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)));
GIMP_DRAWABLE(merge_layer)->parasites =
parasite_list_copy (GIMP_DRAWABLE(layer)->parasites);
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
/* determine what sort of operation is being attempted and
* if it's actually legal...
@ -3080,7 +3080,8 @@ gimp_image_merge_layers (GimpImage *gimage,
merge_list = gimage->layers;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
merge_list = g_slist_next (merge_list);
gimp_image_remove_layer (gimage, layer);
}
@ -3118,9 +3119,9 @@ gimp_image_merge_layers (GimpImage *gimage,
return merge_layer;
}
Layer *
GimpLayer *
gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer *float_layer,
gint position)
{
LayerUndo *lu;
@ -3148,7 +3149,7 @@ gimp_image_add_layer (GimpImage *gimage,
undo_push_layer (gimage, LAYER_ADD_UNDO, lu);
/* If the layer is a floating selection, set the ID */
if (layer_is_floating_sel (float_layer))
if (gimp_layer_is_floating_sel (float_layer))
gimage->floating_sel = float_layer;
/* let the layer know about the gimage */
@ -3205,9 +3206,9 @@ gimp_image_add_layer (GimpImage *gimage,
return float_layer;
}
Layer *
GimpLayer *
gimp_image_remove_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerUndo *lu;
@ -3278,7 +3279,7 @@ gimp_image_add_layer_mask (GimpImage *gimage,
return (NULL);
}
if (! layer_has_alpha (layer))
if (! gimp_layer_has_alpha (layer))
{
g_message (_("Cannot add layer mask to a layer\nwith no alpha channel."));
return (NULL);
@ -3333,7 +3334,7 @@ gimp_image_remove_layer_mask (GimpImage *gimage,
lmu->edit_mask = layer->edit_mask;
lmu->show_mask = layer->show_mask;
layer_apply_mask (layer, mode);
gimp_layer_apply_mask (layer, mode);
/* Push the undo--Important to do it here, AFTER the call
* to layer_apply_mask, in case the undo push fails and the
@ -3619,7 +3620,7 @@ gimp_image_is_empty (const GimpImage *gimage)
GimpDrawable *
gimp_image_active_drawable (const GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -3805,7 +3806,7 @@ gimp_image_clean_all (GimpImage *gimage)
gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]);
}
Layer *
GimpLayer *
gimp_image_floating_sel (const GimpImage *gimage)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
@ -3898,8 +3899,8 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
gint width,
gint height)
{
Layer *layer;
Layer *floating_sel;
GimpLayer *layer;
GimpLayer *floating_sel;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
TempBuf *comp;
@ -3940,15 +3941,17 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
floating_sel = NULL;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible to the list */
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
/* floating selections are added right above the layer
they are attached to */
if (layer_is_floating_sel (layer))
floating_sel = layer;
if (gimp_layer_is_floating_sel (layer))
{
floating_sel = layer;
}
else
{
if (floating_sel &&
@ -3964,7 +3967,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -3987,7 +3990,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
src1PR.data =
temp_buf_data (comp) + y1 * src1PR.rowstride + x1 * src1PR.bytes;
layer_buf = layer_preview (layer, w, h);
layer_buf = gimp_layer_preview (layer, w, h);
src2PR.bytes = layer_buf->bytes;
src2PR.w = src1PR.w;
src2PR.h = src1PR.h;
@ -4115,7 +4118,7 @@ gimp_image_preview_valid (const GimpImage *gimage,
void
gimp_image_invalidate_preview (GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_if_fail (GIMP_IS_IMAGE (gimage));

View File

@ -85,9 +85,9 @@ struct _GimpImage
GSList *channels; /* the list of masks */
GSList *layer_stack; /* the layers in MRU order */
Layer *active_layer; /* ID of active layer */
GimpLayer *active_layer; /* ID of active layer */
Channel *active_channel; /* ID of active channel */
Layer *floating_sel; /* ID of fs layer */
GimpLayer *floating_sel; /* ID of fs layer */
Channel *selection_mask; /* selection mask channel */
ParasiteList *parasites; /* Plug-in parasite data */
@ -164,11 +164,11 @@ struct _Guide
typedef struct _GimpImageRepaintArg
{
Layer *layer;
guint x;
guint y;
guint width;
guint height;
GimpLayer *layer;
guint x;
guint y;
guint width;
guint height;
} GimpImageRepaintArg;
@ -283,14 +283,14 @@ void gimp_image_colormap_changed (const GimpImage *image,
/* layer/channel functions */
gint gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg);
Layer * gimp_image_get_layer_by_index (const GimpImage *gimage,
const GimpLayer *layer_arg);
GimpLayer * gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index);
gint gimp_image_get_channel_index (const GimpImage *gimage,
const Channel *channel_arg);
Layer * gimp_image_get_active_layer (const GimpImage *gimage);
GimpLayer * gimp_image_get_active_layer (const GimpImage *gimage);
Channel * gimp_image_get_active_channel (const GimpImage *gimage);
Layer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
GimpLayer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
Channel * gimp_image_get_channel_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
@ -304,8 +304,8 @@ gboolean gimp_image_get_component_visible (const GimpImage *gimage,
gboolean gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs);
Layer * gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_set_active_layer (GimpImage *gimage,
GimpLayer *layer);
Channel * gimp_image_set_active_channel (GimpImage *gimage,
Channel *channel);
Channel * gimp_image_unset_active_channel (GimpImage *gimage);
@ -315,40 +315,40 @@ void gimp_image_set_component_active (GimpImage *gimage,
void gimp_image_set_component_visible (GimpImage *gimage,
ChannelType type,
gboolean visible);
Layer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
GimpLayer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y);
Layer * gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer * gimp_image_raise_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_raise_layer_to_top (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_position_layer (GimpImage *gimage,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo);
Layer * gimp_image_merge_visible_layers (GimpImage *gimage,
GimpLayer * gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type);
Layer * gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer * gimp_image_merge_down (GimpImage *gimage,
GimpLayer *current_layer,
MergeType merge_type);
Layer * gimp_image_flatten (GimpImage *gimage);
Layer * gimp_image_merge_layers (GimpImage *gimage,
GimpLayer * gimp_image_flatten (GimpImage *gimage);
GimpLayer * gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type);
Layer * gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer * gimp_image_add_layer (GimpImage *gimage,
GimpLayer *float_layer,
gint position);
Layer * gimp_image_remove_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_remove_layer (GimpImage *gimage,
GimpLayer *layer);
GimpLayerMask * gimp_image_add_layer_mask (GimpImage *gimage,
GimpLayer *layer,
GimpLayerMask *mask);
Channel * gimp_image_remove_layer_mask (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
MaskApplyMode mode);
Channel * gimp_image_raise_channel (GimpImage *gimage,
Channel *channel_arg);
@ -414,7 +414,7 @@ void gimp_image_undo_event (GimpImage *gimage,
gint gimp_image_dirty (GimpImage *gimage);
gint gimp_image_clean (GimpImage *gimage);
void gimp_image_clean_all (GimpImage *gimage);
Layer * gimp_image_floating_sel (const GimpImage *gimage);
GimpLayer * gimp_image_floating_sel (const GimpImage *gimage);
guchar * gimp_image_cmap (const GimpImage *gimage);
/* projection access functions */

View File

@ -59,7 +59,7 @@ gimage_mask_boundary (GImage *gimage,
gint *num_segs_out)
{
GimpDrawable *d;
Layer *layer;
GimpLayer *layer;
gint x1, y1;
gint x2, y2;
@ -137,8 +137,8 @@ gimage_mask_bounds (GImage *gimage,
void
gimage_mask_invalidate (GImage *gimage)
{
Layer *layer;
Channel *mask;
GimpLayer *layer;
Channel *mask;
/* Turn the current selection off */
gdisplays_selection_visibility (gimage, SelectionOff);
@ -151,7 +151,7 @@ gimage_mask_invalidate (GImage *gimage)
* mask in the composition of the floating selection
*/
layer = gimp_image_get_active_layer (gimage);
if (layer && layer_is_floating_sel (layer))
if (layer && gimp_layer_is_floating_sel (layer))
drawable_update (GIMP_DRAWABLE(layer), 0, 0,
GIMP_DRAWABLE(layer)->width,
GIMP_DRAWABLE(layer)->height);
@ -325,7 +325,7 @@ gimage_mask_extract (GImage *gimage,
*/
if (cut_gimage && GIMP_IS_LAYER (drawable))
{
if (layer_is_floating_sel (GIMP_LAYER (drawable)))
if (gimp_layer_is_floating_sel (GIMP_LAYER (drawable)))
floating_sel_remove (GIMP_LAYER (drawable));
else
gimp_image_remove_layer (gimage, GIMP_LAYER (drawable));
@ -343,14 +343,13 @@ gimage_mask_extract (GImage *gimage,
return tiles;
}
Layer *
GimpLayer *
gimage_mask_float (GImage *gimage,
GimpDrawable *drawable,
gint off_x, /* optional offset */
gint off_y)
{
Layer *layer;
GimpLayer *layer;
Channel *mask = gimp_image_get_mask (gimage);
TileManager *tiles;
gboolean non_empty;
@ -372,11 +371,11 @@ gimage_mask_float (GImage *gimage,
tiles = gimage_mask_extract (gimage, drawable, TRUE, FALSE, TRUE);
/* Create a new layer from the buffer */
layer = layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
tiles,
_("Floated Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
tiles,
_("Floated Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
/* Set the offsets */
tile_manager_get_offsets (tiles, &x1, &y1);
@ -502,8 +501,8 @@ gimage_mask_shrink (GImage *gimage,
void
gimage_mask_layer_alpha (GImage *gimage,
Layer *layer)
gimage_mask_layer_alpha (GimpImage *gimage,
GimpLayer *layer)
{
/* extract the layer's alpha channel */
if (gimp_drawable_has_alpha (GIMP_DRAWABLE (layer)))
@ -521,11 +520,11 @@ gimage_mask_layer_alpha (GImage *gimage,
void
gimage_mask_layer_mask (GImage *gimage,
Layer *layer)
gimage_mask_layer_mask (GimpImage *gimage,
GimpLayer *layer)
{
/* extract the layer's alpha channel */
if (layer_get_mask (layer))
if (gimp_layer_get_mask (layer))
{
/* load the mask with the given layer's alpha channel */
channel_layer_mask (gimp_image_get_mask (gimage), layer);

View File

@ -44,13 +44,13 @@ void gimage_mask_translate (GImage *gimage,
gint off_x,
gint off_y);
TileManager * gimage_mask_extract (GImage *gimage,
TileManager * gimage_mask_extract (GImage *gimage,
GimpDrawable *drawable,
gboolean cut_gimage,
gboolean keep_indexed,
gboolean add_alpha);
Layer * gimage_mask_float (GImage *gimage,
GimpLayer * gimage_mask_float (GImage *gimage,
GimpDrawable *drawable,
gint off_x,
gint off_y);
@ -80,15 +80,15 @@ void gimage_mask_shrink (GImage *gimage,
gboolean edge_lock);
void gimage_mask_layer_alpha (GImage *gimage,
Layer *layer);
GimpLayer *layer);
void gimage_mask_layer_mask (GImage *gimage,
Layer *layer);
GimpLayer *layer);
void gimage_mask_load (GImage *gimage,
Channel *channel);
Channel * gimage_mask_save (GImage *gimage);
Channel * gimage_mask_save (GImage *gimage);
gboolean gimage_mask_stroke (GImage *gimage,
GimpDrawable *drawable);

View File

@ -94,21 +94,21 @@ static void gimp_image_get_active_channels (GimpImage *gimage,
/* projection functions */
static void project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest);
static void project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
@ -552,11 +552,11 @@ gimp_image_resize (GimpImage *gimage,
gint offset_x,
gint offset_y)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GList *guide_list;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GList *guide_list;
gimp_add_busy_cursors ();
@ -624,9 +624,9 @@ gimp_image_resize (GimpImage *gimage,
/* Reposition all layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layer_translate (layer, offset_x, offset_y);
gimp_layer_translate (layer, offset_x, offset_y);
}
/* Make sure the projection matches the gimage size */
@ -646,17 +646,17 @@ gimp_image_scale (GimpImage *gimage,
gint new_width,
gint new_height)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
if ((new_width == 0) || (new_height == 0))
{
@ -707,8 +707,9 @@ gimp_image_scale (GimpImage *gimage,
list = gimage->layers;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
if (layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
layer = (GimpLayer *) list->data;
if (gimp_layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
{
/* Since 0 < img_scale_w, img_scale_h, failure due to one or more
* vanishing scaled layer dimensions. Implicit delete implemented
@ -1373,23 +1374,23 @@ gboolean
gimp_image_set_tattoo_state (GimpImage *gimage,
Tattoo val)
{
Layer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
GimpLayer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
for (layers = gimage->layers; layers; layers = g_slist_next (layers))
{
Tattoo ltattoo;
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
ltattoo = layer_get_tattoo (layer);
ltattoo = gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
if (ltattoo > maxval)
maxval = ltattoo;
if (gimp_image_get_channel_by_tattoo (gimage, ltattoo) != NULL)
@ -1485,7 +1486,7 @@ gimp_image_colormap_changed (const GimpImage *gimage,
static void
project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1500,7 +1501,7 @@ project_intensity (GimpImage *gimage,
static void
project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1515,7 +1516,7 @@ project_intensity_alpha (GimpImage *gimage,
static void
project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest)
{
@ -1528,7 +1529,7 @@ project_indexed (GimpImage *gimage,
static void
project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1579,14 +1580,16 @@ project_channel (GimpImage *gimage,
static void
gimp_image_free_layers (GimpImage *gimage)
{
GSList *list;
Layer *layer;
GSList *list;
GimpLayer *layer;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer_delete (layer);
layer = (GimpLayer *) list->data;
gtk_object_unref (GTK_OBJECT (layer));
}
g_slist_free (gimage->layers);
g_slist_free (gimage->layer_stack);
}
@ -1616,7 +1619,7 @@ gimp_image_construct_layers (GimpImage *gimage,
gint w,
gint h)
{
Layer *layer;
GimpLayer *layer;
gint x1, y1, x2, y2;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion * mask;
@ -1662,18 +1665,18 @@ gimp_image_construct_layers (GimpImage *gimage,
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible and not floating selections
to the list */
if (!layer_is_floating_sel (layer) &&
if (! gimp_layer_is_floating_sel (layer) &&
gimp_drawable_visible (GIMP_DRAWABLE (layer)))
reverse_list = g_slist_prepend (reverse_list, layer);
}
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
x1 = CLAMP (off_x, x, x + w);
@ -1802,7 +1805,7 @@ gimp_image_initialize_projection (GimpImage *gimage,
gint h)
{
GSList *list;
Layer *layer;
GimpLayer *layer;
gint coverage = 0;
PixelRegion PR;
guchar clear[4] = { 0, 0, 0, 0 };
@ -1816,11 +1819,11 @@ gimp_image_initialize_projection (GimpImage *gimage,
{
gint off_x, off_y;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)) &&
! layer_has_alpha (layer) &&
! gimp_layer_has_alpha (layer) &&
(off_x <= x) &&
(off_y <= y) &&
(off_x + gimp_drawable_width (GIMP_DRAWABLE (layer)) >= x + w) &&
@ -1844,8 +1847,8 @@ gimp_image_get_active_channels (GimpImage *gimage,
GimpDrawable *drawable,
gint *active)
{
Layer *layer;
gint i;
GimpLayer *layer;
gint i;
/* first, blindly copy the gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)
@ -1864,7 +1867,7 @@ gimp_image_get_active_channels (GimpImage *gimage,
if (GIMP_IS_LAYER (drawable))
{
layer = GIMP_LAYER (drawable);
if (layer_has_alpha (layer) && layer->preserve_trans)
if (gimp_layer_has_alpha (layer) && layer->preserve_trans)
active[gimp_drawable_bytes (drawable) - 1] = 0;
}
}
@ -1890,31 +1893,30 @@ gimp_image_construct (GimpImage *gimage,
if (gimage->layers)
{
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*) gimage->layers->data),
gimp_drawable_offsets (GIMP_DRAWABLE ((GimpLayer*) gimage->layers->data),
&xoff, &yoff);
}
if ((gimage->layers) && /* There's a layer. */
(!g_slist_next(gimage->layers)) && /* It's the only layer. */
(layer_has_alpha((Layer*)(gimage->layers->data))) && /* It's !flat. */
(! g_slist_next (gimage->layers)) && /* It's the only layer. */
(gimp_layer_has_alpha ((GimpLayer *) (gimage->layers->data))) && /* It's !flat. */
/* It's visible. */
(gimp_drawable_visible (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(gimp_drawable_width (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_visible (GIMP_DRAWABLE (gimage->layers->data))) &&
(gimp_drawable_width (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->width) &&
(gimp_drawable_height (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_height (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->height) && /* Covers all. */
/* Not indexed. */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(((Layer*)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE (gimage->layers->data))) &&
(((GimpLayer *)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
)
{
gint xoff;
gint yoff;
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)),
gimp_drawable_offsets (GIMP_DRAWABLE (gimage->layers->data),
&xoff, &yoff);
if ((xoff==0) && (yoff==0)) /* Starts at 0,0 */
{
PixelRegion srcPR, destPR;
@ -1923,8 +1925,7 @@ gimp_image_construct (GimpImage *gimage,
g_warning("Can use cow-projection hack. Yay!");
pixel_region_init (&srcPR, gimp_drawable_data
(GIMP_DRAWABLE
((Layer*)(gimage->layers->data))),
(GIMP_DRAWABLE (gimage->layers->data)),
x, y, w,h, FALSE);
pixel_region_init (&destPR,
gimp_image_projection (gimage),
@ -2111,7 +2112,7 @@ gimp_image_invalidate_layer_previews (GimpImage *gimage)
for (tmp = gimage->layers; tmp; tmp = g_slist_next (tmp))
{
layer = (Layer *) tmp->data;
layer = (GimpLayer *) tmp->data;
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (layer), TRUE);
}
@ -2136,11 +2137,11 @@ gimp_image_invalidate_channel_previews (GimpImage *gimage)
gint
gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg)
const GimpLayer *layer_arg)
{
Layer *layer;
GSList *layers;
gint index;
GimpLayer *layer;
GSList *layers;
gint index;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), -1);
@ -2148,7 +2149,7 @@ gimp_image_get_layer_index (const GimpImage *gimage,
layers;
layers = g_slist_next (layers), index++)
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer == layer_arg)
return index;
@ -2157,16 +2158,16 @@ gimp_image_get_layer_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer = (Layer *) g_slist_nth_data (gimage->layers, layer_index);
layer = (GimpLayer *) g_slist_nth_data (gimage->layers, layer_index);
return layer;
}
@ -2195,7 +2196,7 @@ gimp_image_get_channel_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_active_layer (const GimpImage *gimage)
{
g_return_val_if_fail (gimage != NULL, NULL);
@ -2212,12 +2213,12 @@ gimp_image_get_active_channel (const GimpImage *gimage)
return gimage->active_channel;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tattoo)
{
Layer *layer;
GSList *layers;
GimpLayer *layer;
GSList *layers;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2225,9 +2226,9 @@ gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
layers;
layers = g_slist_next (layers))
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer_get_tattoo (layer) == tattoo)
if (gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)) == tattoo)
return layer;
}
@ -2322,7 +2323,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
g_return_val_if_fail (segs != NULL, FALSE);
@ -2333,7 +2334,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
*/
if ((layer = gimage->active_layer))
{
*segs = layer_boundary (layer, n_segs);
*segs = gimp_layer_boundary (layer, n_segs);
return TRUE;
}
else
@ -2344,9 +2345,9 @@ gimp_image_layer_boundary (const GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL);
@ -2358,18 +2359,18 @@ gimp_image_set_active_layer (GimpImage *gimage,
{
if (! gimage->layers)
return NULL;
layer = (Layer *) gimage->layers->data;
layer = (GimpLayer *) gimage->layers->data;
}
if (! layer)
return NULL;
/* Configure the layer stack to reflect this change */
gimage->layer_stack = g_slist_remove (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, layer);
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set the active layer */
gimage->active_layer = layer;
@ -2466,30 +2467,30 @@ gimp_image_set_component_visible (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y)
{
Layer *layer;
GSList *list;
GimpLayer *layer;
GSList *list;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer_pick_correlate (layer, x, y))
if (gimp_layer_pick_correlate (layer, x, y))
return layer;
}
return NULL;
}
Layer *
GimpLayer *
gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2513,9 +2514,9 @@ gimp_image_raise_layer (GimpImage *gimage,
}
Layer *
GimpLayer *
gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2540,11 +2541,9 @@ gimp_image_lower_layer (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, curpos+1, TRUE);
}
Layer *
GimpLayer *
gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2563,7 +2562,7 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return NULL;
}
if (! layer_has_alpha (layer_arg))
if (! gimp_layer_has_alpha (layer_arg))
{
g_message (_("Can't raise Layer without alpha"));
return NULL;
@ -2572,10 +2571,9 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, 0, TRUE);
}
Layer *
GimpLayer *
gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2588,9 +2586,9 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
curpos = g_slist_index (list, layer_arg);
if (curpos < 0)
return NULL;
length = g_slist_length (list);
if (curpos == length-1)
{
g_message (_("Layer is already on bottom"));
@ -2600,20 +2598,19 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, length-1, TRUE);
}
Layer *
GimpLayer *
gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo)
{
Layer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
GimpLayer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2644,9 +2641,10 @@ gimp_image_position_layer (GimpImage *gimage,
return NULL;
/* check if we want to move it below a bottom layer without alpha */
layer = (Layer *) g_slist_last (list)->data;
layer = (GimpLayer *) g_slist_last (list)->data;
if (new_index == list_length - 1 &&
!layer_has_alpha (layer))
! gimp_layer_has_alpha (layer))
{
g_message (_("BG has no alpha, layer was placed above"));
new_index--;
@ -2674,14 +2672,14 @@ gimp_image_position_layer (GimpImage *gimage,
return layer_arg;
}
Layer *
GimpLayer *
gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2696,7 +2694,7 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2728,12 +2726,12 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_flatten (GimpImage *gimage)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2747,7 +2745,7 @@ gimp_image_flatten (GimpImage *gimage)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2761,27 +2759,27 @@ gimp_image_flatten (GimpImage *gimage)
return layer;
}
Layer *
GimpLayer *
gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer *current_layer,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer_list = gimage->layers;
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == current_layer)
{
layer_list = g_slist_next (layer_list);
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
merge_list = g_slist_append (merge_list, layer);
@ -2812,7 +2810,7 @@ gimp_image_merge_down (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type)
@ -2820,9 +2818,9 @@ gimp_image_merge_layers (GimpImage *gimage,
GSList *reverse_list = NULL;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
Layer *merge_layer;
Layer *layer;
Layer *bottom;
GimpLayer *merge_layer;
GimpLayer *layer;
GimpLayer *bottom;
LayerModeEffects bottom_mode;
guchar bg[4] = {0, 0, 0, 0};
GimpImageType type;
@ -2847,7 +2845,7 @@ gimp_image_merge_layers (GimpImage *gimage,
count = 0;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
switch (merge_type)
@ -2925,9 +2923,10 @@ gimp_image_merge_layers (GimpImage *gimage,
case INDEXED: type = INDEXED_GIMAGE; break;
}
merge_layer = layer_new (gimage, (x2 - x1), (y2 - y1),
type, gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
merge_layer = gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
type,
gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
g_message ("gimp_image_merge_layers: could not allocate merge layer");
@ -2961,10 +2960,10 @@ gimp_image_merge_layers (GimpImage *gimage,
*/
merge_layer =
layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
@ -2988,7 +2987,7 @@ gimp_image_merge_layers (GimpImage *gimage,
/* Find the index in the layer list of the bottom layer--we need this
* in order to add the final, merged layer to the layer list correctly
*/
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
position =
g_slist_length (gimage->layers) -
gimp_image_get_layer_index (gimage, layer);
@ -3010,13 +3009,14 @@ gimp_image_merge_layers (GimpImage *gimage,
}
/* Copy the tattoo and parasites of the bottom layer to the new layer */
layer_set_tattoo(merge_layer, layer_get_tattoo(layer));
gimp_drawable_set_tattoo (GIMP_DRAWABLE (merge_layer),
gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)));
GIMP_DRAWABLE(merge_layer)->parasites =
parasite_list_copy (GIMP_DRAWABLE(layer)->parasites);
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
/* determine what sort of operation is being attempted and
* if it's actually legal...
@ -3080,7 +3080,8 @@ gimp_image_merge_layers (GimpImage *gimage,
merge_list = gimage->layers;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
merge_list = g_slist_next (merge_list);
gimp_image_remove_layer (gimage, layer);
}
@ -3118,9 +3119,9 @@ gimp_image_merge_layers (GimpImage *gimage,
return merge_layer;
}
Layer *
GimpLayer *
gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer *float_layer,
gint position)
{
LayerUndo *lu;
@ -3148,7 +3149,7 @@ gimp_image_add_layer (GimpImage *gimage,
undo_push_layer (gimage, LAYER_ADD_UNDO, lu);
/* If the layer is a floating selection, set the ID */
if (layer_is_floating_sel (float_layer))
if (gimp_layer_is_floating_sel (float_layer))
gimage->floating_sel = float_layer;
/* let the layer know about the gimage */
@ -3205,9 +3206,9 @@ gimp_image_add_layer (GimpImage *gimage,
return float_layer;
}
Layer *
GimpLayer *
gimp_image_remove_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerUndo *lu;
@ -3278,7 +3279,7 @@ gimp_image_add_layer_mask (GimpImage *gimage,
return (NULL);
}
if (! layer_has_alpha (layer))
if (! gimp_layer_has_alpha (layer))
{
g_message (_("Cannot add layer mask to a layer\nwith no alpha channel."));
return (NULL);
@ -3333,7 +3334,7 @@ gimp_image_remove_layer_mask (GimpImage *gimage,
lmu->edit_mask = layer->edit_mask;
lmu->show_mask = layer->show_mask;
layer_apply_mask (layer, mode);
gimp_layer_apply_mask (layer, mode);
/* Push the undo--Important to do it here, AFTER the call
* to layer_apply_mask, in case the undo push fails and the
@ -3619,7 +3620,7 @@ gimp_image_is_empty (const GimpImage *gimage)
GimpDrawable *
gimp_image_active_drawable (const GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -3805,7 +3806,7 @@ gimp_image_clean_all (GimpImage *gimage)
gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]);
}
Layer *
GimpLayer *
gimp_image_floating_sel (const GimpImage *gimage)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
@ -3898,8 +3899,8 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
gint width,
gint height)
{
Layer *layer;
Layer *floating_sel;
GimpLayer *layer;
GimpLayer *floating_sel;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
TempBuf *comp;
@ -3940,15 +3941,17 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
floating_sel = NULL;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible to the list */
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
/* floating selections are added right above the layer
they are attached to */
if (layer_is_floating_sel (layer))
floating_sel = layer;
if (gimp_layer_is_floating_sel (layer))
{
floating_sel = layer;
}
else
{
if (floating_sel &&
@ -3964,7 +3967,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -3987,7 +3990,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
src1PR.data =
temp_buf_data (comp) + y1 * src1PR.rowstride + x1 * src1PR.bytes;
layer_buf = layer_preview (layer, w, h);
layer_buf = gimp_layer_preview (layer, w, h);
src2PR.bytes = layer_buf->bytes;
src2PR.w = src1PR.w;
src2PR.h = src1PR.h;
@ -4115,7 +4118,7 @@ gimp_image_preview_valid (const GimpImage *gimage,
void
gimp_image_invalidate_preview (GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_if_fail (GIMP_IS_IMAGE (gimage));

View File

@ -85,9 +85,9 @@ struct _GimpImage
GSList *channels; /* the list of masks */
GSList *layer_stack; /* the layers in MRU order */
Layer *active_layer; /* ID of active layer */
GimpLayer *active_layer; /* ID of active layer */
Channel *active_channel; /* ID of active channel */
Layer *floating_sel; /* ID of fs layer */
GimpLayer *floating_sel; /* ID of fs layer */
Channel *selection_mask; /* selection mask channel */
ParasiteList *parasites; /* Plug-in parasite data */
@ -164,11 +164,11 @@ struct _Guide
typedef struct _GimpImageRepaintArg
{
Layer *layer;
guint x;
guint y;
guint width;
guint height;
GimpLayer *layer;
guint x;
guint y;
guint width;
guint height;
} GimpImageRepaintArg;
@ -283,14 +283,14 @@ void gimp_image_colormap_changed (const GimpImage *image,
/* layer/channel functions */
gint gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg);
Layer * gimp_image_get_layer_by_index (const GimpImage *gimage,
const GimpLayer *layer_arg);
GimpLayer * gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index);
gint gimp_image_get_channel_index (const GimpImage *gimage,
const Channel *channel_arg);
Layer * gimp_image_get_active_layer (const GimpImage *gimage);
GimpLayer * gimp_image_get_active_layer (const GimpImage *gimage);
Channel * gimp_image_get_active_channel (const GimpImage *gimage);
Layer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
GimpLayer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
Channel * gimp_image_get_channel_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
@ -304,8 +304,8 @@ gboolean gimp_image_get_component_visible (const GimpImage *gimage,
gboolean gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs);
Layer * gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_set_active_layer (GimpImage *gimage,
GimpLayer *layer);
Channel * gimp_image_set_active_channel (GimpImage *gimage,
Channel *channel);
Channel * gimp_image_unset_active_channel (GimpImage *gimage);
@ -315,40 +315,40 @@ void gimp_image_set_component_active (GimpImage *gimage,
void gimp_image_set_component_visible (GimpImage *gimage,
ChannelType type,
gboolean visible);
Layer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
GimpLayer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y);
Layer * gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer * gimp_image_raise_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_raise_layer_to_top (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_position_layer (GimpImage *gimage,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo);
Layer * gimp_image_merge_visible_layers (GimpImage *gimage,
GimpLayer * gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type);
Layer * gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer * gimp_image_merge_down (GimpImage *gimage,
GimpLayer *current_layer,
MergeType merge_type);
Layer * gimp_image_flatten (GimpImage *gimage);
Layer * gimp_image_merge_layers (GimpImage *gimage,
GimpLayer * gimp_image_flatten (GimpImage *gimage);
GimpLayer * gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type);
Layer * gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer * gimp_image_add_layer (GimpImage *gimage,
GimpLayer *float_layer,
gint position);
Layer * gimp_image_remove_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_remove_layer (GimpImage *gimage,
GimpLayer *layer);
GimpLayerMask * gimp_image_add_layer_mask (GimpImage *gimage,
GimpLayer *layer,
GimpLayerMask *mask);
Channel * gimp_image_remove_layer_mask (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
MaskApplyMode mode);
Channel * gimp_image_raise_channel (GimpImage *gimage,
Channel *channel_arg);
@ -414,7 +414,7 @@ void gimp_image_undo_event (GimpImage *gimage,
gint gimp_image_dirty (GimpImage *gimage);
gint gimp_image_clean (GimpImage *gimage);
void gimp_image_clean_all (GimpImage *gimage);
Layer * gimp_image_floating_sel (const GimpImage *gimage);
GimpLayer * gimp_image_floating_sel (const GimpImage *gimage);
guchar * gimp_image_cmap (const GimpImage *gimage);
/* projection access functions */

View File

@ -94,21 +94,21 @@ static void gimp_image_get_active_channels (GimpImage *gimage,
/* projection functions */
static void project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest);
static void project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
@ -552,11 +552,11 @@ gimp_image_resize (GimpImage *gimage,
gint offset_x,
gint offset_y)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GList *guide_list;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GList *guide_list;
gimp_add_busy_cursors ();
@ -624,9 +624,9 @@ gimp_image_resize (GimpImage *gimage,
/* Reposition all layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layer_translate (layer, offset_x, offset_y);
gimp_layer_translate (layer, offset_x, offset_y);
}
/* Make sure the projection matches the gimage size */
@ -646,17 +646,17 @@ gimp_image_scale (GimpImage *gimage,
gint new_width,
gint new_height)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
if ((new_width == 0) || (new_height == 0))
{
@ -707,8 +707,9 @@ gimp_image_scale (GimpImage *gimage,
list = gimage->layers;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
if (layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
layer = (GimpLayer *) list->data;
if (gimp_layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
{
/* Since 0 < img_scale_w, img_scale_h, failure due to one or more
* vanishing scaled layer dimensions. Implicit delete implemented
@ -1373,23 +1374,23 @@ gboolean
gimp_image_set_tattoo_state (GimpImage *gimage,
Tattoo val)
{
Layer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
GimpLayer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
for (layers = gimage->layers; layers; layers = g_slist_next (layers))
{
Tattoo ltattoo;
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
ltattoo = layer_get_tattoo (layer);
ltattoo = gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
if (ltattoo > maxval)
maxval = ltattoo;
if (gimp_image_get_channel_by_tattoo (gimage, ltattoo) != NULL)
@ -1485,7 +1486,7 @@ gimp_image_colormap_changed (const GimpImage *gimage,
static void
project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1500,7 +1501,7 @@ project_intensity (GimpImage *gimage,
static void
project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1515,7 +1516,7 @@ project_intensity_alpha (GimpImage *gimage,
static void
project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest)
{
@ -1528,7 +1529,7 @@ project_indexed (GimpImage *gimage,
static void
project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1579,14 +1580,16 @@ project_channel (GimpImage *gimage,
static void
gimp_image_free_layers (GimpImage *gimage)
{
GSList *list;
Layer *layer;
GSList *list;
GimpLayer *layer;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer_delete (layer);
layer = (GimpLayer *) list->data;
gtk_object_unref (GTK_OBJECT (layer));
}
g_slist_free (gimage->layers);
g_slist_free (gimage->layer_stack);
}
@ -1616,7 +1619,7 @@ gimp_image_construct_layers (GimpImage *gimage,
gint w,
gint h)
{
Layer *layer;
GimpLayer *layer;
gint x1, y1, x2, y2;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion * mask;
@ -1662,18 +1665,18 @@ gimp_image_construct_layers (GimpImage *gimage,
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible and not floating selections
to the list */
if (!layer_is_floating_sel (layer) &&
if (! gimp_layer_is_floating_sel (layer) &&
gimp_drawable_visible (GIMP_DRAWABLE (layer)))
reverse_list = g_slist_prepend (reverse_list, layer);
}
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
x1 = CLAMP (off_x, x, x + w);
@ -1802,7 +1805,7 @@ gimp_image_initialize_projection (GimpImage *gimage,
gint h)
{
GSList *list;
Layer *layer;
GimpLayer *layer;
gint coverage = 0;
PixelRegion PR;
guchar clear[4] = { 0, 0, 0, 0 };
@ -1816,11 +1819,11 @@ gimp_image_initialize_projection (GimpImage *gimage,
{
gint off_x, off_y;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)) &&
! layer_has_alpha (layer) &&
! gimp_layer_has_alpha (layer) &&
(off_x <= x) &&
(off_y <= y) &&
(off_x + gimp_drawable_width (GIMP_DRAWABLE (layer)) >= x + w) &&
@ -1844,8 +1847,8 @@ gimp_image_get_active_channels (GimpImage *gimage,
GimpDrawable *drawable,
gint *active)
{
Layer *layer;
gint i;
GimpLayer *layer;
gint i;
/* first, blindly copy the gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)
@ -1864,7 +1867,7 @@ gimp_image_get_active_channels (GimpImage *gimage,
if (GIMP_IS_LAYER (drawable))
{
layer = GIMP_LAYER (drawable);
if (layer_has_alpha (layer) && layer->preserve_trans)
if (gimp_layer_has_alpha (layer) && layer->preserve_trans)
active[gimp_drawable_bytes (drawable) - 1] = 0;
}
}
@ -1890,31 +1893,30 @@ gimp_image_construct (GimpImage *gimage,
if (gimage->layers)
{
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*) gimage->layers->data),
gimp_drawable_offsets (GIMP_DRAWABLE ((GimpLayer*) gimage->layers->data),
&xoff, &yoff);
}
if ((gimage->layers) && /* There's a layer. */
(!g_slist_next(gimage->layers)) && /* It's the only layer. */
(layer_has_alpha((Layer*)(gimage->layers->data))) && /* It's !flat. */
(! g_slist_next (gimage->layers)) && /* It's the only layer. */
(gimp_layer_has_alpha ((GimpLayer *) (gimage->layers->data))) && /* It's !flat. */
/* It's visible. */
(gimp_drawable_visible (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(gimp_drawable_width (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_visible (GIMP_DRAWABLE (gimage->layers->data))) &&
(gimp_drawable_width (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->width) &&
(gimp_drawable_height (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_height (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->height) && /* Covers all. */
/* Not indexed. */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(((Layer*)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE (gimage->layers->data))) &&
(((GimpLayer *)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
)
{
gint xoff;
gint yoff;
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)),
gimp_drawable_offsets (GIMP_DRAWABLE (gimage->layers->data),
&xoff, &yoff);
if ((xoff==0) && (yoff==0)) /* Starts at 0,0 */
{
PixelRegion srcPR, destPR;
@ -1923,8 +1925,7 @@ gimp_image_construct (GimpImage *gimage,
g_warning("Can use cow-projection hack. Yay!");
pixel_region_init (&srcPR, gimp_drawable_data
(GIMP_DRAWABLE
((Layer*)(gimage->layers->data))),
(GIMP_DRAWABLE (gimage->layers->data)),
x, y, w,h, FALSE);
pixel_region_init (&destPR,
gimp_image_projection (gimage),
@ -2111,7 +2112,7 @@ gimp_image_invalidate_layer_previews (GimpImage *gimage)
for (tmp = gimage->layers; tmp; tmp = g_slist_next (tmp))
{
layer = (Layer *) tmp->data;
layer = (GimpLayer *) tmp->data;
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (layer), TRUE);
}
@ -2136,11 +2137,11 @@ gimp_image_invalidate_channel_previews (GimpImage *gimage)
gint
gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg)
const GimpLayer *layer_arg)
{
Layer *layer;
GSList *layers;
gint index;
GimpLayer *layer;
GSList *layers;
gint index;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), -1);
@ -2148,7 +2149,7 @@ gimp_image_get_layer_index (const GimpImage *gimage,
layers;
layers = g_slist_next (layers), index++)
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer == layer_arg)
return index;
@ -2157,16 +2158,16 @@ gimp_image_get_layer_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer = (Layer *) g_slist_nth_data (gimage->layers, layer_index);
layer = (GimpLayer *) g_slist_nth_data (gimage->layers, layer_index);
return layer;
}
@ -2195,7 +2196,7 @@ gimp_image_get_channel_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_active_layer (const GimpImage *gimage)
{
g_return_val_if_fail (gimage != NULL, NULL);
@ -2212,12 +2213,12 @@ gimp_image_get_active_channel (const GimpImage *gimage)
return gimage->active_channel;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tattoo)
{
Layer *layer;
GSList *layers;
GimpLayer *layer;
GSList *layers;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2225,9 +2226,9 @@ gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
layers;
layers = g_slist_next (layers))
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer_get_tattoo (layer) == tattoo)
if (gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)) == tattoo)
return layer;
}
@ -2322,7 +2323,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
g_return_val_if_fail (segs != NULL, FALSE);
@ -2333,7 +2334,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
*/
if ((layer = gimage->active_layer))
{
*segs = layer_boundary (layer, n_segs);
*segs = gimp_layer_boundary (layer, n_segs);
return TRUE;
}
else
@ -2344,9 +2345,9 @@ gimp_image_layer_boundary (const GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL);
@ -2358,18 +2359,18 @@ gimp_image_set_active_layer (GimpImage *gimage,
{
if (! gimage->layers)
return NULL;
layer = (Layer *) gimage->layers->data;
layer = (GimpLayer *) gimage->layers->data;
}
if (! layer)
return NULL;
/* Configure the layer stack to reflect this change */
gimage->layer_stack = g_slist_remove (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, layer);
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set the active layer */
gimage->active_layer = layer;
@ -2466,30 +2467,30 @@ gimp_image_set_component_visible (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y)
{
Layer *layer;
GSList *list;
GimpLayer *layer;
GSList *list;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer_pick_correlate (layer, x, y))
if (gimp_layer_pick_correlate (layer, x, y))
return layer;
}
return NULL;
}
Layer *
GimpLayer *
gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2513,9 +2514,9 @@ gimp_image_raise_layer (GimpImage *gimage,
}
Layer *
GimpLayer *
gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2540,11 +2541,9 @@ gimp_image_lower_layer (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, curpos+1, TRUE);
}
Layer *
GimpLayer *
gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2563,7 +2562,7 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return NULL;
}
if (! layer_has_alpha (layer_arg))
if (! gimp_layer_has_alpha (layer_arg))
{
g_message (_("Can't raise Layer without alpha"));
return NULL;
@ -2572,10 +2571,9 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, 0, TRUE);
}
Layer *
GimpLayer *
gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2588,9 +2586,9 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
curpos = g_slist_index (list, layer_arg);
if (curpos < 0)
return NULL;
length = g_slist_length (list);
if (curpos == length-1)
{
g_message (_("Layer is already on bottom"));
@ -2600,20 +2598,19 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, length-1, TRUE);
}
Layer *
GimpLayer *
gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo)
{
Layer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
GimpLayer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2644,9 +2641,10 @@ gimp_image_position_layer (GimpImage *gimage,
return NULL;
/* check if we want to move it below a bottom layer without alpha */
layer = (Layer *) g_slist_last (list)->data;
layer = (GimpLayer *) g_slist_last (list)->data;
if (new_index == list_length - 1 &&
!layer_has_alpha (layer))
! gimp_layer_has_alpha (layer))
{
g_message (_("BG has no alpha, layer was placed above"));
new_index--;
@ -2674,14 +2672,14 @@ gimp_image_position_layer (GimpImage *gimage,
return layer_arg;
}
Layer *
GimpLayer *
gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2696,7 +2694,7 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2728,12 +2726,12 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_flatten (GimpImage *gimage)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2747,7 +2745,7 @@ gimp_image_flatten (GimpImage *gimage)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2761,27 +2759,27 @@ gimp_image_flatten (GimpImage *gimage)
return layer;
}
Layer *
GimpLayer *
gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer *current_layer,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer_list = gimage->layers;
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == current_layer)
{
layer_list = g_slist_next (layer_list);
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
merge_list = g_slist_append (merge_list, layer);
@ -2812,7 +2810,7 @@ gimp_image_merge_down (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type)
@ -2820,9 +2818,9 @@ gimp_image_merge_layers (GimpImage *gimage,
GSList *reverse_list = NULL;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
Layer *merge_layer;
Layer *layer;
Layer *bottom;
GimpLayer *merge_layer;
GimpLayer *layer;
GimpLayer *bottom;
LayerModeEffects bottom_mode;
guchar bg[4] = {0, 0, 0, 0};
GimpImageType type;
@ -2847,7 +2845,7 @@ gimp_image_merge_layers (GimpImage *gimage,
count = 0;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
switch (merge_type)
@ -2925,9 +2923,10 @@ gimp_image_merge_layers (GimpImage *gimage,
case INDEXED: type = INDEXED_GIMAGE; break;
}
merge_layer = layer_new (gimage, (x2 - x1), (y2 - y1),
type, gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
merge_layer = gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
type,
gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
g_message ("gimp_image_merge_layers: could not allocate merge layer");
@ -2961,10 +2960,10 @@ gimp_image_merge_layers (GimpImage *gimage,
*/
merge_layer =
layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
@ -2988,7 +2987,7 @@ gimp_image_merge_layers (GimpImage *gimage,
/* Find the index in the layer list of the bottom layer--we need this
* in order to add the final, merged layer to the layer list correctly
*/
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
position =
g_slist_length (gimage->layers) -
gimp_image_get_layer_index (gimage, layer);
@ -3010,13 +3009,14 @@ gimp_image_merge_layers (GimpImage *gimage,
}
/* Copy the tattoo and parasites of the bottom layer to the new layer */
layer_set_tattoo(merge_layer, layer_get_tattoo(layer));
gimp_drawable_set_tattoo (GIMP_DRAWABLE (merge_layer),
gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)));
GIMP_DRAWABLE(merge_layer)->parasites =
parasite_list_copy (GIMP_DRAWABLE(layer)->parasites);
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
/* determine what sort of operation is being attempted and
* if it's actually legal...
@ -3080,7 +3080,8 @@ gimp_image_merge_layers (GimpImage *gimage,
merge_list = gimage->layers;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
merge_list = g_slist_next (merge_list);
gimp_image_remove_layer (gimage, layer);
}
@ -3118,9 +3119,9 @@ gimp_image_merge_layers (GimpImage *gimage,
return merge_layer;
}
Layer *
GimpLayer *
gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer *float_layer,
gint position)
{
LayerUndo *lu;
@ -3148,7 +3149,7 @@ gimp_image_add_layer (GimpImage *gimage,
undo_push_layer (gimage, LAYER_ADD_UNDO, lu);
/* If the layer is a floating selection, set the ID */
if (layer_is_floating_sel (float_layer))
if (gimp_layer_is_floating_sel (float_layer))
gimage->floating_sel = float_layer;
/* let the layer know about the gimage */
@ -3205,9 +3206,9 @@ gimp_image_add_layer (GimpImage *gimage,
return float_layer;
}
Layer *
GimpLayer *
gimp_image_remove_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerUndo *lu;
@ -3278,7 +3279,7 @@ gimp_image_add_layer_mask (GimpImage *gimage,
return (NULL);
}
if (! layer_has_alpha (layer))
if (! gimp_layer_has_alpha (layer))
{
g_message (_("Cannot add layer mask to a layer\nwith no alpha channel."));
return (NULL);
@ -3333,7 +3334,7 @@ gimp_image_remove_layer_mask (GimpImage *gimage,
lmu->edit_mask = layer->edit_mask;
lmu->show_mask = layer->show_mask;
layer_apply_mask (layer, mode);
gimp_layer_apply_mask (layer, mode);
/* Push the undo--Important to do it here, AFTER the call
* to layer_apply_mask, in case the undo push fails and the
@ -3619,7 +3620,7 @@ gimp_image_is_empty (const GimpImage *gimage)
GimpDrawable *
gimp_image_active_drawable (const GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -3805,7 +3806,7 @@ gimp_image_clean_all (GimpImage *gimage)
gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]);
}
Layer *
GimpLayer *
gimp_image_floating_sel (const GimpImage *gimage)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
@ -3898,8 +3899,8 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
gint width,
gint height)
{
Layer *layer;
Layer *floating_sel;
GimpLayer *layer;
GimpLayer *floating_sel;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
TempBuf *comp;
@ -3940,15 +3941,17 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
floating_sel = NULL;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible to the list */
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
/* floating selections are added right above the layer
they are attached to */
if (layer_is_floating_sel (layer))
floating_sel = layer;
if (gimp_layer_is_floating_sel (layer))
{
floating_sel = layer;
}
else
{
if (floating_sel &&
@ -3964,7 +3967,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -3987,7 +3990,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
src1PR.data =
temp_buf_data (comp) + y1 * src1PR.rowstride + x1 * src1PR.bytes;
layer_buf = layer_preview (layer, w, h);
layer_buf = gimp_layer_preview (layer, w, h);
src2PR.bytes = layer_buf->bytes;
src2PR.w = src1PR.w;
src2PR.h = src1PR.h;
@ -4115,7 +4118,7 @@ gimp_image_preview_valid (const GimpImage *gimage,
void
gimp_image_invalidate_preview (GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_if_fail (GIMP_IS_IMAGE (gimage));

View File

@ -85,9 +85,9 @@ struct _GimpImage
GSList *channels; /* the list of masks */
GSList *layer_stack; /* the layers in MRU order */
Layer *active_layer; /* ID of active layer */
GimpLayer *active_layer; /* ID of active layer */
Channel *active_channel; /* ID of active channel */
Layer *floating_sel; /* ID of fs layer */
GimpLayer *floating_sel; /* ID of fs layer */
Channel *selection_mask; /* selection mask channel */
ParasiteList *parasites; /* Plug-in parasite data */
@ -164,11 +164,11 @@ struct _Guide
typedef struct _GimpImageRepaintArg
{
Layer *layer;
guint x;
guint y;
guint width;
guint height;
GimpLayer *layer;
guint x;
guint y;
guint width;
guint height;
} GimpImageRepaintArg;
@ -283,14 +283,14 @@ void gimp_image_colormap_changed (const GimpImage *image,
/* layer/channel functions */
gint gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg);
Layer * gimp_image_get_layer_by_index (const GimpImage *gimage,
const GimpLayer *layer_arg);
GimpLayer * gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index);
gint gimp_image_get_channel_index (const GimpImage *gimage,
const Channel *channel_arg);
Layer * gimp_image_get_active_layer (const GimpImage *gimage);
GimpLayer * gimp_image_get_active_layer (const GimpImage *gimage);
Channel * gimp_image_get_active_channel (const GimpImage *gimage);
Layer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
GimpLayer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
Channel * gimp_image_get_channel_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
@ -304,8 +304,8 @@ gboolean gimp_image_get_component_visible (const GimpImage *gimage,
gboolean gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs);
Layer * gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_set_active_layer (GimpImage *gimage,
GimpLayer *layer);
Channel * gimp_image_set_active_channel (GimpImage *gimage,
Channel *channel);
Channel * gimp_image_unset_active_channel (GimpImage *gimage);
@ -315,40 +315,40 @@ void gimp_image_set_component_active (GimpImage *gimage,
void gimp_image_set_component_visible (GimpImage *gimage,
ChannelType type,
gboolean visible);
Layer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
GimpLayer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y);
Layer * gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer * gimp_image_raise_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_raise_layer_to_top (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_position_layer (GimpImage *gimage,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo);
Layer * gimp_image_merge_visible_layers (GimpImage *gimage,
GimpLayer * gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type);
Layer * gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer * gimp_image_merge_down (GimpImage *gimage,
GimpLayer *current_layer,
MergeType merge_type);
Layer * gimp_image_flatten (GimpImage *gimage);
Layer * gimp_image_merge_layers (GimpImage *gimage,
GimpLayer * gimp_image_flatten (GimpImage *gimage);
GimpLayer * gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type);
Layer * gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer * gimp_image_add_layer (GimpImage *gimage,
GimpLayer *float_layer,
gint position);
Layer * gimp_image_remove_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_remove_layer (GimpImage *gimage,
GimpLayer *layer);
GimpLayerMask * gimp_image_add_layer_mask (GimpImage *gimage,
GimpLayer *layer,
GimpLayerMask *mask);
Channel * gimp_image_remove_layer_mask (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
MaskApplyMode mode);
Channel * gimp_image_raise_channel (GimpImage *gimage,
Channel *channel_arg);
@ -414,7 +414,7 @@ void gimp_image_undo_event (GimpImage *gimage,
gint gimp_image_dirty (GimpImage *gimage);
gint gimp_image_clean (GimpImage *gimage);
void gimp_image_clean_all (GimpImage *gimage);
Layer * gimp_image_floating_sel (const GimpImage *gimage);
GimpLayer * gimp_image_floating_sel (const GimpImage *gimage);
guchar * gimp_image_cmap (const GimpImage *gimage);
/* projection access functions */

View File

@ -94,21 +94,21 @@ static void gimp_image_get_active_channels (GimpImage *gimage,
/* projection functions */
static void project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest);
static void project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
@ -552,11 +552,11 @@ gimp_image_resize (GimpImage *gimage,
gint offset_x,
gint offset_y)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GList *guide_list;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GList *guide_list;
gimp_add_busy_cursors ();
@ -624,9 +624,9 @@ gimp_image_resize (GimpImage *gimage,
/* Reposition all layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layer_translate (layer, offset_x, offset_y);
gimp_layer_translate (layer, offset_x, offset_y);
}
/* Make sure the projection matches the gimage size */
@ -646,17 +646,17 @@ gimp_image_scale (GimpImage *gimage,
gint new_width,
gint new_height)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
if ((new_width == 0) || (new_height == 0))
{
@ -707,8 +707,9 @@ gimp_image_scale (GimpImage *gimage,
list = gimage->layers;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
if (layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
layer = (GimpLayer *) list->data;
if (gimp_layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
{
/* Since 0 < img_scale_w, img_scale_h, failure due to one or more
* vanishing scaled layer dimensions. Implicit delete implemented
@ -1373,23 +1374,23 @@ gboolean
gimp_image_set_tattoo_state (GimpImage *gimage,
Tattoo val)
{
Layer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
GimpLayer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
for (layers = gimage->layers; layers; layers = g_slist_next (layers))
{
Tattoo ltattoo;
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
ltattoo = layer_get_tattoo (layer);
ltattoo = gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
if (ltattoo > maxval)
maxval = ltattoo;
if (gimp_image_get_channel_by_tattoo (gimage, ltattoo) != NULL)
@ -1485,7 +1486,7 @@ gimp_image_colormap_changed (const GimpImage *gimage,
static void
project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1500,7 +1501,7 @@ project_intensity (GimpImage *gimage,
static void
project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1515,7 +1516,7 @@ project_intensity_alpha (GimpImage *gimage,
static void
project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest)
{
@ -1528,7 +1529,7 @@ project_indexed (GimpImage *gimage,
static void
project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1579,14 +1580,16 @@ project_channel (GimpImage *gimage,
static void
gimp_image_free_layers (GimpImage *gimage)
{
GSList *list;
Layer *layer;
GSList *list;
GimpLayer *layer;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer_delete (layer);
layer = (GimpLayer *) list->data;
gtk_object_unref (GTK_OBJECT (layer));
}
g_slist_free (gimage->layers);
g_slist_free (gimage->layer_stack);
}
@ -1616,7 +1619,7 @@ gimp_image_construct_layers (GimpImage *gimage,
gint w,
gint h)
{
Layer *layer;
GimpLayer *layer;
gint x1, y1, x2, y2;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion * mask;
@ -1662,18 +1665,18 @@ gimp_image_construct_layers (GimpImage *gimage,
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible and not floating selections
to the list */
if (!layer_is_floating_sel (layer) &&
if (! gimp_layer_is_floating_sel (layer) &&
gimp_drawable_visible (GIMP_DRAWABLE (layer)))
reverse_list = g_slist_prepend (reverse_list, layer);
}
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
x1 = CLAMP (off_x, x, x + w);
@ -1802,7 +1805,7 @@ gimp_image_initialize_projection (GimpImage *gimage,
gint h)
{
GSList *list;
Layer *layer;
GimpLayer *layer;
gint coverage = 0;
PixelRegion PR;
guchar clear[4] = { 0, 0, 0, 0 };
@ -1816,11 +1819,11 @@ gimp_image_initialize_projection (GimpImage *gimage,
{
gint off_x, off_y;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)) &&
! layer_has_alpha (layer) &&
! gimp_layer_has_alpha (layer) &&
(off_x <= x) &&
(off_y <= y) &&
(off_x + gimp_drawable_width (GIMP_DRAWABLE (layer)) >= x + w) &&
@ -1844,8 +1847,8 @@ gimp_image_get_active_channels (GimpImage *gimage,
GimpDrawable *drawable,
gint *active)
{
Layer *layer;
gint i;
GimpLayer *layer;
gint i;
/* first, blindly copy the gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)
@ -1864,7 +1867,7 @@ gimp_image_get_active_channels (GimpImage *gimage,
if (GIMP_IS_LAYER (drawable))
{
layer = GIMP_LAYER (drawable);
if (layer_has_alpha (layer) && layer->preserve_trans)
if (gimp_layer_has_alpha (layer) && layer->preserve_trans)
active[gimp_drawable_bytes (drawable) - 1] = 0;
}
}
@ -1890,31 +1893,30 @@ gimp_image_construct (GimpImage *gimage,
if (gimage->layers)
{
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*) gimage->layers->data),
gimp_drawable_offsets (GIMP_DRAWABLE ((GimpLayer*) gimage->layers->data),
&xoff, &yoff);
}
if ((gimage->layers) && /* There's a layer. */
(!g_slist_next(gimage->layers)) && /* It's the only layer. */
(layer_has_alpha((Layer*)(gimage->layers->data))) && /* It's !flat. */
(! g_slist_next (gimage->layers)) && /* It's the only layer. */
(gimp_layer_has_alpha ((GimpLayer *) (gimage->layers->data))) && /* It's !flat. */
/* It's visible. */
(gimp_drawable_visible (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(gimp_drawable_width (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_visible (GIMP_DRAWABLE (gimage->layers->data))) &&
(gimp_drawable_width (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->width) &&
(gimp_drawable_height (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_height (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->height) && /* Covers all. */
/* Not indexed. */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(((Layer*)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE (gimage->layers->data))) &&
(((GimpLayer *)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
)
{
gint xoff;
gint yoff;
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)),
gimp_drawable_offsets (GIMP_DRAWABLE (gimage->layers->data),
&xoff, &yoff);
if ((xoff==0) && (yoff==0)) /* Starts at 0,0 */
{
PixelRegion srcPR, destPR;
@ -1923,8 +1925,7 @@ gimp_image_construct (GimpImage *gimage,
g_warning("Can use cow-projection hack. Yay!");
pixel_region_init (&srcPR, gimp_drawable_data
(GIMP_DRAWABLE
((Layer*)(gimage->layers->data))),
(GIMP_DRAWABLE (gimage->layers->data)),
x, y, w,h, FALSE);
pixel_region_init (&destPR,
gimp_image_projection (gimage),
@ -2111,7 +2112,7 @@ gimp_image_invalidate_layer_previews (GimpImage *gimage)
for (tmp = gimage->layers; tmp; tmp = g_slist_next (tmp))
{
layer = (Layer *) tmp->data;
layer = (GimpLayer *) tmp->data;
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (layer), TRUE);
}
@ -2136,11 +2137,11 @@ gimp_image_invalidate_channel_previews (GimpImage *gimage)
gint
gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg)
const GimpLayer *layer_arg)
{
Layer *layer;
GSList *layers;
gint index;
GimpLayer *layer;
GSList *layers;
gint index;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), -1);
@ -2148,7 +2149,7 @@ gimp_image_get_layer_index (const GimpImage *gimage,
layers;
layers = g_slist_next (layers), index++)
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer == layer_arg)
return index;
@ -2157,16 +2158,16 @@ gimp_image_get_layer_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer = (Layer *) g_slist_nth_data (gimage->layers, layer_index);
layer = (GimpLayer *) g_slist_nth_data (gimage->layers, layer_index);
return layer;
}
@ -2195,7 +2196,7 @@ gimp_image_get_channel_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_active_layer (const GimpImage *gimage)
{
g_return_val_if_fail (gimage != NULL, NULL);
@ -2212,12 +2213,12 @@ gimp_image_get_active_channel (const GimpImage *gimage)
return gimage->active_channel;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tattoo)
{
Layer *layer;
GSList *layers;
GimpLayer *layer;
GSList *layers;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2225,9 +2226,9 @@ gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
layers;
layers = g_slist_next (layers))
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer_get_tattoo (layer) == tattoo)
if (gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)) == tattoo)
return layer;
}
@ -2322,7 +2323,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
g_return_val_if_fail (segs != NULL, FALSE);
@ -2333,7 +2334,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
*/
if ((layer = gimage->active_layer))
{
*segs = layer_boundary (layer, n_segs);
*segs = gimp_layer_boundary (layer, n_segs);
return TRUE;
}
else
@ -2344,9 +2345,9 @@ gimp_image_layer_boundary (const GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL);
@ -2358,18 +2359,18 @@ gimp_image_set_active_layer (GimpImage *gimage,
{
if (! gimage->layers)
return NULL;
layer = (Layer *) gimage->layers->data;
layer = (GimpLayer *) gimage->layers->data;
}
if (! layer)
return NULL;
/* Configure the layer stack to reflect this change */
gimage->layer_stack = g_slist_remove (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, layer);
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set the active layer */
gimage->active_layer = layer;
@ -2466,30 +2467,30 @@ gimp_image_set_component_visible (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y)
{
Layer *layer;
GSList *list;
GimpLayer *layer;
GSList *list;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer_pick_correlate (layer, x, y))
if (gimp_layer_pick_correlate (layer, x, y))
return layer;
}
return NULL;
}
Layer *
GimpLayer *
gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2513,9 +2514,9 @@ gimp_image_raise_layer (GimpImage *gimage,
}
Layer *
GimpLayer *
gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2540,11 +2541,9 @@ gimp_image_lower_layer (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, curpos+1, TRUE);
}
Layer *
GimpLayer *
gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2563,7 +2562,7 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return NULL;
}
if (! layer_has_alpha (layer_arg))
if (! gimp_layer_has_alpha (layer_arg))
{
g_message (_("Can't raise Layer without alpha"));
return NULL;
@ -2572,10 +2571,9 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, 0, TRUE);
}
Layer *
GimpLayer *
gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2588,9 +2586,9 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
curpos = g_slist_index (list, layer_arg);
if (curpos < 0)
return NULL;
length = g_slist_length (list);
if (curpos == length-1)
{
g_message (_("Layer is already on bottom"));
@ -2600,20 +2598,19 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, length-1, TRUE);
}
Layer *
GimpLayer *
gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo)
{
Layer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
GimpLayer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2644,9 +2641,10 @@ gimp_image_position_layer (GimpImage *gimage,
return NULL;
/* check if we want to move it below a bottom layer without alpha */
layer = (Layer *) g_slist_last (list)->data;
layer = (GimpLayer *) g_slist_last (list)->data;
if (new_index == list_length - 1 &&
!layer_has_alpha (layer))
! gimp_layer_has_alpha (layer))
{
g_message (_("BG has no alpha, layer was placed above"));
new_index--;
@ -2674,14 +2672,14 @@ gimp_image_position_layer (GimpImage *gimage,
return layer_arg;
}
Layer *
GimpLayer *
gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2696,7 +2694,7 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2728,12 +2726,12 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_flatten (GimpImage *gimage)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2747,7 +2745,7 @@ gimp_image_flatten (GimpImage *gimage)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2761,27 +2759,27 @@ gimp_image_flatten (GimpImage *gimage)
return layer;
}
Layer *
GimpLayer *
gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer *current_layer,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer_list = gimage->layers;
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == current_layer)
{
layer_list = g_slist_next (layer_list);
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
merge_list = g_slist_append (merge_list, layer);
@ -2812,7 +2810,7 @@ gimp_image_merge_down (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type)
@ -2820,9 +2818,9 @@ gimp_image_merge_layers (GimpImage *gimage,
GSList *reverse_list = NULL;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
Layer *merge_layer;
Layer *layer;
Layer *bottom;
GimpLayer *merge_layer;
GimpLayer *layer;
GimpLayer *bottom;
LayerModeEffects bottom_mode;
guchar bg[4] = {0, 0, 0, 0};
GimpImageType type;
@ -2847,7 +2845,7 @@ gimp_image_merge_layers (GimpImage *gimage,
count = 0;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
switch (merge_type)
@ -2925,9 +2923,10 @@ gimp_image_merge_layers (GimpImage *gimage,
case INDEXED: type = INDEXED_GIMAGE; break;
}
merge_layer = layer_new (gimage, (x2 - x1), (y2 - y1),
type, gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
merge_layer = gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
type,
gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
g_message ("gimp_image_merge_layers: could not allocate merge layer");
@ -2961,10 +2960,10 @@ gimp_image_merge_layers (GimpImage *gimage,
*/
merge_layer =
layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
@ -2988,7 +2987,7 @@ gimp_image_merge_layers (GimpImage *gimage,
/* Find the index in the layer list of the bottom layer--we need this
* in order to add the final, merged layer to the layer list correctly
*/
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
position =
g_slist_length (gimage->layers) -
gimp_image_get_layer_index (gimage, layer);
@ -3010,13 +3009,14 @@ gimp_image_merge_layers (GimpImage *gimage,
}
/* Copy the tattoo and parasites of the bottom layer to the new layer */
layer_set_tattoo(merge_layer, layer_get_tattoo(layer));
gimp_drawable_set_tattoo (GIMP_DRAWABLE (merge_layer),
gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)));
GIMP_DRAWABLE(merge_layer)->parasites =
parasite_list_copy (GIMP_DRAWABLE(layer)->parasites);
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
/* determine what sort of operation is being attempted and
* if it's actually legal...
@ -3080,7 +3080,8 @@ gimp_image_merge_layers (GimpImage *gimage,
merge_list = gimage->layers;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
merge_list = g_slist_next (merge_list);
gimp_image_remove_layer (gimage, layer);
}
@ -3118,9 +3119,9 @@ gimp_image_merge_layers (GimpImage *gimage,
return merge_layer;
}
Layer *
GimpLayer *
gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer *float_layer,
gint position)
{
LayerUndo *lu;
@ -3148,7 +3149,7 @@ gimp_image_add_layer (GimpImage *gimage,
undo_push_layer (gimage, LAYER_ADD_UNDO, lu);
/* If the layer is a floating selection, set the ID */
if (layer_is_floating_sel (float_layer))
if (gimp_layer_is_floating_sel (float_layer))
gimage->floating_sel = float_layer;
/* let the layer know about the gimage */
@ -3205,9 +3206,9 @@ gimp_image_add_layer (GimpImage *gimage,
return float_layer;
}
Layer *
GimpLayer *
gimp_image_remove_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerUndo *lu;
@ -3278,7 +3279,7 @@ gimp_image_add_layer_mask (GimpImage *gimage,
return (NULL);
}
if (! layer_has_alpha (layer))
if (! gimp_layer_has_alpha (layer))
{
g_message (_("Cannot add layer mask to a layer\nwith no alpha channel."));
return (NULL);
@ -3333,7 +3334,7 @@ gimp_image_remove_layer_mask (GimpImage *gimage,
lmu->edit_mask = layer->edit_mask;
lmu->show_mask = layer->show_mask;
layer_apply_mask (layer, mode);
gimp_layer_apply_mask (layer, mode);
/* Push the undo--Important to do it here, AFTER the call
* to layer_apply_mask, in case the undo push fails and the
@ -3619,7 +3620,7 @@ gimp_image_is_empty (const GimpImage *gimage)
GimpDrawable *
gimp_image_active_drawable (const GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -3805,7 +3806,7 @@ gimp_image_clean_all (GimpImage *gimage)
gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]);
}
Layer *
GimpLayer *
gimp_image_floating_sel (const GimpImage *gimage)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
@ -3898,8 +3899,8 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
gint width,
gint height)
{
Layer *layer;
Layer *floating_sel;
GimpLayer *layer;
GimpLayer *floating_sel;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
TempBuf *comp;
@ -3940,15 +3941,17 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
floating_sel = NULL;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible to the list */
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
/* floating selections are added right above the layer
they are attached to */
if (layer_is_floating_sel (layer))
floating_sel = layer;
if (gimp_layer_is_floating_sel (layer))
{
floating_sel = layer;
}
else
{
if (floating_sel &&
@ -3964,7 +3967,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -3987,7 +3990,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
src1PR.data =
temp_buf_data (comp) + y1 * src1PR.rowstride + x1 * src1PR.bytes;
layer_buf = layer_preview (layer, w, h);
layer_buf = gimp_layer_preview (layer, w, h);
src2PR.bytes = layer_buf->bytes;
src2PR.w = src1PR.w;
src2PR.h = src1PR.h;
@ -4115,7 +4118,7 @@ gimp_image_preview_valid (const GimpImage *gimage,
void
gimp_image_invalidate_preview (GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_if_fail (GIMP_IS_IMAGE (gimage));

View File

@ -85,9 +85,9 @@ struct _GimpImage
GSList *channels; /* the list of masks */
GSList *layer_stack; /* the layers in MRU order */
Layer *active_layer; /* ID of active layer */
GimpLayer *active_layer; /* ID of active layer */
Channel *active_channel; /* ID of active channel */
Layer *floating_sel; /* ID of fs layer */
GimpLayer *floating_sel; /* ID of fs layer */
Channel *selection_mask; /* selection mask channel */
ParasiteList *parasites; /* Plug-in parasite data */
@ -164,11 +164,11 @@ struct _Guide
typedef struct _GimpImageRepaintArg
{
Layer *layer;
guint x;
guint y;
guint width;
guint height;
GimpLayer *layer;
guint x;
guint y;
guint width;
guint height;
} GimpImageRepaintArg;
@ -283,14 +283,14 @@ void gimp_image_colormap_changed (const GimpImage *image,
/* layer/channel functions */
gint gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg);
Layer * gimp_image_get_layer_by_index (const GimpImage *gimage,
const GimpLayer *layer_arg);
GimpLayer * gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index);
gint gimp_image_get_channel_index (const GimpImage *gimage,
const Channel *channel_arg);
Layer * gimp_image_get_active_layer (const GimpImage *gimage);
GimpLayer * gimp_image_get_active_layer (const GimpImage *gimage);
Channel * gimp_image_get_active_channel (const GimpImage *gimage);
Layer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
GimpLayer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
Channel * gimp_image_get_channel_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
@ -304,8 +304,8 @@ gboolean gimp_image_get_component_visible (const GimpImage *gimage,
gboolean gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs);
Layer * gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_set_active_layer (GimpImage *gimage,
GimpLayer *layer);
Channel * gimp_image_set_active_channel (GimpImage *gimage,
Channel *channel);
Channel * gimp_image_unset_active_channel (GimpImage *gimage);
@ -315,40 +315,40 @@ void gimp_image_set_component_active (GimpImage *gimage,
void gimp_image_set_component_visible (GimpImage *gimage,
ChannelType type,
gboolean visible);
Layer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
GimpLayer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y);
Layer * gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer * gimp_image_raise_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_raise_layer_to_top (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_position_layer (GimpImage *gimage,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo);
Layer * gimp_image_merge_visible_layers (GimpImage *gimage,
GimpLayer * gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type);
Layer * gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer * gimp_image_merge_down (GimpImage *gimage,
GimpLayer *current_layer,
MergeType merge_type);
Layer * gimp_image_flatten (GimpImage *gimage);
Layer * gimp_image_merge_layers (GimpImage *gimage,
GimpLayer * gimp_image_flatten (GimpImage *gimage);
GimpLayer * gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type);
Layer * gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer * gimp_image_add_layer (GimpImage *gimage,
GimpLayer *float_layer,
gint position);
Layer * gimp_image_remove_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_remove_layer (GimpImage *gimage,
GimpLayer *layer);
GimpLayerMask * gimp_image_add_layer_mask (GimpImage *gimage,
GimpLayer *layer,
GimpLayerMask *mask);
Channel * gimp_image_remove_layer_mask (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
MaskApplyMode mode);
Channel * gimp_image_raise_channel (GimpImage *gimage,
Channel *channel_arg);
@ -414,7 +414,7 @@ void gimp_image_undo_event (GimpImage *gimage,
gint gimp_image_dirty (GimpImage *gimage);
gint gimp_image_clean (GimpImage *gimage);
void gimp_image_clean_all (GimpImage *gimage);
Layer * gimp_image_floating_sel (const GimpImage *gimage);
GimpLayer * gimp_image_floating_sel (const GimpImage *gimage);
guchar * gimp_image_cmap (const GimpImage *gimage);
/* projection access functions */

View File

@ -94,21 +94,21 @@ static void gimp_image_get_active_channels (GimpImage *gimage,
/* projection functions */
static void project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest);
static void project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
@ -552,11 +552,11 @@ gimp_image_resize (GimpImage *gimage,
gint offset_x,
gint offset_y)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GList *guide_list;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GList *guide_list;
gimp_add_busy_cursors ();
@ -624,9 +624,9 @@ gimp_image_resize (GimpImage *gimage,
/* Reposition all layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layer_translate (layer, offset_x, offset_y);
gimp_layer_translate (layer, offset_x, offset_y);
}
/* Make sure the projection matches the gimage size */
@ -646,17 +646,17 @@ gimp_image_scale (GimpImage *gimage,
gint new_width,
gint new_height)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
if ((new_width == 0) || (new_height == 0))
{
@ -707,8 +707,9 @@ gimp_image_scale (GimpImage *gimage,
list = gimage->layers;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
if (layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
layer = (GimpLayer *) list->data;
if (gimp_layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
{
/* Since 0 < img_scale_w, img_scale_h, failure due to one or more
* vanishing scaled layer dimensions. Implicit delete implemented
@ -1373,23 +1374,23 @@ gboolean
gimp_image_set_tattoo_state (GimpImage *gimage,
Tattoo val)
{
Layer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
GimpLayer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
for (layers = gimage->layers; layers; layers = g_slist_next (layers))
{
Tattoo ltattoo;
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
ltattoo = layer_get_tattoo (layer);
ltattoo = gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
if (ltattoo > maxval)
maxval = ltattoo;
if (gimp_image_get_channel_by_tattoo (gimage, ltattoo) != NULL)
@ -1485,7 +1486,7 @@ gimp_image_colormap_changed (const GimpImage *gimage,
static void
project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1500,7 +1501,7 @@ project_intensity (GimpImage *gimage,
static void
project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1515,7 +1516,7 @@ project_intensity_alpha (GimpImage *gimage,
static void
project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest)
{
@ -1528,7 +1529,7 @@ project_indexed (GimpImage *gimage,
static void
project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1579,14 +1580,16 @@ project_channel (GimpImage *gimage,
static void
gimp_image_free_layers (GimpImage *gimage)
{
GSList *list;
Layer *layer;
GSList *list;
GimpLayer *layer;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer_delete (layer);
layer = (GimpLayer *) list->data;
gtk_object_unref (GTK_OBJECT (layer));
}
g_slist_free (gimage->layers);
g_slist_free (gimage->layer_stack);
}
@ -1616,7 +1619,7 @@ gimp_image_construct_layers (GimpImage *gimage,
gint w,
gint h)
{
Layer *layer;
GimpLayer *layer;
gint x1, y1, x2, y2;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion * mask;
@ -1662,18 +1665,18 @@ gimp_image_construct_layers (GimpImage *gimage,
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible and not floating selections
to the list */
if (!layer_is_floating_sel (layer) &&
if (! gimp_layer_is_floating_sel (layer) &&
gimp_drawable_visible (GIMP_DRAWABLE (layer)))
reverse_list = g_slist_prepend (reverse_list, layer);
}
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
x1 = CLAMP (off_x, x, x + w);
@ -1802,7 +1805,7 @@ gimp_image_initialize_projection (GimpImage *gimage,
gint h)
{
GSList *list;
Layer *layer;
GimpLayer *layer;
gint coverage = 0;
PixelRegion PR;
guchar clear[4] = { 0, 0, 0, 0 };
@ -1816,11 +1819,11 @@ gimp_image_initialize_projection (GimpImage *gimage,
{
gint off_x, off_y;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)) &&
! layer_has_alpha (layer) &&
! gimp_layer_has_alpha (layer) &&
(off_x <= x) &&
(off_y <= y) &&
(off_x + gimp_drawable_width (GIMP_DRAWABLE (layer)) >= x + w) &&
@ -1844,8 +1847,8 @@ gimp_image_get_active_channels (GimpImage *gimage,
GimpDrawable *drawable,
gint *active)
{
Layer *layer;
gint i;
GimpLayer *layer;
gint i;
/* first, blindly copy the gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)
@ -1864,7 +1867,7 @@ gimp_image_get_active_channels (GimpImage *gimage,
if (GIMP_IS_LAYER (drawable))
{
layer = GIMP_LAYER (drawable);
if (layer_has_alpha (layer) && layer->preserve_trans)
if (gimp_layer_has_alpha (layer) && layer->preserve_trans)
active[gimp_drawable_bytes (drawable) - 1] = 0;
}
}
@ -1890,31 +1893,30 @@ gimp_image_construct (GimpImage *gimage,
if (gimage->layers)
{
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*) gimage->layers->data),
gimp_drawable_offsets (GIMP_DRAWABLE ((GimpLayer*) gimage->layers->data),
&xoff, &yoff);
}
if ((gimage->layers) && /* There's a layer. */
(!g_slist_next(gimage->layers)) && /* It's the only layer. */
(layer_has_alpha((Layer*)(gimage->layers->data))) && /* It's !flat. */
(! g_slist_next (gimage->layers)) && /* It's the only layer. */
(gimp_layer_has_alpha ((GimpLayer *) (gimage->layers->data))) && /* It's !flat. */
/* It's visible. */
(gimp_drawable_visible (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(gimp_drawable_width (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_visible (GIMP_DRAWABLE (gimage->layers->data))) &&
(gimp_drawable_width (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->width) &&
(gimp_drawable_height (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_height (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->height) && /* Covers all. */
/* Not indexed. */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(((Layer*)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE (gimage->layers->data))) &&
(((GimpLayer *)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
)
{
gint xoff;
gint yoff;
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)),
gimp_drawable_offsets (GIMP_DRAWABLE (gimage->layers->data),
&xoff, &yoff);
if ((xoff==0) && (yoff==0)) /* Starts at 0,0 */
{
PixelRegion srcPR, destPR;
@ -1923,8 +1925,7 @@ gimp_image_construct (GimpImage *gimage,
g_warning("Can use cow-projection hack. Yay!");
pixel_region_init (&srcPR, gimp_drawable_data
(GIMP_DRAWABLE
((Layer*)(gimage->layers->data))),
(GIMP_DRAWABLE (gimage->layers->data)),
x, y, w,h, FALSE);
pixel_region_init (&destPR,
gimp_image_projection (gimage),
@ -2111,7 +2112,7 @@ gimp_image_invalidate_layer_previews (GimpImage *gimage)
for (tmp = gimage->layers; tmp; tmp = g_slist_next (tmp))
{
layer = (Layer *) tmp->data;
layer = (GimpLayer *) tmp->data;
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (layer), TRUE);
}
@ -2136,11 +2137,11 @@ gimp_image_invalidate_channel_previews (GimpImage *gimage)
gint
gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg)
const GimpLayer *layer_arg)
{
Layer *layer;
GSList *layers;
gint index;
GimpLayer *layer;
GSList *layers;
gint index;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), -1);
@ -2148,7 +2149,7 @@ gimp_image_get_layer_index (const GimpImage *gimage,
layers;
layers = g_slist_next (layers), index++)
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer == layer_arg)
return index;
@ -2157,16 +2158,16 @@ gimp_image_get_layer_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer = (Layer *) g_slist_nth_data (gimage->layers, layer_index);
layer = (GimpLayer *) g_slist_nth_data (gimage->layers, layer_index);
return layer;
}
@ -2195,7 +2196,7 @@ gimp_image_get_channel_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_active_layer (const GimpImage *gimage)
{
g_return_val_if_fail (gimage != NULL, NULL);
@ -2212,12 +2213,12 @@ gimp_image_get_active_channel (const GimpImage *gimage)
return gimage->active_channel;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tattoo)
{
Layer *layer;
GSList *layers;
GimpLayer *layer;
GSList *layers;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2225,9 +2226,9 @@ gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
layers;
layers = g_slist_next (layers))
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer_get_tattoo (layer) == tattoo)
if (gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)) == tattoo)
return layer;
}
@ -2322,7 +2323,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
g_return_val_if_fail (segs != NULL, FALSE);
@ -2333,7 +2334,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
*/
if ((layer = gimage->active_layer))
{
*segs = layer_boundary (layer, n_segs);
*segs = gimp_layer_boundary (layer, n_segs);
return TRUE;
}
else
@ -2344,9 +2345,9 @@ gimp_image_layer_boundary (const GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL);
@ -2358,18 +2359,18 @@ gimp_image_set_active_layer (GimpImage *gimage,
{
if (! gimage->layers)
return NULL;
layer = (Layer *) gimage->layers->data;
layer = (GimpLayer *) gimage->layers->data;
}
if (! layer)
return NULL;
/* Configure the layer stack to reflect this change */
gimage->layer_stack = g_slist_remove (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, layer);
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set the active layer */
gimage->active_layer = layer;
@ -2466,30 +2467,30 @@ gimp_image_set_component_visible (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y)
{
Layer *layer;
GSList *list;
GimpLayer *layer;
GSList *list;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer_pick_correlate (layer, x, y))
if (gimp_layer_pick_correlate (layer, x, y))
return layer;
}
return NULL;
}
Layer *
GimpLayer *
gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2513,9 +2514,9 @@ gimp_image_raise_layer (GimpImage *gimage,
}
Layer *
GimpLayer *
gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2540,11 +2541,9 @@ gimp_image_lower_layer (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, curpos+1, TRUE);
}
Layer *
GimpLayer *
gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2563,7 +2562,7 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return NULL;
}
if (! layer_has_alpha (layer_arg))
if (! gimp_layer_has_alpha (layer_arg))
{
g_message (_("Can't raise Layer without alpha"));
return NULL;
@ -2572,10 +2571,9 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, 0, TRUE);
}
Layer *
GimpLayer *
gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2588,9 +2586,9 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
curpos = g_slist_index (list, layer_arg);
if (curpos < 0)
return NULL;
length = g_slist_length (list);
if (curpos == length-1)
{
g_message (_("Layer is already on bottom"));
@ -2600,20 +2598,19 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, length-1, TRUE);
}
Layer *
GimpLayer *
gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo)
{
Layer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
GimpLayer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2644,9 +2641,10 @@ gimp_image_position_layer (GimpImage *gimage,
return NULL;
/* check if we want to move it below a bottom layer without alpha */
layer = (Layer *) g_slist_last (list)->data;
layer = (GimpLayer *) g_slist_last (list)->data;
if (new_index == list_length - 1 &&
!layer_has_alpha (layer))
! gimp_layer_has_alpha (layer))
{
g_message (_("BG has no alpha, layer was placed above"));
new_index--;
@ -2674,14 +2672,14 @@ gimp_image_position_layer (GimpImage *gimage,
return layer_arg;
}
Layer *
GimpLayer *
gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2696,7 +2694,7 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2728,12 +2726,12 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_flatten (GimpImage *gimage)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2747,7 +2745,7 @@ gimp_image_flatten (GimpImage *gimage)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2761,27 +2759,27 @@ gimp_image_flatten (GimpImage *gimage)
return layer;
}
Layer *
GimpLayer *
gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer *current_layer,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer_list = gimage->layers;
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == current_layer)
{
layer_list = g_slist_next (layer_list);
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
merge_list = g_slist_append (merge_list, layer);
@ -2812,7 +2810,7 @@ gimp_image_merge_down (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type)
@ -2820,9 +2818,9 @@ gimp_image_merge_layers (GimpImage *gimage,
GSList *reverse_list = NULL;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
Layer *merge_layer;
Layer *layer;
Layer *bottom;
GimpLayer *merge_layer;
GimpLayer *layer;
GimpLayer *bottom;
LayerModeEffects bottom_mode;
guchar bg[4] = {0, 0, 0, 0};
GimpImageType type;
@ -2847,7 +2845,7 @@ gimp_image_merge_layers (GimpImage *gimage,
count = 0;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
switch (merge_type)
@ -2925,9 +2923,10 @@ gimp_image_merge_layers (GimpImage *gimage,
case INDEXED: type = INDEXED_GIMAGE; break;
}
merge_layer = layer_new (gimage, (x2 - x1), (y2 - y1),
type, gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
merge_layer = gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
type,
gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
g_message ("gimp_image_merge_layers: could not allocate merge layer");
@ -2961,10 +2960,10 @@ gimp_image_merge_layers (GimpImage *gimage,
*/
merge_layer =
layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
@ -2988,7 +2987,7 @@ gimp_image_merge_layers (GimpImage *gimage,
/* Find the index in the layer list of the bottom layer--we need this
* in order to add the final, merged layer to the layer list correctly
*/
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
position =
g_slist_length (gimage->layers) -
gimp_image_get_layer_index (gimage, layer);
@ -3010,13 +3009,14 @@ gimp_image_merge_layers (GimpImage *gimage,
}
/* Copy the tattoo and parasites of the bottom layer to the new layer */
layer_set_tattoo(merge_layer, layer_get_tattoo(layer));
gimp_drawable_set_tattoo (GIMP_DRAWABLE (merge_layer),
gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)));
GIMP_DRAWABLE(merge_layer)->parasites =
parasite_list_copy (GIMP_DRAWABLE(layer)->parasites);
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
/* determine what sort of operation is being attempted and
* if it's actually legal...
@ -3080,7 +3080,8 @@ gimp_image_merge_layers (GimpImage *gimage,
merge_list = gimage->layers;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
merge_list = g_slist_next (merge_list);
gimp_image_remove_layer (gimage, layer);
}
@ -3118,9 +3119,9 @@ gimp_image_merge_layers (GimpImage *gimage,
return merge_layer;
}
Layer *
GimpLayer *
gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer *float_layer,
gint position)
{
LayerUndo *lu;
@ -3148,7 +3149,7 @@ gimp_image_add_layer (GimpImage *gimage,
undo_push_layer (gimage, LAYER_ADD_UNDO, lu);
/* If the layer is a floating selection, set the ID */
if (layer_is_floating_sel (float_layer))
if (gimp_layer_is_floating_sel (float_layer))
gimage->floating_sel = float_layer;
/* let the layer know about the gimage */
@ -3205,9 +3206,9 @@ gimp_image_add_layer (GimpImage *gimage,
return float_layer;
}
Layer *
GimpLayer *
gimp_image_remove_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerUndo *lu;
@ -3278,7 +3279,7 @@ gimp_image_add_layer_mask (GimpImage *gimage,
return (NULL);
}
if (! layer_has_alpha (layer))
if (! gimp_layer_has_alpha (layer))
{
g_message (_("Cannot add layer mask to a layer\nwith no alpha channel."));
return (NULL);
@ -3333,7 +3334,7 @@ gimp_image_remove_layer_mask (GimpImage *gimage,
lmu->edit_mask = layer->edit_mask;
lmu->show_mask = layer->show_mask;
layer_apply_mask (layer, mode);
gimp_layer_apply_mask (layer, mode);
/* Push the undo--Important to do it here, AFTER the call
* to layer_apply_mask, in case the undo push fails and the
@ -3619,7 +3620,7 @@ gimp_image_is_empty (const GimpImage *gimage)
GimpDrawable *
gimp_image_active_drawable (const GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -3805,7 +3806,7 @@ gimp_image_clean_all (GimpImage *gimage)
gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]);
}
Layer *
GimpLayer *
gimp_image_floating_sel (const GimpImage *gimage)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
@ -3898,8 +3899,8 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
gint width,
gint height)
{
Layer *layer;
Layer *floating_sel;
GimpLayer *layer;
GimpLayer *floating_sel;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
TempBuf *comp;
@ -3940,15 +3941,17 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
floating_sel = NULL;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible to the list */
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
/* floating selections are added right above the layer
they are attached to */
if (layer_is_floating_sel (layer))
floating_sel = layer;
if (gimp_layer_is_floating_sel (layer))
{
floating_sel = layer;
}
else
{
if (floating_sel &&
@ -3964,7 +3967,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -3987,7 +3990,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
src1PR.data =
temp_buf_data (comp) + y1 * src1PR.rowstride + x1 * src1PR.bytes;
layer_buf = layer_preview (layer, w, h);
layer_buf = gimp_layer_preview (layer, w, h);
src2PR.bytes = layer_buf->bytes;
src2PR.w = src1PR.w;
src2PR.h = src1PR.h;
@ -4115,7 +4118,7 @@ gimp_image_preview_valid (const GimpImage *gimage,
void
gimp_image_invalidate_preview (GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_if_fail (GIMP_IS_IMAGE (gimage));

View File

@ -85,9 +85,9 @@ struct _GimpImage
GSList *channels; /* the list of masks */
GSList *layer_stack; /* the layers in MRU order */
Layer *active_layer; /* ID of active layer */
GimpLayer *active_layer; /* ID of active layer */
Channel *active_channel; /* ID of active channel */
Layer *floating_sel; /* ID of fs layer */
GimpLayer *floating_sel; /* ID of fs layer */
Channel *selection_mask; /* selection mask channel */
ParasiteList *parasites; /* Plug-in parasite data */
@ -164,11 +164,11 @@ struct _Guide
typedef struct _GimpImageRepaintArg
{
Layer *layer;
guint x;
guint y;
guint width;
guint height;
GimpLayer *layer;
guint x;
guint y;
guint width;
guint height;
} GimpImageRepaintArg;
@ -283,14 +283,14 @@ void gimp_image_colormap_changed (const GimpImage *image,
/* layer/channel functions */
gint gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg);
Layer * gimp_image_get_layer_by_index (const GimpImage *gimage,
const GimpLayer *layer_arg);
GimpLayer * gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index);
gint gimp_image_get_channel_index (const GimpImage *gimage,
const Channel *channel_arg);
Layer * gimp_image_get_active_layer (const GimpImage *gimage);
GimpLayer * gimp_image_get_active_layer (const GimpImage *gimage);
Channel * gimp_image_get_active_channel (const GimpImage *gimage);
Layer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
GimpLayer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
Channel * gimp_image_get_channel_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
@ -304,8 +304,8 @@ gboolean gimp_image_get_component_visible (const GimpImage *gimage,
gboolean gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs);
Layer * gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_set_active_layer (GimpImage *gimage,
GimpLayer *layer);
Channel * gimp_image_set_active_channel (GimpImage *gimage,
Channel *channel);
Channel * gimp_image_unset_active_channel (GimpImage *gimage);
@ -315,40 +315,40 @@ void gimp_image_set_component_active (GimpImage *gimage,
void gimp_image_set_component_visible (GimpImage *gimage,
ChannelType type,
gboolean visible);
Layer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
GimpLayer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y);
Layer * gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer * gimp_image_raise_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_raise_layer_to_top (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_position_layer (GimpImage *gimage,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo);
Layer * gimp_image_merge_visible_layers (GimpImage *gimage,
GimpLayer * gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type);
Layer * gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer * gimp_image_merge_down (GimpImage *gimage,
GimpLayer *current_layer,
MergeType merge_type);
Layer * gimp_image_flatten (GimpImage *gimage);
Layer * gimp_image_merge_layers (GimpImage *gimage,
GimpLayer * gimp_image_flatten (GimpImage *gimage);
GimpLayer * gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type);
Layer * gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer * gimp_image_add_layer (GimpImage *gimage,
GimpLayer *float_layer,
gint position);
Layer * gimp_image_remove_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_remove_layer (GimpImage *gimage,
GimpLayer *layer);
GimpLayerMask * gimp_image_add_layer_mask (GimpImage *gimage,
GimpLayer *layer,
GimpLayerMask *mask);
Channel * gimp_image_remove_layer_mask (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
MaskApplyMode mode);
Channel * gimp_image_raise_channel (GimpImage *gimage,
Channel *channel_arg);
@ -414,7 +414,7 @@ void gimp_image_undo_event (GimpImage *gimage,
gint gimp_image_dirty (GimpImage *gimage);
gint gimp_image_clean (GimpImage *gimage);
void gimp_image_clean_all (GimpImage *gimage);
Layer * gimp_image_floating_sel (const GimpImage *gimage);
GimpLayer * gimp_image_floating_sel (const GimpImage *gimage);
guchar * gimp_image_cmap (const GimpImage *gimage);
/* projection access functions */

View File

@ -162,32 +162,32 @@ static void undo_free_cantundo (UndoState, UndoType, gpointer);
/* Sizing functions */
static gint layer_size (Layer *layer);
static gint channel_size (Channel *channel);
static gint layer_size (GimpLayer *layer);
static gint channel_size (Channel *channel);
static const gchar * undo_type_to_name (UndoType undo_type);
static const gchar * undo_type_to_name (UndoType undo_type);
static Undo * undo_new (UndoType undo_type,
glong size,
gboolean dirties_image);
static Undo * undo_new (UndoType undo_type,
glong size,
gboolean dirties_image);
static gboolean shrink_wrap = FALSE;
static gint
layer_size (Layer *layer)
layer_size (GimpLayer *layer)
{
gint size;
size =
sizeof (Layer) +
sizeof (GimpLayer) +
GIMP_DRAWABLE (layer)->width * GIMP_DRAWABLE (layer)->height *
GIMP_DRAWABLE (layer)->bytes +
strlen (GIMP_OBJECT (layer)->name);
if (layer_get_mask (layer))
size += channel_size (GIMP_CHANNEL (layer_get_mask (layer)));
if (gimp_layer_get_mask (layer))
size += channel_size (GIMP_CHANNEL (gimp_layer_get_mask (layer)));
return size;
}
@ -1198,7 +1198,7 @@ undo_pop_layer_displace (GimpImage *gimage,
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
ldu->info[1] = old_offsets[0];
ldu->info[2] = old_offsets[1];
@ -1469,7 +1469,7 @@ undo_pop_layer (GimpImage *gimage,
gimage->layer_stack = g_slist_remove (gimage->layer_stack, lu->layer);
/* reset the gimage values */
if (layer_is_floating_sel (lu->layer))
if (gimp_layer_is_floating_sel (lu->layer))
{
gimage->floating_sel = NULL;
/* reset the old drawable */
@ -1488,10 +1488,10 @@ undo_pop_layer (GimpImage *gimage,
/* hide the current selection--for all views */
if (gimage->active_layer != NULL)
layer_invalidate_boundary ((gimage->active_layer));
gimp_layer_invalidate_boundary ((gimage->active_layer));
/* if this is a floating selection, set the fs pointer */
if (layer_is_floating_sel (lu->layer))
if (gimp_layer_is_floating_sel (lu->layer))
gimage->floating_sel = lu->layer;
/* add the new layer */
@ -1543,7 +1543,7 @@ undo_push_layer_mod (GimpImage *gimage,
gpointer *data;
gint size;
layer = (Layer *) layer_ptr;
layer = (GimpLayer *) layer_ptr;
tiles = GIMP_DRAWABLE (layer)->tiles;
tile_manager_set_offsets (tiles,
@ -2029,7 +2029,7 @@ undo_pop_fs_to_layer (GimpImage *gimage,
fsu->layer->fs.initial = TRUE;
/* clear the selection */
layer_invalidate_boundary (fsu->layer);
gimp_layer_invalidate_boundary (fsu->layer);
/* Update the preview for the gimage and underlying drawable */
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (fsu->layer), TRUE);
@ -2047,7 +2047,7 @@ undo_pop_fs_to_layer (GimpImage *gimage,
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (fsu->layer), TRUE);
/* clear the selection */
layer_invalidate_boundary (fsu->layer);
gimp_layer_invalidate_boundary (fsu->layer);
/* update the pointers */
fsu->layer->fs.drawable = NULL;
@ -2108,15 +2108,15 @@ undo_pop_fs_rigor (GimpImage *gimage,
UndoType type,
gpointer layer_ptr)
{
gint32 layer_ID;
Layer *floating_layer;
gint32 layer_ID;
GimpLayer *floating_layer;
layer_ID = *((gint32 *) layer_ptr);
if ((floating_layer = (GimpLayer *) gimp_drawable_get_by_ID (layer_ID)) == NULL)
return FALSE;
if (! layer_is_floating_sel (floating_layer))
if (! gimp_layer_is_floating_sel (floating_layer))
return FALSE;
switch (state)
@ -2187,15 +2187,15 @@ undo_pop_fs_relax (GimpImage *gimage,
UndoType type,
gpointer layer_ptr)
{
gint32 layer_ID;
Layer *floating_layer;
gint32 layer_ID;
GimpLayer *floating_layer;
layer_ID = *((gint32 *) layer_ptr);
if ((floating_layer = (GimpLayer *) gimp_drawable_get_by_ID (layer_ID)) == NULL)
return FALSE;
if (! layer_is_floating_sel (floating_layer))
if (! gimp_layer_is_floating_sel (floating_layer))
return FALSE;
switch (state)
@ -2812,7 +2812,7 @@ undo_push_layer_rename (GimpImage *gimage,
new->free_func = undo_free_layer_rename;
data->layer = layer;
data->old_name = g_strdup (layer_get_name (layer));
data->old_name = g_strdup (gimp_object_get_name (GIMP_OBJECT (layer)));
return TRUE;
}
@ -2829,8 +2829,8 @@ undo_pop_layer_rename (GimpImage *gimage,
LayerRenameUndo *data = data_ptr;
gchar *tmp;
tmp = g_strdup (layer_get_name (data->layer));
layer_set_name (data->layer, data->old_name);
tmp = g_strdup (gimp_object_get_name (GIMP_OBJECT (data->layer)));
gimp_object_set_name (GIMP_OBJECT (data->layer), data->old_name);
g_free (data->old_name);
data->old_name = tmp;

View File

@ -94,21 +94,21 @@ static void gimp_image_get_active_channels (GimpImage *gimage,
/* projection functions */
static void project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest);
static void project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
@ -552,11 +552,11 @@ gimp_image_resize (GimpImage *gimage,
gint offset_x,
gint offset_y)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GList *guide_list;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GList *guide_list;
gimp_add_busy_cursors ();
@ -624,9 +624,9 @@ gimp_image_resize (GimpImage *gimage,
/* Reposition all layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layer_translate (layer, offset_x, offset_y);
gimp_layer_translate (layer, offset_x, offset_y);
}
/* Make sure the projection matches the gimage size */
@ -646,17 +646,17 @@ gimp_image_scale (GimpImage *gimage,
gint new_width,
gint new_height)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
if ((new_width == 0) || (new_height == 0))
{
@ -707,8 +707,9 @@ gimp_image_scale (GimpImage *gimage,
list = gimage->layers;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
if (layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
layer = (GimpLayer *) list->data;
if (gimp_layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
{
/* Since 0 < img_scale_w, img_scale_h, failure due to one or more
* vanishing scaled layer dimensions. Implicit delete implemented
@ -1373,23 +1374,23 @@ gboolean
gimp_image_set_tattoo_state (GimpImage *gimage,
Tattoo val)
{
Layer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
GimpLayer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
for (layers = gimage->layers; layers; layers = g_slist_next (layers))
{
Tattoo ltattoo;
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
ltattoo = layer_get_tattoo (layer);
ltattoo = gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
if (ltattoo > maxval)
maxval = ltattoo;
if (gimp_image_get_channel_by_tattoo (gimage, ltattoo) != NULL)
@ -1485,7 +1486,7 @@ gimp_image_colormap_changed (const GimpImage *gimage,
static void
project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1500,7 +1501,7 @@ project_intensity (GimpImage *gimage,
static void
project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1515,7 +1516,7 @@ project_intensity_alpha (GimpImage *gimage,
static void
project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest)
{
@ -1528,7 +1529,7 @@ project_indexed (GimpImage *gimage,
static void
project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1579,14 +1580,16 @@ project_channel (GimpImage *gimage,
static void
gimp_image_free_layers (GimpImage *gimage)
{
GSList *list;
Layer *layer;
GSList *list;
GimpLayer *layer;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer_delete (layer);
layer = (GimpLayer *) list->data;
gtk_object_unref (GTK_OBJECT (layer));
}
g_slist_free (gimage->layers);
g_slist_free (gimage->layer_stack);
}
@ -1616,7 +1619,7 @@ gimp_image_construct_layers (GimpImage *gimage,
gint w,
gint h)
{
Layer *layer;
GimpLayer *layer;
gint x1, y1, x2, y2;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion * mask;
@ -1662,18 +1665,18 @@ gimp_image_construct_layers (GimpImage *gimage,
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible and not floating selections
to the list */
if (!layer_is_floating_sel (layer) &&
if (! gimp_layer_is_floating_sel (layer) &&
gimp_drawable_visible (GIMP_DRAWABLE (layer)))
reverse_list = g_slist_prepend (reverse_list, layer);
}
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
x1 = CLAMP (off_x, x, x + w);
@ -1802,7 +1805,7 @@ gimp_image_initialize_projection (GimpImage *gimage,
gint h)
{
GSList *list;
Layer *layer;
GimpLayer *layer;
gint coverage = 0;
PixelRegion PR;
guchar clear[4] = { 0, 0, 0, 0 };
@ -1816,11 +1819,11 @@ gimp_image_initialize_projection (GimpImage *gimage,
{
gint off_x, off_y;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)) &&
! layer_has_alpha (layer) &&
! gimp_layer_has_alpha (layer) &&
(off_x <= x) &&
(off_y <= y) &&
(off_x + gimp_drawable_width (GIMP_DRAWABLE (layer)) >= x + w) &&
@ -1844,8 +1847,8 @@ gimp_image_get_active_channels (GimpImage *gimage,
GimpDrawable *drawable,
gint *active)
{
Layer *layer;
gint i;
GimpLayer *layer;
gint i;
/* first, blindly copy the gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)
@ -1864,7 +1867,7 @@ gimp_image_get_active_channels (GimpImage *gimage,
if (GIMP_IS_LAYER (drawable))
{
layer = GIMP_LAYER (drawable);
if (layer_has_alpha (layer) && layer->preserve_trans)
if (gimp_layer_has_alpha (layer) && layer->preserve_trans)
active[gimp_drawable_bytes (drawable) - 1] = 0;
}
}
@ -1890,31 +1893,30 @@ gimp_image_construct (GimpImage *gimage,
if (gimage->layers)
{
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*) gimage->layers->data),
gimp_drawable_offsets (GIMP_DRAWABLE ((GimpLayer*) gimage->layers->data),
&xoff, &yoff);
}
if ((gimage->layers) && /* There's a layer. */
(!g_slist_next(gimage->layers)) && /* It's the only layer. */
(layer_has_alpha((Layer*)(gimage->layers->data))) && /* It's !flat. */
(! g_slist_next (gimage->layers)) && /* It's the only layer. */
(gimp_layer_has_alpha ((GimpLayer *) (gimage->layers->data))) && /* It's !flat. */
/* It's visible. */
(gimp_drawable_visible (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(gimp_drawable_width (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_visible (GIMP_DRAWABLE (gimage->layers->data))) &&
(gimp_drawable_width (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->width) &&
(gimp_drawable_height (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_height (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->height) && /* Covers all. */
/* Not indexed. */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(((Layer*)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE (gimage->layers->data))) &&
(((GimpLayer *)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
)
{
gint xoff;
gint yoff;
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)),
gimp_drawable_offsets (GIMP_DRAWABLE (gimage->layers->data),
&xoff, &yoff);
if ((xoff==0) && (yoff==0)) /* Starts at 0,0 */
{
PixelRegion srcPR, destPR;
@ -1923,8 +1925,7 @@ gimp_image_construct (GimpImage *gimage,
g_warning("Can use cow-projection hack. Yay!");
pixel_region_init (&srcPR, gimp_drawable_data
(GIMP_DRAWABLE
((Layer*)(gimage->layers->data))),
(GIMP_DRAWABLE (gimage->layers->data)),
x, y, w,h, FALSE);
pixel_region_init (&destPR,
gimp_image_projection (gimage),
@ -2111,7 +2112,7 @@ gimp_image_invalidate_layer_previews (GimpImage *gimage)
for (tmp = gimage->layers; tmp; tmp = g_slist_next (tmp))
{
layer = (Layer *) tmp->data;
layer = (GimpLayer *) tmp->data;
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (layer), TRUE);
}
@ -2136,11 +2137,11 @@ gimp_image_invalidate_channel_previews (GimpImage *gimage)
gint
gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg)
const GimpLayer *layer_arg)
{
Layer *layer;
GSList *layers;
gint index;
GimpLayer *layer;
GSList *layers;
gint index;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), -1);
@ -2148,7 +2149,7 @@ gimp_image_get_layer_index (const GimpImage *gimage,
layers;
layers = g_slist_next (layers), index++)
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer == layer_arg)
return index;
@ -2157,16 +2158,16 @@ gimp_image_get_layer_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer = (Layer *) g_slist_nth_data (gimage->layers, layer_index);
layer = (GimpLayer *) g_slist_nth_data (gimage->layers, layer_index);
return layer;
}
@ -2195,7 +2196,7 @@ gimp_image_get_channel_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_active_layer (const GimpImage *gimage)
{
g_return_val_if_fail (gimage != NULL, NULL);
@ -2212,12 +2213,12 @@ gimp_image_get_active_channel (const GimpImage *gimage)
return gimage->active_channel;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tattoo)
{
Layer *layer;
GSList *layers;
GimpLayer *layer;
GSList *layers;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2225,9 +2226,9 @@ gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
layers;
layers = g_slist_next (layers))
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer_get_tattoo (layer) == tattoo)
if (gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)) == tattoo)
return layer;
}
@ -2322,7 +2323,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
g_return_val_if_fail (segs != NULL, FALSE);
@ -2333,7 +2334,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
*/
if ((layer = gimage->active_layer))
{
*segs = layer_boundary (layer, n_segs);
*segs = gimp_layer_boundary (layer, n_segs);
return TRUE;
}
else
@ -2344,9 +2345,9 @@ gimp_image_layer_boundary (const GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL);
@ -2358,18 +2359,18 @@ gimp_image_set_active_layer (GimpImage *gimage,
{
if (! gimage->layers)
return NULL;
layer = (Layer *) gimage->layers->data;
layer = (GimpLayer *) gimage->layers->data;
}
if (! layer)
return NULL;
/* Configure the layer stack to reflect this change */
gimage->layer_stack = g_slist_remove (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, layer);
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set the active layer */
gimage->active_layer = layer;
@ -2466,30 +2467,30 @@ gimp_image_set_component_visible (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y)
{
Layer *layer;
GSList *list;
GimpLayer *layer;
GSList *list;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer_pick_correlate (layer, x, y))
if (gimp_layer_pick_correlate (layer, x, y))
return layer;
}
return NULL;
}
Layer *
GimpLayer *
gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2513,9 +2514,9 @@ gimp_image_raise_layer (GimpImage *gimage,
}
Layer *
GimpLayer *
gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2540,11 +2541,9 @@ gimp_image_lower_layer (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, curpos+1, TRUE);
}
Layer *
GimpLayer *
gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2563,7 +2562,7 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return NULL;
}
if (! layer_has_alpha (layer_arg))
if (! gimp_layer_has_alpha (layer_arg))
{
g_message (_("Can't raise Layer without alpha"));
return NULL;
@ -2572,10 +2571,9 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, 0, TRUE);
}
Layer *
GimpLayer *
gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2588,9 +2586,9 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
curpos = g_slist_index (list, layer_arg);
if (curpos < 0)
return NULL;
length = g_slist_length (list);
if (curpos == length-1)
{
g_message (_("Layer is already on bottom"));
@ -2600,20 +2598,19 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, length-1, TRUE);
}
Layer *
GimpLayer *
gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo)
{
Layer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
GimpLayer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2644,9 +2641,10 @@ gimp_image_position_layer (GimpImage *gimage,
return NULL;
/* check if we want to move it below a bottom layer without alpha */
layer = (Layer *) g_slist_last (list)->data;
layer = (GimpLayer *) g_slist_last (list)->data;
if (new_index == list_length - 1 &&
!layer_has_alpha (layer))
! gimp_layer_has_alpha (layer))
{
g_message (_("BG has no alpha, layer was placed above"));
new_index--;
@ -2674,14 +2672,14 @@ gimp_image_position_layer (GimpImage *gimage,
return layer_arg;
}
Layer *
GimpLayer *
gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2696,7 +2694,7 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2728,12 +2726,12 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_flatten (GimpImage *gimage)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2747,7 +2745,7 @@ gimp_image_flatten (GimpImage *gimage)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2761,27 +2759,27 @@ gimp_image_flatten (GimpImage *gimage)
return layer;
}
Layer *
GimpLayer *
gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer *current_layer,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer_list = gimage->layers;
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == current_layer)
{
layer_list = g_slist_next (layer_list);
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
merge_list = g_slist_append (merge_list, layer);
@ -2812,7 +2810,7 @@ gimp_image_merge_down (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type)
@ -2820,9 +2818,9 @@ gimp_image_merge_layers (GimpImage *gimage,
GSList *reverse_list = NULL;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
Layer *merge_layer;
Layer *layer;
Layer *bottom;
GimpLayer *merge_layer;
GimpLayer *layer;
GimpLayer *bottom;
LayerModeEffects bottom_mode;
guchar bg[4] = {0, 0, 0, 0};
GimpImageType type;
@ -2847,7 +2845,7 @@ gimp_image_merge_layers (GimpImage *gimage,
count = 0;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
switch (merge_type)
@ -2925,9 +2923,10 @@ gimp_image_merge_layers (GimpImage *gimage,
case INDEXED: type = INDEXED_GIMAGE; break;
}
merge_layer = layer_new (gimage, (x2 - x1), (y2 - y1),
type, gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
merge_layer = gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
type,
gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
g_message ("gimp_image_merge_layers: could not allocate merge layer");
@ -2961,10 +2960,10 @@ gimp_image_merge_layers (GimpImage *gimage,
*/
merge_layer =
layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
@ -2988,7 +2987,7 @@ gimp_image_merge_layers (GimpImage *gimage,
/* Find the index in the layer list of the bottom layer--we need this
* in order to add the final, merged layer to the layer list correctly
*/
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
position =
g_slist_length (gimage->layers) -
gimp_image_get_layer_index (gimage, layer);
@ -3010,13 +3009,14 @@ gimp_image_merge_layers (GimpImage *gimage,
}
/* Copy the tattoo and parasites of the bottom layer to the new layer */
layer_set_tattoo(merge_layer, layer_get_tattoo(layer));
gimp_drawable_set_tattoo (GIMP_DRAWABLE (merge_layer),
gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)));
GIMP_DRAWABLE(merge_layer)->parasites =
parasite_list_copy (GIMP_DRAWABLE(layer)->parasites);
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
/* determine what sort of operation is being attempted and
* if it's actually legal...
@ -3080,7 +3080,8 @@ gimp_image_merge_layers (GimpImage *gimage,
merge_list = gimage->layers;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
merge_list = g_slist_next (merge_list);
gimp_image_remove_layer (gimage, layer);
}
@ -3118,9 +3119,9 @@ gimp_image_merge_layers (GimpImage *gimage,
return merge_layer;
}
Layer *
GimpLayer *
gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer *float_layer,
gint position)
{
LayerUndo *lu;
@ -3148,7 +3149,7 @@ gimp_image_add_layer (GimpImage *gimage,
undo_push_layer (gimage, LAYER_ADD_UNDO, lu);
/* If the layer is a floating selection, set the ID */
if (layer_is_floating_sel (float_layer))
if (gimp_layer_is_floating_sel (float_layer))
gimage->floating_sel = float_layer;
/* let the layer know about the gimage */
@ -3205,9 +3206,9 @@ gimp_image_add_layer (GimpImage *gimage,
return float_layer;
}
Layer *
GimpLayer *
gimp_image_remove_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerUndo *lu;
@ -3278,7 +3279,7 @@ gimp_image_add_layer_mask (GimpImage *gimage,
return (NULL);
}
if (! layer_has_alpha (layer))
if (! gimp_layer_has_alpha (layer))
{
g_message (_("Cannot add layer mask to a layer\nwith no alpha channel."));
return (NULL);
@ -3333,7 +3334,7 @@ gimp_image_remove_layer_mask (GimpImage *gimage,
lmu->edit_mask = layer->edit_mask;
lmu->show_mask = layer->show_mask;
layer_apply_mask (layer, mode);
gimp_layer_apply_mask (layer, mode);
/* Push the undo--Important to do it here, AFTER the call
* to layer_apply_mask, in case the undo push fails and the
@ -3619,7 +3620,7 @@ gimp_image_is_empty (const GimpImage *gimage)
GimpDrawable *
gimp_image_active_drawable (const GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -3805,7 +3806,7 @@ gimp_image_clean_all (GimpImage *gimage)
gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]);
}
Layer *
GimpLayer *
gimp_image_floating_sel (const GimpImage *gimage)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
@ -3898,8 +3899,8 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
gint width,
gint height)
{
Layer *layer;
Layer *floating_sel;
GimpLayer *layer;
GimpLayer *floating_sel;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
TempBuf *comp;
@ -3940,15 +3941,17 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
floating_sel = NULL;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible to the list */
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
/* floating selections are added right above the layer
they are attached to */
if (layer_is_floating_sel (layer))
floating_sel = layer;
if (gimp_layer_is_floating_sel (layer))
{
floating_sel = layer;
}
else
{
if (floating_sel &&
@ -3964,7 +3967,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -3987,7 +3990,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
src1PR.data =
temp_buf_data (comp) + y1 * src1PR.rowstride + x1 * src1PR.bytes;
layer_buf = layer_preview (layer, w, h);
layer_buf = gimp_layer_preview (layer, w, h);
src2PR.bytes = layer_buf->bytes;
src2PR.w = src1PR.w;
src2PR.h = src1PR.h;
@ -4115,7 +4118,7 @@ gimp_image_preview_valid (const GimpImage *gimage,
void
gimp_image_invalidate_preview (GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_if_fail (GIMP_IS_IMAGE (gimage));

View File

@ -85,9 +85,9 @@ struct _GimpImage
GSList *channels; /* the list of masks */
GSList *layer_stack; /* the layers in MRU order */
Layer *active_layer; /* ID of active layer */
GimpLayer *active_layer; /* ID of active layer */
Channel *active_channel; /* ID of active channel */
Layer *floating_sel; /* ID of fs layer */
GimpLayer *floating_sel; /* ID of fs layer */
Channel *selection_mask; /* selection mask channel */
ParasiteList *parasites; /* Plug-in parasite data */
@ -164,11 +164,11 @@ struct _Guide
typedef struct _GimpImageRepaintArg
{
Layer *layer;
guint x;
guint y;
guint width;
guint height;
GimpLayer *layer;
guint x;
guint y;
guint width;
guint height;
} GimpImageRepaintArg;
@ -283,14 +283,14 @@ void gimp_image_colormap_changed (const GimpImage *image,
/* layer/channel functions */
gint gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg);
Layer * gimp_image_get_layer_by_index (const GimpImage *gimage,
const GimpLayer *layer_arg);
GimpLayer * gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index);
gint gimp_image_get_channel_index (const GimpImage *gimage,
const Channel *channel_arg);
Layer * gimp_image_get_active_layer (const GimpImage *gimage);
GimpLayer * gimp_image_get_active_layer (const GimpImage *gimage);
Channel * gimp_image_get_active_channel (const GimpImage *gimage);
Layer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
GimpLayer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
Channel * gimp_image_get_channel_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
@ -304,8 +304,8 @@ gboolean gimp_image_get_component_visible (const GimpImage *gimage,
gboolean gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs);
Layer * gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_set_active_layer (GimpImage *gimage,
GimpLayer *layer);
Channel * gimp_image_set_active_channel (GimpImage *gimage,
Channel *channel);
Channel * gimp_image_unset_active_channel (GimpImage *gimage);
@ -315,40 +315,40 @@ void gimp_image_set_component_active (GimpImage *gimage,
void gimp_image_set_component_visible (GimpImage *gimage,
ChannelType type,
gboolean visible);
Layer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
GimpLayer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y);
Layer * gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer * gimp_image_raise_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_raise_layer_to_top (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_position_layer (GimpImage *gimage,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo);
Layer * gimp_image_merge_visible_layers (GimpImage *gimage,
GimpLayer * gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type);
Layer * gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer * gimp_image_merge_down (GimpImage *gimage,
GimpLayer *current_layer,
MergeType merge_type);
Layer * gimp_image_flatten (GimpImage *gimage);
Layer * gimp_image_merge_layers (GimpImage *gimage,
GimpLayer * gimp_image_flatten (GimpImage *gimage);
GimpLayer * gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type);
Layer * gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer * gimp_image_add_layer (GimpImage *gimage,
GimpLayer *float_layer,
gint position);
Layer * gimp_image_remove_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_remove_layer (GimpImage *gimage,
GimpLayer *layer);
GimpLayerMask * gimp_image_add_layer_mask (GimpImage *gimage,
GimpLayer *layer,
GimpLayerMask *mask);
Channel * gimp_image_remove_layer_mask (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
MaskApplyMode mode);
Channel * gimp_image_raise_channel (GimpImage *gimage,
Channel *channel_arg);
@ -414,7 +414,7 @@ void gimp_image_undo_event (GimpImage *gimage,
gint gimp_image_dirty (GimpImage *gimage);
gint gimp_image_clean (GimpImage *gimage);
void gimp_image_clean_all (GimpImage *gimage);
Layer * gimp_image_floating_sel (const GimpImage *gimage);
GimpLayer * gimp_image_floating_sel (const GimpImage *gimage);
guchar * gimp_image_cmap (const GimpImage *gimage);
/* projection access functions */

View File

@ -42,11 +42,11 @@
void
floating_sel_attach (Layer *layer,
floating_sel_attach (GimpLayer *layer,
GimpDrawable *drawable)
{
GImage *gimage;
Layer *floating_sel;
GImage *gimage;
GimpLayer *floating_sel;
if (! (gimage = gimp_drawable_gimage (drawable)))
return;
@ -84,7 +84,7 @@ floating_sel_attach (Layer *layer,
}
void
floating_sel_remove (Layer *layer)
floating_sel_remove (GimpLayer *layer)
{
GImage *gimage;
@ -105,13 +105,13 @@ floating_sel_remove (Layer *layer)
}
void
floating_sel_anchor (Layer *layer)
floating_sel_anchor (GimpLayer *layer)
{
GImage *gimage;
if (! (gimage = gimp_drawable_gimage (GIMP_DRAWABLE (layer))))
return;
if (! layer_is_floating_sel (layer))
if (! gimp_layer_is_floating_sel (layer))
{
g_message (_("Cannot anchor this layer because\nit is not a floating selection."));
return;
@ -145,7 +145,7 @@ floating_sel_anchor (Layer *layer)
}
void
floating_sel_reset (Layer *layer)
floating_sel_reset (GimpLayer *layer)
{
GImage *gimage;
@ -162,18 +162,18 @@ floating_sel_reset (Layer *layer)
{
gimp_image_set_active_channel (gimage, GIMP_CHANNEL (layer->fs.drawable));
if (gimage->layers)
gimage->active_layer = (((Layer *) gimage->layer_stack->data));
gimage->active_layer = (((GimpLayer *) gimage->layer_stack->data));
else
gimage->active_layer = NULL;
}
}
void
floating_sel_to_layer (Layer *layer)
floating_sel_to_layer (GimpLayer *layer)
{
FStoLayerUndo *fsu;
int off_x, off_y;
int width, height;
gint off_x, off_y;
gint width, height;
GImage *gimage;
@ -214,7 +214,7 @@ floating_sel_to_layer (Layer *layer)
undo_push_fs_to_layer (gimage, fsu);
/* clear the selection */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set pointers */
layer->fs.drawable = NULL;
@ -239,15 +239,15 @@ floating_sel_to_layer (Layer *layer)
}
void
floating_sel_store (Layer *layer,
int x,
int y,
int w,
int h)
floating_sel_store (GimpLayer *layer,
gint x,
gint y,
gint w,
gint h)
{
PixelRegion srcPR, destPR;
int offx, offy;
int x1, y1, x2, y2;
gint offx, offy;
gint x1, y1, x2, y2;
/* Check the backing store & make sure it has the correct dimensions */
if ((tile_manager_width (layer->fs.backing_store) != gimp_drawable_width (GIMP_DRAWABLE(layer))) ||
@ -297,15 +297,15 @@ floating_sel_store (Layer *layer,
}
void
floating_sel_restore (Layer *layer,
int x,
int y,
int w,
int h)
floating_sel_restore (GimpLayer *layer,
gint x,
gint y,
gint w,
gint h)
{
PixelRegion srcPR, destPR;
int offx, offy;
int x1, y1, x2, y2;
gint offx, offy;
gint x1, y1, x2, y2;
/* What this function does is "uncover" the specified area in the
* drawable that this floating selection obscures. We do this so
@ -342,8 +342,8 @@ floating_sel_restore (Layer *layer,
}
void
floating_sel_rigor (Layer *layer,
int undo)
floating_sel_rigor (GimpLayer *layer,
gint undo)
{
GImage *gimage = GIMP_DRAWABLE(layer)->gimage;
@ -360,8 +360,8 @@ floating_sel_rigor (Layer *layer,
}
void
floating_sel_relax (Layer *layer,
int undo)
floating_sel_relax (GimpLayer *layer,
gint undo)
{
GImage *gimage = GIMP_DRAWABLE(layer)->gimage;
@ -379,21 +379,21 @@ floating_sel_relax (Layer *layer,
}
void
floating_sel_composite (Layer *layer,
int x,
int y,
int w,
int h,
int undo)
floating_sel_composite (GimpLayer *layer,
gint x,
gint y,
gint w,
gint h,
gint undo)
{
PixelRegion fsPR;
GImage *gimage;
Layer *d_layer;
int preserve_trans;
int active[MAX_CHANNELS];
int offx, offy;
int x1, y1, x2, y2;
int i;
PixelRegion fsPR;
GImage *gimage;
GimpLayer *d_layer;
gint preserve_trans;
gint active[MAX_CHANNELS];
gint offx, offy;
gint x1, y1, x2, y2;
gint i;
d_layer = NULL;
@ -482,8 +482,8 @@ floating_sel_composite (Layer *layer,
}
BoundSeg *
floating_sel_boundary (Layer *layer,
int *num_segs)
floating_sel_boundary (GimpLayer *layer,
gint *num_segs)
{
PixelRegion bPR;
int i;
@ -520,7 +520,7 @@ floating_sel_boundary (Layer *layer,
}
void
floating_sel_invalidate (Layer *layer)
floating_sel_invalidate (GimpLayer *layer)
{
/* Invalidate the attached-to drawable's preview */
gimp_drawable_invalidate_preview (layer->fs.drawable, TRUE);

View File

@ -20,40 +20,40 @@
#define __FLOATING_SEL_H__
void floating_sel_attach (Layer *,
GimpDrawable *);
void floating_sel_remove (Layer *);
void floating_sel_anchor (Layer *);
void floating_sel_reset (Layer *);
void floating_sel_to_layer (Layer *);
void floating_sel_store (Layer *,
void floating_sel_attach (GimpLayer *layer,
GimpDrawable *drawable);
void floating_sel_remove (GimpLayer *layer);
void floating_sel_anchor (GimpLayer *layer);
void floating_sel_reset (GimpLayer *layer);
void floating_sel_to_layer (GimpLayer *layer);
void floating_sel_store (GimpLayer *layer,
gint ,
gint ,
gint ,
gint );
void floating_sel_restore (Layer *,
void floating_sel_restore (GimpLayer *layer,
gint ,
gint ,
gint ,
gint );
void floating_sel_rigor (Layer *,
void floating_sel_rigor (GimpLayer *layer,
gint );
void floating_sel_relax (Layer *,
void floating_sel_relax (GimpLayer *layer,
gint );
void floating_sel_composite (Layer *,
void floating_sel_composite (GimpLayer *layer,
gint ,
gint ,
gint ,
gint ,
gint );
BoundSeg * floating_sel_boundary (Layer *,
BoundSeg * floating_sel_boundary (GimpLayer *layer,
gint *);
void floating_sel_bounds (Layer *,
void floating_sel_bounds (GimpLayer *layer,
gint *,
gint *,
gint *,
gint *);
void floating_sel_invalidate (Layer *);
void floating_sel_invalidate (GimpLayer *layer);
#endif /* __FLOATING_SEL_H__ */

View File

@ -67,10 +67,10 @@ static void gimp_layer_preview_scale (GimpImageBaseType type,
PixelRegion *destPR,
gint subsample);
static TempBuf * gimp_layer_preview_private (Layer *layer,
static TempBuf * gimp_layer_preview_private (GimpLayer *layer,
gint width,
gint height);
static TempBuf * gimp_layer_mask_preview_private (Layer *layer,
static TempBuf * gimp_layer_mask_preview_private (GimpLayer *layer,
gint width,
gint height);
@ -152,7 +152,7 @@ gimp_layer_invalidate_preview (GimpDrawable *drawable)
layer = GIMP_LAYER (drawable);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_invalidate (layer);
}
@ -1211,19 +1211,6 @@ gimp_layer_pick_correlate (GimpLayer *layer,
/* access functions */
/**********************/
void
gimp_layer_set_name (GimpLayer *layer,
const gchar *name)
{
gimp_object_set_name (GIMP_OBJECT (layer), name);
}
const gchar *
gimp_layer_get_name (const GimpLayer *layer)
{
return gimp_object_get_name (GIMP_OBJECT (layer));
}
GimpLayerMask *
gimp_layer_get_mask (GimpLayer *layer)
{
@ -1254,19 +1241,6 @@ gimp_layer_linked (GimpLayer *layer)
return layer->linked;
}
Tattoo
gimp_layer_get_tattoo (const GimpLayer *layer)
{
return gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
}
void
gimp_layer_set_tattoo (GimpLayer *layer,
Tattoo value)
{
gimp_drawable_set_tattoo (GIMP_DRAWABLE (layer), value);
}
TempBuf *
gimp_layer_preview (GimpLayer *layer,
gint width,

View File

@ -23,38 +23,11 @@
#include "gimpdrawable.h"
/* EEK */
#define layer_new gimp_layer_new
#define layer_copy gimp_layer_copy
#define layer_create_mask gimp_layer_create_mask
#define layer_scale gimp_layer_scale
#define layer_resize gimp_layer_resize
#define layer_delete gimp_layer_delete
#define layer_translate gimp_layer_translate
#define layer_get_name gimp_layer_get_name
#define layer_set_name gimp_layer_set_name
#define layer_get_tattoo gimp_layer_get_tattoo
#define layer_set_tattoo gimp_layer_set_tattoo
#define layer_add_alpha gimp_layer_add_alpha
#define layer_has_alpha gimp_layer_has_alpha
#define layer_preview gimp_layer_preview
#define layer_is_floating_sel gimp_layer_is_floating_sel
#define layer_invalidate_previews gimp_layer_invalidate_previews
#define layer_linked gimp_layer_linked
#define layer_get_mask gimp_layer_get_mask
#define layer_new_from_tiles gimp_layer_new_from_tiles
#define layer_resize_to_image gimp_layer_resize_to_image
#define layer_invalidate_boundary gimp_layer_invalidate_boundary
#define layer_scale_by_factors gimp_layer_scale_by_factors
#define layer_boundary gimp_layer_boundary
#define layer_pick_correlate gimp_layer_pick_correlate
#define layer_apply_mask gimp_layer_apply_mask
#define layer_add_mask gimp_layer_add_mask
#define layer_check_scaling gimp_layer_check_scaling
#define gimp_drawable_layer GIMP_IS_LAYER
/* PDB stuff */
#define gimp_layer_set_name(l,n) gimp_object_set_name(GIMP_OBJECT(l),(n))
#define gimp_layer_get_name(l) gimp_object_get_name(GIMP_OBJECT(l))
#define gimp_layer_set_tattoo(l,t) gimp_drawable_set_tattoo(GIMP_DRAWABLE(l),(t))
#define gimp_layer_get_tattoo(l) gimp_drawable_get_tattoo(GIMP_DRAWABLE(l))
#define GIMP_TYPE_LAYER (gimp_layer_get_type ())
@ -64,7 +37,7 @@
#define GIMP_IS_LAYER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER))
typedef struct _GimpLayerClass GimpLayerClass;
typedef struct _GimpLayerClass GimpLayerClass;
struct _GimpLayer
{
@ -104,9 +77,9 @@ struct _GimpLayerClass
struct _LayerUndo
{
GimpLayer *layer; /* the actual layer */
gint prev_position; /* former position in list */
GimpLayer *prev_layer; /* previous active layer */
GimpLayer *layer; /* the actual layer */
gint prev_position; /* former position in list */
GimpLayer *prev_layer; /* previous active layer */
};
struct _FStoLayerUndo
@ -170,16 +143,10 @@ gint gimp_layer_pick_correlate (GimpLayer *layer,
gint x,
gint y);
void gimp_layer_set_name (GimpLayer *layer,
const gchar *name);
const gchar * gimp_layer_get_name (const GimpLayer *layer);
GimpLayerMask * gimp_layer_get_mask (GimpLayer *layer);
gboolean gimp_layer_has_alpha (GimpLayer *layer);
gboolean gimp_layer_is_floating_sel (GimpLayer *layer);
gboolean gimp_layer_linked (GimpLayer *layer);
Tattoo gimp_layer_get_tattoo (const GimpLayer *layer);
void gimp_layer_set_tattoo (GimpLayer *layer,
Tattoo value);
TempBuf * gimp_layer_preview (GimpLayer *layer,
gint width,

View File

@ -23,9 +23,6 @@
#include "channel.h"
#define gimp_drawable_layer_mask GIMP_IS_LAYER_MASK
#define GIMP_TYPE_LAYER_MASK (gimp_layer_mask_get_type ())
#define GIMP_LAYER_MASK(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LAYER_MASK, GimpLayerMask))
#define GIMP_LAYER_MASK_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_MASK, GimpLayerMaskClass))
@ -74,7 +71,7 @@ GimpLayerMask * gimp_layer_mask_copy (GimpLayerMask *layer_mask);
void gimp_layer_mask_set_layer (GimpLayerMask *layer_mask,
GimpLayer *layer);
Layer * gimp_layer_mask_get_layer (GimpLayerMask *layer_mask);
GimpLayer * gimp_layer_mask_get_layer (GimpLayerMask *layer_mask);
#endif /* __GIMP_LAYER_MASK_H__ */

View File

@ -94,21 +94,21 @@ static void gimp_image_get_active_channels (GimpImage *gimage,
/* projection functions */
static void project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest);
static void project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
@ -552,11 +552,11 @@ gimp_image_resize (GimpImage *gimage,
gint offset_x,
gint offset_y)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GList *guide_list;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GList *guide_list;
gimp_add_busy_cursors ();
@ -624,9 +624,9 @@ gimp_image_resize (GimpImage *gimage,
/* Reposition all layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layer_translate (layer, offset_x, offset_y);
gimp_layer_translate (layer, offset_x, offset_y);
}
/* Make sure the projection matches the gimage size */
@ -646,17 +646,17 @@ gimp_image_scale (GimpImage *gimage,
gint new_width,
gint new_height)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
if ((new_width == 0) || (new_height == 0))
{
@ -707,8 +707,9 @@ gimp_image_scale (GimpImage *gimage,
list = gimage->layers;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
if (layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
layer = (GimpLayer *) list->data;
if (gimp_layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
{
/* Since 0 < img_scale_w, img_scale_h, failure due to one or more
* vanishing scaled layer dimensions. Implicit delete implemented
@ -1373,23 +1374,23 @@ gboolean
gimp_image_set_tattoo_state (GimpImage *gimage,
Tattoo val)
{
Layer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
GimpLayer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
for (layers = gimage->layers; layers; layers = g_slist_next (layers))
{
Tattoo ltattoo;
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
ltattoo = layer_get_tattoo (layer);
ltattoo = gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
if (ltattoo > maxval)
maxval = ltattoo;
if (gimp_image_get_channel_by_tattoo (gimage, ltattoo) != NULL)
@ -1485,7 +1486,7 @@ gimp_image_colormap_changed (const GimpImage *gimage,
static void
project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1500,7 +1501,7 @@ project_intensity (GimpImage *gimage,
static void
project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1515,7 +1516,7 @@ project_intensity_alpha (GimpImage *gimage,
static void
project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest)
{
@ -1528,7 +1529,7 @@ project_indexed (GimpImage *gimage,
static void
project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1579,14 +1580,16 @@ project_channel (GimpImage *gimage,
static void
gimp_image_free_layers (GimpImage *gimage)
{
GSList *list;
Layer *layer;
GSList *list;
GimpLayer *layer;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer_delete (layer);
layer = (GimpLayer *) list->data;
gtk_object_unref (GTK_OBJECT (layer));
}
g_slist_free (gimage->layers);
g_slist_free (gimage->layer_stack);
}
@ -1616,7 +1619,7 @@ gimp_image_construct_layers (GimpImage *gimage,
gint w,
gint h)
{
Layer *layer;
GimpLayer *layer;
gint x1, y1, x2, y2;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion * mask;
@ -1662,18 +1665,18 @@ gimp_image_construct_layers (GimpImage *gimage,
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible and not floating selections
to the list */
if (!layer_is_floating_sel (layer) &&
if (! gimp_layer_is_floating_sel (layer) &&
gimp_drawable_visible (GIMP_DRAWABLE (layer)))
reverse_list = g_slist_prepend (reverse_list, layer);
}
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
x1 = CLAMP (off_x, x, x + w);
@ -1802,7 +1805,7 @@ gimp_image_initialize_projection (GimpImage *gimage,
gint h)
{
GSList *list;
Layer *layer;
GimpLayer *layer;
gint coverage = 0;
PixelRegion PR;
guchar clear[4] = { 0, 0, 0, 0 };
@ -1816,11 +1819,11 @@ gimp_image_initialize_projection (GimpImage *gimage,
{
gint off_x, off_y;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)) &&
! layer_has_alpha (layer) &&
! gimp_layer_has_alpha (layer) &&
(off_x <= x) &&
(off_y <= y) &&
(off_x + gimp_drawable_width (GIMP_DRAWABLE (layer)) >= x + w) &&
@ -1844,8 +1847,8 @@ gimp_image_get_active_channels (GimpImage *gimage,
GimpDrawable *drawable,
gint *active)
{
Layer *layer;
gint i;
GimpLayer *layer;
gint i;
/* first, blindly copy the gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)
@ -1864,7 +1867,7 @@ gimp_image_get_active_channels (GimpImage *gimage,
if (GIMP_IS_LAYER (drawable))
{
layer = GIMP_LAYER (drawable);
if (layer_has_alpha (layer) && layer->preserve_trans)
if (gimp_layer_has_alpha (layer) && layer->preserve_trans)
active[gimp_drawable_bytes (drawable) - 1] = 0;
}
}
@ -1890,31 +1893,30 @@ gimp_image_construct (GimpImage *gimage,
if (gimage->layers)
{
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*) gimage->layers->data),
gimp_drawable_offsets (GIMP_DRAWABLE ((GimpLayer*) gimage->layers->data),
&xoff, &yoff);
}
if ((gimage->layers) && /* There's a layer. */
(!g_slist_next(gimage->layers)) && /* It's the only layer. */
(layer_has_alpha((Layer*)(gimage->layers->data))) && /* It's !flat. */
(! g_slist_next (gimage->layers)) && /* It's the only layer. */
(gimp_layer_has_alpha ((GimpLayer *) (gimage->layers->data))) && /* It's !flat. */
/* It's visible. */
(gimp_drawable_visible (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(gimp_drawable_width (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_visible (GIMP_DRAWABLE (gimage->layers->data))) &&
(gimp_drawable_width (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->width) &&
(gimp_drawable_height (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_height (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->height) && /* Covers all. */
/* Not indexed. */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(((Layer*)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE (gimage->layers->data))) &&
(((GimpLayer *)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
)
{
gint xoff;
gint yoff;
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)),
gimp_drawable_offsets (GIMP_DRAWABLE (gimage->layers->data),
&xoff, &yoff);
if ((xoff==0) && (yoff==0)) /* Starts at 0,0 */
{
PixelRegion srcPR, destPR;
@ -1923,8 +1925,7 @@ gimp_image_construct (GimpImage *gimage,
g_warning("Can use cow-projection hack. Yay!");
pixel_region_init (&srcPR, gimp_drawable_data
(GIMP_DRAWABLE
((Layer*)(gimage->layers->data))),
(GIMP_DRAWABLE (gimage->layers->data)),
x, y, w,h, FALSE);
pixel_region_init (&destPR,
gimp_image_projection (gimage),
@ -2111,7 +2112,7 @@ gimp_image_invalidate_layer_previews (GimpImage *gimage)
for (tmp = gimage->layers; tmp; tmp = g_slist_next (tmp))
{
layer = (Layer *) tmp->data;
layer = (GimpLayer *) tmp->data;
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (layer), TRUE);
}
@ -2136,11 +2137,11 @@ gimp_image_invalidate_channel_previews (GimpImage *gimage)
gint
gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg)
const GimpLayer *layer_arg)
{
Layer *layer;
GSList *layers;
gint index;
GimpLayer *layer;
GSList *layers;
gint index;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), -1);
@ -2148,7 +2149,7 @@ gimp_image_get_layer_index (const GimpImage *gimage,
layers;
layers = g_slist_next (layers), index++)
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer == layer_arg)
return index;
@ -2157,16 +2158,16 @@ gimp_image_get_layer_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer = (Layer *) g_slist_nth_data (gimage->layers, layer_index);
layer = (GimpLayer *) g_slist_nth_data (gimage->layers, layer_index);
return layer;
}
@ -2195,7 +2196,7 @@ gimp_image_get_channel_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_active_layer (const GimpImage *gimage)
{
g_return_val_if_fail (gimage != NULL, NULL);
@ -2212,12 +2213,12 @@ gimp_image_get_active_channel (const GimpImage *gimage)
return gimage->active_channel;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tattoo)
{
Layer *layer;
GSList *layers;
GimpLayer *layer;
GSList *layers;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2225,9 +2226,9 @@ gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
layers;
layers = g_slist_next (layers))
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer_get_tattoo (layer) == tattoo)
if (gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)) == tattoo)
return layer;
}
@ -2322,7 +2323,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
g_return_val_if_fail (segs != NULL, FALSE);
@ -2333,7 +2334,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
*/
if ((layer = gimage->active_layer))
{
*segs = layer_boundary (layer, n_segs);
*segs = gimp_layer_boundary (layer, n_segs);
return TRUE;
}
else
@ -2344,9 +2345,9 @@ gimp_image_layer_boundary (const GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL);
@ -2358,18 +2359,18 @@ gimp_image_set_active_layer (GimpImage *gimage,
{
if (! gimage->layers)
return NULL;
layer = (Layer *) gimage->layers->data;
layer = (GimpLayer *) gimage->layers->data;
}
if (! layer)
return NULL;
/* Configure the layer stack to reflect this change */
gimage->layer_stack = g_slist_remove (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, layer);
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set the active layer */
gimage->active_layer = layer;
@ -2466,30 +2467,30 @@ gimp_image_set_component_visible (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y)
{
Layer *layer;
GSList *list;
GimpLayer *layer;
GSList *list;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer_pick_correlate (layer, x, y))
if (gimp_layer_pick_correlate (layer, x, y))
return layer;
}
return NULL;
}
Layer *
GimpLayer *
gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2513,9 +2514,9 @@ gimp_image_raise_layer (GimpImage *gimage,
}
Layer *
GimpLayer *
gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2540,11 +2541,9 @@ gimp_image_lower_layer (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, curpos+1, TRUE);
}
Layer *
GimpLayer *
gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2563,7 +2562,7 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return NULL;
}
if (! layer_has_alpha (layer_arg))
if (! gimp_layer_has_alpha (layer_arg))
{
g_message (_("Can't raise Layer without alpha"));
return NULL;
@ -2572,10 +2571,9 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, 0, TRUE);
}
Layer *
GimpLayer *
gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2588,9 +2586,9 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
curpos = g_slist_index (list, layer_arg);
if (curpos < 0)
return NULL;
length = g_slist_length (list);
if (curpos == length-1)
{
g_message (_("Layer is already on bottom"));
@ -2600,20 +2598,19 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, length-1, TRUE);
}
Layer *
GimpLayer *
gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo)
{
Layer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
GimpLayer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2644,9 +2641,10 @@ gimp_image_position_layer (GimpImage *gimage,
return NULL;
/* check if we want to move it below a bottom layer without alpha */
layer = (Layer *) g_slist_last (list)->data;
layer = (GimpLayer *) g_slist_last (list)->data;
if (new_index == list_length - 1 &&
!layer_has_alpha (layer))
! gimp_layer_has_alpha (layer))
{
g_message (_("BG has no alpha, layer was placed above"));
new_index--;
@ -2674,14 +2672,14 @@ gimp_image_position_layer (GimpImage *gimage,
return layer_arg;
}
Layer *
GimpLayer *
gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2696,7 +2694,7 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2728,12 +2726,12 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_flatten (GimpImage *gimage)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2747,7 +2745,7 @@ gimp_image_flatten (GimpImage *gimage)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2761,27 +2759,27 @@ gimp_image_flatten (GimpImage *gimage)
return layer;
}
Layer *
GimpLayer *
gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer *current_layer,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer_list = gimage->layers;
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == current_layer)
{
layer_list = g_slist_next (layer_list);
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
merge_list = g_slist_append (merge_list, layer);
@ -2812,7 +2810,7 @@ gimp_image_merge_down (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type)
@ -2820,9 +2818,9 @@ gimp_image_merge_layers (GimpImage *gimage,
GSList *reverse_list = NULL;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
Layer *merge_layer;
Layer *layer;
Layer *bottom;
GimpLayer *merge_layer;
GimpLayer *layer;
GimpLayer *bottom;
LayerModeEffects bottom_mode;
guchar bg[4] = {0, 0, 0, 0};
GimpImageType type;
@ -2847,7 +2845,7 @@ gimp_image_merge_layers (GimpImage *gimage,
count = 0;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
switch (merge_type)
@ -2925,9 +2923,10 @@ gimp_image_merge_layers (GimpImage *gimage,
case INDEXED: type = INDEXED_GIMAGE; break;
}
merge_layer = layer_new (gimage, (x2 - x1), (y2 - y1),
type, gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
merge_layer = gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
type,
gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
g_message ("gimp_image_merge_layers: could not allocate merge layer");
@ -2961,10 +2960,10 @@ gimp_image_merge_layers (GimpImage *gimage,
*/
merge_layer =
layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
@ -2988,7 +2987,7 @@ gimp_image_merge_layers (GimpImage *gimage,
/* Find the index in the layer list of the bottom layer--we need this
* in order to add the final, merged layer to the layer list correctly
*/
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
position =
g_slist_length (gimage->layers) -
gimp_image_get_layer_index (gimage, layer);
@ -3010,13 +3009,14 @@ gimp_image_merge_layers (GimpImage *gimage,
}
/* Copy the tattoo and parasites of the bottom layer to the new layer */
layer_set_tattoo(merge_layer, layer_get_tattoo(layer));
gimp_drawable_set_tattoo (GIMP_DRAWABLE (merge_layer),
gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)));
GIMP_DRAWABLE(merge_layer)->parasites =
parasite_list_copy (GIMP_DRAWABLE(layer)->parasites);
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
/* determine what sort of operation is being attempted and
* if it's actually legal...
@ -3080,7 +3080,8 @@ gimp_image_merge_layers (GimpImage *gimage,
merge_list = gimage->layers;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
merge_list = g_slist_next (merge_list);
gimp_image_remove_layer (gimage, layer);
}
@ -3118,9 +3119,9 @@ gimp_image_merge_layers (GimpImage *gimage,
return merge_layer;
}
Layer *
GimpLayer *
gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer *float_layer,
gint position)
{
LayerUndo *lu;
@ -3148,7 +3149,7 @@ gimp_image_add_layer (GimpImage *gimage,
undo_push_layer (gimage, LAYER_ADD_UNDO, lu);
/* If the layer is a floating selection, set the ID */
if (layer_is_floating_sel (float_layer))
if (gimp_layer_is_floating_sel (float_layer))
gimage->floating_sel = float_layer;
/* let the layer know about the gimage */
@ -3205,9 +3206,9 @@ gimp_image_add_layer (GimpImage *gimage,
return float_layer;
}
Layer *
GimpLayer *
gimp_image_remove_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerUndo *lu;
@ -3278,7 +3279,7 @@ gimp_image_add_layer_mask (GimpImage *gimage,
return (NULL);
}
if (! layer_has_alpha (layer))
if (! gimp_layer_has_alpha (layer))
{
g_message (_("Cannot add layer mask to a layer\nwith no alpha channel."));
return (NULL);
@ -3333,7 +3334,7 @@ gimp_image_remove_layer_mask (GimpImage *gimage,
lmu->edit_mask = layer->edit_mask;
lmu->show_mask = layer->show_mask;
layer_apply_mask (layer, mode);
gimp_layer_apply_mask (layer, mode);
/* Push the undo--Important to do it here, AFTER the call
* to layer_apply_mask, in case the undo push fails and the
@ -3619,7 +3620,7 @@ gimp_image_is_empty (const GimpImage *gimage)
GimpDrawable *
gimp_image_active_drawable (const GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -3805,7 +3806,7 @@ gimp_image_clean_all (GimpImage *gimage)
gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]);
}
Layer *
GimpLayer *
gimp_image_floating_sel (const GimpImage *gimage)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
@ -3898,8 +3899,8 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
gint width,
gint height)
{
Layer *layer;
Layer *floating_sel;
GimpLayer *layer;
GimpLayer *floating_sel;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
TempBuf *comp;
@ -3940,15 +3941,17 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
floating_sel = NULL;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible to the list */
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
/* floating selections are added right above the layer
they are attached to */
if (layer_is_floating_sel (layer))
floating_sel = layer;
if (gimp_layer_is_floating_sel (layer))
{
floating_sel = layer;
}
else
{
if (floating_sel &&
@ -3964,7 +3967,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -3987,7 +3990,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
src1PR.data =
temp_buf_data (comp) + y1 * src1PR.rowstride + x1 * src1PR.bytes;
layer_buf = layer_preview (layer, w, h);
layer_buf = gimp_layer_preview (layer, w, h);
src2PR.bytes = layer_buf->bytes;
src2PR.w = src1PR.w;
src2PR.h = src1PR.h;
@ -4115,7 +4118,7 @@ gimp_image_preview_valid (const GimpImage *gimage,
void
gimp_image_invalidate_preview (GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_if_fail (GIMP_IS_IMAGE (gimage));

View File

@ -85,9 +85,9 @@ struct _GimpImage
GSList *channels; /* the list of masks */
GSList *layer_stack; /* the layers in MRU order */
Layer *active_layer; /* ID of active layer */
GimpLayer *active_layer; /* ID of active layer */
Channel *active_channel; /* ID of active channel */
Layer *floating_sel; /* ID of fs layer */
GimpLayer *floating_sel; /* ID of fs layer */
Channel *selection_mask; /* selection mask channel */
ParasiteList *parasites; /* Plug-in parasite data */
@ -164,11 +164,11 @@ struct _Guide
typedef struct _GimpImageRepaintArg
{
Layer *layer;
guint x;
guint y;
guint width;
guint height;
GimpLayer *layer;
guint x;
guint y;
guint width;
guint height;
} GimpImageRepaintArg;
@ -283,14 +283,14 @@ void gimp_image_colormap_changed (const GimpImage *image,
/* layer/channel functions */
gint gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg);
Layer * gimp_image_get_layer_by_index (const GimpImage *gimage,
const GimpLayer *layer_arg);
GimpLayer * gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index);
gint gimp_image_get_channel_index (const GimpImage *gimage,
const Channel *channel_arg);
Layer * gimp_image_get_active_layer (const GimpImage *gimage);
GimpLayer * gimp_image_get_active_layer (const GimpImage *gimage);
Channel * gimp_image_get_active_channel (const GimpImage *gimage);
Layer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
GimpLayer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
Channel * gimp_image_get_channel_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
@ -304,8 +304,8 @@ gboolean gimp_image_get_component_visible (const GimpImage *gimage,
gboolean gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs);
Layer * gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_set_active_layer (GimpImage *gimage,
GimpLayer *layer);
Channel * gimp_image_set_active_channel (GimpImage *gimage,
Channel *channel);
Channel * gimp_image_unset_active_channel (GimpImage *gimage);
@ -315,40 +315,40 @@ void gimp_image_set_component_active (GimpImage *gimage,
void gimp_image_set_component_visible (GimpImage *gimage,
ChannelType type,
gboolean visible);
Layer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
GimpLayer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y);
Layer * gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer * gimp_image_raise_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_raise_layer_to_top (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_position_layer (GimpImage *gimage,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo);
Layer * gimp_image_merge_visible_layers (GimpImage *gimage,
GimpLayer * gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type);
Layer * gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer * gimp_image_merge_down (GimpImage *gimage,
GimpLayer *current_layer,
MergeType merge_type);
Layer * gimp_image_flatten (GimpImage *gimage);
Layer * gimp_image_merge_layers (GimpImage *gimage,
GimpLayer * gimp_image_flatten (GimpImage *gimage);
GimpLayer * gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type);
Layer * gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer * gimp_image_add_layer (GimpImage *gimage,
GimpLayer *float_layer,
gint position);
Layer * gimp_image_remove_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_remove_layer (GimpImage *gimage,
GimpLayer *layer);
GimpLayerMask * gimp_image_add_layer_mask (GimpImage *gimage,
GimpLayer *layer,
GimpLayerMask *mask);
Channel * gimp_image_remove_layer_mask (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
MaskApplyMode mode);
Channel * gimp_image_raise_channel (GimpImage *gimage,
Channel *channel_arg);
@ -414,7 +414,7 @@ void gimp_image_undo_event (GimpImage *gimage,
gint gimp_image_dirty (GimpImage *gimage);
gint gimp_image_clean (GimpImage *gimage);
void gimp_image_clean_all (GimpImage *gimage);
Layer * gimp_image_floating_sel (const GimpImage *gimage);
GimpLayer * gimp_image_floating_sel (const GimpImage *gimage);
guchar * gimp_image_cmap (const GimpImage *gimage);
/* projection access functions */

View File

@ -1439,9 +1439,9 @@ gdisplay_mask_bounds (GDisplay *gdisp,
gint *x2,
gint *y2)
{
Layer *layer;
gint off_x;
gint off_y;
GimpLayer *layer;
gint off_x;
gint off_y;
/* If there is a floating selection, handle things differently */
if ((layer = gimp_image_floating_sel (gdisp->gimage)))
@ -1734,14 +1734,14 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
GimpImageBaseType base_type = 0;
GimpImageType type = -1;
GimpDrawable *drawable = NULL;
Layer *layer = NULL;
gboolean fs = FALSE;
gboolean aux = FALSE;
gboolean lm = FALSE;
gboolean lp = FALSE;
gboolean alpha = FALSE;
gint lind = -1;
gint lnum = -1;
GimpLayer *layer = NULL;
gboolean fs = FALSE;
gboolean aux = FALSE;
gboolean lm = FALSE;
gboolean lp = FALSE;
gboolean alpha = FALSE;
gint lind = -1;
gint lnum = -1;
if (gdisp)
{
@ -1760,8 +1760,8 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer)
{
lm = layer_get_mask (layer) ? TRUE : FALSE;
alpha = layer_has_alpha (layer);
lm = gimp_layer_get_mask (layer) ? TRUE : FALSE;
alpha = gimp_layer_has_alpha (layer);
}
lind = gimp_image_get_layer_index (gdisp->gimage,
@ -2243,11 +2243,11 @@ gdisplays_selection_visibility (GimpImage *gimage,
SelectionControl function)
{
GDisplay *gdisp;
GSList *list = display_list;
gint count = 0;
GSList *list;
gint count = 0;
/* traverse the linked list of displays, handling each one */
while (list)
for (list = display_list; list; list = g_slist_next (list))
{
gdisp = (GDisplay *) list->data;
if (gdisp->gimage == gimage && gdisp->select)
@ -2272,8 +2272,6 @@ gdisplays_selection_visibility (GimpImage *gimage,
}
count++;
}
list = g_slist_next (list);
}
}
@ -2281,8 +2279,8 @@ gdisplays_selection_visibility (GimpImage *gimage,
gboolean
gdisplays_dirty (void)
{
gboolean dirty = FALSE;
GSList *list = display_list;
gboolean dirty = FALSE;
GSList *list = display_list;
/* traverse the linked list of displays */
while (list)

View File

@ -1365,7 +1365,7 @@ resize_check_layer_scaling (ImageResize *image_scale)
gboolean success = FALSE;
GImage *gimage = NULL;
GSList *list = NULL;
Layer *layer = NULL;
GimpLayer *layer = NULL;
GtkWidget *dialog = NULL;
g_assert (image_scale != NULL);
@ -1378,10 +1378,10 @@ resize_check_layer_scaling (ImageResize *image_scale)
list = gimage->layers;
while (list && success == TRUE)
{
layer = (Layer *)list->data;
success = layer_check_scaling (layer,
image_scale->resize->width,
image_scale->resize->height);
layer = (GimpLayer *)list->data;
success = gimp_layer_check_scaling (layer,
image_scale->resize->width,
image_scale->resize->height);
list = g_slist_next (list);
}

View File

@ -790,9 +790,9 @@ gdisplay_drag_drop (GtkWidget *widget,
*/
if (drawable)
{
GImage *src_gimage;
Layer *new_layer;
GImage *dest_gimage;
GimpImage *src_gimage;
GimpLayer *new_layer;
GimpImage *dest_gimage;
gint src_width, src_height;
gint dest_width, dest_height;
gint off_x, off_y;
@ -851,11 +851,11 @@ gdisplay_drag_drop (GtkWidget *widget,
undo_push_group_start (dest_gimage, EDIT_PASTE_UNDO);
new_layer =
layer_new_from_tiles (dest_gimage,
gimp_image_base_type_with_alpha (dest_gimage),
tiles,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new_from_tiles (dest_gimage,
gimp_image_base_type_with_alpha (dest_gimage),
tiles,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
tile_manager_destroy (tiles);
@ -866,7 +866,7 @@ gdisplay_drag_drop (GtkWidget *widget,
off_x = (dest_gimage->width - src_width) / 2;
off_y = (dest_gimage->height - src_height) / 2;
layer_translate (new_layer, off_x, off_y);
gimp_layer_translate (new_layer, off_x, off_y);
gimp_image_add_layer (dest_gimage, new_layer, -1);

View File

@ -790,9 +790,9 @@ gdisplay_drag_drop (GtkWidget *widget,
*/
if (drawable)
{
GImage *src_gimage;
Layer *new_layer;
GImage *dest_gimage;
GimpImage *src_gimage;
GimpLayer *new_layer;
GimpImage *dest_gimage;
gint src_width, src_height;
gint dest_width, dest_height;
gint off_x, off_y;
@ -851,11 +851,11 @@ gdisplay_drag_drop (GtkWidget *widget,
undo_push_group_start (dest_gimage, EDIT_PASTE_UNDO);
new_layer =
layer_new_from_tiles (dest_gimage,
gimp_image_base_type_with_alpha (dest_gimage),
tiles,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new_from_tiles (dest_gimage,
gimp_image_base_type_with_alpha (dest_gimage),
tiles,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
tile_manager_destroy (tiles);
@ -866,7 +866,7 @@ gdisplay_drag_drop (GtkWidget *widget,
off_x = (dest_gimage->width - src_width) / 2;
off_y = (dest_gimage->height - src_height) / 2;
layer_translate (new_layer, off_x, off_y);
gimp_layer_translate (new_layer, off_x, off_y);
gimp_image_add_layer (dest_gimage, new_layer, -1);

View File

@ -1439,9 +1439,9 @@ gdisplay_mask_bounds (GDisplay *gdisp,
gint *x2,
gint *y2)
{
Layer *layer;
gint off_x;
gint off_y;
GimpLayer *layer;
gint off_x;
gint off_y;
/* If there is a floating selection, handle things differently */
if ((layer = gimp_image_floating_sel (gdisp->gimage)))
@ -1734,14 +1734,14 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
GimpImageBaseType base_type = 0;
GimpImageType type = -1;
GimpDrawable *drawable = NULL;
Layer *layer = NULL;
gboolean fs = FALSE;
gboolean aux = FALSE;
gboolean lm = FALSE;
gboolean lp = FALSE;
gboolean alpha = FALSE;
gint lind = -1;
gint lnum = -1;
GimpLayer *layer = NULL;
gboolean fs = FALSE;
gboolean aux = FALSE;
gboolean lm = FALSE;
gboolean lp = FALSE;
gboolean alpha = FALSE;
gint lind = -1;
gint lnum = -1;
if (gdisp)
{
@ -1760,8 +1760,8 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer)
{
lm = layer_get_mask (layer) ? TRUE : FALSE;
alpha = layer_has_alpha (layer);
lm = gimp_layer_get_mask (layer) ? TRUE : FALSE;
alpha = gimp_layer_has_alpha (layer);
}
lind = gimp_image_get_layer_index (gdisp->gimage,
@ -2243,11 +2243,11 @@ gdisplays_selection_visibility (GimpImage *gimage,
SelectionControl function)
{
GDisplay *gdisp;
GSList *list = display_list;
gint count = 0;
GSList *list;
gint count = 0;
/* traverse the linked list of displays, handling each one */
while (list)
for (list = display_list; list; list = g_slist_next (list))
{
gdisp = (GDisplay *) list->data;
if (gdisp->gimage == gimage && gdisp->select)
@ -2272,8 +2272,6 @@ gdisplays_selection_visibility (GimpImage *gimage,
}
count++;
}
list = g_slist_next (list);
}
}
@ -2281,8 +2279,8 @@ gdisplays_selection_visibility (GimpImage *gimage,
gboolean
gdisplays_dirty (void)
{
gboolean dirty = FALSE;
GSList *list = display_list;
gboolean dirty = FALSE;
GSList *list = display_list;
/* traverse the linked list of displays */
while (list)

View File

@ -790,9 +790,9 @@ gdisplay_drag_drop (GtkWidget *widget,
*/
if (drawable)
{
GImage *src_gimage;
Layer *new_layer;
GImage *dest_gimage;
GimpImage *src_gimage;
GimpLayer *new_layer;
GimpImage *dest_gimage;
gint src_width, src_height;
gint dest_width, dest_height;
gint off_x, off_y;
@ -851,11 +851,11 @@ gdisplay_drag_drop (GtkWidget *widget,
undo_push_group_start (dest_gimage, EDIT_PASTE_UNDO);
new_layer =
layer_new_from_tiles (dest_gimage,
gimp_image_base_type_with_alpha (dest_gimage),
tiles,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new_from_tiles (dest_gimage,
gimp_image_base_type_with_alpha (dest_gimage),
tiles,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
tile_manager_destroy (tiles);
@ -866,7 +866,7 @@ gdisplay_drag_drop (GtkWidget *widget,
off_x = (dest_gimage->width - src_width) / 2;
off_y = (dest_gimage->height - src_height) / 2;
layer_translate (new_layer, off_x, off_y);
gimp_layer_translate (new_layer, off_x, off_y);
gimp_image_add_layer (dest_gimage, new_layer, -1);

View File

@ -38,6 +38,7 @@
#define PREVIEW_EVENT_MASK GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK
typedef struct _LayerSelect LayerSelect;
struct _LayerSelect
@ -49,7 +50,7 @@ struct _LayerSelect
GtkWidget *preview;
GImage *gimage;
Layer *current_layer;
GimpLayer *current_layer;
gboolean dirty;
gint image_width;
gint image_height;
@ -203,10 +204,11 @@ static void
layer_select_advance (LayerSelect *layer_select,
gint move)
{
gint index; gint count;
GSList *list;
GSList *nth;
Layer *layer;
gint index;
gint count;
GSList *list;
GSList *nth;
GimpLayer *layer;
index = 0;
@ -221,7 +223,7 @@ layer_select_advance (LayerSelect *layer_select,
list;
list = g_slist_next (list), count++)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer == layer_select->current_layer)
index = count;
@ -234,7 +236,7 @@ layer_select_advance (LayerSelect *layer_select,
if (nth)
{
layer = (Layer *) nth->data;
layer = (GimpLayer *) nth->data;
layer_select->current_layer = layer;
}
}
@ -317,9 +319,9 @@ layer_select_set_gimage (LayerSelect *layer_select,
static void
layer_select_set_layer (LayerSelect *layer_select)
{
Layer *layer;
GimpLayer *layer;
if (! (layer = (layer_select->current_layer)))
if (! (layer = (layer_select->current_layer)))
return;
/* Set the layer label */
@ -420,10 +422,10 @@ preview_events (GtkWidget *widget,
static void
preview_redraw (LayerSelect *layer_select)
{
Layer *layer;
TempBuf *preview_buf;
gint w, h;
gint offx, offy;
GimpLayer *layer;
TempBuf *preview_buf;
gint w, h;
gint offx, offy;
if (! (layer = (layer_select->current_layer)))
return;
@ -435,25 +437,27 @@ preview_redraw (LayerSelect *layer_select)
layer_select->image_height,
-1);
if (layer_is_floating_sel (layer))
render_fs_preview (layer_select->layer_preview,
layer_select->layer_pixmap);
if (gimp_layer_is_floating_sel (layer))
{
render_fs_preview (layer_select->layer_preview,
layer_select->layer_pixmap);
}
else
{
gint off_x;
gint off_y;
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &off_x, &off_y);
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
/* determine width and height */
w = (gint) (layer_select->ratio *
gimp_drawable_width (GIMP_DRAWABLE(layer)));
gimp_drawable_width (GIMP_DRAWABLE (layer)));
h = (gint) (layer_select->ratio *
gimp_drawable_height (GIMP_DRAWABLE(layer)));
gimp_drawable_height (GIMP_DRAWABLE (layer)));
offx = (gint) (layer_select->ratio * off_x);
offy = (gint) (layer_select->ratio * off_y);
preview_buf = layer_preview (layer, w, h);
preview_buf = gimp_layer_preview (layer, w, h);
preview_buf->x = offx;
preview_buf->y = offy;

View File

@ -42,11 +42,11 @@
void
floating_sel_attach (Layer *layer,
floating_sel_attach (GimpLayer *layer,
GimpDrawable *drawable)
{
GImage *gimage;
Layer *floating_sel;
GImage *gimage;
GimpLayer *floating_sel;
if (! (gimage = gimp_drawable_gimage (drawable)))
return;
@ -84,7 +84,7 @@ floating_sel_attach (Layer *layer,
}
void
floating_sel_remove (Layer *layer)
floating_sel_remove (GimpLayer *layer)
{
GImage *gimage;
@ -105,13 +105,13 @@ floating_sel_remove (Layer *layer)
}
void
floating_sel_anchor (Layer *layer)
floating_sel_anchor (GimpLayer *layer)
{
GImage *gimage;
if (! (gimage = gimp_drawable_gimage (GIMP_DRAWABLE (layer))))
return;
if (! layer_is_floating_sel (layer))
if (! gimp_layer_is_floating_sel (layer))
{
g_message (_("Cannot anchor this layer because\nit is not a floating selection."));
return;
@ -145,7 +145,7 @@ floating_sel_anchor (Layer *layer)
}
void
floating_sel_reset (Layer *layer)
floating_sel_reset (GimpLayer *layer)
{
GImage *gimage;
@ -162,18 +162,18 @@ floating_sel_reset (Layer *layer)
{
gimp_image_set_active_channel (gimage, GIMP_CHANNEL (layer->fs.drawable));
if (gimage->layers)
gimage->active_layer = (((Layer *) gimage->layer_stack->data));
gimage->active_layer = (((GimpLayer *) gimage->layer_stack->data));
else
gimage->active_layer = NULL;
}
}
void
floating_sel_to_layer (Layer *layer)
floating_sel_to_layer (GimpLayer *layer)
{
FStoLayerUndo *fsu;
int off_x, off_y;
int width, height;
gint off_x, off_y;
gint width, height;
GImage *gimage;
@ -214,7 +214,7 @@ floating_sel_to_layer (Layer *layer)
undo_push_fs_to_layer (gimage, fsu);
/* clear the selection */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set pointers */
layer->fs.drawable = NULL;
@ -239,15 +239,15 @@ floating_sel_to_layer (Layer *layer)
}
void
floating_sel_store (Layer *layer,
int x,
int y,
int w,
int h)
floating_sel_store (GimpLayer *layer,
gint x,
gint y,
gint w,
gint h)
{
PixelRegion srcPR, destPR;
int offx, offy;
int x1, y1, x2, y2;
gint offx, offy;
gint x1, y1, x2, y2;
/* Check the backing store & make sure it has the correct dimensions */
if ((tile_manager_width (layer->fs.backing_store) != gimp_drawable_width (GIMP_DRAWABLE(layer))) ||
@ -297,15 +297,15 @@ floating_sel_store (Layer *layer,
}
void
floating_sel_restore (Layer *layer,
int x,
int y,
int w,
int h)
floating_sel_restore (GimpLayer *layer,
gint x,
gint y,
gint w,
gint h)
{
PixelRegion srcPR, destPR;
int offx, offy;
int x1, y1, x2, y2;
gint offx, offy;
gint x1, y1, x2, y2;
/* What this function does is "uncover" the specified area in the
* drawable that this floating selection obscures. We do this so
@ -342,8 +342,8 @@ floating_sel_restore (Layer *layer,
}
void
floating_sel_rigor (Layer *layer,
int undo)
floating_sel_rigor (GimpLayer *layer,
gint undo)
{
GImage *gimage = GIMP_DRAWABLE(layer)->gimage;
@ -360,8 +360,8 @@ floating_sel_rigor (Layer *layer,
}
void
floating_sel_relax (Layer *layer,
int undo)
floating_sel_relax (GimpLayer *layer,
gint undo)
{
GImage *gimage = GIMP_DRAWABLE(layer)->gimage;
@ -379,21 +379,21 @@ floating_sel_relax (Layer *layer,
}
void
floating_sel_composite (Layer *layer,
int x,
int y,
int w,
int h,
int undo)
floating_sel_composite (GimpLayer *layer,
gint x,
gint y,
gint w,
gint h,
gint undo)
{
PixelRegion fsPR;
GImage *gimage;
Layer *d_layer;
int preserve_trans;
int active[MAX_CHANNELS];
int offx, offy;
int x1, y1, x2, y2;
int i;
PixelRegion fsPR;
GImage *gimage;
GimpLayer *d_layer;
gint preserve_trans;
gint active[MAX_CHANNELS];
gint offx, offy;
gint x1, y1, x2, y2;
gint i;
d_layer = NULL;
@ -482,8 +482,8 @@ floating_sel_composite (Layer *layer,
}
BoundSeg *
floating_sel_boundary (Layer *layer,
int *num_segs)
floating_sel_boundary (GimpLayer *layer,
gint *num_segs)
{
PixelRegion bPR;
int i;
@ -520,7 +520,7 @@ floating_sel_boundary (Layer *layer,
}
void
floating_sel_invalidate (Layer *layer)
floating_sel_invalidate (GimpLayer *layer)
{
/* Invalidate the attached-to drawable's preview */
gimp_drawable_invalidate_preview (layer->fs.drawable, TRUE);

View File

@ -20,40 +20,40 @@
#define __FLOATING_SEL_H__
void floating_sel_attach (Layer *,
GimpDrawable *);
void floating_sel_remove (Layer *);
void floating_sel_anchor (Layer *);
void floating_sel_reset (Layer *);
void floating_sel_to_layer (Layer *);
void floating_sel_store (Layer *,
void floating_sel_attach (GimpLayer *layer,
GimpDrawable *drawable);
void floating_sel_remove (GimpLayer *layer);
void floating_sel_anchor (GimpLayer *layer);
void floating_sel_reset (GimpLayer *layer);
void floating_sel_to_layer (GimpLayer *layer);
void floating_sel_store (GimpLayer *layer,
gint ,
gint ,
gint ,
gint );
void floating_sel_restore (Layer *,
void floating_sel_restore (GimpLayer *layer,
gint ,
gint ,
gint ,
gint );
void floating_sel_rigor (Layer *,
void floating_sel_rigor (GimpLayer *layer,
gint );
void floating_sel_relax (Layer *,
void floating_sel_relax (GimpLayer *layer,
gint );
void floating_sel_composite (Layer *,
void floating_sel_composite (GimpLayer *layer,
gint ,
gint ,
gint ,
gint ,
gint );
BoundSeg * floating_sel_boundary (Layer *,
BoundSeg * floating_sel_boundary (GimpLayer *layer,
gint *);
void floating_sel_bounds (Layer *,
void floating_sel_bounds (GimpLayer *layer,
gint *,
gint *,
gint *,
gint *);
void floating_sel_invalidate (Layer *);
void floating_sel_invalidate (GimpLayer *layer);
#endif /* __FLOATING_SEL_H__ */

View File

@ -1439,9 +1439,9 @@ gdisplay_mask_bounds (GDisplay *gdisp,
gint *x2,
gint *y2)
{
Layer *layer;
gint off_x;
gint off_y;
GimpLayer *layer;
gint off_x;
gint off_y;
/* If there is a floating selection, handle things differently */
if ((layer = gimp_image_floating_sel (gdisp->gimage)))
@ -1734,14 +1734,14 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
GimpImageBaseType base_type = 0;
GimpImageType type = -1;
GimpDrawable *drawable = NULL;
Layer *layer = NULL;
gboolean fs = FALSE;
gboolean aux = FALSE;
gboolean lm = FALSE;
gboolean lp = FALSE;
gboolean alpha = FALSE;
gint lind = -1;
gint lnum = -1;
GimpLayer *layer = NULL;
gboolean fs = FALSE;
gboolean aux = FALSE;
gboolean lm = FALSE;
gboolean lp = FALSE;
gboolean alpha = FALSE;
gint lind = -1;
gint lnum = -1;
if (gdisp)
{
@ -1760,8 +1760,8 @@ gdisplay_set_menu_sensitivity (GDisplay *gdisp)
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer)
{
lm = layer_get_mask (layer) ? TRUE : FALSE;
alpha = layer_has_alpha (layer);
lm = gimp_layer_get_mask (layer) ? TRUE : FALSE;
alpha = gimp_layer_has_alpha (layer);
}
lind = gimp_image_get_layer_index (gdisp->gimage,
@ -2243,11 +2243,11 @@ gdisplays_selection_visibility (GimpImage *gimage,
SelectionControl function)
{
GDisplay *gdisp;
GSList *list = display_list;
gint count = 0;
GSList *list;
gint count = 0;
/* traverse the linked list of displays, handling each one */
while (list)
for (list = display_list; list; list = g_slist_next (list))
{
gdisp = (GDisplay *) list->data;
if (gdisp->gimage == gimage && gdisp->select)
@ -2272,8 +2272,6 @@ gdisplays_selection_visibility (GimpImage *gimage,
}
count++;
}
list = g_slist_next (list);
}
}
@ -2281,8 +2279,8 @@ gdisplays_selection_visibility (GimpImage *gimage,
gboolean
gdisplays_dirty (void)
{
gboolean dirty = FALSE;
GSList *list = display_list;
gboolean dirty = FALSE;
GSList *list = display_list;
/* traverse the linked list of displays */
while (list)

View File

@ -239,7 +239,7 @@ void
gimage_set_layer_mask_apply (GimpImage *gimage,
GimpLayer *layer)
{
int off_x, off_y;
gint off_x, off_y;
g_return_if_fail (gimage);
g_return_if_fail (layer);
@ -256,7 +256,7 @@ gimage_set_layer_mask_apply (GimpImage *gimage,
void
gimage_set_layer_mask_edit (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
gboolean edit)
{
/* find the layer */

View File

@ -59,7 +59,7 @@ gimage_mask_boundary (GImage *gimage,
gint *num_segs_out)
{
GimpDrawable *d;
Layer *layer;
GimpLayer *layer;
gint x1, y1;
gint x2, y2;
@ -137,8 +137,8 @@ gimage_mask_bounds (GImage *gimage,
void
gimage_mask_invalidate (GImage *gimage)
{
Layer *layer;
Channel *mask;
GimpLayer *layer;
Channel *mask;
/* Turn the current selection off */
gdisplays_selection_visibility (gimage, SelectionOff);
@ -151,7 +151,7 @@ gimage_mask_invalidate (GImage *gimage)
* mask in the composition of the floating selection
*/
layer = gimp_image_get_active_layer (gimage);
if (layer && layer_is_floating_sel (layer))
if (layer && gimp_layer_is_floating_sel (layer))
drawable_update (GIMP_DRAWABLE(layer), 0, 0,
GIMP_DRAWABLE(layer)->width,
GIMP_DRAWABLE(layer)->height);
@ -325,7 +325,7 @@ gimage_mask_extract (GImage *gimage,
*/
if (cut_gimage && GIMP_IS_LAYER (drawable))
{
if (layer_is_floating_sel (GIMP_LAYER (drawable)))
if (gimp_layer_is_floating_sel (GIMP_LAYER (drawable)))
floating_sel_remove (GIMP_LAYER (drawable));
else
gimp_image_remove_layer (gimage, GIMP_LAYER (drawable));
@ -343,14 +343,13 @@ gimage_mask_extract (GImage *gimage,
return tiles;
}
Layer *
GimpLayer *
gimage_mask_float (GImage *gimage,
GimpDrawable *drawable,
gint off_x, /* optional offset */
gint off_y)
{
Layer *layer;
GimpLayer *layer;
Channel *mask = gimp_image_get_mask (gimage);
TileManager *tiles;
gboolean non_empty;
@ -372,11 +371,11 @@ gimage_mask_float (GImage *gimage,
tiles = gimage_mask_extract (gimage, drawable, TRUE, FALSE, TRUE);
/* Create a new layer from the buffer */
layer = layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
tiles,
_("Floated Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
tiles,
_("Floated Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
/* Set the offsets */
tile_manager_get_offsets (tiles, &x1, &y1);
@ -502,8 +501,8 @@ gimage_mask_shrink (GImage *gimage,
void
gimage_mask_layer_alpha (GImage *gimage,
Layer *layer)
gimage_mask_layer_alpha (GimpImage *gimage,
GimpLayer *layer)
{
/* extract the layer's alpha channel */
if (gimp_drawable_has_alpha (GIMP_DRAWABLE (layer)))
@ -521,11 +520,11 @@ gimage_mask_layer_alpha (GImage *gimage,
void
gimage_mask_layer_mask (GImage *gimage,
Layer *layer)
gimage_mask_layer_mask (GimpImage *gimage,
GimpLayer *layer)
{
/* extract the layer's alpha channel */
if (layer_get_mask (layer))
if (gimp_layer_get_mask (layer))
{
/* load the mask with the given layer's alpha channel */
channel_layer_mask (gimp_image_get_mask (gimage), layer);

View File

@ -44,13 +44,13 @@ void gimage_mask_translate (GImage *gimage,
gint off_x,
gint off_y);
TileManager * gimage_mask_extract (GImage *gimage,
TileManager * gimage_mask_extract (GImage *gimage,
GimpDrawable *drawable,
gboolean cut_gimage,
gboolean keep_indexed,
gboolean add_alpha);
Layer * gimage_mask_float (GImage *gimage,
GimpLayer * gimage_mask_float (GImage *gimage,
GimpDrawable *drawable,
gint off_x,
gint off_y);
@ -80,15 +80,15 @@ void gimage_mask_shrink (GImage *gimage,
gboolean edge_lock);
void gimage_mask_layer_alpha (GImage *gimage,
Layer *layer);
GimpLayer *layer);
void gimage_mask_layer_mask (GImage *gimage,
Layer *layer);
GimpLayer *layer);
void gimage_mask_load (GImage *gimage,
Channel *channel);
Channel * gimage_mask_save (GImage *gimage);
Channel * gimage_mask_save (GImage *gimage);
gboolean gimage_mask_stroke (GImage *gimage,
GimpDrawable *drawable);

View File

@ -23,8 +23,6 @@
#include "gimpdrawable.h"
/* OPERATIONS */
/* Half way point where a region is no longer visible in a selection */
#define HALF_WAY 127
@ -71,18 +69,19 @@ typedef struct _ChannelUndo ChannelUndo;
struct _ChannelUndo
{
Channel *channel; /* the actual channel */
gint prev_position; /* former position in list */
Channel *prev_channel; /* previous active channel */
Channel *channel; /* the actual channel */
gint prev_position; /* former position in list */
Channel *prev_channel; /* previous active channel */
};
/* Special undo type */
typedef struct _MaskUndo MaskUndo;
struct _MaskUndo
{
TileManager *tiles; /* the actual mask */
gint x, y; /* offsets */
TileManager *tiles; /* the actual mask */
gint x, y; /* offsets */
};
@ -221,7 +220,4 @@ void channel_layer_mask (Channel *mask,
void channel_invalidate_bounds (Channel *channel);
#define gimp_drawable_channel GIMP_IS_CHANNEL
#endif /* __CHANNEL_H__ */

View File

@ -1086,7 +1086,7 @@ gimp_dnd_set_drawable_preview_icon (GtkWidget *widget,
if (GIMP_IS_LAYER (drawable))
{
tmpbuf = layer_preview (GIMP_LAYER (drawable), width, height);
tmpbuf = gimp_layer_preview (GIMP_LAYER (drawable), width, height);
}
else if (GIMP_IS_LAYER_MASK (drawable))
{

View File

@ -567,13 +567,13 @@ duplicate (GimpImage *gimage)
{
PixelRegion srcPR, destPR;
GimpImage *new_gimage;
Layer *layer, *new_layer;
Layer *floating_layer;
GimpLayer *layer, *new_layer;
GimpLayer *floating_layer;
Channel *channel, *new_channel;
GSList *list;
GList *glist;
Guide *guide = NULL;
Layer *active_layer = NULL;
GimpLayer *active_layer = NULL;
Channel *active_channel = NULL;
GimpDrawable *new_floating_sel_drawable = NULL;
GimpDrawable *floating_sel_drawable = NULL;
@ -608,16 +608,16 @@ duplicate (GimpImage *gimage)
layer = NULL;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
new_layer = layer_copy (layer, FALSE);
new_layer = gimp_layer_copy (layer, FALSE);
gimp_drawable_set_gimage(GIMP_DRAWABLE(new_layer), new_gimage);
gimp_drawable_set_gimage (GIMP_DRAWABLE (new_layer), new_gimage);
/* Make sure the copied layer doesn't say: "<old layer> copy" */
layer_set_name(GIMP_LAYER(new_layer),
layer_get_name(GIMP_LAYER(layer)));
gimp_object_set_name (GIMP_OBJECT (new_layer),
gimp_object_get_name (GIMP_OBJECT (layer)));
/* Make sure if the layer has a layer mask, it's name isn't screwed up */
if (new_layer->mask)

View File

@ -23,6 +23,12 @@
#include "gimpobject.h"
/* PDB stuff */
#define gimp_drawable_layer GIMP_IS_LAYER
#define gimp_drawable_layer_mask GIMP_IS_LAYER_MASK
#define gimp_drawable_channel GIMP_IS_CHANNEL
#define GIMP_TYPE_DRAWABLE (gimp_drawable_get_type ())
#define GIMP_DRAWABLE(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_DRAWABLE, GimpDrawable))
#define GIMP_IS_DRAWABLE(obj) (GTK_CHECK_TYPE ((obj), GIMP_TYPE_DRAWABLE))

View File

@ -329,7 +329,7 @@ typedef struct _Color Color;
typedef struct _QuantizeObj QuantizeObj;
typedef void (* Pass1_Func) (QuantizeObj *);
typedef void (* Pass2i_Func) (QuantizeObj *);
typedef void (* Pass2_Func) (QuantizeObj *, Layer *, TileManager *);
typedef void (* Pass2_Func) (QuantizeObj *, GimpLayer *, TileManager *);
typedef void (* Cleanup_Func) (QuantizeObj *);
typedef unsigned long ColorFreq;
typedef ColorFreq *CFHistogram;
@ -416,13 +416,13 @@ static void indexed_cancel_callback (GtkWidget *, gpointer);
static void indexed_custom_palette_button_callback (GtkWidget *widget, gpointer data);
static void indexed_palette_select_destroy_callback (GtkWidget *widget, gpointer data);
static void rgb_converter (Layer *, TileManager *, int);
static void grayscale_converter (Layer *, TileManager *, int);
static void rgb_converter (GimpLayer *, TileManager *, int);
static void grayscale_converter (GimpLayer *, TileManager *, int);
static void zero_histogram_gray (CFHistogram);
static void zero_histogram_rgb (CFHistogram);
static void generate_histogram_gray (CFHistogram, Layer *, int alpha_dither);
static void generate_histogram_rgb (CFHistogram, Layer *, int col_limit, int alpha_dither);
static void generate_histogram_gray (CFHistogram, GimpLayer *, int alpha_dither);
static void generate_histogram_rgb (CFHistogram, GimpLayer *, int col_limit, int alpha_dither);
static QuantizeObj* initialize_median_cut (int, int, ConvertDitherType,
ConvertPaletteType, int);
@ -552,14 +552,9 @@ convert_to_indexed (GimpImage *gimage)
if (dialog->num_cols == 256)
{
if ((!gimp_image_is_empty (gimage))
&&
(
gimage->layers->next
||
layer_has_alpha ((Layer *) gimage->layers->data)
)
)
if ((! gimp_image_is_empty (gimage)) &&
(gimage->layers->next ||
gimp_layer_has_alpha ((GimpLayer *) gimage->layers->data)))
{
dialog->num_cols = 255;
}
@ -756,14 +751,9 @@ convert_to_indexed (GimpImage *gimage)
/* if the image isn't non-alpha/layered, set the default number of
colours to one less than max, to leave room for a transparent index
for transparent/animated GIFs */
if ((!gimp_image_is_empty (gimage))
&&
(
gimage->layers->next
||
layer_has_alpha ((Layer *) gimage->layers->data)
)
)
if ((! gimp_image_is_empty (gimage)) &&
(gimage->layers->next ||
gimp_layer_has_alpha ((GimpLayer *) gimage->layers->data)))
{
frame = gtk_frame_new (_("[ Warning ]"));
gtk_box_pack_start (GTK_BOX (main_vbox), frame, FALSE, FALSE, 0);
@ -1146,7 +1136,7 @@ make_remap_table (const unsigned char old_palette[],
}
static void
remap_indexed_layer (Layer *layer,
remap_indexed_layer (GimpLayer *layer,
unsigned char *remap_table,
int num_entries)
{
@ -1157,7 +1147,7 @@ remap_indexed_layer (Layer *layer,
unsigned char* src;
unsigned char* dest;
has_alpha = layer_has_alpha (layer) ? 1 : 0;
has_alpha = gimp_layer_has_alpha (layer) ? 1 : 0;
pixel_region_init (&srcPR,
GIMP_DRAWABLE(layer)->tiles, 0, 0,
GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height,
@ -1201,8 +1191,8 @@ convert_image (GImage *gimage,
ConvertPaletteType palette_type)
{
QuantizeObj *quantobj;
Layer *layer;
Layer *floating_layer;
GimpLayer *layer;
GimpLayer *floating_layer;
GimpImageBaseType old_type;
GSList *list;
GimpImageType new_layer_type;
@ -1262,7 +1252,7 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
if (old_type == GRAY)
generate_histogram_gray (quantobj->histogram, layer, alpha_dither);
@ -1328,10 +1318,10 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
switch (new_type)
{
case RGB:
@ -1412,7 +1402,7 @@ convert_image (GImage *gimage,
list = gimage->layers;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
remap_indexed_layer (layer, remap_table, num_entries);
@ -1468,7 +1458,7 @@ convert_image (GImage *gimage,
}
static void
rgb_converter (Layer *layer,
rgb_converter (GimpLayer *layer,
TileManager *new_tiles,
int old_type)
{
@ -1481,7 +1471,7 @@ rgb_converter (Layer *layer,
unsigned char *cmap;
void *pr;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
@ -1542,7 +1532,7 @@ rgb_converter (Layer *layer,
}
static void
grayscale_converter (Layer *layer,
grayscale_converter (GimpLayer *layer,
TileManager *new_tiles,
int old_type)
{
@ -1555,7 +1545,7 @@ grayscale_converter (Layer *layer,
unsigned char *cmap;
void *pr;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
@ -1638,7 +1628,7 @@ zero_histogram_rgb (CFHistogram histogram)
static void
generate_histogram_gray (CFHistogram histogram,
Layer *layer,
GimpLayer *layer,
int alpha_dither)
{
PixelRegion srcPR;
@ -1647,7 +1637,7 @@ generate_histogram_gray (CFHistogram histogram,
void *pr;
gboolean has_alpha;
has_alpha = (gboolean) layer_has_alpha(layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
for (pr = pixel_regions_register (1, &srcPR);
@ -1667,7 +1657,7 @@ generate_histogram_gray (CFHistogram histogram,
static void
generate_histogram_rgb (CFHistogram histogram,
Layer *layer,
GimpLayer *layer,
int col_limit,
int alpha_dither)
{
@ -1681,7 +1671,7 @@ generate_histogram_rgb (CFHistogram histogram,
int row, col, coledge;
int offsetx, offsety;
has_alpha = (gboolean) layer_has_alpha(layer);
has_alpha = gimp_layer_has_alpha (layer);
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
@ -2991,7 +2981,7 @@ custompal_pass1 (QuantizeObj *quantobj)
static void
median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3008,7 +2998,7 @@ median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3052,7 +3042,7 @@ median_cut_pass2_no_dither_gray (QuantizeObj *quantobj,
static void
median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3071,7 +3061,7 @@ median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3129,7 +3119,7 @@ median_cut_pass2_fixed_dither_gray (QuantizeObj *quantobj,
static void
median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3156,7 +3146,7 @@ median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE(layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3204,7 +3194,7 @@ median_cut_pass2_no_dither_rgb (QuantizeObj *quantobj,
static void
median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3233,7 +3223,7 @@ median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE (layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3310,7 +3300,7 @@ median_cut_pass2_fixed_dither_rgb (QuantizeObj *quantobj,
static void
median_cut_pass2_nodestruct_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3332,7 +3322,7 @@ median_cut_pass2_nodestruct_dither_rgb (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
for (pr = pixel_regions_register (2, &srcPR, &destPR); pr != NULL; pr = pixel_regions_process (pr))
@ -3485,7 +3475,7 @@ init_error_limit (const int error_freedom)
static void
median_cut_pass2_fs_dither_gray (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3516,7 +3506,7 @@ median_cut_pass2_fs_dither_gray (QuantizeObj *quantobj,
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &offsetx, &offsety);
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
src_bytes = GIMP_DRAWABLE(layer)->bytes;
@ -3681,7 +3671,7 @@ median_cut_pass2_gray_init (QuantizeObj *quantobj)
static void
median_cut_pass2_fs_dither_rgb (QuantizeObj *quantobj,
Layer *layer,
GimpLayer *layer,
TileManager *new_tiles)
{
PixelRegion srcPR, destPR;
@ -3726,7 +3716,7 @@ median_cut_pass2_fs_dither_rgb (QuantizeObj *quantobj,
if (gimp_drawable_is_gray (GIMP_DRAWABLE(layer)))
red_pix = green_pix = blue_pix = GRAY_PIX;
has_alpha = layer_has_alpha (layer);
has_alpha = gimp_layer_has_alpha (layer);
pixel_region_init (&srcPR, GIMP_DRAWABLE(layer)->tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, FALSE);
pixel_region_init (&destPR, new_tiles, 0, 0, GIMP_DRAWABLE(layer)->width, GIMP_DRAWABLE(layer)->height, TRUE);
src_bytes = GIMP_DRAWABLE(layer)->bytes;

View File

@ -567,13 +567,13 @@ duplicate (GimpImage *gimage)
{
PixelRegion srcPR, destPR;
GimpImage *new_gimage;
Layer *layer, *new_layer;
Layer *floating_layer;
GimpLayer *layer, *new_layer;
GimpLayer *floating_layer;
Channel *channel, *new_channel;
GSList *list;
GList *glist;
Guide *guide = NULL;
Layer *active_layer = NULL;
GimpLayer *active_layer = NULL;
Channel *active_channel = NULL;
GimpDrawable *new_floating_sel_drawable = NULL;
GimpDrawable *floating_sel_drawable = NULL;
@ -608,16 +608,16 @@ duplicate (GimpImage *gimage)
layer = NULL;
while (list)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
list = g_slist_next (list);
new_layer = layer_copy (layer, FALSE);
new_layer = gimp_layer_copy (layer, FALSE);
gimp_drawable_set_gimage(GIMP_DRAWABLE(new_layer), new_gimage);
gimp_drawable_set_gimage (GIMP_DRAWABLE (new_layer), new_gimage);
/* Make sure the copied layer doesn't say: "<old layer> copy" */
layer_set_name(GIMP_LAYER(new_layer),
layer_get_name(GIMP_LAYER(layer)));
gimp_object_set_name (GIMP_OBJECT (new_layer),
gimp_object_get_name (GIMP_OBJECT (layer)));
/* Make sure if the layer has a layer mask, it's name isn't screwed up */
if (new_layer->mask)

View File

@ -94,21 +94,21 @@ static void gimp_image_get_active_channels (GimpImage *gimage,
/* projection functions */
static void project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
static void project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest);
static void project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask);
@ -552,11 +552,11 @@ gimp_image_resize (GimpImage *gimage,
gint offset_x,
gint offset_y)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GList *guide_list;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GList *guide_list;
gimp_add_busy_cursors ();
@ -624,9 +624,9 @@ gimp_image_resize (GimpImage *gimage,
/* Reposition all layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layer_translate (layer, offset_x, offset_y);
gimp_layer_translate (layer, offset_x, offset_y);
}
/* Make sure the projection matches the gimage size */
@ -646,17 +646,17 @@ gimp_image_scale (GimpImage *gimage,
gint new_width,
gint new_height)
{
Channel *channel;
Layer *layer;
Layer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
Channel *channel;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *list;
GSList *remove = NULL;
GList *glist;
Guide *guide;
gint old_width;
gint old_height;
gdouble img_scale_w = 1.0;
gdouble img_scale_h = 1.0;
if ((new_width == 0) || (new_height == 0))
{
@ -707,8 +707,9 @@ gimp_image_scale (GimpImage *gimage,
list = gimage->layers;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
if (layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
layer = (GimpLayer *) list->data;
if (gimp_layer_scale_by_factors (layer, img_scale_w, img_scale_h) == FALSE)
{
/* Since 0 < img_scale_w, img_scale_h, failure due to one or more
* vanishing scaled layer dimensions. Implicit delete implemented
@ -1373,23 +1374,23 @@ gboolean
gimp_image_set_tattoo_state (GimpImage *gimage,
Tattoo val)
{
Layer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
GimpLayer *layer;
GSList *layers;
gboolean retval = TRUE;
Channel *channel;
GSList *channels;
Tattoo maxval = 0;
Path *pptr = NULL;
PathList *plist;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
for (layers = gimage->layers; layers; layers = g_slist_next (layers))
{
Tattoo ltattoo;
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
ltattoo = layer_get_tattoo (layer);
ltattoo = gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
if (ltattoo > maxval)
maxval = ltattoo;
if (gimp_image_get_channel_by_tattoo (gimage, ltattoo) != NULL)
@ -1485,7 +1486,7 @@ gimp_image_colormap_changed (const GimpImage *gimage,
static void
project_intensity (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1500,7 +1501,7 @@ project_intensity (GimpImage *gimage,
static void
project_intensity_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1515,7 +1516,7 @@ project_intensity_alpha (GimpImage *gimage,
static void
project_indexed (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest)
{
@ -1528,7 +1529,7 @@ project_indexed (GimpImage *gimage,
static void
project_indexed_alpha (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
PixelRegion *src,
PixelRegion *dest,
PixelRegion *mask)
@ -1579,14 +1580,16 @@ project_channel (GimpImage *gimage,
static void
gimp_image_free_layers (GimpImage *gimage)
{
GSList *list;
Layer *layer;
GSList *list;
GimpLayer *layer;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer_delete (layer);
layer = (GimpLayer *) list->data;
gtk_object_unref (GTK_OBJECT (layer));
}
g_slist_free (gimage->layers);
g_slist_free (gimage->layer_stack);
}
@ -1616,7 +1619,7 @@ gimp_image_construct_layers (GimpImage *gimage,
gint w,
gint h)
{
Layer *layer;
GimpLayer *layer;
gint x1, y1, x2, y2;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion * mask;
@ -1662,18 +1665,18 @@ gimp_image_construct_layers (GimpImage *gimage,
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible and not floating selections
to the list */
if (!layer_is_floating_sel (layer) &&
if (! gimp_layer_is_floating_sel (layer) &&
gimp_drawable_visible (GIMP_DRAWABLE (layer)))
reverse_list = g_slist_prepend (reverse_list, layer);
}
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
x1 = CLAMP (off_x, x, x + w);
@ -1802,7 +1805,7 @@ gimp_image_initialize_projection (GimpImage *gimage,
gint h)
{
GSList *list;
Layer *layer;
GimpLayer *layer;
gint coverage = 0;
PixelRegion PR;
guchar clear[4] = { 0, 0, 0, 0 };
@ -1816,11 +1819,11 @@ gimp_image_initialize_projection (GimpImage *gimage,
{
gint off_x, off_y;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)) &&
! layer_has_alpha (layer) &&
! gimp_layer_has_alpha (layer) &&
(off_x <= x) &&
(off_y <= y) &&
(off_x + gimp_drawable_width (GIMP_DRAWABLE (layer)) >= x + w) &&
@ -1844,8 +1847,8 @@ gimp_image_get_active_channels (GimpImage *gimage,
GimpDrawable *drawable,
gint *active)
{
Layer *layer;
gint i;
GimpLayer *layer;
gint i;
/* first, blindly copy the gimage active channels */
for (i = 0; i < MAX_CHANNELS; i++)
@ -1864,7 +1867,7 @@ gimp_image_get_active_channels (GimpImage *gimage,
if (GIMP_IS_LAYER (drawable))
{
layer = GIMP_LAYER (drawable);
if (layer_has_alpha (layer) && layer->preserve_trans)
if (gimp_layer_has_alpha (layer) && layer->preserve_trans)
active[gimp_drawable_bytes (drawable) - 1] = 0;
}
}
@ -1890,31 +1893,30 @@ gimp_image_construct (GimpImage *gimage,
if (gimage->layers)
{
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*) gimage->layers->data),
gimp_drawable_offsets (GIMP_DRAWABLE ((GimpLayer*) gimage->layers->data),
&xoff, &yoff);
}
if ((gimage->layers) && /* There's a layer. */
(!g_slist_next(gimage->layers)) && /* It's the only layer. */
(layer_has_alpha((Layer*)(gimage->layers->data))) && /* It's !flat. */
(! g_slist_next (gimage->layers)) && /* It's the only layer. */
(gimp_layer_has_alpha ((GimpLayer *) (gimage->layers->data))) && /* It's !flat. */
/* It's visible. */
(gimp_drawable_visible (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(gimp_drawable_width (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_visible (GIMP_DRAWABLE (gimage->layers->data))) &&
(gimp_drawable_width (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->width) &&
(gimp_drawable_height (GIMP_DRAWABLE ((Layer*)(gimage->layers->data))) ==
(gimp_drawable_height (GIMP_DRAWABLE (gimage->layers->data)) ==
gimage->height) && /* Covers all. */
/* Not indexed. */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)))) &&
(((Layer*)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
(!gimp_drawable_is_indexed (GIMP_DRAWABLE (gimage->layers->data))) &&
(((GimpLayer *)(gimage->layers->data))->opacity == OPAQUE_OPACITY) /*opaq */
)
{
gint xoff;
gint yoff;
gimp_drawable_offsets (GIMP_DRAWABLE ((Layer*)(gimage->layers->data)),
gimp_drawable_offsets (GIMP_DRAWABLE (gimage->layers->data),
&xoff, &yoff);
if ((xoff==0) && (yoff==0)) /* Starts at 0,0 */
{
PixelRegion srcPR, destPR;
@ -1923,8 +1925,7 @@ gimp_image_construct (GimpImage *gimage,
g_warning("Can use cow-projection hack. Yay!");
pixel_region_init (&srcPR, gimp_drawable_data
(GIMP_DRAWABLE
((Layer*)(gimage->layers->data))),
(GIMP_DRAWABLE (gimage->layers->data)),
x, y, w,h, FALSE);
pixel_region_init (&destPR,
gimp_image_projection (gimage),
@ -2111,7 +2112,7 @@ gimp_image_invalidate_layer_previews (GimpImage *gimage)
for (tmp = gimage->layers; tmp; tmp = g_slist_next (tmp))
{
layer = (Layer *) tmp->data;
layer = (GimpLayer *) tmp->data;
gimp_drawable_invalidate_preview (GIMP_DRAWABLE (layer), TRUE);
}
@ -2136,11 +2137,11 @@ gimp_image_invalidate_channel_previews (GimpImage *gimage)
gint
gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg)
const GimpLayer *layer_arg)
{
Layer *layer;
GSList *layers;
gint index;
GimpLayer *layer;
GSList *layers;
gint index;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), -1);
@ -2148,7 +2149,7 @@ gimp_image_get_layer_index (const GimpImage *gimage,
layers;
layers = g_slist_next (layers), index++)
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer == layer_arg)
return index;
@ -2157,16 +2158,16 @@ gimp_image_get_layer_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer = (Layer *) g_slist_nth_data (gimage->layers, layer_index);
layer = (GimpLayer *) g_slist_nth_data (gimage->layers, layer_index);
return layer;
}
@ -2195,7 +2196,7 @@ gimp_image_get_channel_index (const GimpImage *gimage,
return -1;
}
Layer *
GimpLayer *
gimp_image_get_active_layer (const GimpImage *gimage)
{
g_return_val_if_fail (gimage != NULL, NULL);
@ -2212,12 +2213,12 @@ gimp_image_get_active_channel (const GimpImage *gimage)
return gimage->active_channel;
}
Layer *
GimpLayer *
gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tattoo)
{
Layer *layer;
GSList *layers;
GimpLayer *layer;
GSList *layers;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2225,9 +2226,9 @@ gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
layers;
layers = g_slist_next (layers))
{
layer = (Layer *) layers->data;
layer = (GimpLayer *) layers->data;
if (layer_get_tattoo (layer) == tattoo)
if (gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)) == tattoo)
return layer;
}
@ -2322,7 +2323,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
g_return_val_if_fail (segs != NULL, FALSE);
@ -2333,7 +2334,7 @@ gimp_image_layer_boundary (const GimpImage *gimage,
*/
if ((layer = gimage->active_layer))
{
*segs = layer_boundary (layer, n_segs);
*segs = gimp_layer_boundary (layer, n_segs);
return TRUE;
}
else
@ -2344,9 +2345,9 @@ gimp_image_layer_boundary (const GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (GIMP_IS_LAYER (layer), NULL);
@ -2358,18 +2359,18 @@ gimp_image_set_active_layer (GimpImage *gimage,
{
if (! gimage->layers)
return NULL;
layer = (Layer *) gimage->layers->data;
layer = (GimpLayer *) gimage->layers->data;
}
if (! layer)
return NULL;
/* Configure the layer stack to reflect this change */
gimage->layer_stack = g_slist_remove (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, (void *) layer);
gimage->layer_stack = g_slist_remove (gimage->layer_stack, layer);
gimage->layer_stack = g_slist_prepend (gimage->layer_stack, layer);
/* invalidate the selection boundary because of a layer modification */
layer_invalidate_boundary (layer);
gimp_layer_invalidate_boundary (layer);
/* Set the active layer */
gimage->active_layer = layer;
@ -2466,30 +2467,30 @@ gimp_image_set_component_visible (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y)
{
Layer *layer;
GSList *list;
GimpLayer *layer;
GSList *list;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer_pick_correlate (layer, x, y))
if (gimp_layer_pick_correlate (layer, x, y))
return layer;
}
return NULL;
}
Layer *
GimpLayer *
gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2513,9 +2514,9 @@ gimp_image_raise_layer (GimpImage *gimage,
}
Layer *
GimpLayer *
gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2540,11 +2541,9 @@ gimp_image_lower_layer (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, curpos+1, TRUE);
}
Layer *
GimpLayer *
gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2563,7 +2562,7 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return NULL;
}
if (! layer_has_alpha (layer_arg))
if (! gimp_layer_has_alpha (layer_arg))
{
g_message (_("Can't raise Layer without alpha"));
return NULL;
@ -2572,10 +2571,9 @@ gimp_image_raise_layer_to_top (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, 0, TRUE);
}
Layer *
GimpLayer *
gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg)
GimpLayer *layer_arg)
{
GSList *list;
gint curpos;
@ -2588,9 +2586,9 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
curpos = g_slist_index (list, layer_arg);
if (curpos < 0)
return NULL;
length = g_slist_length (list);
if (curpos == length-1)
{
g_message (_("Layer is already on bottom"));
@ -2600,20 +2598,19 @@ gimp_image_lower_layer_to_bottom (GimpImage *gimage,
return gimp_image_position_layer (gimage, layer_arg, length-1, TRUE);
}
Layer *
GimpLayer *
gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo)
{
Layer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
GimpLayer *layer;
GSList *list;
GSList *next;
gint x_min, y_min, x_max, y_max;
gint off_x, off_y;
gint index;
gint list_length;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2644,9 +2641,10 @@ gimp_image_position_layer (GimpImage *gimage,
return NULL;
/* check if we want to move it below a bottom layer without alpha */
layer = (Layer *) g_slist_last (list)->data;
layer = (GimpLayer *) g_slist_last (list)->data;
if (new_index == list_length - 1 &&
!layer_has_alpha (layer))
! gimp_layer_has_alpha (layer))
{
g_message (_("BG has no alpha, layer was placed above"));
new_index--;
@ -2674,14 +2672,14 @@ gimp_image_position_layer (GimpImage *gimage,
return layer_arg;
}
Layer *
GimpLayer *
gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
gboolean had_floating_sel = FALSE;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2696,7 +2694,7 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2728,12 +2726,12 @@ gimp_image_merge_visible_layers (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_flatten (GimpImage *gimage)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -2747,7 +2745,7 @@ gimp_image_flatten (GimpImage *gimage)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
merge_list = g_slist_append (merge_list, layer);
@ -2761,27 +2759,27 @@ gimp_image_flatten (GimpImage *gimage)
return layer;
}
Layer *
GimpLayer *
gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer *current_layer,
MergeType merge_type)
{
GSList *layer_list;
GSList *merge_list = NULL;
Layer *layer = NULL;
GSList *layer_list;
GSList *merge_list = NULL;
GimpLayer *layer = NULL;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
layer_list = gimage->layers;
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == current_layer)
{
layer_list = g_slist_next (layer_list);
while (layer_list)
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
merge_list = g_slist_append (merge_list, layer);
@ -2812,7 +2810,7 @@ gimp_image_merge_down (GimpImage *gimage,
}
}
Layer *
GimpLayer *
gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type)
@ -2820,9 +2818,9 @@ gimp_image_merge_layers (GimpImage *gimage,
GSList *reverse_list = NULL;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
Layer *merge_layer;
Layer *layer;
Layer *bottom;
GimpLayer *merge_layer;
GimpLayer *layer;
GimpLayer *bottom;
LayerModeEffects bottom_mode;
guchar bg[4] = {0, 0, 0, 0};
GimpImageType type;
@ -2847,7 +2845,7 @@ gimp_image_merge_layers (GimpImage *gimage,
count = 0;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
switch (merge_type)
@ -2925,9 +2923,10 @@ gimp_image_merge_layers (GimpImage *gimage,
case INDEXED: type = INDEXED_GIMAGE; break;
}
merge_layer = layer_new (gimage, (x2 - x1), (y2 - y1),
type, gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
merge_layer = gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
type,
gimp_object_get_name (GIMP_OBJECT (layer)),
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
g_message ("gimp_image_merge_layers: could not allocate merge layer");
@ -2961,10 +2960,10 @@ gimp_image_merge_layers (GimpImage *gimage,
*/
merge_layer =
layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
gimp_layer_new (gimage, (x2 - x1), (y2 - y1),
gimp_drawable_type_with_alpha (GIMP_DRAWABLE (layer)),
"merged layer",
OPAQUE_OPACITY, NORMAL_MODE);
if (!merge_layer)
{
@ -2988,7 +2987,7 @@ gimp_image_merge_layers (GimpImage *gimage,
/* Find the index in the layer list of the bottom layer--we need this
* in order to add the final, merged layer to the layer list correctly
*/
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
position =
g_slist_length (gimage->layers) -
gimp_image_get_layer_index (gimage, layer);
@ -3010,13 +3009,14 @@ gimp_image_merge_layers (GimpImage *gimage,
}
/* Copy the tattoo and parasites of the bottom layer to the new layer */
layer_set_tattoo(merge_layer, layer_get_tattoo(layer));
gimp_drawable_set_tattoo (GIMP_DRAWABLE (merge_layer),
gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer)));
GIMP_DRAWABLE(merge_layer)->parasites =
parasite_list_copy (GIMP_DRAWABLE(layer)->parasites);
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
/* determine what sort of operation is being attempted and
* if it's actually legal...
@ -3080,7 +3080,8 @@ gimp_image_merge_layers (GimpImage *gimage,
merge_list = gimage->layers;
while (merge_list)
{
layer = (Layer *) merge_list->data;
layer = (GimpLayer *) merge_list->data;
merge_list = g_slist_next (merge_list);
gimp_image_remove_layer (gimage, layer);
}
@ -3118,9 +3119,9 @@ gimp_image_merge_layers (GimpImage *gimage,
return merge_layer;
}
Layer *
GimpLayer *
gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer *float_layer,
gint position)
{
LayerUndo *lu;
@ -3148,7 +3149,7 @@ gimp_image_add_layer (GimpImage *gimage,
undo_push_layer (gimage, LAYER_ADD_UNDO, lu);
/* If the layer is a floating selection, set the ID */
if (layer_is_floating_sel (float_layer))
if (gimp_layer_is_floating_sel (float_layer))
gimage->floating_sel = float_layer;
/* let the layer know about the gimage */
@ -3205,9 +3206,9 @@ gimp_image_add_layer (GimpImage *gimage,
return float_layer;
}
Layer *
GimpLayer *
gimp_image_remove_layer (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerUndo *lu;
@ -3278,7 +3279,7 @@ gimp_image_add_layer_mask (GimpImage *gimage,
return (NULL);
}
if (! layer_has_alpha (layer))
if (! gimp_layer_has_alpha (layer))
{
g_message (_("Cannot add layer mask to a layer\nwith no alpha channel."));
return (NULL);
@ -3333,7 +3334,7 @@ gimp_image_remove_layer_mask (GimpImage *gimage,
lmu->edit_mask = layer->edit_mask;
lmu->show_mask = layer->show_mask;
layer_apply_mask (layer, mode);
gimp_layer_apply_mask (layer, mode);
/* Push the undo--Important to do it here, AFTER the call
* to layer_apply_mask, in case the undo push fails and the
@ -3619,7 +3620,7 @@ gimp_image_is_empty (const GimpImage *gimage)
GimpDrawable *
gimp_image_active_drawable (const GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_val_if_fail (gimage != NULL, NULL);
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
@ -3805,7 +3806,7 @@ gimp_image_clean_all (GimpImage *gimage)
gtk_signal_emit (GTK_OBJECT (gimage), gimp_image_signals[CLEAN]);
}
Layer *
GimpLayer *
gimp_image_floating_sel (const GimpImage *gimage)
{
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), FALSE);
@ -3898,8 +3899,8 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
gint width,
gint height)
{
Layer *layer;
Layer *floating_sel;
GimpLayer *layer;
GimpLayer *floating_sel;
PixelRegion src1PR, src2PR, maskPR;
PixelRegion *mask;
TempBuf *comp;
@ -3940,15 +3941,17 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
floating_sel = NULL;
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
/* only add layers that are visible to the list */
if (gimp_drawable_visible (GIMP_DRAWABLE (layer)))
{
/* floating selections are added right above the layer
they are attached to */
if (layer_is_floating_sel (layer))
floating_sel = layer;
if (gimp_layer_is_floating_sel (layer))
{
floating_sel = layer;
}
else
{
if (floating_sel &&
@ -3964,7 +3967,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
while (reverse_list)
{
layer = (Layer *) reverse_list->data;
layer = (GimpLayer *) reverse_list->data;
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -3987,7 +3990,7 @@ gimp_image_construct_composite_preview (GimpImage *gimage,
src1PR.data =
temp_buf_data (comp) + y1 * src1PR.rowstride + x1 * src1PR.bytes;
layer_buf = layer_preview (layer, w, h);
layer_buf = gimp_layer_preview (layer, w, h);
src2PR.bytes = layer_buf->bytes;
src2PR.w = src1PR.w;
src2PR.h = src1PR.h;
@ -4115,7 +4118,7 @@ gimp_image_preview_valid (const GimpImage *gimage,
void
gimp_image_invalidate_preview (GimpImage *gimage)
{
Layer *layer;
GimpLayer *layer;
g_return_if_fail (GIMP_IS_IMAGE (gimage));

View File

@ -85,9 +85,9 @@ struct _GimpImage
GSList *channels; /* the list of masks */
GSList *layer_stack; /* the layers in MRU order */
Layer *active_layer; /* ID of active layer */
GimpLayer *active_layer; /* ID of active layer */
Channel *active_channel; /* ID of active channel */
Layer *floating_sel; /* ID of fs layer */
GimpLayer *floating_sel; /* ID of fs layer */
Channel *selection_mask; /* selection mask channel */
ParasiteList *parasites; /* Plug-in parasite data */
@ -164,11 +164,11 @@ struct _Guide
typedef struct _GimpImageRepaintArg
{
Layer *layer;
guint x;
guint y;
guint width;
guint height;
GimpLayer *layer;
guint x;
guint y;
guint width;
guint height;
} GimpImageRepaintArg;
@ -283,14 +283,14 @@ void gimp_image_colormap_changed (const GimpImage *image,
/* layer/channel functions */
gint gimp_image_get_layer_index (const GimpImage *gimage,
const Layer *layer_arg);
Layer * gimp_image_get_layer_by_index (const GimpImage *gimage,
const GimpLayer *layer_arg);
GimpLayer * gimp_image_get_layer_by_index (const GimpImage *gimage,
gint layer_index);
gint gimp_image_get_channel_index (const GimpImage *gimage,
const Channel *channel_arg);
Layer * gimp_image_get_active_layer (const GimpImage *gimage);
GimpLayer * gimp_image_get_active_layer (const GimpImage *gimage);
Channel * gimp_image_get_active_channel (const GimpImage *gimage);
Layer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
GimpLayer * gimp_image_get_layer_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
Channel * gimp_image_get_channel_by_tattoo (const GimpImage *gimage,
Tattoo tatoo);
@ -304,8 +304,8 @@ gboolean gimp_image_get_component_visible (const GimpImage *gimage,
gboolean gimp_image_layer_boundary (const GimpImage *gimage,
BoundSeg **segs,
gint *n_segs);
Layer * gimp_image_set_active_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_set_active_layer (GimpImage *gimage,
GimpLayer *layer);
Channel * gimp_image_set_active_channel (GimpImage *gimage,
Channel *channel);
Channel * gimp_image_unset_active_channel (GimpImage *gimage);
@ -315,40 +315,40 @@ void gimp_image_set_component_active (GimpImage *gimage,
void gimp_image_set_component_visible (GimpImage *gimage,
ChannelType type,
gboolean visible);
Layer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
GimpLayer * gimp_image_pick_correlate_layer (const GimpImage *gimage,
gint x,
gint y);
Layer * gimp_image_raise_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_raise_layer_to_top (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
Layer *layer_arg);
Layer * gimp_image_position_layer (GimpImage *gimage,
Layer *layer_arg,
GimpLayer * gimp_image_raise_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_raise_layer_to_top (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_lower_layer_to_bottom (GimpImage *gimage,
GimpLayer *layer_arg);
GimpLayer * gimp_image_position_layer (GimpImage *gimage,
GimpLayer *layer_arg,
gint new_index,
gboolean push_undo);
Layer * gimp_image_merge_visible_layers (GimpImage *gimage,
GimpLayer * gimp_image_merge_visible_layers (GimpImage *gimage,
MergeType merge_type);
Layer * gimp_image_merge_down (GimpImage *gimage,
Layer *current_layer,
GimpLayer * gimp_image_merge_down (GimpImage *gimage,
GimpLayer *current_layer,
MergeType merge_type);
Layer * gimp_image_flatten (GimpImage *gimage);
Layer * gimp_image_merge_layers (GimpImage *gimage,
GimpLayer * gimp_image_flatten (GimpImage *gimage);
GimpLayer * gimp_image_merge_layers (GimpImage *gimage,
GSList *merge_list,
MergeType merge_type);
Layer * gimp_image_add_layer (GimpImage *gimage,
Layer *float_layer,
GimpLayer * gimp_image_add_layer (GimpImage *gimage,
GimpLayer *float_layer,
gint position);
Layer * gimp_image_remove_layer (GimpImage *gimage,
Layer *layer);
GimpLayer * gimp_image_remove_layer (GimpImage *gimage,
GimpLayer *layer);
GimpLayerMask * gimp_image_add_layer_mask (GimpImage *gimage,
GimpLayer *layer,
GimpLayerMask *mask);
Channel * gimp_image_remove_layer_mask (GimpImage *gimage,
Layer *layer,
GimpLayer *layer,
MaskApplyMode mode);
Channel * gimp_image_raise_channel (GimpImage *gimage,
Channel *channel_arg);
@ -414,7 +414,7 @@ void gimp_image_undo_event (GimpImage *gimage,
gint gimp_image_dirty (GimpImage *gimage);
gint gimp_image_clean (GimpImage *gimage);
void gimp_image_clean_all (GimpImage *gimage);
Layer * gimp_image_floating_sel (const GimpImage *gimage);
GimpLayer * gimp_image_floating_sel (const GimpImage *gimage);
guchar * gimp_image_cmap (const GimpImage *gimage);
/* projection access functions */

View File

@ -67,10 +67,10 @@ static void gimp_layer_preview_scale (GimpImageBaseType type,
PixelRegion *destPR,
gint subsample);
static TempBuf * gimp_layer_preview_private (Layer *layer,
static TempBuf * gimp_layer_preview_private (GimpLayer *layer,
gint width,
gint height);
static TempBuf * gimp_layer_mask_preview_private (Layer *layer,
static TempBuf * gimp_layer_mask_preview_private (GimpLayer *layer,
gint width,
gint height);
@ -152,7 +152,7 @@ gimp_layer_invalidate_preview (GimpDrawable *drawable)
layer = GIMP_LAYER (drawable);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_invalidate (layer);
}
@ -1211,19 +1211,6 @@ gimp_layer_pick_correlate (GimpLayer *layer,
/* access functions */
/**********************/
void
gimp_layer_set_name (GimpLayer *layer,
const gchar *name)
{
gimp_object_set_name (GIMP_OBJECT (layer), name);
}
const gchar *
gimp_layer_get_name (const GimpLayer *layer)
{
return gimp_object_get_name (GIMP_OBJECT (layer));
}
GimpLayerMask *
gimp_layer_get_mask (GimpLayer *layer)
{
@ -1254,19 +1241,6 @@ gimp_layer_linked (GimpLayer *layer)
return layer->linked;
}
Tattoo
gimp_layer_get_tattoo (const GimpLayer *layer)
{
return gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
}
void
gimp_layer_set_tattoo (GimpLayer *layer,
Tattoo value)
{
gimp_drawable_set_tattoo (GIMP_DRAWABLE (layer), value);
}
TempBuf *
gimp_layer_preview (GimpLayer *layer,
gint width,

View File

@ -23,38 +23,11 @@
#include "gimpdrawable.h"
/* EEK */
#define layer_new gimp_layer_new
#define layer_copy gimp_layer_copy
#define layer_create_mask gimp_layer_create_mask
#define layer_scale gimp_layer_scale
#define layer_resize gimp_layer_resize
#define layer_delete gimp_layer_delete
#define layer_translate gimp_layer_translate
#define layer_get_name gimp_layer_get_name
#define layer_set_name gimp_layer_set_name
#define layer_get_tattoo gimp_layer_get_tattoo
#define layer_set_tattoo gimp_layer_set_tattoo
#define layer_add_alpha gimp_layer_add_alpha
#define layer_has_alpha gimp_layer_has_alpha
#define layer_preview gimp_layer_preview
#define layer_is_floating_sel gimp_layer_is_floating_sel
#define layer_invalidate_previews gimp_layer_invalidate_previews
#define layer_linked gimp_layer_linked
#define layer_get_mask gimp_layer_get_mask
#define layer_new_from_tiles gimp_layer_new_from_tiles
#define layer_resize_to_image gimp_layer_resize_to_image
#define layer_invalidate_boundary gimp_layer_invalidate_boundary
#define layer_scale_by_factors gimp_layer_scale_by_factors
#define layer_boundary gimp_layer_boundary
#define layer_pick_correlate gimp_layer_pick_correlate
#define layer_apply_mask gimp_layer_apply_mask
#define layer_add_mask gimp_layer_add_mask
#define layer_check_scaling gimp_layer_check_scaling
#define gimp_drawable_layer GIMP_IS_LAYER
/* PDB stuff */
#define gimp_layer_set_name(l,n) gimp_object_set_name(GIMP_OBJECT(l),(n))
#define gimp_layer_get_name(l) gimp_object_get_name(GIMP_OBJECT(l))
#define gimp_layer_set_tattoo(l,t) gimp_drawable_set_tattoo(GIMP_DRAWABLE(l),(t))
#define gimp_layer_get_tattoo(l) gimp_drawable_get_tattoo(GIMP_DRAWABLE(l))
#define GIMP_TYPE_LAYER (gimp_layer_get_type ())
@ -64,7 +37,7 @@
#define GIMP_IS_LAYER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER))
typedef struct _GimpLayerClass GimpLayerClass;
typedef struct _GimpLayerClass GimpLayerClass;
struct _GimpLayer
{
@ -104,9 +77,9 @@ struct _GimpLayerClass
struct _LayerUndo
{
GimpLayer *layer; /* the actual layer */
gint prev_position; /* former position in list */
GimpLayer *prev_layer; /* previous active layer */
GimpLayer *layer; /* the actual layer */
gint prev_position; /* former position in list */
GimpLayer *prev_layer; /* previous active layer */
};
struct _FStoLayerUndo
@ -170,16 +143,10 @@ gint gimp_layer_pick_correlate (GimpLayer *layer,
gint x,
gint y);
void gimp_layer_set_name (GimpLayer *layer,
const gchar *name);
const gchar * gimp_layer_get_name (const GimpLayer *layer);
GimpLayerMask * gimp_layer_get_mask (GimpLayer *layer);
gboolean gimp_layer_has_alpha (GimpLayer *layer);
gboolean gimp_layer_is_floating_sel (GimpLayer *layer);
gboolean gimp_layer_linked (GimpLayer *layer);
Tattoo gimp_layer_get_tattoo (const GimpLayer *layer);
void gimp_layer_set_tattoo (GimpLayer *layer,
Tattoo value);
TempBuf * gimp_layer_preview (GimpLayer *layer,
gint width,

View File

@ -23,9 +23,6 @@
#include "channel.h"
#define gimp_drawable_layer_mask GIMP_IS_LAYER_MASK
#define GIMP_TYPE_LAYER_MASK (gimp_layer_mask_get_type ())
#define GIMP_LAYER_MASK(obj) (GTK_CHECK_CAST ((obj), GIMP_TYPE_LAYER_MASK, GimpLayerMask))
#define GIMP_LAYER_MASK_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GIMP_TYPE_LAYER_MASK, GimpLayerMaskClass))
@ -74,7 +71,7 @@ GimpLayerMask * gimp_layer_mask_copy (GimpLayerMask *layer_mask);
void gimp_layer_mask_set_layer (GimpLayerMask *layer_mask,
GimpLayer *layer);
Layer * gimp_layer_mask_get_layer (GimpLayerMask *layer_mask);
GimpLayer * gimp_layer_mask_get_layer (GimpLayerMask *layer_mask);
#endif /* __GIMP_LAYER_MASK_H__ */

View File

@ -196,7 +196,7 @@ crop_buffer (TileManager *tiles,
}
TileManager *
edit_cut (GImage *gimage,
edit_cut (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *cut;
@ -250,7 +250,7 @@ edit_cut (GImage *gimage,
}
TileManager *
edit_copy (GImage *gimage,
edit_copy (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *copy;
@ -298,31 +298,31 @@ edit_copy (GImage *gimage,
}
GimpLayer *
edit_paste (GImage *gimage,
edit_paste (GimpImage *gimage,
GimpDrawable *drawable,
TileManager *paste,
gboolean paste_into)
{
Layer *layer;
gint x1, y1, x2, y2;
gint cx, cy;
GimpLayer *layer;
gint x1, y1, x2, y2;
gint cx, cy;
/* Make a new layer: iff drawable == NULL,
* user is pasting into an empty display.
*/
if (drawable != NULL)
layer = layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_drawable_type_with_alpha (drawable),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
else
layer = layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{
@ -374,12 +374,12 @@ edit_paste (GImage *gimage,
}
gboolean
edit_paste_as_new (GImage *invoke,
edit_paste_as_new (GimpImage *invoke,
TileManager *paste)
{
GImage *gimage;
Layer *layer;
GDisplay *gdisp;
GimpImage *gimage;
GimpLayer *layer;
GDisplay *gdisp;
if (!global_buf)
return FALSE;
@ -392,11 +392,11 @@ edit_paste_as_new (GImage *invoke,
gimp_image_set_resolution (gimage, invoke->xresolution, invoke->yresolution);
gimp_image_set_unit (gimage, invoke->unit);
layer = layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new_from_tiles (gimage,
gimp_image_base_type_with_alpha (gimage),
paste,
_("Pasted Layer"),
OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{
@ -416,7 +416,7 @@ edit_paste_as_new (GImage *invoke,
}
gboolean
edit_clear (GImage *gimage,
edit_clear (GimpImage *gimage,
GimpDrawable *drawable)
{
TileManager *buf_tiles;
@ -455,7 +455,7 @@ edit_clear (GImage *gimage,
}
gboolean
edit_fill (GImage *gimage,
edit_fill (GimpImage *gimage,
GimpDrawable *drawable,
GimpFillType fill_type)
{

View File

@ -82,7 +82,7 @@ struct _ChannelsDialog
ChannelType components[3];
Channel *active_channel;
Layer *floating_sel;
GimpLayer *floating_sel;
GSList *channel_widgets;
};

View File

@ -917,9 +917,9 @@ void
layers_previous_cmd_callback (GtkWidget *widget,
gpointer client_data)
{
GDisplay *gdisp;
Layer *new_layer;
gint current_layer;
GDisplay *gdisp;
GimpLayer *new_layer;
gint current_layer;
return_if_no_display (gdisp);
@ -940,9 +940,9 @@ void
layers_next_cmd_callback (GtkWidget *widget,
gpointer client_data)
{
GDisplay *gdisp;
Layer *new_layer;
gint current_layer;
GDisplay *gdisp;
GimpLayer *new_layer;
gint current_layer;
return_if_no_display (gdisp);
@ -1053,7 +1053,7 @@ layers_add_alpha_channel_cmd_callback (GtkWidget *widget,
GDisplay *gdisp;
return_if_no_display (gdisp);
layer_add_alpha ( gdisp->gimage->active_layer);
gimp_layer_add_alpha ( gdisp->gimage->active_layer);
gdisplays_flush ();
}
@ -1075,7 +1075,7 @@ layers_resize_to_image_cmd_callback (GtkWidget *widget,
GDisplay *gdisp;
return_if_no_display (gdisp);
layer_resize_to_image (gdisp->gimage->active_layer);
gimp_layer_resize_to_image (gdisp->gimage->active_layer);
gdisplays_flush ();
}

View File

@ -917,9 +917,9 @@ void
layers_previous_cmd_callback (GtkWidget *widget,
gpointer client_data)
{
GDisplay *gdisp;
Layer *new_layer;
gint current_layer;
GDisplay *gdisp;
GimpLayer *new_layer;
gint current_layer;
return_if_no_display (gdisp);
@ -940,9 +940,9 @@ void
layers_next_cmd_callback (GtkWidget *widget,
gpointer client_data)
{
GDisplay *gdisp;
Layer *new_layer;
gint current_layer;
GDisplay *gdisp;
GimpLayer *new_layer;
gint current_layer;
return_if_no_display (gdisp);
@ -1053,7 +1053,7 @@ layers_add_alpha_channel_cmd_callback (GtkWidget *widget,
GDisplay *gdisp;
return_if_no_display (gdisp);
layer_add_alpha ( gdisp->gimage->active_layer);
gimp_layer_add_alpha ( gdisp->gimage->active_layer);
gdisplays_flush ();
}
@ -1075,7 +1075,7 @@ layers_resize_to_image_cmd_callback (GtkWidget *widget,
GDisplay *gdisp;
return_if_no_display (gdisp);
layer_resize_to_image (gdisp->gimage->active_layer);
gimp_layer_resize_to_image (gdisp->gimage->active_layer);
gdisplays_flush ();
}

View File

@ -38,6 +38,7 @@
#define PREVIEW_EVENT_MASK GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK
typedef struct _LayerSelect LayerSelect;
struct _LayerSelect
@ -49,7 +50,7 @@ struct _LayerSelect
GtkWidget *preview;
GImage *gimage;
Layer *current_layer;
GimpLayer *current_layer;
gboolean dirty;
gint image_width;
gint image_height;
@ -203,10 +204,11 @@ static void
layer_select_advance (LayerSelect *layer_select,
gint move)
{
gint index; gint count;
GSList *list;
GSList *nth;
Layer *layer;
gint index;
gint count;
GSList *list;
GSList *nth;
GimpLayer *layer;
index = 0;
@ -221,7 +223,7 @@ layer_select_advance (LayerSelect *layer_select,
list;
list = g_slist_next (list), count++)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer == layer_select->current_layer)
index = count;
@ -234,7 +236,7 @@ layer_select_advance (LayerSelect *layer_select,
if (nth)
{
layer = (Layer *) nth->data;
layer = (GimpLayer *) nth->data;
layer_select->current_layer = layer;
}
}
@ -317,9 +319,9 @@ layer_select_set_gimage (LayerSelect *layer_select,
static void
layer_select_set_layer (LayerSelect *layer_select)
{
Layer *layer;
GimpLayer *layer;
if (! (layer = (layer_select->current_layer)))
if (! (layer = (layer_select->current_layer)))
return;
/* Set the layer label */
@ -420,10 +422,10 @@ preview_events (GtkWidget *widget,
static void
preview_redraw (LayerSelect *layer_select)
{
Layer *layer;
TempBuf *preview_buf;
gint w, h;
gint offx, offy;
GimpLayer *layer;
TempBuf *preview_buf;
gint w, h;
gint offx, offy;
if (! (layer = (layer_select->current_layer)))
return;
@ -435,25 +437,27 @@ preview_redraw (LayerSelect *layer_select)
layer_select->image_height,
-1);
if (layer_is_floating_sel (layer))
render_fs_preview (layer_select->layer_preview,
layer_select->layer_pixmap);
if (gimp_layer_is_floating_sel (layer))
{
render_fs_preview (layer_select->layer_preview,
layer_select->layer_pixmap);
}
else
{
gint off_x;
gint off_y;
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &off_x, &off_y);
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
/* determine width and height */
w = (gint) (layer_select->ratio *
gimp_drawable_width (GIMP_DRAWABLE(layer)));
gimp_drawable_width (GIMP_DRAWABLE (layer)));
h = (gint) (layer_select->ratio *
gimp_drawable_height (GIMP_DRAWABLE(layer)));
gimp_drawable_height (GIMP_DRAWABLE (layer)));
offx = (gint) (layer_select->ratio * off_x);
offy = (gint) (layer_select->ratio * off_y);
preview_buf = layer_preview (layer, w, h);
preview_buf = gimp_layer_preview (layer, w, h);
preview_buf->x = offx;
preview_buf->y = offy;

View File

@ -136,14 +136,14 @@ struct _LayerWidget
static void layers_dialog_preview_extents (void);
static void layers_dialog_set_menu_sensitivity (void);
static void layers_dialog_scroll_index (gint index);
static void layers_dialog_set_active_layer (Layer *layer);
static void layers_dialog_unset_layer (Layer *layer);
static void layers_dialog_position_layer (Layer *layer,
static void layers_dialog_set_active_layer (GimpLayer *layer);
static void layers_dialog_unset_layer (GimpLayer *layer);
static void layers_dialog_position_layer (GimpLayer *layer,
gint new_index);
static void layers_dialog_add_layer (Layer *layer);
static void layers_dialog_remove_layer (Layer *layer);
static void layers_dialog_add_layer_mask (Layer *layer);
static void layers_dialog_remove_layer_mask (Layer *layer);
static void layers_dialog_add_layer (GimpLayer *layer);
static void layers_dialog_remove_layer (GimpLayer *layer);
static void layers_dialog_add_layer_mask (GimpLayer *layer);
static void layers_dialog_remove_layer_mask (GimpLayer *layer);
static void paint_mode_menu_callback (GtkWidget *widget,
gpointer data);
@ -182,9 +182,9 @@ static gboolean layers_dialog_drag_trashcan_callback
guint time);
/* layer widget function prototypes */
static LayerWidget * layer_widget_get_ID (Layer *layer);
static LayerWidget * layer_widget_get_ID (GimpLayer *layer);
static LayerWidget * layer_widget_create (GimpImage *gimage,
Layer *layer);
GimpLayer *layer);
static gboolean layer_widget_drag_motion_callback
(GtkWidget *widget,
@ -234,11 +234,11 @@ static void layer_widget_layer_flush (GtkWidget *widget,
/* assorted query dialogs */
static void layers_dialog_new_layer_query (GimpImage *gimage);
static void layers_dialog_edit_layer_query (LayerWidget *layer_widget);
static void layers_dialog_add_mask_query (Layer *layer);
static void layers_dialog_add_mask_query (GimpLayer *layer);
static void layers_dialog_scale_layer_query (GimpImage *gimage,
Layer *layer);
GimpLayer *layer);
static void layers_dialog_resize_layer_query (GimpImage *gimage,
Layer *layer);
GimpLayer *layer);
void layers_dialog_layer_merge_query (GimpImage *gimage,
gboolean merge_visible);
@ -550,24 +550,24 @@ layers_dialog_free (void)
void
layers_dialog_invalidate_previews (GimpImage *gimage)
{
GSList *list = gimage->layers;
Layer *layer;
GSList *list;
GimpLayer *layer;
/* Invalidate all previews ...
* This is called during loading the image
*/
while (list)
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
GIMP_DRAWABLE (layer)->preview_valid = FALSE;
list = g_slist_next (list);
}
}
void
layers_dialog_update (GimpImage* gimage)
{
Layer *layer;
GimpLayer *layer;
LayerWidget *lw;
GSList *list;
GList *item_list;
@ -607,7 +607,7 @@ layers_dialog_update (GimpImage* gimage)
list = g_slist_next (list))
{
/* create a layer list item */
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
lw = layer_widget_create (gimage, layer);
layersD->layer_widgets = g_slist_append (layersD->layer_widgets, lw);
item_list = g_list_append (item_list, lw->list_item);
@ -624,7 +624,7 @@ void
layers_dialog_flush (void)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
LayerWidget *lw;
GSList *list;
gint pos;
@ -654,7 +654,7 @@ layers_dialog_flush (void)
/* Add any missing layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
lw = layer_widget_get_ID (layer);
/* If the layer isn't in the layer widget list, add it */
@ -682,7 +682,7 @@ layers_dialog_flush (void)
list;
list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layers_dialog_position_layer (layer, pos++);
}
@ -1019,34 +1019,34 @@ layers_dialog_preview_extents (void)
static void
layers_dialog_set_menu_sensitivity (void)
{
gboolean fs; /* no floating sel */
gboolean ac; /* no active channel */
gboolean lm; /* layer mask */
gboolean gimage; /* is there a gimage */
gboolean lp; /* layers present */
gboolean alpha; /* alpha channel present */
gboolean indexed; /* is indexed */
gboolean next_alpha;
GSList *list;
GSList *next;
GSList *prev;
Layer *layer;
gboolean fs; /* no floating sel */
gboolean ac; /* no active channel */
gboolean lm; /* layer mask */
gboolean gimage; /* is there a gimage */
gboolean lp; /* layers present */
gboolean alpha; /* alpha channel present */
gboolean indexed; /* is indexed */
gboolean next_alpha;
GSList *list;
GSList *next;
GSList *prev;
GimpLayer *layer;
lp = FALSE;
lp = FALSE;
indexed = FALSE;
if (! layersD)
return;
if ((layer = (layersD->active_layer)) != NULL)
lm = (layer_get_mask (layer)) ? TRUE : FALSE;
lm = (gimp_layer_get_mask (layer)) ? TRUE : FALSE;
else
lm = FALSE;
fs = (layersD->floating_sel == NULL);
ac = (layersD->active_channel == NULL);
gimage = (layersD->gimage != NULL);
alpha = layer && layer_has_alpha (layer);
alpha = layer && gimp_layer_has_alpha (layer);
if (gimage)
{
@ -1059,7 +1059,7 @@ layers_dialog_set_menu_sensitivity (void)
next = NULL;
while (list)
{
layer = (Layer *)list->data;
layer = (GimpLayer *)list->data;
if (layer == (layersD->active_layer))
{
next = g_slist_next (list);
@ -1071,8 +1071,8 @@ layers_dialog_set_menu_sensitivity (void)
if (next)
{
layer = (Layer *) next->data;
next_alpha = layer_has_alpha (layer);
layer = (GimpLayer *) next->data;
next_alpha = gimp_layer_has_alpha (layer);
}
else
next_alpha = FALSE;
@ -1178,7 +1178,7 @@ layer_dialog_idle_set_active_layer_focus (gpointer data)
*/
static void
layers_dialog_set_active_layer (Layer *layer)
layers_dialog_set_active_layer (GimpLayer *layer)
{
LayerWidget *layer_widget;
GtkStateType state;
@ -1212,7 +1212,7 @@ layers_dialog_set_active_layer (Layer *layer)
}
static void
layers_dialog_unset_layer (Layer *layer)
layers_dialog_unset_layer (GimpLayer *layer)
{
LayerWidget *layer_widget;
GtkStateType state;
@ -1239,8 +1239,8 @@ layers_dialog_unset_layer (Layer *layer)
}
static void
layers_dialog_position_layer (Layer *layer,
gint new_index)
layers_dialog_position_layer (GimpLayer *layer,
gint new_index)
{
LayerWidget *layer_widget;
GList *list = NULL;
@ -1284,7 +1284,7 @@ invalidate_preview_callback (GtkWidget *widget,
static void
layers_dialog_add_layer (Layer *layer)
layers_dialog_add_layer (GimpLayer *layer)
{
LayerWidget *layer_widget;
GimpImage *gimage;
@ -1306,7 +1306,7 @@ layers_dialog_add_layer (Layer *layer)
}
static void
layers_dialog_remove_layer (Layer *layer)
layers_dialog_remove_layer (GimpLayer *layer)
{
LayerWidget *layer_widget;
GList *list = NULL;
@ -1329,7 +1329,7 @@ layers_dialog_remove_layer (Layer *layer)
}
static void
layers_dialog_add_layer_mask (Layer *layer)
layers_dialog_add_layer_mask (GimpLayer *layer)
{
LayerWidget *layer_widget;
@ -1350,7 +1350,7 @@ layers_dialog_add_layer_mask (Layer *layer)
}
static void
layers_dialog_remove_layer_mask (Layer *layer)
layers_dialog_remove_layer_mask (GimpLayer *layer)
{
LayerWidget *layer_widget;
@ -1380,14 +1380,14 @@ paint_mode_menu_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
LayerModeEffects mode;
if (!(gimage = layersD->gimage) || !(layer = gimage->active_layer))
return;
/* If the layer has an alpha channel, set the transparency and redraw */
if (layer_has_alpha (layer))
if (gimp_layer_has_alpha (layer))
{
mode = (LayerModeEffects) gtk_object_get_user_data (GTK_OBJECT (widget));
@ -1408,7 +1408,7 @@ opacity_scale_update (GtkAdjustment *adjustment,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
gint opacity;
if (!(gimage = layersD->gimage) || !(layer = gimage->active_layer))
@ -1433,7 +1433,7 @@ preserve_trans_update (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!(gimage = layersD->gimage) || !(layer = gimage->active_layer))
return;
@ -1525,7 +1525,7 @@ layers_dialog_previous_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *new_layer;
GimpLayer *new_layer;
gint current_layer;
if (!layersD || !(gimage = layersD->gimage))
@ -1548,7 +1548,7 @@ layers_dialog_next_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *new_layer;
GimpLayer *new_layer;
gint current_layer;
if (!layersD || !(gimage = layersD->gimage))
@ -1623,7 +1623,7 @@ layers_dialog_new_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD || !(gimage = layersD->gimage))
return;
@ -1646,8 +1646,8 @@ layers_dialog_duplicate_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *active_layer;
Layer *new_layer;
GimpLayer *active_layer;
GimpLayer *new_layer;
if (!layersD || !(gimage = layersD->gimage))
return;
@ -1656,7 +1656,7 @@ layers_dialog_duplicate_layer_callback (GtkWidget *widget,
undo_push_group_start (gimage, LAYER_ADD_UNDO);
active_layer = gimp_image_get_active_layer (gimage);
new_layer = layer_copy (active_layer, TRUE);
new_layer = gimp_layer_copy (active_layer, TRUE);
gimp_image_add_layer (gimage, new_layer, -1);
/* End the group undo */
@ -1670,7 +1670,7 @@ layers_dialog_delete_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD ||
!(gimage = layersD->gimage) ||
@ -1678,7 +1678,7 @@ layers_dialog_delete_layer_callback (GtkWidget *widget,
return;
/* if the layer is a floating selection, take special care */
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_remove (layer);
else
gimp_image_remove_layer (gimage, gimage->active_layer);
@ -1719,7 +1719,7 @@ layers_dialog_resize_to_image_callback (GtkWidget *widget,
if (!layersD || !(gimage = layersD->gimage))
return;
layer_resize_to_image (gimage->active_layer);
gimp_layer_resize_to_image (gimage->active_layer);
gdisplays_flush ();
}
@ -1741,14 +1741,14 @@ layers_dialog_apply_layer_mask_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD || !(gimage = layersD->gimage))
return;
/* Make sure there is a layer mask to apply */
if ((layer = gimage->active_layer) != NULL &&
layer_get_mask (layer))
gimp_layer_get_mask (layer))
{
gboolean flush = !layer->apply_mask || layer->show_mask;
@ -1774,14 +1774,14 @@ layers_dialog_delete_layer_mask_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD || !(gimage = layersD->gimage))
return;
/* Make sure there is a layer mask to apply */
if ((layer = gimage->active_layer) != NULL &&
layer_get_mask (layer))
gimp_layer_get_mask (layer))
{
gboolean flush = layer->apply_mask || layer->show_mask;
@ -1884,14 +1884,14 @@ layers_dialog_add_alpha_channel_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD ||
!(gimage = layersD->gimage) ||
!(layer = gimp_image_get_active_layer (gimage)))
return;
layer_add_alpha (layer);
gimp_layer_add_alpha (layer);
gdisplays_flush ();
}
@ -1925,15 +1925,15 @@ layers_dialog_drag_new_layer_callback (GtkWidget *widget,
if ((src_widget = gtk_drag_get_source_widget (context)))
{
Layer *layer = NULL;
GimpLayer *layer;
layer = (Layer *) gtk_object_get_data (GTK_OBJECT (src_widget),
"gimp_layer");
layer = (GimpLayer *) gtk_object_get_data (GTK_OBJECT (src_widget),
"gimp_layer");
if (layer &&
layer == layersD->active_layer)
{
Layer *new_layer;
GimpLayer *new_layer;
GimpImage *gimage;
gint width, height;
gint off_x, off_y;
@ -1947,15 +1947,15 @@ layers_dialog_drag_new_layer_callback (GtkWidget *widget,
/* Start a group undo */
undo_push_group_start (gimage, EDIT_PASTE_UNDO);
new_layer = layer_new (gimage, width, height,
gimp_image_base_type_with_alpha (gimage),
_("Empty Layer Copy"),
layer->opacity,
layer->mode);
new_layer = gimp_layer_new (gimage, width, height,
gimp_image_base_type_with_alpha (gimage),
_("Empty Layer Copy"),
layer->opacity,
layer->mode);
if (new_layer)
{
drawable_fill (GIMP_DRAWABLE (new_layer), TRANSPARENT_FILL);
layer_translate (new_layer, off_x, off_y);
gimp_layer_translate (new_layer, off_x, off_y);
gimp_image_add_layer (gimage, new_layer, -1);
/* End the group undo */
@ -1990,14 +1990,14 @@ layers_dialog_drag_duplicate_layer_callback (GtkWidget *widget,
if ((src_widget = gtk_drag_get_source_widget (context)))
{
Layer *layer;
GimpLayer *layer;
layer = (Layer *) gtk_object_get_data (GTK_OBJECT (src_widget),
"gimp_layer");
layer = (GimpLayer *) gtk_object_get_data (GTK_OBJECT (src_widget),
"gimp_layer");
if (layer &&
layer == layersD->active_layer &&
! layer_is_floating_sel (layer))
! gimp_layer_is_floating_sel (layer))
{
layers_dialog_duplicate_layer_callback (widget, NULL);
@ -2059,7 +2059,7 @@ layers_dialog_drag_trashcan_callback (GtkWidget *widget,
/****************************/
static LayerWidget *
layer_widget_get_ID (Layer *ID)
layer_widget_get_ID (GimpLayer *ID)
{
LayerWidget *lw;
GSList *list;
@ -2080,7 +2080,7 @@ layer_widget_get_ID (Layer *ID)
static LayerWidget *
layer_widget_create (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerWidget *layer_widget;
GtkWidget *list_item;
@ -2109,7 +2109,7 @@ layer_widget_create (GimpImage *gimage,
layer_widget->drop_type = GIMP_DROP_NONE;
layer_widget->layer_pixmap_valid = FALSE;
if (layer_get_mask (layer))
if (gimp_layer_get_mask (layer))
layer_widget->active_preview =
(layer->edit_mask) ? MASK_PREVIEW : LAYER_PREVIEW;
else
@ -2197,7 +2197,7 @@ layer_widget_create (GimpImage *gimage,
gtk_object_set_user_data (GTK_OBJECT (layer_widget->mask_preview),
layer_widget);
gtk_container_add (GTK_CONTAINER (alignment), layer_widget->mask_preview);
if (layer_get_mask (layer) != NULL)
if (gimp_layer_get_mask (layer) != NULL)
{
gtk_object_set_data (GTK_OBJECT (layer_widget->mask_preview),
"gimp_layer_mask", gimp_layer_get_mask (layer));
@ -2215,10 +2215,11 @@ layer_widget_create (GimpImage *gimage,
NULL);
/* the layer name label */
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
layer_widget->label = gtk_label_new (_("Floating Selection"));
else
layer_widget->label = gtk_label_new (layer_get_name (layer));
layer_widget->label =
gtk_label_new (gimp_object_get_name (GIMP_OBJECT (layer)));
gtk_box_pack_start (GTK_BOX (hbox), layer_widget->label, FALSE, FALSE, 2);
gtk_widget_show (layer_widget->label);
@ -2274,7 +2275,7 @@ layer_widget_create (GimpImage *gimage,
gtk_signal_connect_while_alive (GTK_OBJECT (layer), "invalidate_preview",
GTK_SIGNAL_FUNC (invalidate_preview_callback),
(gpointer)layer_widget,
layer_widget,
GTK_OBJECT (layer_widget->list_item));
return layer_widget;
@ -2300,15 +2301,15 @@ layer_widget_drag_motion_callback (GtkWidget *widget,
dest = (LayerWidget *) gtk_object_get_user_data (GTK_OBJECT (widget));
if (dest &&
layer_has_alpha (dest->layer) &&
gimp_layer_has_alpha (dest->layer) &&
(src_widget = gtk_drag_get_source_widget (context)))
{
src
= (LayerWidget *) gtk_object_get_user_data (GTK_OBJECT (src_widget));
if (src &&
layer_has_alpha (src->layer) &&
! layer_is_floating_sel (src->layer) &&
gimp_layer_has_alpha (src->layer) &&
! gimp_layer_is_floating_sel (src->layer) &&
src->layer == layersD->active_layer)
{
src_index = gimp_image_get_layer_index (layersD->gimage,
@ -2380,13 +2381,13 @@ layer_mask_drag_begin_callback (GtkWidget *widget,
gimp_dnd_set_drawable_preview_icon
(widget, context,
GIMP_DRAWABLE (layer_get_mask (layer_widget->layer)));
GIMP_DRAWABLE (gimp_layer_get_mask (layer_widget->layer)));
}
typedef struct
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
gint dest_index;
} LayerDrop;
@ -2424,15 +2425,15 @@ layer_widget_drag_drop_callback (GtkWidget *widget,
dest = (LayerWidget *) gtk_object_get_user_data (GTK_OBJECT (widget));
if (dest &&
layer_has_alpha (dest->layer) &&
gimp_layer_has_alpha (dest->layer) &&
(src_widget = gtk_drag_get_source_widget (context)))
{
src =
(LayerWidget *) gtk_object_get_user_data (GTK_OBJECT (src_widget));
if (src &&
layer_has_alpha (src->layer) &&
! layer_is_floating_sel (src->layer) &&
gimp_layer_has_alpha (src->layer) &&
! gimp_layer_is_floating_sel (src->layer) &&
src->layer == layersD->active_layer)
{
src_index =
@ -2511,8 +2512,8 @@ layer_widget_drag_indicator_callback (GtkWidget *widget,
}
static void
layer_widget_draw_drop_indicator (LayerWidget *layer_widget,
GimpDropType drop_type)
layer_widget_draw_drop_indicator (LayerWidget *layer_widget,
GimpDropType drop_type)
{
static GdkGC *gc = NULL;
gint y = 0;
@ -2765,11 +2766,11 @@ layer_widget_preview_events (GtkWidget *widget,
case MASK_PREVIEW:
pixmap = &layer_widget->mask_pixmap;
valid =
GIMP_DRAWABLE (layer_get_mask (layer_widget->layer))->preview_valid;
GIMP_DRAWABLE (gimp_layer_get_mask (layer_widget->layer))->preview_valid;
break;
}
if (layer_is_floating_sel (layer_widget->layer))
if (gimp_layer_is_floating_sel (layer_widget->layer))
preview_type = FS_PREVIEW;
switch (event->type)
@ -3345,7 +3346,7 @@ layer_widget_layer_flush (GtkWidget *widget,
gpointer data)
{
LayerWidget *layer_widget;
Layer *layer;
GimpLayer *layer;
const gchar *name;
gchar *label_name;
gboolean update_layer_preview = FALSE;
@ -3357,14 +3358,14 @@ layer_widget_layer_flush (GtkWidget *widget,
/* Set sensitivity */
/* to false if there is a floating selection, and this aint it */
if (! layer_is_floating_sel (layer_widget->layer) &&
if (! gimp_layer_is_floating_sel (layer_widget->layer) &&
layersD->floating_sel != NULL)
{
if (GTK_WIDGET_IS_SENSITIVE (layer_widget->list_item))
gtk_widget_set_sensitive (layer_widget->list_item, FALSE);
}
/* to true if there is a floating selection, and this is it */
if (layer_is_floating_sel (layer_widget->layer) &&
if (gimp_layer_is_floating_sel (layer_widget->layer) &&
layersD->floating_sel != NULL)
{
if (! GTK_WIDGET_IS_SENSITIVE (layer_widget->list_item))
@ -3398,10 +3399,10 @@ layer_widget_layer_flush (GtkWidget *widget,
GTK_STATE_ACTIVE : GTK_STATE_NORMAL);
}
if (layer_is_floating_sel (layer_widget->layer))
if (gimp_layer_is_floating_sel (layer_widget->layer))
name = _("Floating Selection");
else
name = layer_get_name (layer_widget->layer);
name = gimp_object_get_name (GIMP_OBJECT (layer_widget->layer));
/* we need to set the name label if necessary */
gtk_label_get (GTK_LABEL (layer_widget->label), &label_name);
@ -3409,13 +3410,13 @@ layer_widget_layer_flush (GtkWidget *widget,
gtk_label_set_text (GTK_LABEL (layer_widget->label), name);
/* show the layer mask preview if necessary */
if (layer_get_mask (layer_widget->layer) == NULL &&
if (gimp_layer_get_mask (layer_widget->layer) == NULL &&
layer_widget->layer_mask)
{
layer_widget->layer_mask = FALSE;
layers_dialog_remove_layer_mask (layer_widget->layer);
}
else if (layer_get_mask (layer_widget->layer) != NULL &&
else if (gimp_layer_get_mask (layer_widget->layer) != NULL &&
!layer_widget->layer_mask)
{
layer_widget->layer_mask = TRUE;
@ -3425,10 +3426,10 @@ layer_widget_layer_flush (GtkWidget *widget,
/* Update the previews */
update_layer_preview = (! GIMP_DRAWABLE (layer)->preview_valid);
if (layer_get_mask (layer))
if (gimp_layer_get_mask (layer))
{
update_mask_preview =
(! GIMP_DRAWABLE (layer_get_mask (layer))->preview_valid);
(! GIMP_DRAWABLE (gimp_layer_get_mask (layer))->preview_valid);
if (layer->apply_mask != layer_widget->apply_mask)
{
@ -3488,7 +3489,7 @@ new_layer_query_ok_callback (GtkWidget *widget,
gpointer data)
{
NewLayerOptions *options;
Layer *layer;
GimpLayer *layer;
GimpImage *gimage;
options = (NewLayerOptions *) data;
@ -3509,9 +3510,9 @@ new_layer_query_ok_callback (GtkWidget *widget,
/* Start a group undo */
undo_push_group_start (gimage, LAYER_ADD_UNDO);
layer = layer_new (gimage, options->xsize, options->ysize,
gimp_image_base_type_with_alpha (gimage),
layer_name, OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new (gimage, options->xsize, options->ysize,
gimp_image_base_type_with_alpha (gimage),
layer_name, OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{
drawable_fill (GIMP_DRAWABLE (layer), fill_type);
@ -3692,14 +3693,14 @@ edit_layer_query_ok_callback (GtkWidget *widget,
gpointer data)
{
EditLayerOptions *options;
Layer *layer;
GimpLayer *layer;
options = (EditLayerOptions *) data;
if ((layer = options->layer))
{
/* Set the new layer name */
if (GIMP_OBJECT (layer)->name && layer_is_floating_sel (layer))
if (GIMP_OBJECT (layer)->name && gimp_layer_is_floating_sel (layer))
{
/* If the layer is a floating selection, make it a layer */
floating_sel_to_layer (layer);
@ -3710,8 +3711,8 @@ edit_layer_query_ok_callback (GtkWidget *widget,
undo_push_layer_rename (options->gimage, layer);
}
layer_set_name (layer,
gtk_entry_get_text (GTK_ENTRY (options->name_entry)));
gimp_object_set_name (GIMP_OBJECT (layer),
gtk_entry_get_text (GTK_ENTRY (options->name_entry)));
}
gdisplays_flush ();
@ -3768,9 +3769,9 @@ layers_dialog_edit_layer_query (LayerWidget *layer_widget)
options->name_entry = gtk_entry_new ();
gtk_box_pack_start (GTK_BOX (hbox), options->name_entry, TRUE, TRUE, 0);
gtk_entry_set_text (GTK_ENTRY (options->name_entry),
((layer_is_floating_sel (layer_widget->layer) ?
((gimp_layer_is_floating_sel (layer_widget->layer) ?
_("Floating Selection") :
layer_get_name (layer_widget->layer))));
gimp_object_get_name (GIMP_OBJECT (layer_widget->layer)))));
gtk_signal_connect (GTK_OBJECT (options->name_entry), "activate",
edit_layer_query_ok_callback,
options);
@ -3791,7 +3792,7 @@ typedef struct _AddMaskOptions AddMaskOptions;
struct _AddMaskOptions
{
GtkWidget *query_box;
Layer *layer;
GimpLayer *layer;
AddMaskType add_mask_type;
};
@ -3808,7 +3809,7 @@ add_mask_query_ok_callback (GtkWidget *widget,
if ((layer = (options->layer)) &&
(gimage = GIMP_DRAWABLE (layer)->gimage))
{
mask = layer_create_mask (layer, options->add_mask_type);
mask = gimp_layer_create_mask (layer, options->add_mask_type);
gimp_image_add_layer_mask (gimage, layer, mask);
gdisplays_flush ();
}
@ -3817,7 +3818,7 @@ add_mask_query_ok_callback (GtkWidget *widget,
}
static void
layers_dialog_add_mask_query (Layer *layer)
layers_dialog_add_mask_query (GimpLayer *layer)
{
AddMaskOptions *options;
GtkWidget *frame;
@ -3877,8 +3878,8 @@ typedef struct _ScaleLayerOptions ScaleLayerOptions;
struct _ScaleLayerOptions
{
Layer *layer;
Resize *resize;
GimpLayer *layer;
Resize *resize;
};
static void
@ -3887,7 +3888,7 @@ scale_layer_query_ok_callback (GtkWidget *widget,
{
ScaleLayerOptions *options;
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
options = (ScaleLayerOptions *) data;
@ -3900,13 +3901,14 @@ scale_layer_query_ok_callback (GtkWidget *widget,
{
undo_push_group_start (gimage, LAYER_SCALE_UNDO);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_relax (layer, TRUE);
layer_scale (layer,
options->resize->width, options->resize->height, TRUE);
gimp_layer_scale (layer,
options->resize->width, options->resize->height,
TRUE);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_rigor (layer, TRUE);
undo_push_group_end (gimage);
@ -3925,7 +3927,7 @@ scale_layer_query_ok_callback (GtkWidget *widget,
static void
layers_dialog_scale_layer_query (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
ScaleLayerOptions *options;
@ -3963,8 +3965,8 @@ typedef struct _ResizeLayerOptions ResizeLayerOptions;
struct _ResizeLayerOptions
{
Layer *layer;
Resize *resize;
GimpLayer *layer;
Resize *resize;
};
static void
@ -3973,7 +3975,7 @@ resize_layer_query_ok_callback (GtkWidget *widget,
{
ResizeLayerOptions *options;
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
options = (ResizeLayerOptions *) data;
@ -3986,14 +3988,16 @@ resize_layer_query_ok_callback (GtkWidget *widget,
{
undo_push_group_start (gimage, LAYER_RESIZE_UNDO);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_relax (layer, TRUE);
layer_resize (layer,
options->resize->width, options->resize->height,
options->resize->offset_x, options->resize->offset_y);
gimp_layer_resize (layer,
options->resize->width,
options->resize->height,
options->resize->offset_x,
options->resize->offset_y);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_rigor (layer, TRUE);
undo_push_group_end (gimage);
@ -4012,7 +4016,7 @@ resize_layer_query_ok_callback (GtkWidget *widget,
static void
layers_dialog_resize_layer_query (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
ResizeLayerOptions *options;
@ -4061,7 +4065,7 @@ layer_merge_query_ok_callback (GtkWidget *widget,
gpointer data)
{
LayerMergeOptions *options;
GimpImage *gimage;
GimpImage *gimage;
options = (LayerMergeOptions *) data;
if (! (gimage = options->gimage))

View File

@ -1365,7 +1365,7 @@ resize_check_layer_scaling (ImageResize *image_scale)
gboolean success = FALSE;
GImage *gimage = NULL;
GSList *list = NULL;
Layer *layer = NULL;
GimpLayer *layer = NULL;
GtkWidget *dialog = NULL;
g_assert (image_scale != NULL);
@ -1378,10 +1378,10 @@ resize_check_layer_scaling (ImageResize *image_scale)
list = gimage->layers;
while (list && success == TRUE)
{
layer = (Layer *)list->data;
success = layer_check_scaling (layer,
image_scale->resize->width,
image_scale->resize->height);
layer = (GimpLayer *)list->data;
success = gimp_layer_check_scaling (layer,
image_scale->resize->width,
image_scale->resize->height);
list = g_slist_next (list);
}

View File

@ -250,12 +250,12 @@ image_new_rotate_the_shield_harmonics (GtkWidget *widget,
void
image_new_create_image (const GimpImageNewValues *values)
{
GimpImage *image;
GDisplay *display;
Layer *layer;
GimpImageType type;
GimpParasite *comment_parasite;
gint width, height;
GimpImage *image;
GDisplay *display;
GimpLayer *layer;
GimpImageType type;
GimpParasite *comment_parasite;
gint width, height;
g_return_if_fail (values != NULL);
@ -294,9 +294,9 @@ image_new_create_image (const GimpImageNewValues *values)
/* Make the background (or first) layer */
width = gimp_image_get_width (image);
height = gimp_image_get_height (image);
layer = layer_new (image, width, height,
type, _("Background"),
OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new (image, width, height,
type, _("Background"),
OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{

View File

@ -67,10 +67,10 @@ static void gimp_layer_preview_scale (GimpImageBaseType type,
PixelRegion *destPR,
gint subsample);
static TempBuf * gimp_layer_preview_private (Layer *layer,
static TempBuf * gimp_layer_preview_private (GimpLayer *layer,
gint width,
gint height);
static TempBuf * gimp_layer_mask_preview_private (Layer *layer,
static TempBuf * gimp_layer_mask_preview_private (GimpLayer *layer,
gint width,
gint height);
@ -152,7 +152,7 @@ gimp_layer_invalidate_preview (GimpDrawable *drawable)
layer = GIMP_LAYER (drawable);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_invalidate (layer);
}
@ -1211,19 +1211,6 @@ gimp_layer_pick_correlate (GimpLayer *layer,
/* access functions */
/**********************/
void
gimp_layer_set_name (GimpLayer *layer,
const gchar *name)
{
gimp_object_set_name (GIMP_OBJECT (layer), name);
}
const gchar *
gimp_layer_get_name (const GimpLayer *layer)
{
return gimp_object_get_name (GIMP_OBJECT (layer));
}
GimpLayerMask *
gimp_layer_get_mask (GimpLayer *layer)
{
@ -1254,19 +1241,6 @@ gimp_layer_linked (GimpLayer *layer)
return layer->linked;
}
Tattoo
gimp_layer_get_tattoo (const GimpLayer *layer)
{
return gimp_drawable_get_tattoo (GIMP_DRAWABLE (layer));
}
void
gimp_layer_set_tattoo (GimpLayer *layer,
Tattoo value)
{
gimp_drawable_set_tattoo (GIMP_DRAWABLE (layer), value);
}
TempBuf *
gimp_layer_preview (GimpLayer *layer,
gint width,

View File

@ -23,38 +23,11 @@
#include "gimpdrawable.h"
/* EEK */
#define layer_new gimp_layer_new
#define layer_copy gimp_layer_copy
#define layer_create_mask gimp_layer_create_mask
#define layer_scale gimp_layer_scale
#define layer_resize gimp_layer_resize
#define layer_delete gimp_layer_delete
#define layer_translate gimp_layer_translate
#define layer_get_name gimp_layer_get_name
#define layer_set_name gimp_layer_set_name
#define layer_get_tattoo gimp_layer_get_tattoo
#define layer_set_tattoo gimp_layer_set_tattoo
#define layer_add_alpha gimp_layer_add_alpha
#define layer_has_alpha gimp_layer_has_alpha
#define layer_preview gimp_layer_preview
#define layer_is_floating_sel gimp_layer_is_floating_sel
#define layer_invalidate_previews gimp_layer_invalidate_previews
#define layer_linked gimp_layer_linked
#define layer_get_mask gimp_layer_get_mask
#define layer_new_from_tiles gimp_layer_new_from_tiles
#define layer_resize_to_image gimp_layer_resize_to_image
#define layer_invalidate_boundary gimp_layer_invalidate_boundary
#define layer_scale_by_factors gimp_layer_scale_by_factors
#define layer_boundary gimp_layer_boundary
#define layer_pick_correlate gimp_layer_pick_correlate
#define layer_apply_mask gimp_layer_apply_mask
#define layer_add_mask gimp_layer_add_mask
#define layer_check_scaling gimp_layer_check_scaling
#define gimp_drawable_layer GIMP_IS_LAYER
/* PDB stuff */
#define gimp_layer_set_name(l,n) gimp_object_set_name(GIMP_OBJECT(l),(n))
#define gimp_layer_get_name(l) gimp_object_get_name(GIMP_OBJECT(l))
#define gimp_layer_set_tattoo(l,t) gimp_drawable_set_tattoo(GIMP_DRAWABLE(l),(t))
#define gimp_layer_get_tattoo(l) gimp_drawable_get_tattoo(GIMP_DRAWABLE(l))
#define GIMP_TYPE_LAYER (gimp_layer_get_type ())
@ -64,7 +37,7 @@
#define GIMP_IS_LAYER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_LAYER))
typedef struct _GimpLayerClass GimpLayerClass;
typedef struct _GimpLayerClass GimpLayerClass;
struct _GimpLayer
{
@ -104,9 +77,9 @@ struct _GimpLayerClass
struct _LayerUndo
{
GimpLayer *layer; /* the actual layer */
gint prev_position; /* former position in list */
GimpLayer *prev_layer; /* previous active layer */
GimpLayer *layer; /* the actual layer */
gint prev_position; /* former position in list */
GimpLayer *prev_layer; /* previous active layer */
};
struct _FStoLayerUndo
@ -170,16 +143,10 @@ gint gimp_layer_pick_correlate (GimpLayer *layer,
gint x,
gint y);
void gimp_layer_set_name (GimpLayer *layer,
const gchar *name);
const gchar * gimp_layer_get_name (const GimpLayer *layer);
GimpLayerMask * gimp_layer_get_mask (GimpLayer *layer);
gboolean gimp_layer_has_alpha (GimpLayer *layer);
gboolean gimp_layer_is_floating_sel (GimpLayer *layer);
gboolean gimp_layer_linked (GimpLayer *layer);
Tattoo gimp_layer_get_tattoo (const GimpLayer *layer);
void gimp_layer_set_tattoo (GimpLayer *layer,
Tattoo value);
TempBuf * gimp_layer_preview (GimpLayer *layer,
gint width,

View File

@ -38,6 +38,7 @@
#define PREVIEW_EVENT_MASK GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK
typedef struct _LayerSelect LayerSelect;
struct _LayerSelect
@ -49,7 +50,7 @@ struct _LayerSelect
GtkWidget *preview;
GImage *gimage;
Layer *current_layer;
GimpLayer *current_layer;
gboolean dirty;
gint image_width;
gint image_height;
@ -203,10 +204,11 @@ static void
layer_select_advance (LayerSelect *layer_select,
gint move)
{
gint index; gint count;
GSList *list;
GSList *nth;
Layer *layer;
gint index;
gint count;
GSList *list;
GSList *nth;
GimpLayer *layer;
index = 0;
@ -221,7 +223,7 @@ layer_select_advance (LayerSelect *layer_select,
list;
list = g_slist_next (list), count++)
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
if (layer == layer_select->current_layer)
index = count;
@ -234,7 +236,7 @@ layer_select_advance (LayerSelect *layer_select,
if (nth)
{
layer = (Layer *) nth->data;
layer = (GimpLayer *) nth->data;
layer_select->current_layer = layer;
}
}
@ -317,9 +319,9 @@ layer_select_set_gimage (LayerSelect *layer_select,
static void
layer_select_set_layer (LayerSelect *layer_select)
{
Layer *layer;
GimpLayer *layer;
if (! (layer = (layer_select->current_layer)))
if (! (layer = (layer_select->current_layer)))
return;
/* Set the layer label */
@ -420,10 +422,10 @@ preview_events (GtkWidget *widget,
static void
preview_redraw (LayerSelect *layer_select)
{
Layer *layer;
TempBuf *preview_buf;
gint w, h;
gint offx, offy;
GimpLayer *layer;
TempBuf *preview_buf;
gint w, h;
gint offx, offy;
if (! (layer = (layer_select->current_layer)))
return;
@ -435,25 +437,27 @@ preview_redraw (LayerSelect *layer_select)
layer_select->image_height,
-1);
if (layer_is_floating_sel (layer))
render_fs_preview (layer_select->layer_preview,
layer_select->layer_pixmap);
if (gimp_layer_is_floating_sel (layer))
{
render_fs_preview (layer_select->layer_preview,
layer_select->layer_pixmap);
}
else
{
gint off_x;
gint off_y;
gimp_drawable_offsets (GIMP_DRAWABLE(layer), &off_x, &off_y);
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
/* determine width and height */
w = (gint) (layer_select->ratio *
gimp_drawable_width (GIMP_DRAWABLE(layer)));
gimp_drawable_width (GIMP_DRAWABLE (layer)));
h = (gint) (layer_select->ratio *
gimp_drawable_height (GIMP_DRAWABLE(layer)));
gimp_drawable_height (GIMP_DRAWABLE (layer)));
offx = (gint) (layer_select->ratio * off_x);
offy = (gint) (layer_select->ratio * off_y);
preview_buf = layer_preview (layer, w, h);
preview_buf = gimp_layer_preview (layer, w, h);
preview_buf->x = offx;
preview_buf->y = offy;

View File

@ -136,14 +136,14 @@ struct _LayerWidget
static void layers_dialog_preview_extents (void);
static void layers_dialog_set_menu_sensitivity (void);
static void layers_dialog_scroll_index (gint index);
static void layers_dialog_set_active_layer (Layer *layer);
static void layers_dialog_unset_layer (Layer *layer);
static void layers_dialog_position_layer (Layer *layer,
static void layers_dialog_set_active_layer (GimpLayer *layer);
static void layers_dialog_unset_layer (GimpLayer *layer);
static void layers_dialog_position_layer (GimpLayer *layer,
gint new_index);
static void layers_dialog_add_layer (Layer *layer);
static void layers_dialog_remove_layer (Layer *layer);
static void layers_dialog_add_layer_mask (Layer *layer);
static void layers_dialog_remove_layer_mask (Layer *layer);
static void layers_dialog_add_layer (GimpLayer *layer);
static void layers_dialog_remove_layer (GimpLayer *layer);
static void layers_dialog_add_layer_mask (GimpLayer *layer);
static void layers_dialog_remove_layer_mask (GimpLayer *layer);
static void paint_mode_menu_callback (GtkWidget *widget,
gpointer data);
@ -182,9 +182,9 @@ static gboolean layers_dialog_drag_trashcan_callback
guint time);
/* layer widget function prototypes */
static LayerWidget * layer_widget_get_ID (Layer *layer);
static LayerWidget * layer_widget_get_ID (GimpLayer *layer);
static LayerWidget * layer_widget_create (GimpImage *gimage,
Layer *layer);
GimpLayer *layer);
static gboolean layer_widget_drag_motion_callback
(GtkWidget *widget,
@ -234,11 +234,11 @@ static void layer_widget_layer_flush (GtkWidget *widget,
/* assorted query dialogs */
static void layers_dialog_new_layer_query (GimpImage *gimage);
static void layers_dialog_edit_layer_query (LayerWidget *layer_widget);
static void layers_dialog_add_mask_query (Layer *layer);
static void layers_dialog_add_mask_query (GimpLayer *layer);
static void layers_dialog_scale_layer_query (GimpImage *gimage,
Layer *layer);
GimpLayer *layer);
static void layers_dialog_resize_layer_query (GimpImage *gimage,
Layer *layer);
GimpLayer *layer);
void layers_dialog_layer_merge_query (GimpImage *gimage,
gboolean merge_visible);
@ -550,24 +550,24 @@ layers_dialog_free (void)
void
layers_dialog_invalidate_previews (GimpImage *gimage)
{
GSList *list = gimage->layers;
Layer *layer;
GSList *list;
GimpLayer *layer;
/* Invalidate all previews ...
* This is called during loading the image
*/
while (list)
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
GIMP_DRAWABLE (layer)->preview_valid = FALSE;
list = g_slist_next (list);
}
}
void
layers_dialog_update (GimpImage* gimage)
{
Layer *layer;
GimpLayer *layer;
LayerWidget *lw;
GSList *list;
GList *item_list;
@ -607,7 +607,7 @@ layers_dialog_update (GimpImage* gimage)
list = g_slist_next (list))
{
/* create a layer list item */
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
lw = layer_widget_create (gimage, layer);
layersD->layer_widgets = g_slist_append (layersD->layer_widgets, lw);
item_list = g_list_append (item_list, lw->list_item);
@ -624,7 +624,7 @@ void
layers_dialog_flush (void)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
LayerWidget *lw;
GSList *list;
gint pos;
@ -654,7 +654,7 @@ layers_dialog_flush (void)
/* Add any missing layers */
for (list = gimage->layers; list; list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
lw = layer_widget_get_ID (layer);
/* If the layer isn't in the layer widget list, add it */
@ -682,7 +682,7 @@ layers_dialog_flush (void)
list;
list = g_slist_next (list))
{
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
layers_dialog_position_layer (layer, pos++);
}
@ -1019,34 +1019,34 @@ layers_dialog_preview_extents (void)
static void
layers_dialog_set_menu_sensitivity (void)
{
gboolean fs; /* no floating sel */
gboolean ac; /* no active channel */
gboolean lm; /* layer mask */
gboolean gimage; /* is there a gimage */
gboolean lp; /* layers present */
gboolean alpha; /* alpha channel present */
gboolean indexed; /* is indexed */
gboolean next_alpha;
GSList *list;
GSList *next;
GSList *prev;
Layer *layer;
gboolean fs; /* no floating sel */
gboolean ac; /* no active channel */
gboolean lm; /* layer mask */
gboolean gimage; /* is there a gimage */
gboolean lp; /* layers present */
gboolean alpha; /* alpha channel present */
gboolean indexed; /* is indexed */
gboolean next_alpha;
GSList *list;
GSList *next;
GSList *prev;
GimpLayer *layer;
lp = FALSE;
lp = FALSE;
indexed = FALSE;
if (! layersD)
return;
if ((layer = (layersD->active_layer)) != NULL)
lm = (layer_get_mask (layer)) ? TRUE : FALSE;
lm = (gimp_layer_get_mask (layer)) ? TRUE : FALSE;
else
lm = FALSE;
fs = (layersD->floating_sel == NULL);
ac = (layersD->active_channel == NULL);
gimage = (layersD->gimage != NULL);
alpha = layer && layer_has_alpha (layer);
alpha = layer && gimp_layer_has_alpha (layer);
if (gimage)
{
@ -1059,7 +1059,7 @@ layers_dialog_set_menu_sensitivity (void)
next = NULL;
while (list)
{
layer = (Layer *)list->data;
layer = (GimpLayer *)list->data;
if (layer == (layersD->active_layer))
{
next = g_slist_next (list);
@ -1071,8 +1071,8 @@ layers_dialog_set_menu_sensitivity (void)
if (next)
{
layer = (Layer *) next->data;
next_alpha = layer_has_alpha (layer);
layer = (GimpLayer *) next->data;
next_alpha = gimp_layer_has_alpha (layer);
}
else
next_alpha = FALSE;
@ -1178,7 +1178,7 @@ layer_dialog_idle_set_active_layer_focus (gpointer data)
*/
static void
layers_dialog_set_active_layer (Layer *layer)
layers_dialog_set_active_layer (GimpLayer *layer)
{
LayerWidget *layer_widget;
GtkStateType state;
@ -1212,7 +1212,7 @@ layers_dialog_set_active_layer (Layer *layer)
}
static void
layers_dialog_unset_layer (Layer *layer)
layers_dialog_unset_layer (GimpLayer *layer)
{
LayerWidget *layer_widget;
GtkStateType state;
@ -1239,8 +1239,8 @@ layers_dialog_unset_layer (Layer *layer)
}
static void
layers_dialog_position_layer (Layer *layer,
gint new_index)
layers_dialog_position_layer (GimpLayer *layer,
gint new_index)
{
LayerWidget *layer_widget;
GList *list = NULL;
@ -1284,7 +1284,7 @@ invalidate_preview_callback (GtkWidget *widget,
static void
layers_dialog_add_layer (Layer *layer)
layers_dialog_add_layer (GimpLayer *layer)
{
LayerWidget *layer_widget;
GimpImage *gimage;
@ -1306,7 +1306,7 @@ layers_dialog_add_layer (Layer *layer)
}
static void
layers_dialog_remove_layer (Layer *layer)
layers_dialog_remove_layer (GimpLayer *layer)
{
LayerWidget *layer_widget;
GList *list = NULL;
@ -1329,7 +1329,7 @@ layers_dialog_remove_layer (Layer *layer)
}
static void
layers_dialog_add_layer_mask (Layer *layer)
layers_dialog_add_layer_mask (GimpLayer *layer)
{
LayerWidget *layer_widget;
@ -1350,7 +1350,7 @@ layers_dialog_add_layer_mask (Layer *layer)
}
static void
layers_dialog_remove_layer_mask (Layer *layer)
layers_dialog_remove_layer_mask (GimpLayer *layer)
{
LayerWidget *layer_widget;
@ -1380,14 +1380,14 @@ paint_mode_menu_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
LayerModeEffects mode;
if (!(gimage = layersD->gimage) || !(layer = gimage->active_layer))
return;
/* If the layer has an alpha channel, set the transparency and redraw */
if (layer_has_alpha (layer))
if (gimp_layer_has_alpha (layer))
{
mode = (LayerModeEffects) gtk_object_get_user_data (GTK_OBJECT (widget));
@ -1408,7 +1408,7 @@ opacity_scale_update (GtkAdjustment *adjustment,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
gint opacity;
if (!(gimage = layersD->gimage) || !(layer = gimage->active_layer))
@ -1433,7 +1433,7 @@ preserve_trans_update (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!(gimage = layersD->gimage) || !(layer = gimage->active_layer))
return;
@ -1525,7 +1525,7 @@ layers_dialog_previous_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *new_layer;
GimpLayer *new_layer;
gint current_layer;
if (!layersD || !(gimage = layersD->gimage))
@ -1548,7 +1548,7 @@ layers_dialog_next_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *new_layer;
GimpLayer *new_layer;
gint current_layer;
if (!layersD || !(gimage = layersD->gimage))
@ -1623,7 +1623,7 @@ layers_dialog_new_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD || !(gimage = layersD->gimage))
return;
@ -1646,8 +1646,8 @@ layers_dialog_duplicate_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *active_layer;
Layer *new_layer;
GimpLayer *active_layer;
GimpLayer *new_layer;
if (!layersD || !(gimage = layersD->gimage))
return;
@ -1656,7 +1656,7 @@ layers_dialog_duplicate_layer_callback (GtkWidget *widget,
undo_push_group_start (gimage, LAYER_ADD_UNDO);
active_layer = gimp_image_get_active_layer (gimage);
new_layer = layer_copy (active_layer, TRUE);
new_layer = gimp_layer_copy (active_layer, TRUE);
gimp_image_add_layer (gimage, new_layer, -1);
/* End the group undo */
@ -1670,7 +1670,7 @@ layers_dialog_delete_layer_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD ||
!(gimage = layersD->gimage) ||
@ -1678,7 +1678,7 @@ layers_dialog_delete_layer_callback (GtkWidget *widget,
return;
/* if the layer is a floating selection, take special care */
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_remove (layer);
else
gimp_image_remove_layer (gimage, gimage->active_layer);
@ -1719,7 +1719,7 @@ layers_dialog_resize_to_image_callback (GtkWidget *widget,
if (!layersD || !(gimage = layersD->gimage))
return;
layer_resize_to_image (gimage->active_layer);
gimp_layer_resize_to_image (gimage->active_layer);
gdisplays_flush ();
}
@ -1741,14 +1741,14 @@ layers_dialog_apply_layer_mask_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD || !(gimage = layersD->gimage))
return;
/* Make sure there is a layer mask to apply */
if ((layer = gimage->active_layer) != NULL &&
layer_get_mask (layer))
gimp_layer_get_mask (layer))
{
gboolean flush = !layer->apply_mask || layer->show_mask;
@ -1774,14 +1774,14 @@ layers_dialog_delete_layer_mask_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD || !(gimage = layersD->gimage))
return;
/* Make sure there is a layer mask to apply */
if ((layer = gimage->active_layer) != NULL &&
layer_get_mask (layer))
gimp_layer_get_mask (layer))
{
gboolean flush = layer->apply_mask || layer->show_mask;
@ -1884,14 +1884,14 @@ layers_dialog_add_alpha_channel_callback (GtkWidget *widget,
gpointer data)
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
if (!layersD ||
!(gimage = layersD->gimage) ||
!(layer = gimp_image_get_active_layer (gimage)))
return;
layer_add_alpha (layer);
gimp_layer_add_alpha (layer);
gdisplays_flush ();
}
@ -1925,15 +1925,15 @@ layers_dialog_drag_new_layer_callback (GtkWidget *widget,
if ((src_widget = gtk_drag_get_source_widget (context)))
{
Layer *layer = NULL;
GimpLayer *layer;
layer = (Layer *) gtk_object_get_data (GTK_OBJECT (src_widget),
"gimp_layer");
layer = (GimpLayer *) gtk_object_get_data (GTK_OBJECT (src_widget),
"gimp_layer");
if (layer &&
layer == layersD->active_layer)
{
Layer *new_layer;
GimpLayer *new_layer;
GimpImage *gimage;
gint width, height;
gint off_x, off_y;
@ -1947,15 +1947,15 @@ layers_dialog_drag_new_layer_callback (GtkWidget *widget,
/* Start a group undo */
undo_push_group_start (gimage, EDIT_PASTE_UNDO);
new_layer = layer_new (gimage, width, height,
gimp_image_base_type_with_alpha (gimage),
_("Empty Layer Copy"),
layer->opacity,
layer->mode);
new_layer = gimp_layer_new (gimage, width, height,
gimp_image_base_type_with_alpha (gimage),
_("Empty Layer Copy"),
layer->opacity,
layer->mode);
if (new_layer)
{
drawable_fill (GIMP_DRAWABLE (new_layer), TRANSPARENT_FILL);
layer_translate (new_layer, off_x, off_y);
gimp_layer_translate (new_layer, off_x, off_y);
gimp_image_add_layer (gimage, new_layer, -1);
/* End the group undo */
@ -1990,14 +1990,14 @@ layers_dialog_drag_duplicate_layer_callback (GtkWidget *widget,
if ((src_widget = gtk_drag_get_source_widget (context)))
{
Layer *layer;
GimpLayer *layer;
layer = (Layer *) gtk_object_get_data (GTK_OBJECT (src_widget),
"gimp_layer");
layer = (GimpLayer *) gtk_object_get_data (GTK_OBJECT (src_widget),
"gimp_layer");
if (layer &&
layer == layersD->active_layer &&
! layer_is_floating_sel (layer))
! gimp_layer_is_floating_sel (layer))
{
layers_dialog_duplicate_layer_callback (widget, NULL);
@ -2059,7 +2059,7 @@ layers_dialog_drag_trashcan_callback (GtkWidget *widget,
/****************************/
static LayerWidget *
layer_widget_get_ID (Layer *ID)
layer_widget_get_ID (GimpLayer *ID)
{
LayerWidget *lw;
GSList *list;
@ -2080,7 +2080,7 @@ layer_widget_get_ID (Layer *ID)
static LayerWidget *
layer_widget_create (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
LayerWidget *layer_widget;
GtkWidget *list_item;
@ -2109,7 +2109,7 @@ layer_widget_create (GimpImage *gimage,
layer_widget->drop_type = GIMP_DROP_NONE;
layer_widget->layer_pixmap_valid = FALSE;
if (layer_get_mask (layer))
if (gimp_layer_get_mask (layer))
layer_widget->active_preview =
(layer->edit_mask) ? MASK_PREVIEW : LAYER_PREVIEW;
else
@ -2197,7 +2197,7 @@ layer_widget_create (GimpImage *gimage,
gtk_object_set_user_data (GTK_OBJECT (layer_widget->mask_preview),
layer_widget);
gtk_container_add (GTK_CONTAINER (alignment), layer_widget->mask_preview);
if (layer_get_mask (layer) != NULL)
if (gimp_layer_get_mask (layer) != NULL)
{
gtk_object_set_data (GTK_OBJECT (layer_widget->mask_preview),
"gimp_layer_mask", gimp_layer_get_mask (layer));
@ -2215,10 +2215,11 @@ layer_widget_create (GimpImage *gimage,
NULL);
/* the layer name label */
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
layer_widget->label = gtk_label_new (_("Floating Selection"));
else
layer_widget->label = gtk_label_new (layer_get_name (layer));
layer_widget->label =
gtk_label_new (gimp_object_get_name (GIMP_OBJECT (layer)));
gtk_box_pack_start (GTK_BOX (hbox), layer_widget->label, FALSE, FALSE, 2);
gtk_widget_show (layer_widget->label);
@ -2274,7 +2275,7 @@ layer_widget_create (GimpImage *gimage,
gtk_signal_connect_while_alive (GTK_OBJECT (layer), "invalidate_preview",
GTK_SIGNAL_FUNC (invalidate_preview_callback),
(gpointer)layer_widget,
layer_widget,
GTK_OBJECT (layer_widget->list_item));
return layer_widget;
@ -2300,15 +2301,15 @@ layer_widget_drag_motion_callback (GtkWidget *widget,
dest = (LayerWidget *) gtk_object_get_user_data (GTK_OBJECT (widget));
if (dest &&
layer_has_alpha (dest->layer) &&
gimp_layer_has_alpha (dest->layer) &&
(src_widget = gtk_drag_get_source_widget (context)))
{
src
= (LayerWidget *) gtk_object_get_user_data (GTK_OBJECT (src_widget));
if (src &&
layer_has_alpha (src->layer) &&
! layer_is_floating_sel (src->layer) &&
gimp_layer_has_alpha (src->layer) &&
! gimp_layer_is_floating_sel (src->layer) &&
src->layer == layersD->active_layer)
{
src_index = gimp_image_get_layer_index (layersD->gimage,
@ -2380,13 +2381,13 @@ layer_mask_drag_begin_callback (GtkWidget *widget,
gimp_dnd_set_drawable_preview_icon
(widget, context,
GIMP_DRAWABLE (layer_get_mask (layer_widget->layer)));
GIMP_DRAWABLE (gimp_layer_get_mask (layer_widget->layer)));
}
typedef struct
{
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
gint dest_index;
} LayerDrop;
@ -2424,15 +2425,15 @@ layer_widget_drag_drop_callback (GtkWidget *widget,
dest = (LayerWidget *) gtk_object_get_user_data (GTK_OBJECT (widget));
if (dest &&
layer_has_alpha (dest->layer) &&
gimp_layer_has_alpha (dest->layer) &&
(src_widget = gtk_drag_get_source_widget (context)))
{
src =
(LayerWidget *) gtk_object_get_user_data (GTK_OBJECT (src_widget));
if (src &&
layer_has_alpha (src->layer) &&
! layer_is_floating_sel (src->layer) &&
gimp_layer_has_alpha (src->layer) &&
! gimp_layer_is_floating_sel (src->layer) &&
src->layer == layersD->active_layer)
{
src_index =
@ -2511,8 +2512,8 @@ layer_widget_drag_indicator_callback (GtkWidget *widget,
}
static void
layer_widget_draw_drop_indicator (LayerWidget *layer_widget,
GimpDropType drop_type)
layer_widget_draw_drop_indicator (LayerWidget *layer_widget,
GimpDropType drop_type)
{
static GdkGC *gc = NULL;
gint y = 0;
@ -2765,11 +2766,11 @@ layer_widget_preview_events (GtkWidget *widget,
case MASK_PREVIEW:
pixmap = &layer_widget->mask_pixmap;
valid =
GIMP_DRAWABLE (layer_get_mask (layer_widget->layer))->preview_valid;
GIMP_DRAWABLE (gimp_layer_get_mask (layer_widget->layer))->preview_valid;
break;
}
if (layer_is_floating_sel (layer_widget->layer))
if (gimp_layer_is_floating_sel (layer_widget->layer))
preview_type = FS_PREVIEW;
switch (event->type)
@ -3345,7 +3346,7 @@ layer_widget_layer_flush (GtkWidget *widget,
gpointer data)
{
LayerWidget *layer_widget;
Layer *layer;
GimpLayer *layer;
const gchar *name;
gchar *label_name;
gboolean update_layer_preview = FALSE;
@ -3357,14 +3358,14 @@ layer_widget_layer_flush (GtkWidget *widget,
/* Set sensitivity */
/* to false if there is a floating selection, and this aint it */
if (! layer_is_floating_sel (layer_widget->layer) &&
if (! gimp_layer_is_floating_sel (layer_widget->layer) &&
layersD->floating_sel != NULL)
{
if (GTK_WIDGET_IS_SENSITIVE (layer_widget->list_item))
gtk_widget_set_sensitive (layer_widget->list_item, FALSE);
}
/* to true if there is a floating selection, and this is it */
if (layer_is_floating_sel (layer_widget->layer) &&
if (gimp_layer_is_floating_sel (layer_widget->layer) &&
layersD->floating_sel != NULL)
{
if (! GTK_WIDGET_IS_SENSITIVE (layer_widget->list_item))
@ -3398,10 +3399,10 @@ layer_widget_layer_flush (GtkWidget *widget,
GTK_STATE_ACTIVE : GTK_STATE_NORMAL);
}
if (layer_is_floating_sel (layer_widget->layer))
if (gimp_layer_is_floating_sel (layer_widget->layer))
name = _("Floating Selection");
else
name = layer_get_name (layer_widget->layer);
name = gimp_object_get_name (GIMP_OBJECT (layer_widget->layer));
/* we need to set the name label if necessary */
gtk_label_get (GTK_LABEL (layer_widget->label), &label_name);
@ -3409,13 +3410,13 @@ layer_widget_layer_flush (GtkWidget *widget,
gtk_label_set_text (GTK_LABEL (layer_widget->label), name);
/* show the layer mask preview if necessary */
if (layer_get_mask (layer_widget->layer) == NULL &&
if (gimp_layer_get_mask (layer_widget->layer) == NULL &&
layer_widget->layer_mask)
{
layer_widget->layer_mask = FALSE;
layers_dialog_remove_layer_mask (layer_widget->layer);
}
else if (layer_get_mask (layer_widget->layer) != NULL &&
else if (gimp_layer_get_mask (layer_widget->layer) != NULL &&
!layer_widget->layer_mask)
{
layer_widget->layer_mask = TRUE;
@ -3425,10 +3426,10 @@ layer_widget_layer_flush (GtkWidget *widget,
/* Update the previews */
update_layer_preview = (! GIMP_DRAWABLE (layer)->preview_valid);
if (layer_get_mask (layer))
if (gimp_layer_get_mask (layer))
{
update_mask_preview =
(! GIMP_DRAWABLE (layer_get_mask (layer))->preview_valid);
(! GIMP_DRAWABLE (gimp_layer_get_mask (layer))->preview_valid);
if (layer->apply_mask != layer_widget->apply_mask)
{
@ -3488,7 +3489,7 @@ new_layer_query_ok_callback (GtkWidget *widget,
gpointer data)
{
NewLayerOptions *options;
Layer *layer;
GimpLayer *layer;
GimpImage *gimage;
options = (NewLayerOptions *) data;
@ -3509,9 +3510,9 @@ new_layer_query_ok_callback (GtkWidget *widget,
/* Start a group undo */
undo_push_group_start (gimage, LAYER_ADD_UNDO);
layer = layer_new (gimage, options->xsize, options->ysize,
gimp_image_base_type_with_alpha (gimage),
layer_name, OPAQUE_OPACITY, NORMAL_MODE);
layer = gimp_layer_new (gimage, options->xsize, options->ysize,
gimp_image_base_type_with_alpha (gimage),
layer_name, OPAQUE_OPACITY, NORMAL_MODE);
if (layer)
{
drawable_fill (GIMP_DRAWABLE (layer), fill_type);
@ -3692,14 +3693,14 @@ edit_layer_query_ok_callback (GtkWidget *widget,
gpointer data)
{
EditLayerOptions *options;
Layer *layer;
GimpLayer *layer;
options = (EditLayerOptions *) data;
if ((layer = options->layer))
{
/* Set the new layer name */
if (GIMP_OBJECT (layer)->name && layer_is_floating_sel (layer))
if (GIMP_OBJECT (layer)->name && gimp_layer_is_floating_sel (layer))
{
/* If the layer is a floating selection, make it a layer */
floating_sel_to_layer (layer);
@ -3710,8 +3711,8 @@ edit_layer_query_ok_callback (GtkWidget *widget,
undo_push_layer_rename (options->gimage, layer);
}
layer_set_name (layer,
gtk_entry_get_text (GTK_ENTRY (options->name_entry)));
gimp_object_set_name (GIMP_OBJECT (layer),
gtk_entry_get_text (GTK_ENTRY (options->name_entry)));
}
gdisplays_flush ();
@ -3768,9 +3769,9 @@ layers_dialog_edit_layer_query (LayerWidget *layer_widget)
options->name_entry = gtk_entry_new ();
gtk_box_pack_start (GTK_BOX (hbox), options->name_entry, TRUE, TRUE, 0);
gtk_entry_set_text (GTK_ENTRY (options->name_entry),
((layer_is_floating_sel (layer_widget->layer) ?
((gimp_layer_is_floating_sel (layer_widget->layer) ?
_("Floating Selection") :
layer_get_name (layer_widget->layer))));
gimp_object_get_name (GIMP_OBJECT (layer_widget->layer)))));
gtk_signal_connect (GTK_OBJECT (options->name_entry), "activate",
edit_layer_query_ok_callback,
options);
@ -3791,7 +3792,7 @@ typedef struct _AddMaskOptions AddMaskOptions;
struct _AddMaskOptions
{
GtkWidget *query_box;
Layer *layer;
GimpLayer *layer;
AddMaskType add_mask_type;
};
@ -3808,7 +3809,7 @@ add_mask_query_ok_callback (GtkWidget *widget,
if ((layer = (options->layer)) &&
(gimage = GIMP_DRAWABLE (layer)->gimage))
{
mask = layer_create_mask (layer, options->add_mask_type);
mask = gimp_layer_create_mask (layer, options->add_mask_type);
gimp_image_add_layer_mask (gimage, layer, mask);
gdisplays_flush ();
}
@ -3817,7 +3818,7 @@ add_mask_query_ok_callback (GtkWidget *widget,
}
static void
layers_dialog_add_mask_query (Layer *layer)
layers_dialog_add_mask_query (GimpLayer *layer)
{
AddMaskOptions *options;
GtkWidget *frame;
@ -3877,8 +3878,8 @@ typedef struct _ScaleLayerOptions ScaleLayerOptions;
struct _ScaleLayerOptions
{
Layer *layer;
Resize *resize;
GimpLayer *layer;
Resize *resize;
};
static void
@ -3887,7 +3888,7 @@ scale_layer_query_ok_callback (GtkWidget *widget,
{
ScaleLayerOptions *options;
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
options = (ScaleLayerOptions *) data;
@ -3900,13 +3901,14 @@ scale_layer_query_ok_callback (GtkWidget *widget,
{
undo_push_group_start (gimage, LAYER_SCALE_UNDO);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_relax (layer, TRUE);
layer_scale (layer,
options->resize->width, options->resize->height, TRUE);
gimp_layer_scale (layer,
options->resize->width, options->resize->height,
TRUE);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_rigor (layer, TRUE);
undo_push_group_end (gimage);
@ -3925,7 +3927,7 @@ scale_layer_query_ok_callback (GtkWidget *widget,
static void
layers_dialog_scale_layer_query (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
ScaleLayerOptions *options;
@ -3963,8 +3965,8 @@ typedef struct _ResizeLayerOptions ResizeLayerOptions;
struct _ResizeLayerOptions
{
Layer *layer;
Resize *resize;
GimpLayer *layer;
Resize *resize;
};
static void
@ -3973,7 +3975,7 @@ resize_layer_query_ok_callback (GtkWidget *widget,
{
ResizeLayerOptions *options;
GimpImage *gimage;
Layer *layer;
GimpLayer *layer;
options = (ResizeLayerOptions *) data;
@ -3986,14 +3988,16 @@ resize_layer_query_ok_callback (GtkWidget *widget,
{
undo_push_group_start (gimage, LAYER_RESIZE_UNDO);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_relax (layer, TRUE);
layer_resize (layer,
options->resize->width, options->resize->height,
options->resize->offset_x, options->resize->offset_y);
gimp_layer_resize (layer,
options->resize->width,
options->resize->height,
options->resize->offset_x,
options->resize->offset_y);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_rigor (layer, TRUE);
undo_push_group_end (gimage);
@ -4012,7 +4016,7 @@ resize_layer_query_ok_callback (GtkWidget *widget,
static void
layers_dialog_resize_layer_query (GimpImage *gimage,
Layer *layer)
GimpLayer *layer)
{
ResizeLayerOptions *options;
@ -4061,7 +4065,7 @@ layer_merge_query_ok_callback (GtkWidget *widget,
gpointer data)
{
LayerMergeOptions *options;
GimpImage *gimage;
GimpImage *gimage;
options = (LayerMergeOptions *) data;
if (! (gimage = options->gimage))

View File

@ -347,7 +347,7 @@ clone_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
gint x, y;

View File

@ -1049,7 +1049,7 @@ ink_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
gint x, y;

View File

@ -347,7 +347,7 @@ clone_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
gint x, y;

View File

@ -1406,7 +1406,7 @@ drawable_thumbnail_invoker (Argument *args)
req_width = (req_height * dwidth) / dheight;
if (GIMP_IS_LAYER (drawable))
buf = layer_preview (GIMP_LAYER (drawable), req_width, req_height);
buf = gimp_layer_preview (GIMP_LAYER (drawable), req_width, req_height);
else
buf = channel_preview (GIMP_CHANNEL (drawable), req_width, req_height);

View File

@ -60,7 +60,7 @@ floating_sel_remove_invoker (Argument *args)
if (success)
{
if (layer_is_floating_sel (floating_sel))
if (gimp_layer_is_floating_sel (floating_sel))
floating_sel_remove (floating_sel);
else
success = FALSE;
@ -106,7 +106,7 @@ floating_sel_anchor_invoker (Argument *args)
if (success)
{
if (layer_is_floating_sel (floating_sel))
if (gimp_layer_is_floating_sel (floating_sel))
floating_sel_anchor (floating_sel);
else
success = FALSE;
@ -152,7 +152,7 @@ floating_sel_to_layer_invoker (Argument *args)
if (success)
{
if (layer_is_floating_sel (floating_sel))
if (gimp_layer_is_floating_sel (floating_sel))
floating_sel_to_layer (floating_sel);
else
success = FALSE;
@ -252,7 +252,7 @@ floating_sel_rigor_invoker (Argument *args)
if (success)
{
if (layer_is_floating_sel (floating_sel))
if (gimp_layer_is_floating_sel (floating_sel))
floating_sel_rigor (floating_sel, undo);
else
success = FALSE;
@ -306,7 +306,7 @@ floating_sel_relax_invoker (Argument *args)
if (success)
{
if (layer_is_floating_sel (floating_sel))
if (gimp_layer_is_floating_sel (floating_sel))
floating_sel_relax (floating_sel, undo);
else
success = FALSE;

View File

@ -2310,7 +2310,7 @@ image_floating_sel_attached_to_invoker (Argument *args)
Argument *return_args;
GimpImage *gimage;
GimpDrawable *drawable = NULL;
Layer *floating_sel;
GimpLayer *floating_sel;
gimage = pdb_id_to_image (args[0].value.pdb_int);
if (gimage == NULL)

View File

@ -145,7 +145,9 @@ layer_new_invoker (Argument *args)
if (success)
{
opacity = (int) ((opacity_arg * 255) / 100);
layer = layer_new (gimage, width, height, (GimpImageType) type, name, opacity, (LayerModeEffects) mode);
layer = gimp_layer_new (gimage, width, height,
(GimpImageType) type, name,
opacity, (LayerModeEffects) mode);
success = layer != NULL;
}
@ -237,7 +239,7 @@ layer_copy_invoker (Argument *args)
add_alpha = args[1].value.pdb_int ? TRUE : FALSE;
if (success)
success = (copy = layer_copy (layer, add_alpha)) != NULL;
success = (copy = gimp_layer_copy (layer, add_alpha)) != NULL;
return_args = procedural_db_return_args (&layer_copy_proc, success);
@ -304,7 +306,7 @@ layer_create_mask_invoker (Argument *args)
success = FALSE;
if (success)
success = (mask = layer_create_mask (layer, (AddMaskType) mask_type)) != NULL;
success = (mask = gimp_layer_create_mask (layer, (AddMaskType) mask_type)) != NULL;
return_args = procedural_db_return_args (&layer_create_mask_proc, success);
@ -362,7 +364,7 @@ layer_scale_invoker (Argument *args)
gint32 new_height;
gboolean local_origin;
GimpImage *gimage;
Layer *floating_layer;
GimpLayer *floating_layer;
layer = (GimpLayer *) gimp_drawable_get_by_ID (args[0].value.pdb_int);
if (layer == NULL)
@ -389,7 +391,7 @@ layer_scale_invoker (Argument *args)
if (floating_layer)
floating_sel_relax (floating_layer, TRUE);
layer_scale (layer, new_width, new_height, local_origin);
gimp_layer_scale (layer, new_width, new_height, local_origin);
if (floating_layer)
floating_sel_rigor (floating_layer, TRUE);
@ -453,7 +455,7 @@ layer_resize_invoker (Argument *args)
gint32 offx;
gint32 offy;
GimpImage *gimage;
Layer *floating_layer;
GimpLayer *floating_layer;
layer = (GimpLayer *) gimp_drawable_get_by_ID (args[0].value.pdb_int);
if (layer == NULL)
@ -482,7 +484,7 @@ layer_resize_invoker (Argument *args)
if (floating_layer)
floating_sel_relax (floating_layer, TRUE);
layer_resize (layer, new_width, new_height, offx, offy);
gimp_layer_resize (layer, new_width, new_height, offx, offy);
if (floating_layer)
floating_sel_rigor (floating_layer, TRUE);
@ -552,7 +554,7 @@ layer_delete_invoker (Argument *args)
success = FALSE;
if (success)
layer_delete (layer);
gimp_layer_delete (layer);
return procedural_db_return_args (&layer_delete_proc, success);
}
@ -590,8 +592,8 @@ layer_translate_invoker (Argument *args)
gint32 offx;
gint32 offy;
GimpImage *gimage;
Layer *floating_layer;
Layer *tmp_layer;
GimpLayer *floating_layer;
GimpLayer *tmp_layer;
GSList *layer_list;
layer = (GimpLayer *) gimp_drawable_get_by_ID (args[0].value.pdb_int);
@ -616,9 +618,9 @@ layer_translate_invoker (Argument *args)
layer_list = gimage->layers;
while (layer_list)
{
tmp_layer = (Layer *) layer_list->data;
tmp_layer = (GimpLayer *) layer_list->data;
if ((tmp_layer == layer) || tmp_layer->linked)
layer_translate (tmp_layer, offx, offy);
gimp_layer_translate (tmp_layer, offx, offy);
layer_list = layer_list->next;
}
@ -680,7 +682,7 @@ layer_add_alpha_invoker (Argument *args)
success = FALSE;
if (success)
layer_add_alpha (layer);
gimp_layer_add_alpha (layer);
return procedural_db_return_args (&layer_add_alpha_proc, success);
}
@ -718,8 +720,8 @@ layer_set_offsets_invoker (Argument *args)
gint32 offx;
gint32 offy;
GimpImage *gimage;
Layer *floating_layer;
Layer *tmp_layer;
GimpLayer *floating_layer;
GimpLayer *tmp_layer;
GSList *layer_list;
layer = (GimpLayer *) gimp_drawable_get_by_ID (args[0].value.pdb_int);
@ -744,9 +746,9 @@ layer_set_offsets_invoker (Argument *args)
layer_list = gimage->layers;
while (layer_list)
{
tmp_layer = (Layer *) layer_list->data;
tmp_layer = (GimpLayer *) layer_list->data;
if ((tmp_layer == layer) || tmp_layer->linked)
layer_translate (tmp_layer,
gimp_layer_translate (tmp_layer,
(offx - GIMP_DRAWABLE (layer)->offset_x),
(offy - GIMP_DRAWABLE (layer)->offset_y));
layer_list = layer_list->next;
@ -866,7 +868,7 @@ layer_is_floating_sel_invoker (Argument *args)
return_args = procedural_db_return_args (&layer_is_floating_sel_proc, success);
if (success)
return_args[1].value.pdb_int = layer_is_floating_sel (layer);
return_args[1].value.pdb_int = gimp_layer_is_floating_sel (layer);
return return_args;
}
@ -919,7 +921,7 @@ layer_get_name_invoker (Argument *args)
return_args = procedural_db_return_args (&layer_get_name_proc, success);
if (success)
return_args[1].value.pdb_pointer = g_strdup (layer_get_name (layer));
return_args[1].value.pdb_pointer = g_strdup (gimp_layer_get_name (layer));
return return_args;
}
@ -974,7 +976,7 @@ layer_set_name_invoker (Argument *args)
success = FALSE;
if (success)
layer_set_name (layer, name);
gimp_layer_set_name (layer, name);
return procedural_db_return_args (&layer_set_name_proc, success);
}
@ -1843,7 +1845,7 @@ layer_get_tattoo_invoker (Argument *args)
return_args = procedural_db_return_args (&layer_get_tattoo_proc, success);
if (success)
return_args[1].value.pdb_int = layer_get_tattoo (layer);
return_args[1].value.pdb_int = gimp_layer_get_tattoo (layer);
return return_args;
}
@ -1898,7 +1900,7 @@ layer_set_tattoo_invoker (Argument *args)
success = FALSE;
if (success)
layer_set_tattoo (layer, tattoo);
gimp_layer_set_tattoo (layer, tattoo);
return procedural_db_return_args (&layer_set_tattoo_proc, success);
}

View File

@ -1365,7 +1365,7 @@ resize_check_layer_scaling (ImageResize *image_scale)
gboolean success = FALSE;
GImage *gimage = NULL;
GSList *list = NULL;
Layer *layer = NULL;
GimpLayer *layer = NULL;
GtkWidget *dialog = NULL;
g_assert (image_scale != NULL);
@ -1378,10 +1378,10 @@ resize_check_layer_scaling (ImageResize *image_scale)
list = gimage->layers;
while (list && success == TRUE)
{
layer = (Layer *)list->data;
success = layer_check_scaling (layer,
image_scale->resize->width,
image_scale->resize->height);
layer = (GimpLayer *)list->data;
success = gimp_layer_check_scaling (layer,
image_scale->resize->width,
image_scale->resize->height);
list = g_slist_next (list);
}

View File

@ -284,7 +284,7 @@ bucket_fill_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
CursorModifier cmodifier = CURSOR_MODIFIER_NONE;
gint x, y;

View File

@ -488,7 +488,7 @@ by_color_select_cursor_update (Tool *tool,
GDisplay *gdisp)
{
ByColorSelect *by_col_sel;
Layer *layer;
GimpLayer *layer;
gint x, y;
by_col_sel = (ByColorSelect *) tool->private;

View File

@ -347,7 +347,7 @@ clone_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
gint x, y;

View File

@ -377,10 +377,12 @@ crop_button_release (Tool *tool,
if (crop->function == CROPPING)
{
if (crop_options->type == CROP_CROP)
crop_image (gdisp->gimage, crop->tx1, crop->ty1, crop->tx2, crop->ty2,
crop_image (gdisp->gimage,
crop->tx1, crop->ty1, crop->tx2, crop->ty2,
crop_options->layer_only, TRUE);
else
crop_image (gdisp->gimage, crop->tx1, crop->ty1, crop->tx2, crop->ty2,
crop_image (gdisp->gimage,
crop->tx1, crop->ty1, crop->tx2, crop->ty2,
crop_options->layer_only, FALSE);
/* Finish the tool */
@ -452,13 +454,13 @@ crop_motion (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Crop *crop;
Layer *layer;
gint x1, y1, x2, y2;
gint curx, cury;
gint inc_x, inc_y;
gchar size[STATUSBAR_SIZE];
gint min_x, min_y, max_x, max_y;
Crop *crop;
GimpLayer *layer;
gint x1, y1, x2, y2;
gint curx, cury;
gint inc_x, inc_y;
gchar size[STATUSBAR_SIZE];
gint min_x, min_y, max_x, max_y;
crop = (Crop *) tool->private;
@ -646,11 +648,11 @@ crop_arrow_keys_func (Tool *tool,
GdkEventKey *kevent,
GDisplay *gdisp)
{
Layer *layer;
Crop *crop;
gint inc_x, inc_y;
gint min_x, min_y;
gint max_x, max_y;
GimpLayer *layer;
Crop *crop;
gint inc_x, inc_y;
gint min_x, min_y;
gint max_x, max_y;
if (tool->state == ACTIVE)
{
@ -872,15 +874,15 @@ crop_image (GImage *gimage,
gboolean layer_only,
gboolean crop_layers)
{
Layer *layer;
Layer *floating_layer;
Channel *channel;
GList *guide_list_ptr;
GSList *list;
gint width, height;
gint lx1, ly1, lx2, ly2;
gint off_x, off_y;
gint doff_x, doff_y;
GimpLayer *layer;
GimpLayer *floating_layer;
Channel *channel;
GList *guide_list_ptr;
GSList *list;
gint width, height;
gint lx1, ly1, lx2, ly2;
gint off_x, off_y;
gint doff_x, doff_y;
width = x2 - x1;
height = y2 - y1;
@ -896,7 +898,7 @@ crop_image (GImage *gimage,
layer = gimage->active_layer;
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_relax (layer, TRUE);
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &doff_x, &doff_y);
@ -904,9 +906,9 @@ crop_image (GImage *gimage,
off_x = (doff_x - x1);
off_y = (doff_y - y1);
layer_resize (layer, width, height, off_x, off_y);
gimp_layer_resize (layer, width, height, off_x, off_y);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_rigor (layer, TRUE);
undo_push_group_end (gimage);
@ -947,10 +949,10 @@ crop_image (GImage *gimage,
{
GSList *next;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
next = g_slist_next (list);
layer_translate (layer, -x1, -y1);
gimp_layer_translate (layer, -x1, -y1);
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -968,9 +970,9 @@ crop_image (GImage *gimage,
height = ly2 - ly1;
if (width && height)
layer_resize (layer, width, height,
-(lx1 - off_x),
-(ly1 - off_y));
gimp_layer_resize (layer, width, height,
-(lx1 - off_x),
-(ly1 - off_y));
else
gimp_image_remove_layer (gimage, layer);
}
@ -1253,10 +1255,10 @@ static void
crop_selection_callback (GtkWidget *widget,
gpointer data)
{
Tool *tool;
Crop *crop;
Layer *layer;
GDisplay *gdisp;
Tool *tool;
Crop *crop;
GimpLayer *layer;
GDisplay *gdisp;
tool = active_tool;
crop = (Crop *) tool->private;

View File

@ -131,8 +131,8 @@ init_edit_selection (Tool *tool,
GdkEventButton *bevent,
EditType edit_type)
{
Layer *layer;
gint x, y;
GimpLayer *layer;
gint x, y;
undo_push_group_start (gdisp->gimage, LAYER_DISPLACE_UNDO);
@ -159,7 +159,7 @@ init_edit_selection (Tool *tool,
if (edit_type == EDIT_LAYER_TRANSLATE)
{
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
edit_type = EDIT_FLOATING_SEL_TRANSLATE;
}
@ -217,9 +217,9 @@ edit_selection_button_release (Tool *tool,
GdkEventButton *bevent,
GDisplay *gdisp)
{
gint x;
gint y;
Layer *layer;
gint x;
gint y;
GimpLayer *layer;
/* resume the current selection and ungrab the pointer */
selection_resume (gdisp->select);
@ -279,7 +279,7 @@ edit_selection_button_release (Tool *tool,
if (edit_select.edit_type == EDIT_FLOATING_SEL_TRANSLATE)
{
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_anchor (layer);
}
}
@ -338,10 +338,10 @@ edit_selection_motion (Tool *tool,
/******************************************* adam's live move *******/
/********************************************************************/
{
gint x, y;
Layer *layer;
Layer *floating_layer;
GSList *layer_list;
gint x, y;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *layer_list;
x = edit_select.x;
y = edit_select.y;
@ -374,11 +374,11 @@ edit_selection_motion (Tool *tool,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == gdisp->gimage->active_layer ||
layer_linked (layer))
gimp_layer_linked (layer))
{
layer_translate (layer, xoffset, yoffset);
gimp_layer_translate (layer, xoffset, yoffset);
}
}
@ -421,7 +421,7 @@ edit_selection_motion (Tool *tool,
layer = gimp_image_get_active_layer (gdisp->gimage);
floating_sel_relax (layer, TRUE);
layer_translate (layer, xoffset, yoffset);
gimp_layer_translate (layer, xoffset, yoffset);
floating_sel_rigor (layer, TRUE);
if (edit_select.first_move)
@ -504,7 +504,7 @@ edit_selection_draw (Tool *tool)
{
GDisplay *gdisp;
Selection *select;
Layer *layer;
GimpLayer *layer;
GSList *layer_list;
gint floating_sel;
gint x1, y1, x2, y2;
@ -519,7 +519,7 @@ edit_selection_draw (Tool *tool)
{
case EDIT_MASK_TRANSLATE:
layer = gimp_image_get_active_layer (gdisp->gimage);
floating_sel = layer_is_floating_sel (layer);
floating_sel = gimp_layer_is_floating_sel (layer);
if (!floating_sel)
{
@ -577,8 +577,9 @@ edit_selection_draw (Tool *tool)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
if (((layer) != gdisp->gimage->active_layer) && layer_linked (layer))
layer = (GimpLayer *) layer_list->data;
if (((layer) != gdisp->gimage->active_layer) &&
gimp_layer_linked (layer))
{
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
gdisplay_transform_coords (gdisp, off_x, off_y, &x3, &y3, FALSE);
@ -763,11 +764,11 @@ edit_sel_arrow_keys_func (Tool *tool,
GdkEventKey *kevent,
GDisplay *gdisp)
{
gint inc_x, inc_y, mask_inc_x, mask_inc_y;
Layer *layer;
Layer *floating_layer;
GSList *layer_list;
EditType edit_type;
gint inc_x, inc_y, mask_inc_x, mask_inc_y;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *layer_list;
EditType edit_type;
layer = NULL;
@ -813,7 +814,7 @@ edit_sel_arrow_keys_func (Tool *tool,
{
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
edit_type = EDIT_FLOATING_SEL_TRANSLATE;
else
edit_type = EDIT_LAYER_TRANSLATE;
@ -835,11 +836,11 @@ edit_sel_arrow_keys_func (Tool *tool,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (((layer) == gdisp->gimage->active_layer) ||
layer_linked (layer))
gimp_layer_linked (layer))
{
layer_translate (layer, inc_x, inc_y);
gimp_layer_translate (layer, inc_x, inc_y);
}
}
@ -852,7 +853,7 @@ edit_sel_arrow_keys_func (Tool *tool,
floating_sel_relax (layer, TRUE);
layer_translate (layer, inc_x, inc_y);
gimp_layer_translate (layer, inc_x, inc_y);
floating_sel_rigor (layer, TRUE);

View File

@ -284,7 +284,7 @@ bucket_fill_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
CursorModifier cmodifier = CURSOR_MODIFIER_NONE;
gint x, y;

View File

@ -488,7 +488,7 @@ by_color_select_cursor_update (Tool *tool,
GDisplay *gdisp)
{
ByColorSelect *by_col_sel;
Layer *layer;
GimpLayer *layer;
gint x, y;
by_col_sel = (ByColorSelect *) tool->private;

View File

@ -347,7 +347,7 @@ clone_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
gint x, y;

View File

@ -377,10 +377,12 @@ crop_button_release (Tool *tool,
if (crop->function == CROPPING)
{
if (crop_options->type == CROP_CROP)
crop_image (gdisp->gimage, crop->tx1, crop->ty1, crop->tx2, crop->ty2,
crop_image (gdisp->gimage,
crop->tx1, crop->ty1, crop->tx2, crop->ty2,
crop_options->layer_only, TRUE);
else
crop_image (gdisp->gimage, crop->tx1, crop->ty1, crop->tx2, crop->ty2,
crop_image (gdisp->gimage,
crop->tx1, crop->ty1, crop->tx2, crop->ty2,
crop_options->layer_only, FALSE);
/* Finish the tool */
@ -452,13 +454,13 @@ crop_motion (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Crop *crop;
Layer *layer;
gint x1, y1, x2, y2;
gint curx, cury;
gint inc_x, inc_y;
gchar size[STATUSBAR_SIZE];
gint min_x, min_y, max_x, max_y;
Crop *crop;
GimpLayer *layer;
gint x1, y1, x2, y2;
gint curx, cury;
gint inc_x, inc_y;
gchar size[STATUSBAR_SIZE];
gint min_x, min_y, max_x, max_y;
crop = (Crop *) tool->private;
@ -646,11 +648,11 @@ crop_arrow_keys_func (Tool *tool,
GdkEventKey *kevent,
GDisplay *gdisp)
{
Layer *layer;
Crop *crop;
gint inc_x, inc_y;
gint min_x, min_y;
gint max_x, max_y;
GimpLayer *layer;
Crop *crop;
gint inc_x, inc_y;
gint min_x, min_y;
gint max_x, max_y;
if (tool->state == ACTIVE)
{
@ -872,15 +874,15 @@ crop_image (GImage *gimage,
gboolean layer_only,
gboolean crop_layers)
{
Layer *layer;
Layer *floating_layer;
Channel *channel;
GList *guide_list_ptr;
GSList *list;
gint width, height;
gint lx1, ly1, lx2, ly2;
gint off_x, off_y;
gint doff_x, doff_y;
GimpLayer *layer;
GimpLayer *floating_layer;
Channel *channel;
GList *guide_list_ptr;
GSList *list;
gint width, height;
gint lx1, ly1, lx2, ly2;
gint off_x, off_y;
gint doff_x, doff_y;
width = x2 - x1;
height = y2 - y1;
@ -896,7 +898,7 @@ crop_image (GImage *gimage,
layer = gimage->active_layer;
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_relax (layer, TRUE);
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &doff_x, &doff_y);
@ -904,9 +906,9 @@ crop_image (GImage *gimage,
off_x = (doff_x - x1);
off_y = (doff_y - y1);
layer_resize (layer, width, height, off_x, off_y);
gimp_layer_resize (layer, width, height, off_x, off_y);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_rigor (layer, TRUE);
undo_push_group_end (gimage);
@ -947,10 +949,10 @@ crop_image (GImage *gimage,
{
GSList *next;
layer = (Layer *) list->data;
layer = (GimpLayer *) list->data;
next = g_slist_next (list);
layer_translate (layer, -x1, -y1);
gimp_layer_translate (layer, -x1, -y1);
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
@ -968,9 +970,9 @@ crop_image (GImage *gimage,
height = ly2 - ly1;
if (width && height)
layer_resize (layer, width, height,
-(lx1 - off_x),
-(ly1 - off_y));
gimp_layer_resize (layer, width, height,
-(lx1 - off_x),
-(ly1 - off_y));
else
gimp_image_remove_layer (gimage, layer);
}
@ -1253,10 +1255,10 @@ static void
crop_selection_callback (GtkWidget *widget,
gpointer data)
{
Tool *tool;
Crop *crop;
Layer *layer;
GDisplay *gdisp;
Tool *tool;
Crop *crop;
GimpLayer *layer;
GDisplay *gdisp;
tool = active_tool;
crop = (Crop *) tool->private;

View File

@ -131,8 +131,8 @@ init_edit_selection (Tool *tool,
GdkEventButton *bevent,
EditType edit_type)
{
Layer *layer;
gint x, y;
GimpLayer *layer;
gint x, y;
undo_push_group_start (gdisp->gimage, LAYER_DISPLACE_UNDO);
@ -159,7 +159,7 @@ init_edit_selection (Tool *tool,
if (edit_type == EDIT_LAYER_TRANSLATE)
{
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
edit_type = EDIT_FLOATING_SEL_TRANSLATE;
}
@ -217,9 +217,9 @@ edit_selection_button_release (Tool *tool,
GdkEventButton *bevent,
GDisplay *gdisp)
{
gint x;
gint y;
Layer *layer;
gint x;
gint y;
GimpLayer *layer;
/* resume the current selection and ungrab the pointer */
selection_resume (gdisp->select);
@ -279,7 +279,7 @@ edit_selection_button_release (Tool *tool,
if (edit_select.edit_type == EDIT_FLOATING_SEL_TRANSLATE)
{
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
floating_sel_anchor (layer);
}
}
@ -338,10 +338,10 @@ edit_selection_motion (Tool *tool,
/******************************************* adam's live move *******/
/********************************************************************/
{
gint x, y;
Layer *layer;
Layer *floating_layer;
GSList *layer_list;
gint x, y;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *layer_list;
x = edit_select.x;
y = edit_select.y;
@ -374,11 +374,11 @@ edit_selection_motion (Tool *tool,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (layer == gdisp->gimage->active_layer ||
layer_linked (layer))
gimp_layer_linked (layer))
{
layer_translate (layer, xoffset, yoffset);
gimp_layer_translate (layer, xoffset, yoffset);
}
}
@ -421,7 +421,7 @@ edit_selection_motion (Tool *tool,
layer = gimp_image_get_active_layer (gdisp->gimage);
floating_sel_relax (layer, TRUE);
layer_translate (layer, xoffset, yoffset);
gimp_layer_translate (layer, xoffset, yoffset);
floating_sel_rigor (layer, TRUE);
if (edit_select.first_move)
@ -504,7 +504,7 @@ edit_selection_draw (Tool *tool)
{
GDisplay *gdisp;
Selection *select;
Layer *layer;
GimpLayer *layer;
GSList *layer_list;
gint floating_sel;
gint x1, y1, x2, y2;
@ -519,7 +519,7 @@ edit_selection_draw (Tool *tool)
{
case EDIT_MASK_TRANSLATE:
layer = gimp_image_get_active_layer (gdisp->gimage);
floating_sel = layer_is_floating_sel (layer);
floating_sel = gimp_layer_is_floating_sel (layer);
if (!floating_sel)
{
@ -577,8 +577,9 @@ edit_selection_draw (Tool *tool)
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
if (((layer) != gdisp->gimage->active_layer) && layer_linked (layer))
layer = (GimpLayer *) layer_list->data;
if (((layer) != gdisp->gimage->active_layer) &&
gimp_layer_linked (layer))
{
gimp_drawable_offsets (GIMP_DRAWABLE (layer), &off_x, &off_y);
gdisplay_transform_coords (gdisp, off_x, off_y, &x3, &y3, FALSE);
@ -763,11 +764,11 @@ edit_sel_arrow_keys_func (Tool *tool,
GdkEventKey *kevent,
GDisplay *gdisp)
{
gint inc_x, inc_y, mask_inc_x, mask_inc_y;
Layer *layer;
Layer *floating_layer;
GSList *layer_list;
EditType edit_type;
gint inc_x, inc_y, mask_inc_x, mask_inc_y;
GimpLayer *layer;
GimpLayer *floating_layer;
GSList *layer_list;
EditType edit_type;
layer = NULL;
@ -813,7 +814,7 @@ edit_sel_arrow_keys_func (Tool *tool,
{
layer = gimp_image_get_active_layer (gdisp->gimage);
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
edit_type = EDIT_FLOATING_SEL_TRANSLATE;
else
edit_type = EDIT_LAYER_TRANSLATE;
@ -835,11 +836,11 @@ edit_sel_arrow_keys_func (Tool *tool,
layer_list;
layer_list = g_slist_next (layer_list))
{
layer = (Layer *) layer_list->data;
layer = (GimpLayer *) layer_list->data;
if (((layer) == gdisp->gimage->active_layer) ||
layer_linked (layer))
gimp_layer_linked (layer))
{
layer_translate (layer, inc_x, inc_y);
gimp_layer_translate (layer, inc_x, inc_y);
}
}
@ -852,7 +853,7 @@ edit_sel_arrow_keys_func (Tool *tool,
floating_sel_relax (layer, TRUE);
layer_translate (layer, inc_x, inc_y);
gimp_layer_translate (layer, inc_x, inc_y);
floating_sel_rigor (layer, TRUE);

View File

@ -1049,7 +1049,7 @@ ink_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
gint x, y;

View File

@ -48,9 +48,9 @@ typedef struct _MoveTool MoveTool;
struct _MoveTool
{
Layer *layer;
Guide *guide;
GDisplay *disp;
GimpLayer *layer;
Guide *guide;
GDisplay *disp;
};
@ -88,10 +88,10 @@ move_tool_button_press (Tool *tool,
GdkEventButton *bevent,
GDisplay *gdisp)
{
MoveTool *move;
Layer *layer;
Guide *guide;
gint x, y;
MoveTool *move;
GimpLayer *layer;
Guide *guide;
gint x, y;
move = (MoveTool *) tool->private;
@ -140,7 +140,7 @@ move_tool_button_press (Tool *tool,
* use the move tool
*/
if (gimp_image_floating_sel (gdisp->gimage) &&
!layer_is_floating_sel (layer))
! gimp_layer_is_floating_sel (layer))
{
move->layer = gimp_image_floating_sel (gdisp->gimage);
}
@ -331,10 +331,10 @@ move_tool_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
MoveTool *move;
Guide *guide;
Layer *layer;
gint x, y;
MoveTool *move;
Guide *guide;
GimpLayer *layer;
gint x, y;
move = (MoveTool *) tool->private;
@ -386,7 +386,7 @@ move_tool_cursor_update (Tool *tool,
{
/* if there is a floating selection, and this aint it... */
if (gimp_image_floating_sel (gdisp->gimage) &&
!layer_is_floating_sel (layer))
! gimp_layer_is_floating_sel (layer))
gdisplay_install_tool_cursor (gdisp, GIMP_MOUSE_CURSOR,
RECT_SELECT,
CURSOR_MODIFIER_ANCHOR,

View File

@ -495,9 +495,9 @@ selection_tool_update_op_state (RectSelect *rect_sel,
gint state,
GDisplay *gdisp)
{
Layer *layer;
Layer *floating_sel;
gint tx, ty;
GimpLayer *layer;
GimpLayer *floating_sel;
gint tx, ty;
if (active_tool->state == ACTIVE)
return;

View File

@ -347,7 +347,7 @@ clone_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
gint x, y;

View File

@ -321,8 +321,8 @@ text_button_press (Tool *tool,
GdkEventButton *bevent,
GDisplay *gdisp)
{
Layer *layer;
TextTool *text_tool;
GimpLayer *layer;
TextTool *text_tool;
text_tool = tool->private;
text_tool->gdisp = gdisp;
@ -338,7 +338,7 @@ text_button_press (Tool *tool,
text_tool->click_x,
text_tool->click_y)))
/* If there is a floating selection, and this aint it, use the move tool */
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
{
init_edit_selection (tool, gdisp, bevent, EDIT_LAYER_TRANSLATE);
return;
@ -370,15 +370,15 @@ text_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
gint x, y;
GimpLayer *layer;
gint x, y;
gdisplay_untransform_coords (gdisp, mevent->x, mevent->y,
&x, &y, FALSE, FALSE);
if ((layer = gimp_image_pick_correlate_layer (gdisp->gimage, x, y)))
/* if there is a floating selection, and this aint it... */
if (layer_is_floating_sel (layer))
if (gimp_layer_is_floating_sel (layer))
{
gdisplay_install_tool_cursor (gdisp, GDK_FLEUR,
MOVE,
@ -581,25 +581,25 @@ text_render (GimpImage *gimage,
gint border,
gint antialias)
{
GdkFont *font;
GdkPixmap *pixmap;
GdkImage *image;
GdkGC *gc;
GdkColor black, white;
Layer *layer;
GdkFont *font;
GdkPixmap *pixmap;
GdkImage *image;
GdkGC *gc;
GdkColor black, white;
GimpLayer *layer;
TileManager *mask, *newmask;
PixelRegion textPR, maskPR;
gint layer_type;
guchar color[MAX_CHANNELS];
gchar *str;
gint nstrs;
gboolean crop;
gint line_width, line_height;
gint pixmap_width, pixmap_height;
gint text_width, text_height;
gint width, height;
gint x, y, k;
void *pr;
PixelRegion textPR, maskPR;
gint layer_type;
guchar color[MAX_CHANNELS];
gchar *str;
gint nstrs;
gboolean crop;
gint line_width, line_height;
gint pixmap_width, pixmap_height;
gint text_width, text_height;
gint width, height;
gint x, y, k;
void *pr;
#ifndef GDK_WINDOWING_WIN32
XFontStruct *xfs;
#endif
@ -764,11 +764,11 @@ text_render (GimpImage *gimage,
tile_manager_destroy (mask);
if (newmask &&
(layer = layer_new (gimage,
tile_manager_width (newmask),
tile_manager_height (newmask),
layer_type,
_("Text Layer"), OPAQUE_OPACITY, NORMAL_MODE)))
(layer = gimp_layer_new (gimage,
tile_manager_width (newmask),
tile_manager_height (newmask),
layer_type,
_("Text Layer"), OPAQUE_OPACITY, NORMAL_MODE)))
{
/* color the layer buffer */
gimp_image_get_foreground (gimage, drawable, color);

View File

@ -1049,7 +1049,7 @@ ink_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
GdkCursorType ctype = GDK_TOP_LEFT_ARROW;
gint x, y;

View File

@ -48,9 +48,9 @@ typedef struct _MoveTool MoveTool;
struct _MoveTool
{
Layer *layer;
Guide *guide;
GDisplay *disp;
GimpLayer *layer;
Guide *guide;
GDisplay *disp;
};
@ -88,10 +88,10 @@ move_tool_button_press (Tool *tool,
GdkEventButton *bevent,
GDisplay *gdisp)
{
MoveTool *move;
Layer *layer;
Guide *guide;
gint x, y;
MoveTool *move;
GimpLayer *layer;
Guide *guide;
gint x, y;
move = (MoveTool *) tool->private;
@ -140,7 +140,7 @@ move_tool_button_press (Tool *tool,
* use the move tool
*/
if (gimp_image_floating_sel (gdisp->gimage) &&
!layer_is_floating_sel (layer))
! gimp_layer_is_floating_sel (layer))
{
move->layer = gimp_image_floating_sel (gdisp->gimage);
}
@ -331,10 +331,10 @@ move_tool_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
MoveTool *move;
Guide *guide;
Layer *layer;
gint x, y;
MoveTool *move;
Guide *guide;
GimpLayer *layer;
gint x, y;
move = (MoveTool *) tool->private;
@ -386,7 +386,7 @@ move_tool_cursor_update (Tool *tool,
{
/* if there is a floating selection, and this aint it... */
if (gimp_image_floating_sel (gdisp->gimage) &&
!layer_is_floating_sel (layer))
! gimp_layer_is_floating_sel (layer))
gdisplay_install_tool_cursor (gdisp, GIMP_MOUSE_CURSOR,
RECT_SELECT,
CURSOR_MODIFIER_ANCHOR,

View File

@ -471,7 +471,7 @@ paint_core_cursor_update (Tool *tool,
GdkEventMotion *mevent,
GDisplay *gdisp)
{
Layer *layer;
GimpLayer *layer;
PaintCore *paint_core;
gint x, y;
gchar status_str[STATUSBAR_SIZE];

Some files were not shown because too many files have changed in this diff Show More