mirror of
https://gitlab.gnome.org/GNOME/gimp
synced 2024-10-21 12:02:32 +00:00
fe0bf162c1
2002-05-13 Sven Neumann <sven@gimp.org> * libgimpmath/gimpmath.h: removed FINITE() macro. * tools/pdbgen/pdb/image.pdb * app/pdb/image_cmds.c: define FINITE() here, where it is used. * tools/pdbgen/pdb/lib.pl: add "config.h" to all generated libgimp .c files. * libgimp/gimp*_pdb.c: regenerated. * libgimp/gimpbrushmenu.c * libgimp/gimpchannel.c * libgimp/gimpdrawable.c * libgimp/gimpgradientmenu.c * libgimp/gimphelp.c * libgimp/gimpimage.c * libgimp/gimplayer.c * libgimp/gimppatternmenu.c * libgimp/gimppixelrgn.c * libgimp/gimpproceduraldb.c * libgimp/gimpselection.c * libgimp/gimptile.c * libgimp/gimpui.c * libgimpmath/gimpmatrix.c * libgimpmath/gimpvector.c * plug-ins/MapObject/arcball.c * plug-ins/fp/fp_gdk.c * plug-ins/fp/fp_misc.c * plug-ins/ifscompose/ifscompose_storage.c * plug-ins/ifscompose/ifscompose_utils.c * plug-ins/maze/handy.c * plug-ins/rcm/rcm_gdk.c * plug-ins/sel2path/edge.c * plug-ins/xjt/xjpeg.c * plug-ins/xjt/xpdb_calls.c: include "config.h".
223 lines
7.9 KiB
C
223 lines
7.9 KiB
C
/* LIBGIMP - The GIMP Library
|
|
* Copyright (C) 1995-2000 Peter Mattis and Spencer Kimball
|
|
*
|
|
* gimpmisctools_pdb.c
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the
|
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
* Boston, MA 02111-1307, USA.
|
|
*/
|
|
|
|
/* NOTE: This file is autogenerated by pdbgen.pl */
|
|
|
|
#include "config.h"
|
|
|
|
#include "gimp.h"
|
|
|
|
/**
|
|
* gimp_blend:
|
|
* @drawable_ID: The affected drawable.
|
|
* @blend_mode: The type of blend.
|
|
* @paint_mode: The paint application mode.
|
|
* @gradient_type: The type of gradient.
|
|
* @opacity: The opacity of the final blend.
|
|
* @offset: Offset relates to the starting and ending coordinates specified for the blend. This parameter is mode dependent.
|
|
* @repeat: Repeat mode.
|
|
* @supersample: Do adaptive supersampling.
|
|
* @max_depth: Maximum recursion levels for supersampling.
|
|
* @threshold: Supersampling threshold.
|
|
* @x1: The x coordinate of this blend's starting point.
|
|
* @y1: The y coordinate of this blend's starting point.
|
|
* @x2: The x coordinate of this blend's ending point.
|
|
* @y2: The y coordinate of this blend's ending point.
|
|
*
|
|
* Blend between the starting and ending coordinates with the specified
|
|
* blend mode and gradient type.
|
|
*
|
|
* This tool requires information on the paint application mode, the
|
|
* blend mode, and the gradient type. It creates the specified variety
|
|
* of blend using the starting and ending coordinates as defined for
|
|
* each gradient type.
|
|
*
|
|
* Returns: TRUE on success.
|
|
*/
|
|
gboolean
|
|
gimp_blend (gint32 drawable_ID,
|
|
GimpBlendMode blend_mode,
|
|
GimpLayerModeEffects paint_mode,
|
|
GimpGradientType gradient_type,
|
|
gdouble opacity,
|
|
gdouble offset,
|
|
GimpRepeatMode repeat,
|
|
gboolean supersample,
|
|
gint max_depth,
|
|
gdouble threshold,
|
|
gdouble x1,
|
|
gdouble y1,
|
|
gdouble x2,
|
|
gdouble y2)
|
|
{
|
|
GimpParam *return_vals;
|
|
gint nreturn_vals;
|
|
gboolean success = TRUE;
|
|
|
|
return_vals = gimp_run_procedure ("gimp_blend",
|
|
&nreturn_vals,
|
|
GIMP_PDB_DRAWABLE, drawable_ID,
|
|
GIMP_PDB_INT32, blend_mode,
|
|
GIMP_PDB_INT32, paint_mode,
|
|
GIMP_PDB_INT32, gradient_type,
|
|
GIMP_PDB_FLOAT, opacity,
|
|
GIMP_PDB_FLOAT, offset,
|
|
GIMP_PDB_INT32, repeat,
|
|
GIMP_PDB_INT32, supersample,
|
|
GIMP_PDB_INT32, max_depth,
|
|
GIMP_PDB_FLOAT, threshold,
|
|
GIMP_PDB_FLOAT, x1,
|
|
GIMP_PDB_FLOAT, y1,
|
|
GIMP_PDB_FLOAT, x2,
|
|
GIMP_PDB_FLOAT, y2,
|
|
GIMP_PDB_END);
|
|
|
|
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
|
|
|
gimp_destroy_params (return_vals, nreturn_vals);
|
|
|
|
return success;
|
|
}
|
|
|
|
/**
|
|
* gimp_bucket_fill:
|
|
* @drawable_ID: The affected drawable.
|
|
* @fill_mode: The type of fill.
|
|
* @paint_mode: The paint application mode.
|
|
* @opacity: The opacity of the final bucket fill.
|
|
* @threshold: The threshold determines how extensive the seed fill will be. It's value is specified in terms of intensity levels . This parameter is only valid when there is no selection in the specified image.
|
|
* @sample_merged: Use the composite image, not the drawable.
|
|
* @x: The x coordinate of this bucket fill's application. This parameter is only valid when there is no selection in the specified image.
|
|
* @y: The y coordinate of this bucket fill's application. This parameter is only valid when there is no selection in the specified image.
|
|
*
|
|
* Fill the area specified either by the current selection if there is
|
|
* one, or by a seed fill starting at the specified coordinates.
|
|
*
|
|
* This tool requires information on the paint application mode, and
|
|
* the fill mode, which can either be in the foreground color, or in
|
|
* the currently active pattern. If there is no selection, a seed fill
|
|
* is executed at the specified coordinates and extends outward in
|
|
* keeping with the threshold parameter. If there is a selection in the
|
|
* target image, the threshold, sample merged, x, and y arguments are
|
|
* unused. If the sample_merged parameter is non-zero, the data of the
|
|
* composite image will be used instead of that for the specified
|
|
* drawable. This is equivalent to sampling for colors after merging
|
|
* all visible layers. In the case of merged sampling, the x,y
|
|
* coordinates are relative to the image's origin; otherwise, they are
|
|
* relative to the drawable's origin.
|
|
*
|
|
* Returns: TRUE on success.
|
|
*/
|
|
gboolean
|
|
gimp_bucket_fill (gint32 drawable_ID,
|
|
GimpBucketFillMode fill_mode,
|
|
GimpLayerModeEffects paint_mode,
|
|
gdouble opacity,
|
|
gdouble threshold,
|
|
gboolean sample_merged,
|
|
gdouble x,
|
|
gdouble y)
|
|
{
|
|
GimpParam *return_vals;
|
|
gint nreturn_vals;
|
|
gboolean success = TRUE;
|
|
|
|
return_vals = gimp_run_procedure ("gimp_bucket_fill",
|
|
&nreturn_vals,
|
|
GIMP_PDB_DRAWABLE, drawable_ID,
|
|
GIMP_PDB_INT32, fill_mode,
|
|
GIMP_PDB_INT32, paint_mode,
|
|
GIMP_PDB_FLOAT, opacity,
|
|
GIMP_PDB_FLOAT, threshold,
|
|
GIMP_PDB_INT32, sample_merged,
|
|
GIMP_PDB_FLOAT, x,
|
|
GIMP_PDB_FLOAT, y,
|
|
GIMP_PDB_END);
|
|
|
|
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
|
|
|
gimp_destroy_params (return_vals, nreturn_vals);
|
|
|
|
return success;
|
|
}
|
|
|
|
/**
|
|
* gimp_color_picker:
|
|
* @image_ID: The image.
|
|
* @drawable_ID: The affected drawable.
|
|
* @x: x coordinate of upper-left corner of rectangle.
|
|
* @y: y coordinate of upper-left corner of rectangle.
|
|
* @sample_merged: Use the composite image, not the drawable.
|
|
* @sample_average: Average the color of all the pixels in a specified radius.
|
|
* @average_radius: The radius of pixels to average.
|
|
* @color: The return color.
|
|
*
|
|
* Determine the color at the given drawable coordinates
|
|
*
|
|
* This tool determines the color at the specified coordinates. The
|
|
* returned color is an RGB triplet even for grayscale and indexed
|
|
* drawables. If the coordinates lie outside of the extents of the
|
|
* specified drawable, then an error is returned. If the drawable has
|
|
* an alpha channel, the algorithm examines the alpha value of the
|
|
* drawable at the coordinates. If the alpha value is completely
|
|
* transparent (0), then an error is returned. If the sample_merged
|
|
* parameter is non-zero, the data of the composite image will be used
|
|
* instead of that for the specified drawable. This is equivalent to
|
|
* sampling for colors after merging all visible layers. In the case of
|
|
* a merged sampling, the supplied drawable is ignored.
|
|
*
|
|
* Returns: TRUE on success.
|
|
*/
|
|
gboolean
|
|
gimp_color_picker (gint32 image_ID,
|
|
gint32 drawable_ID,
|
|
gdouble x,
|
|
gdouble y,
|
|
gboolean sample_merged,
|
|
gboolean sample_average,
|
|
gdouble average_radius,
|
|
GimpRGB *color)
|
|
{
|
|
GimpParam *return_vals;
|
|
gint nreturn_vals;
|
|
gboolean success = TRUE;
|
|
|
|
return_vals = gimp_run_procedure ("gimp_color_picker",
|
|
&nreturn_vals,
|
|
GIMP_PDB_IMAGE, image_ID,
|
|
GIMP_PDB_DRAWABLE, drawable_ID,
|
|
GIMP_PDB_FLOAT, x,
|
|
GIMP_PDB_FLOAT, y,
|
|
GIMP_PDB_INT32, sample_merged,
|
|
GIMP_PDB_INT32, sample_average,
|
|
GIMP_PDB_FLOAT, average_radius,
|
|
GIMP_PDB_END);
|
|
|
|
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
|
|
|
if (success)
|
|
*color = return_vals[1].data.d_color;
|
|
|
|
gimp_destroy_params (return_vals, nreturn_vals);
|
|
|
|
return success;
|
|
}
|