Commit ace7acd3 authored by Sven Neumann's avatar Sven Neumann Committed by Sven Neumann

app/base/base-enums.h app/paint-funcs/paint-funcs-generic.h

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

	* app/base/base-enums.h
	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c
	* app/widgets/gimpwidgets-constructors.c: applied a patch from
	Guillermo S. Romero that adds three new layer modes (Softlight,
	Grain Extract and Grain Merge, #97686).

	* app/base/base-enums.c
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/misc_tools_cmds.c
	* app/widgets/gimpwidgets-constructors.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.
parent 08750ff1
2002-11-05 Sven Neumann <sven@gimp.org>
* app/base/base-enums.h
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.c
* app/widgets/gimpwidgets-constructors.c: applied a patch from
Guillermo S. Romero that adds three new layer modes (Softlight,
Grain Extract and Grain Merge, #97686).
* app/base/base-enums.c
* app/pdb/brush_select_cmds.c
* app/pdb/brushes_cmds.c
* app/pdb/layer_cmds.c
* app/pdb/misc_tools_cmds.c
* app/widgets/gimpwidgets-constructors.c
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
2002-11-05 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpcolorselector.[ch]: added virtual functions
......
......@@ -4,10 +4,30 @@
GIMP 1.3 is the development branch of The GIMP. Here's where the
development takes place on the road to the next stable release
development takes place on the road to the next stablerelease
dubbed GIMP 1.4.
Overview of Changes in GIMP 1.3.10
==================================
- Text tool can load text files now [Sven]
- Some unfinished work on the imagemap tools and related widgets [Sven]
- Undeprecated ink tool [Bolsh, Sven]
- Slightly tweaked the look and feel of the toolbox [Mitch, Sven]
- Ported module loading to GTypeModule [Mitch]
- Resurrected the water color selector [Mitch]
- Reworked module browser [Mitch]
- Moved generic datafile loading to LibGimpBase [Mitch]
- Added GimpColorScale widget [Mitch, Sven]
- Added GimpPickButton widget [Mitch]
- Added a color selector dock [Mitch]
- Added new layer modes (Softlight, Grain Extract, Grain Merge) [UnNamed]
- Lots of bug fixes
Other contributors:
Maurits Rijk, Michael Niedermayer, Garry R. Osgood
Overview of Changes in GIMP 1.3.9
=================================
- Some minor improvements to the text tool [Sven]
......
......@@ -49,6 +49,9 @@ static const GEnumValue gimp_layer_mode_effects_enum_values[] =
{ GIMP_DODGE_MODE, "GIMP_DODGE_MODE", "dodge-mode" },
{ GIMP_BURN_MODE, "GIMP_BURN_MODE", "burn-mode" },
{ GIMP_HARDLIGHT_MODE, "GIMP_HARDLIGHT_MODE", "hardlight-mode" },
{ GIMP_SOFTLIGHT_MODE, "GIMP_SOFTLIGHT_MODE", "softlight-mode" },
{ GIMP_GRAIN_EXTRACT_MODE, "GIMP_GRAIN_EXTRACT_MODE", "grain-extract-mode" },
{ GIMP_GRAIN_MERGE_MODE, "GIMP_GRAIN_MERGE_MODE", "grain-merge-mode" },
{ GIMP_COLOR_ERASE_MODE, "GIMP_COLOR_ERASE_MODE", "color-erase-mode" },
{ 0, NULL, NULL }
};
......
......@@ -73,10 +73,13 @@ typedef enum
GIMP_DODGE_MODE,
GIMP_BURN_MODE,
GIMP_HARDLIGHT_MODE,
GIMP_SOFTLIGHT_MODE,
GIMP_GRAIN_EXTRACT_MODE,
GIMP_GRAIN_MERGE_MODE,
GIMP_COLOR_ERASE_MODE,
GIMP_ERASE_MODE, /*< skip >*/
GIMP_REPLACE_MODE, /*< skip >*/
GIMP_ANTI_ERASE_MODE /*< skip >*/
GIMP_ERASE_MODE, /*< skip >*/
GIMP_REPLACE_MODE, /*< skip >*/
GIMP_ANTI_ERASE_MODE /*< skip >*/
} GimpLayerModeEffects;
......
......@@ -701,6 +701,7 @@ burn_pixels (const guchar *src1,
}
}
static inline void
hardlight_pixels (const guchar *src1,
const guchar *src2,
......@@ -739,6 +740,113 @@ hardlight_pixels (const guchar *src1,
}
static inline void
softlight_pixels (const guchar *src1,
const guchar *src2,
guchar *dest,
guint length,
guint bytes1,
guint bytes2)
{
const guint has_alpha1 = HAS_ALPHA (bytes1);
const guint has_alpha2 = HAS_ALPHA (bytes2);
const guint alpha = (has_alpha1 || has_alpha2) ? MAX (bytes1, bytes2) - 1 : bytes1;
guint b, tmpS, tmpM, tmp1, tmp2, tmp3;
while (length --)
{
for (b = 0; b < alpha; b++)
{
/* Mix multiply and screen */
tmpM = INT_MULT (src1[b], src2[b], tmpM);
tmpS = 255 - INT_MULT((255 - src1[b]), (255 - src2[b]), tmp1);
dest[b] = INT_MULT ((255 - src1[b]), tmpM, tmp2) +
INT_MULT (src1[b], tmpS, tmp3);
}
if (has_alpha1 && has_alpha2)
dest[alpha] = MIN (src1[alpha], src2[alpha]);
else if (has_alpha2)
dest[alpha] = src2[alpha];
src1 += bytes1;
src2 += bytes2;
dest += bytes2;
}
}
static inline void
grain_extract_pixels (const guchar *src1,
const guchar *src2,
guchar *dest,
guint length,
guint bytes1,
guint bytes2)
{
guint alpha, b;
gint diff;
const guint has_alpha1 = HAS_ALPHA (bytes1);
const guint has_alpha2 = HAS_ALPHA (bytes2);
alpha = (has_alpha1 || has_alpha2) ? MAX (bytes1, bytes2) - 1 : bytes1;
while (length --)
{
for (b = 0; b < alpha; b++)
{
diff = src1[b] - src2[b] + 128;
dest[b] = (guchar) CLAMP (diff, 0, 255);
}
if (has_alpha1 && has_alpha2)
dest[alpha] = MIN (src1[alpha], src2[alpha]);
else if (has_alpha2)
dest[alpha] = src2[alpha];
src1 += bytes1;
src2 += bytes2;
dest += bytes2;
}
}
static inline void
grain_merge_pixels (const guchar *src1,
const guchar *src2,
guchar *dest,
guint length,
guint bytes1,
guint bytes2)
{
gint alpha, b;
gint sum;
const guint has_alpha1 = HAS_ALPHA (bytes1);
const guint has_alpha2 = HAS_ALPHA (bytes2);
alpha = (has_alpha1 || has_alpha2) ? MAX (bytes1, bytes2) - 1 : bytes1;
while (length --)
{
for (b = 0; b < alpha; b++)
{
/* Add, re-center and clip. */
sum = src1[b] + src2[b] - 128;
dest[b] = (guchar) CLAMP (sum, 0, 255);
}
if (has_alpha1 && has_alpha2)
dest[alpha] = MIN (src1[alpha], src2[alpha]);
else if (has_alpha2)
dest[alpha] = src2[alpha];
src1 += bytes1;
src2 += bytes2;
dest += bytes2;
}
}
static inline void
add_pixels (const guchar *src1,
const guchar *src2,
......@@ -1668,4 +1776,26 @@ layer_hardlight_mode (struct apply_layer_mode_struct *alms)
hardlight_pixels (alms->src1, alms->src2, *(alms->dest), alms->length,
alms->bytes1, alms->bytes2);
}
static void
layer_softlight_mode (struct apply_layer_mode_struct *alms)
{
softlight_pixels (alms->src1, alms->src2, *(alms->dest), alms->length,
alms->bytes1, alms->bytes2);
}
static void
layer_grain_extract_mode (struct apply_layer_mode_struct *alms)
{
grain_extract_pixels (alms->src1, alms->src2, *(alms->dest), alms->length,
alms->bytes1, alms->bytes2);
}
static void
layer_grain_merge_mode (struct apply_layer_mode_struct *alms)
{
grain_merge_pixels (alms->src1, alms->src2, *(alms->dest), alms->length,
alms->bytes1, alms->bytes2);
}
#endif /* __PAINT_FUNCS_GENERIC_H__ */
......@@ -86,6 +86,9 @@ static const LayerMode layer_modes[] =
{ FALSE, FALSE, FALSE, }, /* GIMP_DODGE_MODE */
{ FALSE, FALSE, FALSE, }, /* GIMP_BURN_MODE */
{ FALSE, FALSE, FALSE, }, /* GIMP_HARDLIGHT_MODE */
{ FALSE, FALSE, FALSE, }, /* GIMP_SOFTLIGHT_MODE */
{ FALSE, FALSE, FALSE, }, /* GIMP_GRAIN_EXTRACT_MODE */
{ FALSE, FALSE, FALSE, }, /* GIMP_GRAIN_MERGE_MODE */
{ TRUE, FALSE, TRUE, }, /* GIMP_COLOR_ERASE_MODE */
{ TRUE, FALSE, TRUE, }, /* GIMP_ERASE_MODE */
{ TRUE, TRUE, TRUE, }, /* GIMP_REPLACE_MODE */
......@@ -114,10 +117,13 @@ static LayerModeFunc layer_mode_funcs[] =
layer_dodge_mode,
layer_burn_mode,
layer_hardlight_mode,
layer_softlight_mode,
layer_grain_extract_mode,
layer_grain_merge_mode,
layer_color_erase_mode,
layer_erase_mode,
layer_replace_mode,
layer_anti_erase_mode,
layer_anti_erase_mode
};
/* Local function prototypes */
......
......@@ -145,7 +145,7 @@ static ProcArg brushes_popup_inargs[] =
{
GIMP_PDB_INT32,
"paint_mode",
"The initial paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_COLOR_ERASE_MODE (19) }"
"The initial paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_SOFTLIGHT_MODE (19), GIMP_GRAIN_EXTRACT_MODE (20), GIMP_GRAIN_MERGE_MODE (21), GIMP_COLOR_ERASE_MODE (22) }"
}
};
......@@ -312,7 +312,7 @@ static ProcArg brushes_set_popup_inargs[] =
{
GIMP_PDB_INT32,
"paint_mode",
"The initial paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_COLOR_ERASE_MODE (19) }"
"The initial paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_SOFTLIGHT_MODE (19), GIMP_GRAIN_EXTRACT_MODE (20), GIMP_GRAIN_MERGE_MODE (21), GIMP_COLOR_ERASE_MODE (22) }"
}
};
......
......@@ -450,7 +450,7 @@ static ProcArg brushes_get_paint_mode_outargs[] =
{
GIMP_PDB_INT32,
"paint_mode",
"The paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_COLOR_ERASE_MODE (19) }"
"The paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_SOFTLIGHT_MODE (19), GIMP_GRAIN_EXTRACT_MODE (20), GIMP_GRAIN_MERGE_MODE (21), GIMP_COLOR_ERASE_MODE (22) }"
}
};
......@@ -492,7 +492,7 @@ static ProcArg brushes_set_paint_mode_inargs[] =
{
GIMP_PDB_INT32,
"paint_mode",
"The paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_COLOR_ERASE_MODE (19) }"
"The paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_SOFTLIGHT_MODE (19), GIMP_GRAIN_EXTRACT_MODE (20), GIMP_GRAIN_MERGE_MODE (21), GIMP_COLOR_ERASE_MODE (22) }"
}
};
......@@ -595,7 +595,7 @@ static ProcArg brushes_get_brush_data_outargs[] =
{
GIMP_PDB_INT32,
"paint_mode",
"The paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_COLOR_ERASE_MODE (19) }"
"The paint mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_SOFTLIGHT_MODE (19), GIMP_GRAIN_EXTRACT_MODE (20), GIMP_GRAIN_MERGE_MODE (21), GIMP_COLOR_ERASE_MODE (22) }"
},
{
GIMP_PDB_INT32,
......
......@@ -202,7 +202,7 @@ static ProcArg layer_new_inargs[] =
{
GIMP_PDB_INT32,
"mode",
"The layer combination mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_COLOR_ERASE_MODE (19) }"
"The layer combination mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_SOFTLIGHT_MODE (19), GIMP_GRAIN_EXTRACT_MODE (20), GIMP_GRAIN_MERGE_MODE (21), GIMP_COLOR_ERASE_MODE (22) }"
}
};
......
......@@ -156,7 +156,7 @@ static ProcArg blend_inargs[] =
{
GIMP_PDB_INT32,
"paint_mode",
"The paint application mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_COLOR_ERASE_MODE (19) }"
"The paint application mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_SOFTLIGHT_MODE (19), GIMP_GRAIN_EXTRACT_MODE (20), GIMP_GRAIN_MERGE_MODE (21), GIMP_COLOR_ERASE_MODE (22) }"
},
{
GIMP_PDB_INT32,
......@@ -304,7 +304,7 @@ static ProcArg bucket_fill_inargs[] =
{
GIMP_PDB_INT32,
"paint_mode",
"The paint application mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_COLOR_ERASE_MODE (19) }"
"The paint application mode: { GIMP_NORMAL_MODE (0), GIMP_DISSOLVE_MODE (1), GIMP_BEHIND_MODE (2), GIMP_MULTIPLY_MODE (3), GIMP_SCREEN_MODE (4), GIMP_OVERLAY_MODE (5), GIMP_DIFFERENCE_MODE (6), GIMP_ADDITION_MODE (7), GIMP_SUBTRACT_MODE (8), GIMP_DARKEN_ONLY_MODE (9), GIMP_LIGHTEN_ONLY_MODE (10), GIMP_HUE_MODE (11), GIMP_SATURATION_MODE (12), GIMP_COLOR_MODE (13), GIMP_VALUE_MODE (14), GIMP_DIVIDE_MODE (15), GIMP_DODGE_MODE (16), GIMP_BURN_MODE (17), GIMP_HARDLIGHT_MODE (18), GIMP_SOFTLIGHT_MODE (19), GIMP_GRAIN_EXTRACT_MODE (20), GIMP_GRAIN_MERGE_MODE (21), GIMP_COLOR_ERASE_MODE (22) }"
},
{
GIMP_PDB_FLOAT,
......
......@@ -42,30 +42,33 @@ gimp_paint_mode_menu_new (GtkSignalFunc callback,
menu = gimp_option_menu_new2
(FALSE, callback, data, (gpointer) initial,
_("Normal"), (gpointer) GIMP_NORMAL_MODE, NULL,
_("Dissolve"), (gpointer) GIMP_DISSOLVE_MODE, NULL,
_("Behind"), (gpointer) GIMP_BEHIND_MODE, NULL,
_("Color Erase"), (gpointer) GIMP_COLOR_ERASE_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Multiply"), (gpointer) GIMP_MULTIPLY_MODE, NULL,
_("Divide"), (gpointer) GIMP_DIVIDE_MODE, NULL,
_("Screen"), (gpointer) GIMP_SCREEN_MODE, NULL,
_("Overlay"), (gpointer) GIMP_OVERLAY_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Dodge"), (gpointer) GIMP_DODGE_MODE, NULL,
_("Burn"), (gpointer) GIMP_BURN_MODE, NULL,
_("Hard Light"), (gpointer) GIMP_HARDLIGHT_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Difference"), (gpointer) GIMP_DIFFERENCE_MODE, NULL,
_("Addition"), (gpointer) GIMP_ADDITION_MODE, NULL,
_("Subtract"), (gpointer) GIMP_SUBTRACT_MODE, NULL,
_("Darken Only"), (gpointer) GIMP_DARKEN_ONLY_MODE, NULL,
_("Lighten Only"), (gpointer) GIMP_LIGHTEN_ONLY_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Hue"), (gpointer) GIMP_HUE_MODE, NULL,
_("Saturation"), (gpointer) GIMP_SATURATION_MODE, NULL,
_("Color"), (gpointer) GIMP_COLOR_MODE, NULL,
_("Value"), (gpointer) GIMP_VALUE_MODE, NULL,
_("Normal"), (gpointer) GIMP_NORMAL_MODE, NULL,
_("Dissolve"), (gpointer) GIMP_DISSOLVE_MODE, NULL,
_("Behind"), (gpointer) GIMP_BEHIND_MODE, NULL,
_("Color Erase"), (gpointer) GIMP_COLOR_ERASE_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Multiply"), (gpointer) GIMP_MULTIPLY_MODE, NULL,
_("Divide"), (gpointer) GIMP_DIVIDE_MODE, NULL,
_("Screen"), (gpointer) GIMP_SCREEN_MODE, NULL,
_("Overlay"), (gpointer) GIMP_OVERLAY_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Dodge"), (gpointer) GIMP_DODGE_MODE, NULL,
_("Burn"), (gpointer) GIMP_BURN_MODE, NULL,
_("Hard Light"), (gpointer) GIMP_HARDLIGHT_MODE, NULL,
_("Soft Light"), (gpointer) GIMP_SOFTLIGHT_MODE, NULL,
_("Grain Extract"), (gpointer) GIMP_GRAIN_EXTRACT_MODE, NULL,
_("Grain Merge"), (gpointer) GIMP_GRAIN_MERGE_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Difference"), (gpointer) GIMP_DIFFERENCE_MODE, NULL,
_("Addition"), (gpointer) GIMP_ADDITION_MODE, NULL,
_("Subtract"), (gpointer) GIMP_SUBTRACT_MODE, NULL,
_("Darken Only"), (gpointer) GIMP_DARKEN_ONLY_MODE, NULL,
_("Lighten Only"), (gpointer) GIMP_LIGHTEN_ONLY_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Hue"), (gpointer) GIMP_HUE_MODE, NULL,
_("Saturation"), (gpointer) GIMP_SATURATION_MODE, NULL,
_("Color"), (gpointer) GIMP_COLOR_MODE, NULL,
_("Value"), (gpointer) GIMP_VALUE_MODE, NULL,
NULL);
}
......@@ -74,28 +77,31 @@ gimp_paint_mode_menu_new (GtkSignalFunc callback,
menu = gimp_option_menu_new2
(FALSE, callback, data, (gpointer) initial,
_("Normal"), (gpointer) GIMP_NORMAL_MODE, NULL,
_("Dissolve"), (gpointer) GIMP_DISSOLVE_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Multiply"), (gpointer) GIMP_MULTIPLY_MODE, NULL,
_("Divide"), (gpointer) GIMP_DIVIDE_MODE, NULL,
_("Screen"), (gpointer) GIMP_SCREEN_MODE, NULL,
_("Overlay"), (gpointer) GIMP_OVERLAY_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Dodge"), (gpointer) GIMP_DODGE_MODE, NULL,
_("Burn"), (gpointer) GIMP_BURN_MODE, NULL,
_("Hard Light"), (gpointer) GIMP_HARDLIGHT_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Difference"), (gpointer) GIMP_DIFFERENCE_MODE, NULL,
_("Addition"), (gpointer) GIMP_ADDITION_MODE, NULL,
_("Subtract"), (gpointer) GIMP_SUBTRACT_MODE, NULL,
_("Darken Only"), (gpointer) GIMP_DARKEN_ONLY_MODE, NULL,
_("Lighten Only"), (gpointer) GIMP_LIGHTEN_ONLY_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Hue"), (gpointer) GIMP_HUE_MODE, NULL,
_("Saturation"), (gpointer) GIMP_SATURATION_MODE, NULL,
_("Color"), (gpointer) GIMP_COLOR_MODE, NULL,
_("Value"), (gpointer) GIMP_VALUE_MODE, NULL,
_("Normal"), (gpointer) GIMP_NORMAL_MODE, NULL,
_("Dissolve"), (gpointer) GIMP_DISSOLVE_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Multiply"), (gpointer) GIMP_MULTIPLY_MODE, NULL,
_("Divide"), (gpointer) GIMP_DIVIDE_MODE, NULL,
_("Screen"), (gpointer) GIMP_SCREEN_MODE, NULL,
_("Overlay"), (gpointer) GIMP_OVERLAY_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Dodge"), (gpointer) GIMP_DODGE_MODE, NULL,
_("Burn"), (gpointer) GIMP_BURN_MODE, NULL,
_("Hard Light"), (gpointer) GIMP_HARDLIGHT_MODE, NULL,
_("Soft Light"), (gpointer) GIMP_SOFTLIGHT_MODE, NULL,
_("Grain Extract"), (gpointer) GIMP_GRAIN_EXTRACT_MODE, NULL,
_("Grain Merge"), (gpointer) GIMP_GRAIN_MERGE_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Difference"), (gpointer) GIMP_DIFFERENCE_MODE, NULL,
_("Addition"), (gpointer) GIMP_ADDITION_MODE, NULL,
_("Subtract"), (gpointer) GIMP_SUBTRACT_MODE, NULL,
_("Darken Only"), (gpointer) GIMP_DARKEN_ONLY_MODE, NULL,
_("Lighten Only"), (gpointer) GIMP_LIGHTEN_ONLY_MODE, NULL,
"---", (gpointer) NULL, NULL,
_("Hue"), (gpointer) GIMP_HUE_MODE, NULL,
_("Saturation"), (gpointer) GIMP_SATURATION_MODE, NULL,
_("Color"), (gpointer) GIMP_COLOR_MODE, NULL,
_("Value"), (gpointer) GIMP_VALUE_MODE, NULL,
NULL);
}
......
......@@ -246,6 +246,9 @@ Enums and definitions.
@GIMP_DODGE_MODE:
@GIMP_BURN_MODE:
@GIMP_HARDLIGHT_MODE:
@GIMP_SOFTLIGHT_MODE:
@GIMP_GRAIN_EXTRACT_MODE:
@GIMP_GRAIN_MERGE_MODE:
@GIMP_COLOR_ERASE_MODE:
<!-- ##### ENUM GimpMaskApplyMode ##### -->
......
......@@ -206,6 +206,9 @@ typedef enum
GIMP_DODGE_MODE,
GIMP_BURN_MODE,
GIMP_HARDLIGHT_MODE,
GIMP_SOFTLIGHT_MODE,
GIMP_GRAIN_EXTRACT_MODE,
GIMP_GRAIN_MERGE_MODE,
GIMP_COLOR_ERASE_MODE
} GimpLayerModeEffects;
......
......@@ -146,7 +146,10 @@ init_generated_constants (void)
setvar (cintern ("DODGE-MODE"), flocons (16), NIL);
setvar (cintern ("BURN-MODE"), flocons (17), NIL);
setvar (cintern ("HARDLIGHT-MODE"), flocons (18), NIL);
setvar (cintern ("COLOR-ERASE-MODE"), flocons (19), NIL);
setvar (cintern ("SOFTLIGHT-MODE"), flocons (19), NIL);
setvar (cintern ("GRAIN-EXTRACT-MODE"), flocons (20), NIL);
setvar (cintern ("GRAIN-MERGE-MODE"), flocons (21), NIL);
setvar (cintern ("COLOR-ERASE-MODE"), flocons (22), NIL);
setvar (cintern ("MASK-APPLY"), flocons (0), NIL);
setvar (cintern ("MASK-DISCARD"), flocons (1), NIL);
......
......@@ -119,7 +119,8 @@ package Gimp::CodeGen::enums;
GIMP_SATURATION_MODE GIMP_COLOR_MODE
GIMP_VALUE_MODE GIMP_DIVIDE_MODE GIMP_DODGE_MODE
GIMP_BURN_MODE GIMP_HARDLIGHT_MODE
GIMP_COLOR_ERASE_MODE) ],
GIMP_SOFTLIGHT_MODE GIMP_GRAIN_EXTRACT_MODE
GIMP_GRAIN_MERGE_MODE GIMP_COLOR_ERASE_MODE) ],
mapping => { GIMP_NORMAL_MODE => '0',
GIMP_DISSOLVE_MODE => '1',
GIMP_BEHIND_MODE => '2',
......@@ -139,7 +140,10 @@ package Gimp::CodeGen::enums;
GIMP_DODGE_MODE => '16',
GIMP_BURN_MODE => '17',
GIMP_HARDLIGHT_MODE => '18',
GIMP_COLOR_ERASE_MODE => '19' }
GIMP_SOFTLIGHT_MODE => '19',
GIMP_GRAIN_EXTRACT_MODE => '20',
GIMP_GRAIN_MERGE_MODE => '21',
GIMP_COLOR_ERASE_MODE => '22' }
},
GimpTransferMode =>
{ contig => 1,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment