From 581a5e6d488b1f83a8cfb424f71cb1858c5bcb7e Mon Sep 17 00:00:00 2001 From: James Henstridge Date: Thu, 29 Aug 2002 03:01:30 +0000 Subject: [PATCH] some more plugin updates. --- plug-ins/pygimp/gimpenums.py | 290 +++++++++++++-------------- plug-ins/pygimp/gimpmodule.c | 6 + plug-ins/pygimp/plug-ins/clothify.py | 2 +- plug-ins/pygimp/plug-ins/foggify.py | 2 +- plug-ins/pygimp/plug-ins/sphere.py | 16 +- 5 files changed, 153 insertions(+), 163 deletions(-) diff --git a/plug-ins/pygimp/gimpenums.py b/plug-ins/pygimp/gimpenums.py index d40a8d171a..fc2fabdbdc 100644 --- a/plug-ins/pygimp/gimpenums.py +++ b/plug-ins/pygimp/gimpenums.py @@ -27,229 +27,218 @@ TRUE = 1 FALSE = 0 # GimpAddMaskType -WHITE_MASK = 0 -BLACK_MASK = 1 -ALPHA_MASK = 2 +ADD_WHITE_MASK = 0 +ADD_BLACK_MASK = 1 +ADD_ALPHA_MASK = 2 +ADD_SELECTION_MASK = 3 +ADD_INVERSE_SELECTION_MASK = 4 +ADD_COPY_MASK = 5 +ADD_INVERSE_COPY_MASK = 6 # GimpBlendMode -FG_BG_RGB = 0 -FG_BG_HSV = 1 -FG_TRANS = 2 -CUSTOM = 3 +FG_BG_RGB_MODE = 0 +FG_BG_HSV_MODE = 1 +FG_TRANSPARENT_MODE = 2 +CUSTOM_MODE = 3 # GimpBrushApplicationMode -HARD = 0 -SOFT = 1 -PRESSURE = 2 +BRUSH_HARD = 0 +BRUSH_SOFT = 1 # GimpBucketFillMode -FG_BUCKET_FILL = 0 -BG_BUCKET_FILL = 1 +FG_BUCKET_FILL = 0 +BG_BUCKET_FILL = 1 PATTERN_BUCKET_FILL = 2 # GimpChannelLutType VALUE_LUT = 0 -RED_LUT = 1 +RED_LUT = 1 GREEN_LUT = 2 -BLUE_LUT = 3 +BLUE_LUT = 3 ALPHA_LUT = 4 -# GimpChannelOffsetType -OFFSET_BACKGROUND = 0 -OFFSET_TRANSPARENT = 1 - # GimpChannelOps -ADD = 0 -SUB = 1 -REPLACE = 2 -INTERSECT = 3 +CHANNEL_OP_ADD = 0 +CHANNEL_OP_SUB = 1 +CHANNEL_OP_REPLACE = 2 +CHANNEL_OP_INTERSECT = 3 # GimpChannelType -RED_CHANNEL = 0 -GREEN_CHANNEL = 1 -BLUE_CHANNEL = 2 -GRAY_CHANNEL = 3 -INDEXED_CHANNEL = 4 +RED_CHANNEL = 0 +GREEN_CHANNEL = 1 +BLUE_CHANNEL = 2 +GRAY_CHANNEL = 3 +INDEXED_CHANNEL = 4 AUXILLARY_CHANNEL = 5 # GimpCloneType -IMAGE_CLONE = 0 +IMAGE_CLONE = 0 PATTERN_CLONE = 1 # GimpConvertDitherType -NO_DITHER = 0 -FS_DITHER = 1 +NO_DITHER = 0 +FS_DITHER = 1 FSLOWBLEED_DITHER = 2 -FIXED_DITHER = 3 -NODESTRUCT_DITHER = 4 +FIXED_DITHER = 3 # GimpConvertPaletteType -MAKE_PALETTE = 0 -REUSE_PALETTE = 1 -WEB_PALETTE = 2 -MONO_PALETTE = 3 +MAKE_PALETTE = 0 +REUSE_PALETTE = 1 +WEB_PALETTE = 2 +MONO_PALETTE = 3 CUSTOM_PALETTE = 4 # GimpConvolutionType -NORMAL_CONVOL = 0 +NORMAL_CONVOL = 0 ABSOLUTE_CONVOL = 1 NEGATIVE_CONVOL = 2 # GimpConvolveType -BLUR_CONVOLVE = 0 +BLUR_CONVOLVE = 0 SHARPEN_CONVOLVE = 1 -CUSTOM_CONVOLVE = 2 - -# GimpDodgeBurnMode -DODGEBURN_HIGHLIGHTS = 0 -DODGEBURN_MIDTONES = 1 -DODGEBURN_SHADOWS = 2 # GimpDodgeBurnType DODGE = 0 -BURN = 1 +BURN = 1 # GimpFillType -FG_IMAGE_FILL = 0 -BG_IMAGE_FILL = 1 -WHITE_IMAGE_FILL = 2 -TRANS_IMAGE_FILL = 3 -NO_IMAGE_FILL = 4 - -# GimpImageBaseType -RGB = 0 -GRAY = 1 -INDEXED = 2 - -# GimpImageType -RGB_IMAGE = 0 -RGBA_IMAGE = 1 -GRAY_IMAGE = 2 -GRAYA_IMAGE = 3 -INDEXED_IMAGE = 4 -INDEXEDA_IMAGE = 5 +FOREGROUND_FILL = 0 +BACKGROUND_FILL = 1 +WHITE_FILL = 2 +TRANSPARENT_FILL = 3 +NO_FILL = 4 # GimpGradientPaintMode -ONCE_FORWARD = 0 -ONCE_BACKWARDS = 1 -LOOP_SAWTOOTH = 2 -LOOP_TRIANGLE = 3 -ONCE_END_COLOR = 4 +GRADIENT_ONCE_FORWARD = 0 +GRADIENT_ONCE_BACKWARDS = 1 +GRADIENT_LOOP_SAWTOOTH = 2 +GRADIENT_LOOP_TRIANGLE = 3 # GimpGradientType -LINEAR = 0 -BILINEAR = 1 -RADIAL = 2 -SQUARE = 3 -CONICAL_SYMMETRIC = 4 -CONICAL_ASYMMETRIC = 5 -SHAPEBURST_ANGULAR = 6 +LINEAR = 0 +BILINEAR = 1 +RADIAL = 2 +SQUARE = 3 +CONICAL_SYMMETRIC = 4 +CONICAL_ASYMMETRIC = 5 +SHAPEBURST_ANGULAR = 6 SHAPEBURST_SPHERICAL = 7 -SHAPEBURST_DIMPLED = 8 -SPIRAL_CLOCKWISE = 9 +SHAPEBURST_DIMPLED = 8 +SPIRAL_CLOCKWISE = 9 SPIRAL_ANTICLOCKWISE = 10 # GimpHueRange -ALL_HUES = 0 -RED_HUES = 1 -YELLOW_HUES = 2 -GREEN_HUES = 3 -CYAN_HUES = 4 -BLUE_HUES = 5 +ALL_HUES = 0 +RED_HUES = 1 +YELLOW_HUES = 2 +GREEN_HUES = 3 +CYAN_HUES = 4 +BLUE_HUES = 5 MAGENTA_HUES = 6 -# GimpInterpolationType -LINEAR_INTERPOLATION = 0 -CUBIC_INTERPOLATION = 1 -NEAREST_NEIGHBOR_INTERPOLATION = 2 +# GimpImageBaseType +RGB = 0 +GRAY = 1 +INDEXED = 2 + +# GimpImageType +RGB_IMAGE = 0 +RGBA_IMAGE = 1 +GRAY_IMAGE = 2 +GRAYA_IMAGE = 3 +INDEXED_IMAGE = 4 +INDEXEDA_IMAGE = 5 # GimpLayerModeEffects -NORMAL_MODE = 0 -DISSOLVE_MODE = 1 -BEHIND_MODE = 2 -MULTIPLY_MODE = 3 -SCREEN_MODE = 4 -OVERLAY_MODE = 5 -DIFFERENCE_MODE = 6 -ADDITION_MODE = 7 -SUBTRACT_MODE = 8 -DARKEN_ONLY_MODE = 9 +NORMAL_MODE = 0 +DISSOLVE_MODE = 1 +BEHIND_MODE = 2 +MULTIPLY_MODE = 3 +SCREEN_MODE = 4 +OVERLAY_MODE = 5 +DIFFERENCE_MODE = 6 +ADDITION_MODE = 7 +SUBTRACT_MODE = 8 +DARKEN_ONLY_MODE = 9 LIGHTEN_ONLY_MODE = 10 -HUE_MODE = 11 -SATURATION_MODE = 12 -COLOR_MODE = 13 -VALUE_MODE = 14 -DIVIDE_MODE = 15 +HUE_MODE = 11 +SATURATION_MODE = 12 +COLOR_MODE = 13 +VALUE_MODE = 14 +DIVIDE_MODE = 15 +DODGE_MODE = 16 +BURN_MODE = 17 +HARDLIGHT_MODE = 18 +COLOR_ERASE_MODE = 19 # GimpMaskApplyMode -APPLY = 0 -DISCARD = 1 +MASK_APPLY = 0 +MASK_DISCARD = 1 # GimpMergeType -EXPAND_AS_NECESSARY = 0 -CLIP_TO_IMAGE = 1 +EXPAND_AS_NECESSARY = 0 +CLIP_TO_IMAGE = 1 CLIP_TO_BOTTOM_LAYER = 2 -FLATTEN_IMAGE = 3 +FLATTEN_IMAGE = 3 -# GimpMessageHandlerType -MESSAGE_BOX = 0 -CONSOLE = 1 -ERROR_CONSOLE = 2 +# GimpOffsetType +OFFSET_BACKGROUND = 0 +OFFSET_TRANSPARENT = 1 # GimpOrientationType HORIZONTAL = 0 -VERTICAL = 1 -UNKNOWN = 2 +VERTICAL = 1 +UNKNOWN = 2 # GimpPDBArgType -PDB_INT32 = 0 -PDB_INT16 = 1 -PDB_INT8 = 2 -PDB_FLOAT = 3 -PDB_STRING = 4 -PDB_INT32ARRAY = 5 -PDB_INT16ARRAY = 6 -PDB_INT8ARRAY = 7 -PDB_FLOATARRAY = 8 +PDB_INT32 = 0 +PDB_INT16 = 1 +PDB_INT8 = 2 +PDB_FLOAT = 3 +PDB_STRING = 4 +PDB_INT32ARRAY = 5 +PDB_INT16ARRAY = 6 +PDB_INT8ARRAY = 7 +PDB_FLOATARRAY = 8 PDB_STRINGARRAY = 9 -PDB_COLOR = 10 -PDB_REGION = 11 -PDB_DISPLAY = 12 -PDB_IMAGE = 13 -PDB_LAYER = 14 -PDB_CHANNEL = 15 -PDB_DRAWABLE = 16 -PDB_SELECTION = 17 -PDB_BOUNDARY = 18 -PDB_PATH = 19 -PDB_PARASITE = 20 -PDB_STATUS = 21 -PDB_END = 22 +PDB_COLOR = 10 +PDB_REGION = 11 +PDB_DISPLAY = 12 +PDB_IMAGE = 13 +PDB_LAYER = 14 +PDB_CHANNEL = 15 +PDB_DRAWABLE = 16 +PDB_SELECTION = 17 +PDB_BOUNDARY = 18 +PDB_PATH = 19 +PDB_PARASITE = 20 +PDB_STATUS = 21 +PDB_END = 22 # GimpPDBProcType -INTERNAL = 0 -PLUGIN = 1 +INTERNAL = 0 +PLUGIN = 1 EXTENSION = 2 TEMPORARY = 3 # GimpPDBStatusType PDB_EXECUTION_ERROR = 0 -PDB_CALLING_ERROR = 1 -PDB_PASS_THROUGH = 2 -PDB_SUCCESS = 3 -PDB_CANCEL = 4 +PDB_CALLING_ERROR = 1 +PDB_PASS_THROUGH = 2 +PDB_SUCCESS = 3 +PDB_CANCEL = 4 # GimpPaintApplicationMode -CONTINUOUS = 0 -INCREMENTAL = 1 +PAINT_CONSTANT = 0 +PAINT_INCREMENTAL = 1 # GimpRepeatMode -REPEAT_NONE = 0 -REPEAT_SAWTOOTH = 1 +REPEAT_NONE = 0 +REPEAT_SAWTOOTH = 1 REPEAT_TRIANGULAR = 2 # GimpRunModeType -RUN_INTERACTIVE = 0 +RUN_INTERACTIVE = 0 RUN_NONINTERACTIVE = 1 RUN_WITH_LAST_VALS = 2 @@ -257,13 +246,8 @@ RUN_WITH_LAST_VALS = 2 PIXELS = 0 POINTS = 1 -# GimpStackTraceMode -STACK_TRACE_NEVER = 0 -STACK_TRACE_QUERY = 1 -STACK_TRACE_ALWAYS = 2 - # GimpTransferMode -SHADOWS = 0 -MIDTONES = 1 +SHADOWS = 0 +MIDTONES = 1 HIGHLIGHTS = 2 diff --git a/plug-ins/pygimp/gimpmodule.c b/plug-ins/pygimp/gimpmodule.c index a823831d55..cbb69212e0 100644 --- a/plug-ins/pygimp/gimpmodule.c +++ b/plug-ins/pygimp/gimpmodule.c @@ -511,6 +511,9 @@ pygimp_set_background(PyObject *self, PyObject *args) if (!PyArg_ParseTuple(args, "iii:set_background", &r, &g, &b)) return NULL; } + r = CLAMP(r, 0, 255); + g = CLAMP(g, 0, 255); + b = CLAMP(b, 0, 255); gimp_rgb_set_uchar(&colour, r, g, b); gimp_palette_set_background(&colour); Py_INCREF(Py_None); @@ -527,6 +530,9 @@ pygimp_set_foreground(PyObject *self, PyObject *args) if (!PyArg_ParseTuple(args, "iii:set_foreground", &r, &g, &b)) return NULL; } + r = CLAMP(r, 0, 255); + g = CLAMP(g, 0, 255); + b = CLAMP(b, 0, 255); gimp_rgb_set_uchar(&colour, r, g, b); gimp_palette_set_foreground(&colour); Py_INCREF(Py_None); diff --git a/plug-ins/pygimp/plug-ins/clothify.py b/plug-ins/pygimp/plug-ins/clothify.py index 20e9963580..fb83e4dbfd 100755 --- a/plug-ins/pygimp/plug-ins/clothify.py +++ b/plug-ins/pygimp/plug-ins/clothify.py @@ -29,7 +29,7 @@ def python_clothify(timg, tdrawable, bx=9, by=9, layer_one = gimp.Layer(img, "X Dots", width, height, RGB_IMAGE, 100, NORMAL_MODE) img.disable_undo() - pdb.gimp_edit_fill(layer_one, BG_IMAGE_FILL) + pdb.gimp_edit_fill(layer_one, BACKGROUND_FILL) img.add_layer(layer_one, 0) pdb.plug_in_noisify(img, layer_one, 0, 0.7, 0.7, 0.7, 0.7) layer_two = layer_one.copy() diff --git a/plug-ins/pygimp/plug-ins/foggify.py b/plug-ins/pygimp/plug-ins/foggify.py index 31f68323e8..0a01665d58 100755 --- a/plug-ins/pygimp/plug-ins/foggify.py +++ b/plug-ins/pygimp/plug-ins/foggify.py @@ -10,7 +10,7 @@ def python_foggify(img, layer, name, colour, turbulence, opacity): opacity, NORMAL_MODE) oldbg = gimp.get_background() gimp.set_background(colour) - pdb.gimp_edit_fill(fog, BG_IMAGE_FILL) + pdb.gimp_edit_fill(fog, BACKGROUND_FILL) gimp.set_background(oldbg) img.add_layer(fog, 0) diff --git a/plug-ins/pygimp/plug-ins/sphere.py b/plug-ins/pygimp/plug-ins/sphere.py index b214637720..9291bc10c9 100755 --- a/plug-ins/pygimp/plug-ins/sphere.py +++ b/plug-ins/pygimp/plug-ins/sphere.py @@ -40,7 +40,7 @@ def python_sphere(radius, light, shadow, bg_colour, sphere_colour): img.add_layer(drawable, 0) gimp.set_foreground(sphere_colour) gimp.set_background(bg_colour) - pdb.gimp_edit_fill(drawable, BG_IMAGE_FILL) + pdb.gimp_edit_fill(drawable, BACKGROUND_FILL) gimp.set_background(20, 20, 20) if (light >= 45 and light <= 75 or light <= 135 and light >= 105) and shadow: @@ -51,14 +51,14 @@ def python_sphere(radius, light, shadow, bg_colour, sphere_colour): if shadow_w < 0: shadow_x = cx + shadow_w shadow_w = -shadow_w - pdb.gimp_ellipse_select(img, shadow_x, shadow_y, - shadow_w, shadow_h, REPLACE, 1, 1, 7.5) + pdb.gimp_ellipse_select(img, shadow_x, shadow_y, shadow_w, shadow_h, + CHANNEL_OP_REPLACE, TRUE, TRUE, 7.5) pdb.gimp_bucket_fill(drawable, BG_BUCKET_FILL, - MULTIPLY_MODE, 100, 0, 0, 0, 0) - pdb.gimp_ellipse_select(img, cx - radius, cy - radius, - 2 * radius, 2 * radius, REPLACE, 1, 0, 0) - pdb.gimp_blend(drawable, FG_BG_RGB, NORMAL_MODE, RADIAL, - 100, offset, REPEAT_NONE, 0, 0, 0, light_x, + MULTIPLY_MODE, 100, 0, FALSE, 0, 0) + pdb.gimp_ellipse_select(img, cx - radius, cy - radius, 2 * radius, + 2 * radius, CHANNEL_OP_REPLACE, TRUE, FALSE, 0) + pdb.gimp_blend(drawable, FG_BG_RGB_MODE, NORMAL_MODE, RADIAL, + 100, offset, REPEAT_NONE, FALSE, 0, 0, light_x, light_y, light_end_x, light_end_y) pdb.gimp_selection_none(img) gimp.set_background(old_bg)