mirror of https://github.com/GNOME/gimp.git
app: Clearly present Fade and Color dynamics options as such
This commit is contained in:
parent
d46b53f63d
commit
904048cdcb
|
@ -460,15 +460,11 @@ gimp_dynamics_output_get_linear_value (GimpDynamicsOutput *output,
|
|||
factors++;
|
||||
}
|
||||
|
||||
if ((output->use_fade) && (options))
|
||||
if (output->use_fade)
|
||||
{
|
||||
GimpFadeOptions *fade_options = options->fade_options;
|
||||
total += gimp_curve_map_value (output->fade_curve, fade_point);
|
||||
|
||||
if (fade_options->use_fade)
|
||||
{
|
||||
total += gimp_curve_map_value (output->fade_curve, fade_point);
|
||||
factors++;
|
||||
}
|
||||
factors++;
|
||||
}
|
||||
|
||||
if (factors > 0)
|
||||
|
@ -565,15 +561,11 @@ gimp_dynamics_output_get_angular_value (GimpDynamicsOutput *output,
|
|||
factors++;
|
||||
}
|
||||
|
||||
if ((output->use_fade) && (options))
|
||||
if (output->use_fade)
|
||||
{
|
||||
GimpFadeOptions *fade_options = options->fade_options;
|
||||
total += gimp_curve_map_value (output->fade_curve, fade_point);
|
||||
|
||||
if (fade_options->use_fade)
|
||||
{
|
||||
total += gimp_curve_map_value (output->fade_curve, fade_point);
|
||||
factors++;
|
||||
}
|
||||
factors++;
|
||||
}
|
||||
|
||||
if (factors > 0)
|
||||
|
@ -659,15 +651,11 @@ gimp_dynamics_output_get_aspect_value (GimpDynamicsOutput *output,
|
|||
factors++;
|
||||
}
|
||||
|
||||
if ((output->use_fade) && (options))
|
||||
if (output->use_fade)
|
||||
{
|
||||
GimpFadeOptions *fade_options = options->fade_options;
|
||||
total += gimp_curve_map_value (output->fade_curve, fade_point);
|
||||
|
||||
if (fade_options->use_fade)
|
||||
{
|
||||
total += gimp_curve_map_value (output->fade_curve, fade_point);
|
||||
factors++;
|
||||
}
|
||||
factors++;
|
||||
}
|
||||
|
||||
if (factors > 0)
|
||||
|
|
|
@ -44,16 +44,17 @@
|
|||
#define DEFAULT_APPLICATION_MODE GIMP_PAINT_CONSTANT
|
||||
#define DEFAULT_HARD FALSE
|
||||
|
||||
#define DEFAULT_USE_FADE FALSE
|
||||
|
||||
#define DEFAULT_USE_JITTER FALSE
|
||||
#define DEFAULT_JITTER_AMOUNT 0.2
|
||||
|
||||
#define DEFAULT_DYNAMICS_EXPANDED FALSE
|
||||
|
||||
#define DEFAULT_FADE_LENGTH 100.0
|
||||
#define DEFAULT_FADE_REVERSE FALSE
|
||||
#define DEFAULT_FADE_REPEAT GIMP_REPEAT_NONE
|
||||
#define DEFAULT_FADE_UNIT GIMP_UNIT_PIXEL
|
||||
|
||||
#define DEFAULT_USE_JITTER FALSE
|
||||
#define DEFAULT_JITTER_AMOUNT 0.2
|
||||
|
||||
#define DEFAULT_USE_GRADIENT FALSE
|
||||
#define DEFAULT_GRADIENT_REVERSE FALSE
|
||||
#define DEFAULT_GRADIENT_REPEAT GIMP_REPEAT_TRIANGULAR
|
||||
#define DEFAULT_GRADIENT_LENGTH 100.0
|
||||
|
@ -75,16 +76,16 @@ enum
|
|||
PROP_APPLICATION_MODE,
|
||||
PROP_HARD,
|
||||
|
||||
PROP_USE_FADE,
|
||||
PROP_USE_JITTER,
|
||||
PROP_JITTER_AMOUNT,
|
||||
|
||||
PROP_DYNAMICS_EXPANDED,
|
||||
|
||||
PROP_FADE_LENGTH,
|
||||
PROP_FADE_REVERSE,
|
||||
PROP_FADE_REPEAT,
|
||||
PROP_FADE_UNIT,
|
||||
|
||||
PROP_USE_JITTER,
|
||||
PROP_JITTER_AMOUNT,
|
||||
|
||||
PROP_USE_GRADIENT,
|
||||
PROP_GRADIENT_REVERSE,
|
||||
|
||||
PROP_BRUSH_VIEW_TYPE,
|
||||
|
@ -108,8 +109,6 @@ static void gimp_paint_options_get_property (GObject *object,
|
|||
guint property_id,
|
||||
GValue *value,
|
||||
GParamSpec *pspec);
|
||||
static void gimp_paint_options_notify (GObject *object,
|
||||
GParamSpec *pspec);
|
||||
|
||||
|
||||
|
||||
|
@ -127,7 +126,6 @@ gimp_paint_options_class_init (GimpPaintOptionsClass *klass)
|
|||
object_class->finalize = gimp_paint_options_finalize;
|
||||
object_class->set_property = gimp_paint_options_set_property;
|
||||
object_class->get_property = gimp_paint_options_get_property;
|
||||
object_class->notify = gimp_paint_options_notify;
|
||||
|
||||
g_object_class_install_property (object_class, PROP_PAINT_INFO,
|
||||
g_param_spec_object ("paint-info",
|
||||
|
@ -155,15 +153,27 @@ gimp_paint_options_class_init (GimpPaintOptionsClass *klass)
|
|||
GIMP_TYPE_PAINT_APPLICATION_MODE,
|
||||
DEFAULT_APPLICATION_MODE,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
|
||||
GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_HARD,
|
||||
"hard", NULL,
|
||||
DEFAULT_HARD,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
|
||||
GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_USE_FADE,
|
||||
"use-fade", NULL,
|
||||
DEFAULT_USE_FADE,
|
||||
GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_USE_JITTER,
|
||||
"use-jitter", NULL,
|
||||
DEFAULT_USE_JITTER,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
GIMP_CONFIG_INSTALL_PROP_DOUBLE (object_class, PROP_JITTER_AMOUNT,
|
||||
"jitter-amount", NULL,
|
||||
0.0, 50.0, DEFAULT_JITTER_AMOUNT,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
|
||||
|
||||
GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_DYNAMICS_EXPANDED,
|
||||
"dynamics-expanded", NULL,
|
||||
DEFAULT_DYNAMICS_EXPANDED,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
|
||||
GIMP_CONFIG_INSTALL_PROP_DOUBLE (object_class, PROP_FADE_LENGTH,
|
||||
"fade-length", NULL,
|
||||
0.0, 32767.0, DEFAULT_FADE_LENGTH,
|
||||
|
@ -182,18 +192,6 @@ gimp_paint_options_class_init (GimpPaintOptionsClass *klass)
|
|||
DEFAULT_FADE_REPEAT,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
|
||||
GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_USE_JITTER,
|
||||
"use-jitter", NULL,
|
||||
DEFAULT_USE_JITTER,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
GIMP_CONFIG_INSTALL_PROP_DOUBLE (object_class, PROP_JITTER_AMOUNT,
|
||||
"jitter-amount", NULL,
|
||||
0.0, 50.0, DEFAULT_JITTER_AMOUNT,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_USE_GRADIENT,
|
||||
"use-gradient", NULL,
|
||||
DEFAULT_USE_GRADIENT,
|
||||
GIMP_PARAM_STATIC_STRINGS);
|
||||
GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_GRADIENT_REVERSE,
|
||||
"gradient-reverse", NULL,
|
||||
DEFAULT_GRADIENT_REVERSE,
|
||||
|
@ -321,8 +319,16 @@ gimp_paint_options_set_property (GObject *object,
|
|||
options->hard = g_value_get_boolean (value);
|
||||
break;
|
||||
|
||||
case PROP_USE_FADE:
|
||||
fade_options->use_fade = g_value_get_boolean (value);
|
||||
case PROP_USE_JITTER:
|
||||
jitter_options->use_jitter = g_value_get_boolean (value);
|
||||
break;
|
||||
|
||||
case PROP_JITTER_AMOUNT:
|
||||
jitter_options->jitter_amount = g_value_get_double (value);
|
||||
break;
|
||||
|
||||
case PROP_DYNAMICS_EXPANDED:
|
||||
options->dynamics_expanded = g_value_get_boolean (value);
|
||||
break;
|
||||
|
||||
case PROP_FADE_LENGTH:
|
||||
|
@ -341,18 +347,6 @@ gimp_paint_options_set_property (GObject *object,
|
|||
fade_options->fade_unit = g_value_get_int (value);
|
||||
break;
|
||||
|
||||
case PROP_USE_JITTER:
|
||||
jitter_options->use_jitter = g_value_get_boolean (value);
|
||||
break;
|
||||
|
||||
case PROP_JITTER_AMOUNT:
|
||||
jitter_options->jitter_amount = g_value_get_double (value);
|
||||
break;
|
||||
|
||||
case PROP_USE_GRADIENT:
|
||||
gradient_options->use_gradient = g_value_get_boolean (value);
|
||||
break;
|
||||
|
||||
case PROP_GRADIENT_REVERSE:
|
||||
gradient_options->gradient_reverse = g_value_get_boolean (value);
|
||||
break;
|
||||
|
@ -432,8 +426,16 @@ gimp_paint_options_get_property (GObject *object,
|
|||
g_value_set_boolean (value, options->hard);
|
||||
break;
|
||||
|
||||
case PROP_USE_FADE:
|
||||
g_value_set_boolean (value, fade_options->use_fade);
|
||||
case PROP_USE_JITTER:
|
||||
g_value_set_boolean (value, jitter_options->use_jitter);
|
||||
break;
|
||||
|
||||
case PROP_JITTER_AMOUNT:
|
||||
g_value_set_double (value, jitter_options->jitter_amount);
|
||||
break;
|
||||
|
||||
case PROP_DYNAMICS_EXPANDED:
|
||||
g_value_set_boolean (value, options->dynamics_expanded);
|
||||
break;
|
||||
|
||||
case PROP_FADE_LENGTH:
|
||||
|
@ -452,18 +454,6 @@ gimp_paint_options_get_property (GObject *object,
|
|||
g_value_set_int (value, fade_options->fade_unit);
|
||||
break;
|
||||
|
||||
case PROP_USE_JITTER:
|
||||
g_value_set_boolean (value, jitter_options->use_jitter);
|
||||
break;
|
||||
|
||||
case PROP_JITTER_AMOUNT:
|
||||
g_value_set_double (value, jitter_options->jitter_amount);
|
||||
break;
|
||||
|
||||
case PROP_USE_GRADIENT:
|
||||
g_value_set_boolean (value, gradient_options->use_gradient);
|
||||
break;
|
||||
|
||||
case PROP_GRADIENT_REVERSE:
|
||||
g_value_set_boolean (value, gradient_options->gradient_reverse);
|
||||
break;
|
||||
|
@ -506,30 +496,6 @@ gimp_paint_options_get_property (GObject *object,
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
gimp_paint_options_notify (GObject *object,
|
||||
GParamSpec *pspec)
|
||||
{
|
||||
GimpPaintOptions *options = GIMP_PAINT_OPTIONS (object);
|
||||
|
||||
if (pspec->param_id == PROP_USE_GRADIENT)
|
||||
{
|
||||
if (options->gradient_options->use_gradient)
|
||||
{
|
||||
options->application_mode_save = options->application_mode;
|
||||
options->application_mode = GIMP_PAINT_INCREMENTAL;
|
||||
}
|
||||
else
|
||||
{
|
||||
options->application_mode = options->application_mode_save;
|
||||
}
|
||||
|
||||
g_object_notify (object, "application-mode");
|
||||
}
|
||||
|
||||
if (G_OBJECT_CLASS (parent_class)->notify)
|
||||
G_OBJECT_CLASS (parent_class)->notify (object, pspec);
|
||||
}
|
||||
|
||||
GimpPaintOptions *
|
||||
gimp_paint_options_new (GimpPaintInfo *paint_info)
|
||||
|
@ -553,7 +519,10 @@ gimp_paint_options_get_fade (GimpPaintOptions *paint_options,
|
|||
gdouble pixel_dist)
|
||||
{
|
||||
GimpFadeOptions *fade_options;
|
||||
gdouble z = -1.0;
|
||||
gdouble z = -1.0;
|
||||
gdouble fade_out = 0.0;
|
||||
gdouble unit_factor;
|
||||
gdouble pos;
|
||||
|
||||
|
||||
g_return_val_if_fail (GIMP_IS_PAINT_OPTIONS (paint_options),
|
||||
|
@ -562,66 +531,57 @@ gimp_paint_options_get_fade (GimpPaintOptions *paint_options,
|
|||
|
||||
fade_options = paint_options->fade_options;
|
||||
|
||||
if (fade_options->use_fade)
|
||||
switch (fade_options->fade_unit)
|
||||
{
|
||||
gdouble fade_out = 0.0;
|
||||
gdouble unit_factor;
|
||||
gdouble pos;
|
||||
case GIMP_UNIT_PIXEL:
|
||||
fade_out = fade_options->fade_length;
|
||||
break;
|
||||
|
||||
case GIMP_UNIT_PERCENT:
|
||||
fade_out = (MAX (gimp_image_get_width (image),
|
||||
gimp_image_get_height (image)) *
|
||||
fade_options->fade_length / 100);
|
||||
break;
|
||||
|
||||
switch (fade_options->fade_unit)
|
||||
{
|
||||
case GIMP_UNIT_PIXEL:
|
||||
fade_out = fade_options->fade_length;
|
||||
break;
|
||||
default:
|
||||
{
|
||||
gdouble xres;
|
||||
gdouble yres;
|
||||
|
||||
case GIMP_UNIT_PERCENT:
|
||||
fade_out = (MAX (gimp_image_get_width (image),
|
||||
gimp_image_get_height (image)) *
|
||||
fade_options->fade_length / 100);
|
||||
break;
|
||||
gimp_image_get_resolution (image, &xres, &yres);
|
||||
|
||||
default:
|
||||
{
|
||||
gdouble xres;
|
||||
gdouble yres;
|
||||
|
||||
gimp_image_get_resolution (image, &xres, &yres);
|
||||
|
||||
unit_factor = gimp_unit_get_factor (fade_options->fade_unit);
|
||||
fade_out = (fade_options->fade_length *
|
||||
MAX (xres, yres) / unit_factor);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
/* factor in the fade out value */
|
||||
if (fade_out > 0.0)
|
||||
{
|
||||
pos = pixel_dist / fade_out;
|
||||
}
|
||||
else
|
||||
pos = DYNAMIC_MAX_VALUE;
|
||||
|
||||
/* for no repeat, set pos close to 1.0 after the first chunk */
|
||||
if (fade_options->fade_repeat == GIMP_REPEAT_NONE && pos >= DYNAMIC_MAX_VALUE)
|
||||
pos = DYNAMIC_MAX_VALUE - 0.0000001;
|
||||
|
||||
if (((gint) pos & 1) &&
|
||||
fade_options->fade_repeat != GIMP_REPEAT_SAWTOOTH)
|
||||
pos = DYNAMIC_MAX_VALUE - (pos - (gint) pos);
|
||||
else
|
||||
pos = pos - (gint) pos;
|
||||
|
||||
z = pos;
|
||||
|
||||
if (fade_options->fade_reverse)
|
||||
z = 1.0 - z;
|
||||
|
||||
return z; /* ln (1/255) */
|
||||
unit_factor = gimp_unit_get_factor (fade_options->fade_unit);
|
||||
fade_out = (fade_options->fade_length *
|
||||
MAX (xres, yres) / unit_factor);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
return DYNAMIC_MIN_VALUE;
|
||||
/* factor in the fade out value */
|
||||
if (fade_out > 0.0)
|
||||
{
|
||||
pos = pixel_dist / fade_out;
|
||||
}
|
||||
else
|
||||
pos = DYNAMIC_MAX_VALUE;
|
||||
|
||||
/* for no repeat, set pos close to 1.0 after the first chunk */
|
||||
if (fade_options->fade_repeat == GIMP_REPEAT_NONE && pos >= DYNAMIC_MAX_VALUE)
|
||||
pos = DYNAMIC_MAX_VALUE - 0.0000001;
|
||||
|
||||
if (((gint) pos & 1) &&
|
||||
fade_options->fade_repeat != GIMP_REPEAT_SAWTOOTH)
|
||||
pos = DYNAMIC_MAX_VALUE - (pos - (gint) pos);
|
||||
else
|
||||
pos = pos - (gint) pos;
|
||||
|
||||
z = pos;
|
||||
|
||||
if (fade_options->fade_reverse)
|
||||
z = 1.0 - z;
|
||||
|
||||
return z; /* ln (1/255) */
|
||||
|
||||
}
|
||||
|
||||
gdouble
|
||||
|
@ -663,7 +623,7 @@ gimp_paint_options_get_gradient_color (GimpPaintOptions *paint_options,
|
|||
|
||||
dynamics = gimp_context_get_dynamics (GIMP_CONTEXT (paint_options));
|
||||
|
||||
if (gimp_dynamics_output_is_enabled(dynamics->color_output) && gradient_options->use_gradient)
|
||||
if (gimp_dynamics_output_is_enabled (dynamics->color_output))
|
||||
{
|
||||
gimp_gradient_get_color_at (gradient, GIMP_CONTEXT (paint_options),
|
||||
NULL, grad_point,
|
||||
|
|
|
@ -37,7 +37,6 @@ typedef struct _GimpGradientOptions GimpGradientOptions;
|
|||
|
||||
struct _GimpFadeOptions
|
||||
{
|
||||
gboolean use_fade;
|
||||
gboolean fade_reverse;
|
||||
gdouble fade_length;
|
||||
GimpUnit fade_unit;
|
||||
|
@ -52,7 +51,6 @@ struct _GimpJitterOptions
|
|||
|
||||
struct _GimpGradientOptions
|
||||
{
|
||||
gboolean use_gradient;
|
||||
gboolean gradient_reverse;
|
||||
GimpRepeatMode gradient_repeat;
|
||||
};
|
||||
|
@ -83,6 +81,8 @@ struct _GimpPaintOptions
|
|||
|
||||
gboolean hard;
|
||||
|
||||
gboolean dynamics_expanded;
|
||||
|
||||
GimpFadeOptions *fade_options;
|
||||
GimpJitterOptions *jitter_options;
|
||||
GimpGradientOptions *gradient_options;
|
||||
|
|
|
@ -53,11 +53,9 @@
|
|||
|
||||
|
||||
|
||||
static GtkWidget * fade_options_gui (GimpPaintOptions *paint_options,
|
||||
static GtkWidget * dynamics_options_gui (GimpPaintOptions *paint_options,
|
||||
GType tool_type);
|
||||
static GtkWidget * gradient_options_gui (GimpPaintOptions *paint_options,
|
||||
GType tool_type,
|
||||
GtkWidget *incremental_toggle);
|
||||
|
||||
static GtkWidget * jitter_options_gui (GimpPaintOptions *paint_options,
|
||||
GType tool_type);
|
||||
|
||||
|
@ -122,13 +120,6 @@ gimp_paint_options_gui (GimpToolOptions *tool_options)
|
|||
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
|
||||
gtk_widget_show (button);
|
||||
|
||||
button = gimp_prop_dynamics_box_new (NULL, GIMP_CONTEXT (tool_options),
|
||||
_("Dynamics"), 2,
|
||||
"dynamics-view-type",
|
||||
"dynamics-view-size");
|
||||
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
|
||||
gtk_widget_show (button);
|
||||
|
||||
hbox = gtk_hbox_new (FALSE, 2);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
|
@ -164,11 +155,15 @@ gimp_paint_options_gui (GimpToolOptions *tool_options)
|
|||
1.0, 5.0, 2);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), scale, FALSE, FALSE, 0);
|
||||
gtk_widget_show (scale);
|
||||
}
|
||||
|
||||
if (g_type_is_a (tool_type, GIMP_TYPE_BRUSH_TOOL))
|
||||
{
|
||||
frame = fade_options_gui (options, tool_type);
|
||||
button = gimp_prop_dynamics_box_new (NULL, GIMP_CONTEXT (tool_options),
|
||||
_("Dynamics"), 2,
|
||||
"dynamics-view-type",
|
||||
"dynamics-view-size");
|
||||
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
|
||||
gtk_widget_show (button);
|
||||
|
||||
frame = dynamics_options_gui (options, tool_type);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
|
@ -206,12 +201,7 @@ gimp_paint_options_gui (GimpToolOptions *tool_options)
|
|||
gtk_widget_show (button);
|
||||
}
|
||||
|
||||
if (g_type_is_a (tool_type, GIMP_TYPE_PAINTBRUSH_TOOL))
|
||||
{
|
||||
frame = gradient_options_gui (options, tool_type, incremental_toggle);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0);
|
||||
gtk_widget_show (frame);
|
||||
}
|
||||
|
||||
|
||||
return vbox;
|
||||
}
|
||||
|
@ -220,35 +210,49 @@ gimp_paint_options_gui (GimpToolOptions *tool_options)
|
|||
/* private functions */
|
||||
|
||||
static GtkWidget *
|
||||
fade_options_gui (GimpPaintOptions *paint_options,
|
||||
GType tool_type)
|
||||
dynamics_options_gui (GimpPaintOptions *paint_options,
|
||||
GType tool_type)
|
||||
{
|
||||
GObject *config = G_OBJECT (paint_options);
|
||||
GtkWidget *frame;
|
||||
GtkWidget *table;
|
||||
GtkWidget *inner_frame;
|
||||
GtkWidget *fade_table;
|
||||
GtkWidget *gradient_table;
|
||||
GtkWidget *scale;
|
||||
GtkWidget *menu;
|
||||
GtkWidget *combo;
|
||||
GtkWidget *checkbox;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *box;
|
||||
|
||||
table = gtk_table_new (3, 3, FALSE);
|
||||
gtk_table_set_col_spacings (GTK_TABLE (table), 2);
|
||||
gtk_table_set_row_spacings (GTK_TABLE (table), 2);
|
||||
frame = gimp_prop_expander_new (config, "dynamics-expanded",
|
||||
_("Dynamics options"));
|
||||
|
||||
frame = gimp_prop_expanding_frame_new (config, "use-fade",
|
||||
_("Fade out"),
|
||||
table, NULL);
|
||||
vbox = gtk_vbox_new (FALSE, 2);
|
||||
gtk_container_add (GTK_CONTAINER (frame), vbox);
|
||||
gtk_widget_show (vbox);
|
||||
|
||||
inner_frame = gimp_frame_new (_("Fade options:"));
|
||||
gtk_box_pack_start (GTK_BOX (vbox), inner_frame, FALSE, FALSE, 0);
|
||||
gtk_widget_show (inner_frame);
|
||||
|
||||
fade_table = gtk_table_new (3, 3, FALSE);
|
||||
gtk_table_set_col_spacings (GTK_TABLE (fade_table), 2);
|
||||
gtk_table_set_row_spacings (GTK_TABLE (fade_table), 2);
|
||||
|
||||
gtk_container_add (GTK_CONTAINER (inner_frame), fade_table);
|
||||
gtk_widget_show (fade_table);
|
||||
|
||||
/* the fade-out sizeentry */
|
||||
scale = gimp_prop_spin_scale_new (config, "fade-length",
|
||||
_("Length"), 1.0, 50.0, 0);
|
||||
gtk_table_attach (GTK_TABLE (table), scale, 0, 2, 0, 1,
|
||||
_("Fade length"), 1.0, 50.0, 0);
|
||||
gtk_table_attach (GTK_TABLE (fade_table), scale, 0, 2, 0, 1,
|
||||
GTK_EXPAND | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0);
|
||||
gtk_widget_show (scale);
|
||||
|
||||
/* the fade-out unitmenu */
|
||||
menu = gimp_prop_unit_combo_box_new (config, "fade-unit");
|
||||
gtk_table_attach (GTK_TABLE (table), menu, 2, 3, 0, 1,
|
||||
gtk_table_attach (GTK_TABLE (fade_table), menu, 2, 3, 0, 1,
|
||||
GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0);
|
||||
gtk_widget_show (menu);
|
||||
|
||||
|
@ -260,17 +264,42 @@ fade_options_gui (GimpPaintOptions *paint_options,
|
|||
|
||||
/* the repeat type */
|
||||
combo = gimp_prop_enum_combo_box_new (config, "fade-repeat", 0, 0);
|
||||
gimp_table_attach_aligned (GTK_TABLE (table), 0, 2,
|
||||
gimp_table_attach_aligned (GTK_TABLE (fade_table), 0, 2,
|
||||
_("Repeat:"), 0.0, 0.5,
|
||||
combo, 2, FALSE);
|
||||
|
||||
checkbox = gimp_prop_check_button_new (config,
|
||||
"fade-reverse",
|
||||
_("Reverse"));
|
||||
gtk_table_attach (GTK_TABLE (table), checkbox, 0, 2, 3, 4,
|
||||
gtk_table_attach (GTK_TABLE (fade_table), checkbox, 0, 2, 3, 4,
|
||||
GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0);
|
||||
gtk_widget_show (checkbox);
|
||||
|
||||
/*Color UI*/
|
||||
if (g_type_is_a (tool_type, GIMP_TYPE_PAINTBRUSH_TOOL))
|
||||
{
|
||||
inner_frame = gimp_frame_new (_("Color options:"));
|
||||
gtk_box_pack_start (GTK_BOX (vbox), inner_frame, FALSE, FALSE, 0);
|
||||
gtk_widget_show (inner_frame);
|
||||
|
||||
gradient_table = gtk_table_new (1, 3, FALSE);
|
||||
gtk_table_set_col_spacings (GTK_TABLE (gradient_table), 2);
|
||||
gtk_table_set_row_spacings (GTK_TABLE (gradient_table), 2);
|
||||
|
||||
gtk_container_add (GTK_CONTAINER (inner_frame), gradient_table);
|
||||
gtk_widget_show (gradient_table);
|
||||
|
||||
box = gimp_prop_gradient_box_new (NULL, GIMP_CONTEXT (config),
|
||||
_("Gradient"), 2,
|
||||
"gradient-view-type",
|
||||
"gradient-view-size",
|
||||
"gradient-reverse");
|
||||
|
||||
gimp_table_attach_aligned (GTK_TABLE (gradient_table), 0, 1,
|
||||
_("Colors:"), 0.0, 0.5,
|
||||
box, 2, FALSE);
|
||||
}
|
||||
|
||||
return frame;
|
||||
}
|
||||
|
||||
|
@ -293,38 +322,6 @@ jitter_options_gui (GimpPaintOptions *paint_options,
|
|||
return frame;
|
||||
}
|
||||
|
||||
static GtkWidget *
|
||||
gradient_options_gui (GimpPaintOptions *paint_options,
|
||||
GType tool_type,
|
||||
GtkWidget *incremental_toggle)
|
||||
{
|
||||
GObject *config = G_OBJECT (paint_options);
|
||||
GtkWidget *frame;
|
||||
GtkWidget *box;
|
||||
GtkWidget *button;
|
||||
|
||||
/* the gradient view */
|
||||
box = gimp_prop_gradient_box_new (NULL, GIMP_CONTEXT (config),
|
||||
_("Gradient"), 2,
|
||||
"gradient-view-type",
|
||||
"gradient-view-size",
|
||||
"gradient-reverse");
|
||||
|
||||
frame = gimp_prop_expanding_frame_new (config, "use-gradient",
|
||||
_("Use color from gradient"),
|
||||
box, &button);
|
||||
|
||||
if (incremental_toggle)
|
||||
{
|
||||
gtk_widget_set_sensitive (incremental_toggle,
|
||||
! paint_options->gradient_options->use_gradient);
|
||||
g_object_set_data (G_OBJECT (button), "inverse_sensitive",
|
||||
incremental_toggle);
|
||||
}
|
||||
|
||||
return frame;
|
||||
}
|
||||
|
||||
static void
|
||||
gimp_paint_options_gui_reset_size (GtkWidget *button,
|
||||
GimpPaintOptions *paint_options)
|
||||
|
|
Loading…
Reference in New Issue