added a GimpImageType parameter to specify the desired drawable type. This

2002-05-21  Sven Neumann  <sven@gimp.org>

	* app/core/gimplayer.[ch] (gimp_layer_new_from_tiles): added a
	GimpImageType parameter to specify the desired drawable type. This
	is needed when pasting into layer masks.

	* app/core/gimpdrawable-transform.c
	* app/core/gimpedit.c
	* app/core/gimpimage-mask.c: changed accordingly.
This commit is contained in:
Sven Neumann 2002-05-21 11:29:20 +00:00 committed by Sven Neumann
parent fd21dbfb18
commit 16c289ea95
8 changed files with 47 additions and 25 deletions

View File

@ -1,3 +1,13 @@
2002-05-21 Sven Neumann <sven@gimp.org>
* app/core/gimplayer.[ch] (gimp_layer_new_from_tiles): added a
GimpImageType parameter to specify the desired drawable type. This
is needed when pasting into layer masks.
* app/core/gimpdrawable-transform.c
* app/core/gimpedit.c
* app/core/gimpimage-mask.c: changed accordingly.
2002-05-21 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in.c: some more minor cleanup.

View File

@ -160,9 +160,10 @@ gimp_edit_paste (GimpImage *gimage,
GimpBuffer *paste,
gboolean paste_into)
{
GimpLayer *layer;
gint x1, y1, x2, y2;
gint cx, cy;
GimpLayer *layer;
GimpImageType type;
gint x1, y1, x2, y2;
gint cx, cy;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (! drawable || GIMP_IS_DRAWABLE (drawable), NULL);
@ -171,16 +172,17 @@ gimp_edit_paste (GimpImage *gimage,
* user is pasting into an empty image.
*/
if (drawable != NULL)
layer = gimp_layer_new_from_tiles (paste->tiles,
gimage,
_("Pasted Layer"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);
if (drawable)
type = gimp_drawable_type_with_alpha (drawable);
else
layer = gimp_layer_new_from_tiles (paste->tiles,
gimage,
_("Pasted Layer"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);
type = gimp_image_base_type_with_alpha (gimage);
layer = gimp_layer_new_from_tiles (paste->tiles,
gimage,
type,
_("Pasted Layer"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);
if (! layer)
return NULL;
@ -254,6 +256,7 @@ gimp_edit_paste_as_new (Gimp *gimp,
layer = gimp_layer_new_from_tiles (paste->tiles,
gimage,
gimp_image_base_type_with_alpha (gimage),
_("Pasted Layer"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);

View File

@ -747,6 +747,7 @@ gimp_drawable_transform_paste (GimpDrawable *drawable,
layer =
gimp_layer_new_from_tiles (tiles,
gimage,
gimp_drawable_type (drawable),
_("Transformation"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);
if (! layer)

View File

@ -747,6 +747,7 @@ gimp_drawable_transform_paste (GimpDrawable *drawable,
layer =
gimp_layer_new_from_tiles (tiles,
gimage,
gimp_drawable_type (drawable),
_("Transformation"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);
if (! layer)

View File

@ -160,9 +160,10 @@ gimp_edit_paste (GimpImage *gimage,
GimpBuffer *paste,
gboolean paste_into)
{
GimpLayer *layer;
gint x1, y1, x2, y2;
gint cx, cy;
GimpLayer *layer;
GimpImageType type;
gint x1, y1, x2, y2;
gint cx, cy;
g_return_val_if_fail (GIMP_IS_IMAGE (gimage), NULL);
g_return_val_if_fail (! drawable || GIMP_IS_DRAWABLE (drawable), NULL);
@ -171,16 +172,17 @@ gimp_edit_paste (GimpImage *gimage,
* user is pasting into an empty image.
*/
if (drawable != NULL)
layer = gimp_layer_new_from_tiles (paste->tiles,
gimage,
_("Pasted Layer"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);
if (drawable)
type = gimp_drawable_type_with_alpha (drawable);
else
layer = gimp_layer_new_from_tiles (paste->tiles,
gimage,
_("Pasted Layer"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);
type = gimp_image_base_type_with_alpha (gimage);
layer = gimp_layer_new_from_tiles (paste->tiles,
gimage,
type,
_("Pasted Layer"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);
if (! layer)
return NULL;
@ -254,6 +256,7 @@ gimp_edit_paste_as_new (Gimp *gimp,
layer = gimp_layer_new_from_tiles (paste->tiles,
gimage,
gimp_image_base_type_with_alpha (gimage),
_("Pasted Layer"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);

View File

@ -394,6 +394,7 @@ gimp_image_mask_float (GimpImage *gimage,
/* Create a new layer from the buffer */
layer = gimp_layer_new_from_tiles (tiles,
gimage,
gimp_image_base_type_with_alpha (gimage),
_("Floating Selection"),
GIMP_OPACITY_OPAQUE, GIMP_NORMAL_MODE);

View File

@ -370,6 +370,7 @@ gimp_layer_copy (const GimpLayer *layer,
* gimp_layer_new_from_tiles:
* @tiles: The buffer to make the new layer from.
* @dest_gimage: The image the new layer will be added to.
* @type: The #GimpImageType of the new layer.
* @name: The new layer's name.
* @opacity: The new layer's opacity.
* @mode: The new layer's mode.
@ -383,6 +384,7 @@ gimp_layer_copy (const GimpLayer *layer,
GimpLayer *
gimp_layer_new_from_tiles (TileManager *tiles,
GimpImage *dest_gimage,
GimpImageType type,
const gchar *name,
gdouble opacity,
GimpLayerModeEffects mode)
@ -401,7 +403,7 @@ gimp_layer_new_from_tiles (TileManager *tiles,
new_layer = gimp_layer_new (dest_gimage,
width, height,
gimp_image_base_type_with_alpha (dest_gimage),
type,
name,
opacity,
mode);

View File

@ -87,6 +87,7 @@ GimpLayer * gimp_layer_copy (const GimpLayer *layer,
GimpLayer * gimp_layer_new_from_tiles (TileManager *tiles,
GimpImage *dest_gimage,
GimpImageType type,
const gchar *name,
gdouble opacity,
GimpLayerModeEffects mode);