From 93f8216881715fac9572aa6073ca94cbc5a17162 Mon Sep 17 00:00:00 2001 From: Alexia Death Date: Thu, 20 Aug 2009 04:25:26 +0300 Subject: [PATCH] Renaming GimpDynamicsOptions to GimpDynamics and moving from paint/ to core/. A BIG change. --- app/core/Makefile.am | 2 + app/core/gimp.c | 6 +- app/core/gimp.h | 4 +- app/core/gimpcontext.c | 17 +- app/core/gimpcontext.h | 4 +- .../gimpdynamics.c} | 158 +++++++++--------- app/core/gimpdynamics.h | 92 ++++++++++ app/paint/Makefile.am | 2 - app/paint/gimpbrushcore.c | 19 ++- app/paint/gimpbrushcore.h | 8 +- app/paint/gimpdynamicsoptions.h | 91 ---------- app/widgets/gimpdynamicseditor.c | 6 +- 12 files changed, 206 insertions(+), 203 deletions(-) rename app/{paint/gimpdynamicsoptions.c => core/gimpdynamics.c} (83%) create mode 100644 app/core/gimpdynamics.h delete mode 100644 app/paint/gimpdynamicsoptions.h diff --git a/app/core/Makefile.am b/app/core/Makefile.am index e4162ec002..cd286cd8b3 100644 --- a/app/core/Makefile.am +++ b/app/core/Makefile.am @@ -167,6 +167,8 @@ libappcore_a_sources = \ gimpdrawablestack.h \ gimpdrawableundo.c \ gimpdrawableundo.h \ + gimpdynamics.c \ + gimpdynamics.h \ gimperror.c \ gimperror.h \ gimpfilloptions.c \ diff --git a/app/core/gimp.c b/app/core/gimp.c index 99012b7163..f6cdf68147 100644 --- a/app/core/gimp.c +++ b/app/core/gimp.c @@ -75,7 +75,7 @@ #include "gimptemplate.h" #include "gimptoolinfo.h" -#include "paint/gimpdynamicsoptions.h" +#include "gimpdynamics.h" #include "gimp-intl.h" @@ -589,11 +589,11 @@ gimp_real_initialize (Gimp *gimp, gimp->dynamics_factory = gimp_data_factory_new (gimp, - GIMP_TYPE_DYNAMICS_OPTIONS, + GIMP_TYPE_DYNAMICS, "dynamics-path", "dynamics-path-writable", dynamics_loader_entries, G_N_ELEMENTS (dynamics_loader_entries), - gimp_dynamics_options_new, + gimp_dynamics_new, gimp_dynamics_get_standard); gimp_object_set_static_name (GIMP_OBJECT (gimp->dynamics_factory), "dynamics factory"); diff --git a/app/core/gimp.h b/app/core/gimp.h index 448424d4ca..46a39b814e 100644 --- a/app/core/gimp.h +++ b/app/core/gimp.h @@ -134,7 +134,7 @@ struct _GimpClass /* emitted if an image is loaded and opened with a display */ void (* image_opened) (Gimp *gimp, - const gchar *uri); + const gchar *uri); }; @@ -203,7 +203,7 @@ void gimp_message_literal (Gimp *gimp, const gchar *message); void gimp_image_opened (Gimp *gimp, - const gchar *uri); + const gchar *uri); gboolean gimp_use_gegl (Gimp *gimp); diff --git a/app/core/gimpcontext.c b/app/core/gimpcontext.c index e7ae0610be..dcf0fb1bd9 100644 --- a/app/core/gimpcontext.c +++ b/app/core/gimpcontext.c @@ -47,7 +47,8 @@ #include "gimptemplate.h" #include "gimptoolinfo.h" -#include "paint/gimpdynamicsoptions.h" +#include "gimpdynamics.h" + #include "text/gimpfont.h" #include "gimp-intl.h" @@ -171,7 +172,7 @@ static void gimp_context_dynamics_removed (GimpContainer *container, static void gimp_context_dynamics_list_thaw (GimpContainer *container, GimpContext *context); static void gimp_context_real_set_dynamics (GimpContext *context, - GimpDynamicsOptions *dynamics); + GimpDynamics *dynamics); /* pattern */ static void gimp_context_pattern_dirty (GimpPattern *pattern, @@ -466,7 +467,7 @@ gimp_context_class_init (GimpContextClass *klass) NULL, NULL, gimp_marshal_VOID__OBJECT, G_TYPE_NONE, 1, - GIMP_TYPE_DYNAMICS_OPTIONS); + GIMP_TYPE_DYNAMICS); gimp_context_signals[PATTERN_CHANGED] = g_signal_new ("pattern-changed", @@ -568,7 +569,7 @@ gimp_context_class_init (GimpContextClass *klass) gimp_context_prop_types[GIMP_CONTEXT_PROP_TOOL] = GIMP_TYPE_TOOL_INFO; gimp_context_prop_types[GIMP_CONTEXT_PROP_PAINT_INFO] = GIMP_TYPE_PAINT_INFO; gimp_context_prop_types[GIMP_CONTEXT_PROP_BRUSH] = GIMP_TYPE_BRUSH; - gimp_context_prop_types[GIMP_CONTEXT_PROP_DYNAMICS] = GIMP_TYPE_DYNAMICS_OPTIONS; + gimp_context_prop_types[GIMP_CONTEXT_PROP_DYNAMICS] = GIMP_TYPE_DYNAMICS; gimp_context_prop_types[GIMP_CONTEXT_PROP_PATTERN] = GIMP_TYPE_PATTERN; gimp_context_prop_types[GIMP_CONTEXT_PROP_GRADIENT] = GIMP_TYPE_GRADIENT; gimp_context_prop_types[GIMP_CONTEXT_PROP_PALETTE] = GIMP_TYPE_PALETTE; @@ -642,7 +643,7 @@ gimp_context_class_init (GimpContextClass *klass) GIMP_CONFIG_INSTALL_PROP_OBJECT (object_class, GIMP_CONTEXT_PROP_DYNAMICS, gimp_context_prop_names[GIMP_CONTEXT_PROP_DYNAMICS], NULL, - GIMP_TYPE_DYNAMICS_OPTIONS, + GIMP_TYPE_DYNAMICS, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_INSTALL_PROP_OBJECT (object_class, GIMP_CONTEXT_PROP_PATTERN, @@ -2499,7 +2500,7 @@ gimp_context_set_dynamics (GimpContext *context, GimpDynamicsOptions *dynamics) { g_return_if_fail (GIMP_IS_CONTEXT (context)); - g_return_if_fail (! dynamics || GIMP_IS_DYNAMICS_OPTIONS (dynamics)); + g_return_if_fail (! dynamics || GIMP_IS_DYNAMICS (dynamics)); context_find_defined (context, GIMP_CONTEXT_PROP_DYNAMICS); gimp_context_real_set_dynamics (context, dynamics); @@ -2560,10 +2561,10 @@ static void gimp_context_dynamics_list_thaw (GimpContainer *container, static void gimp_context_real_set_dynamics (GimpContext *context, - GimpDynamicsOptions *dynamics) + GimpDynamics *dynamics) { if (! standard_dynamics) - standard_dynamics = GIMP_DYNAMICS_OPTIONS (gimp_dynamics_get_standard ()); + standard_dynamics = GIMP_DYNAMICS (gimp_dynamics_get_standard ()); if (context->dynamics == dynamics) return; diff --git a/app/core/gimpcontext.h b/app/core/gimpcontext.h index 60ef256ee7..c38091d526 100644 --- a/app/core/gimpcontext.h +++ b/app/core/gimpcontext.h @@ -23,7 +23,7 @@ #include "gimpobject.h" - +#include "gimpdynamics.h" #define GIMP_TYPE_CONTEXT (gimp_context_get_type ()) #define GIMP_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_CONTEXT, GimpContext)) @@ -64,7 +64,7 @@ struct _GimpContext GimpBrush *brush; gchar *brush_name; - GimpDynamicsOptions *dynamics; + GimpDynamics *dynamics; gchar *dynamics_name; GimpPattern *pattern; diff --git a/app/paint/gimpdynamicsoptions.c b/app/core/gimpdynamics.c similarity index 83% rename from app/paint/gimpdynamicsoptions.c rename to app/core/gimpdynamics.c index 36b34fa9e5..5ac1c6dbc6 100644 --- a/app/paint/gimpdynamicsoptions.c +++ b/app/core/gimpdynamics.c @@ -23,17 +23,17 @@ #include "libgimpmath/gimpmath.h" #include "libgimpconfig/gimpconfig.h" -#include "paint-types.h" +#include "paint/paint-types.h" -#include "core/gimp.h" -#include "core/gimpimage.h" -#include "core/gimpcurve.h" +#include "gimp.h" +#include "gimpimage.h" +#include "gimpcurve.h" -#include "gimpdynamicsoptions.h" +#include "gimpdynamics.h" -#include "core/gimpdata.h" +#include "gimpdata.h" #include "gimp-intl.h" @@ -140,50 +140,50 @@ enum PROP_FADING_ANGLE, }; -static void gimp_dynamics_options_class_init (GimpDynamicsOptionsClass *klass); +static void gimp_dynamics_class_init (GimpDynamicsClass *klass); -static void gimp_dynamics_options_finalize (GObject *object); +static void gimp_dynamics_finalize (GObject *object); -static void gimp_dynamics_options_notify (GObject *object, +static void gimp_dynamics_notify (GObject *object, GParamSpec *pspec); -static void gimp_dynamics_options_set_property (GObject *object, +static void gimp_dynamics_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec); -static void gimp_dynamics_options_get_property (GObject *object, +static void gimp_dynamics_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec); -static void gimp_dynamics_options_curves_init (GimpDynamicOutputOptions *dynamics); +static void gimp_dynamics_curves_init (GimpDynamicsOutput *dynamics); -static void gimp_dynamics_options_curves_finalize (GimpDynamicOutputOptions *dynamics); +static void gimp_dynamics_curves_finalize (GimpDynamicsOutput *dynamics); /* -G_DEFINE_TYPE_WITH_CODE (GimpDynamicsOptions, gimp_dynamics_options, GIMP_TYPE_DATA, +G_DEFINE_TYPE_WITH_CODE (GimpDynamics, gimp_dynamics, GIMP_TYPE_DATA, G_IMPLEMENT_INTERFACE (GIMP_TYPE_DOCKED, gimp_dynamics_editor_docked_iface_init)) */ -G_DEFINE_TYPE (GimpDynamicsOptions, gimp_dynamics_options, +G_DEFINE_TYPE (GimpDynamics, gimp_dynamics, GIMP_TYPE_DATA) -#define parent_class gimp_dynamics_options_parent_class +#define parent_class gimp_dynamics_parent_class static void -gimp_dynamics_options_class_init (GimpDynamicsOptionsClass *klass) +gimp_dynamics_class_init (GimpDynamicsClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); - object_class->finalize = gimp_dynamics_options_finalize; - object_class->set_property = gimp_dynamics_options_set_property; - object_class->get_property = gimp_dynamics_options_get_property; - object_class->notify = gimp_dynamics_options_notify; + object_class->finalize = gimp_dynamics_finalize; + object_class->set_property = gimp_dynamics_set_property; + object_class->get_property = gimp_dynamics_get_property; + object_class->notify = gimp_dynamics_notify; GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_RANDOM_ASPECT_RATIO, @@ -363,65 +363,65 @@ gimp_dynamics_options_class_init (GimpDynamicsOptionsClass *klass) } static void -gimp_dynamics_options_init (GimpDynamicsOptions *options) +gimp_dynamics_init (GimpDynamics *options) { - options->opacity_dynamics = g_slice_new0 (GimpDynamicOutputOptions); - gimp_dynamics_options_curves_init(options->opacity_dynamics); + options->opacity_dynamics = g_slice_new0 (GimpDynamicsOutput); + gimp_dynamics_curves_init(options->opacity_dynamics); - options->hardness_dynamics = g_slice_new0 (GimpDynamicOutputOptions); - gimp_dynamics_options_curves_init(options->hardness_dynamics); + options->hardness_dynamics = g_slice_new0 (GimpDynamicsOutput); + gimp_dynamics_curves_init(options->hardness_dynamics); - options->rate_dynamics = g_slice_new0 (GimpDynamicOutputOptions); - gimp_dynamics_options_curves_init(options->rate_dynamics); + options->rate_dynamics = g_slice_new0 (GimpDynamicsOutput); + gimp_dynamics_curves_init(options->rate_dynamics); - options->size_dynamics = g_slice_new0 (GimpDynamicOutputOptions); - gimp_dynamics_options_curves_init(options->size_dynamics); + options->size_dynamics = g_slice_new0 (GimpDynamicsOutput); + gimp_dynamics_curves_init(options->size_dynamics); - options->aspect_ratio_dynamics = g_slice_new0 (GimpDynamicOutputOptions); - gimp_dynamics_options_curves_init(options->aspect_ratio_dynamics); + options->aspect_ratio_dynamics = g_slice_new0 (GimpDynamicsOutput); + gimp_dynamics_curves_init(options->aspect_ratio_dynamics); - options->color_dynamics = g_slice_new0 (GimpDynamicOutputOptions); - gimp_dynamics_options_curves_init(options->color_dynamics); + options->color_dynamics = g_slice_new0 (GimpDynamicsOutput); + gimp_dynamics_curves_init(options->color_dynamics); - options->angle_dynamics = g_slice_new0 (GimpDynamicOutputOptions); - gimp_dynamics_options_curves_init(options->angle_dynamics); + options->angle_dynamics = g_slice_new0 (GimpDynamicsOutput); + gimp_dynamics_curves_init(options->angle_dynamics); } static void -gimp_dynamics_options_finalize (GObject *object) +gimp_dynamics_finalize (GObject *object) { - GimpDynamicsOptions *options = GIMP_DYNAMICS_OPTIONS (object); + GimpDynamics *options = GIMP_DYNAMICS (object); - gimp_dynamics_options_curves_finalize (options->opacity_dynamics); - g_slice_free (GimpDynamicOutputOptions, options->opacity_dynamics); + gimp_dynamics_curves_finalize (options->opacity_dynamics); + g_slice_free (GimpDynamicsOutput, options->opacity_dynamics); - gimp_dynamics_options_curves_finalize (options->hardness_dynamics); - g_slice_free (GimpDynamicOutputOptions, options->hardness_dynamics); + gimp_dynamics_curves_finalize (options->hardness_dynamics); + g_slice_free (GimpDynamicsOutput, options->hardness_dynamics); - gimp_dynamics_options_curves_finalize (options->rate_dynamics); - g_slice_free (GimpDynamicOutputOptions, options->rate_dynamics); + gimp_dynamics_curves_finalize (options->rate_dynamics); + g_slice_free (GimpDynamicsOutput, options->rate_dynamics); - gimp_dynamics_options_curves_finalize (options->size_dynamics); - g_slice_free (GimpDynamicOutputOptions, options->size_dynamics); + gimp_dynamics_curves_finalize (options->size_dynamics); + g_slice_free (GimpDynamicsOutput, options->size_dynamics); - gimp_dynamics_options_curves_finalize (options->aspect_ratio_dynamics); - g_slice_free (GimpDynamicOutputOptions, options->aspect_ratio_dynamics); + gimp_dynamics_curves_finalize (options->aspect_ratio_dynamics); + g_slice_free (GimpDynamicsOutput, options->aspect_ratio_dynamics); - gimp_dynamics_options_curves_finalize (options->color_dynamics); - g_slice_free (GimpDynamicOutputOptions, options->color_dynamics); + gimp_dynamics_curves_finalize (options->color_dynamics); + g_slice_free (GimpDynamicsOutput, options->color_dynamics); - gimp_dynamics_options_curves_finalize (options->angle_dynamics); - g_slice_free (GimpDynamicOutputOptions, options->angle_dynamics); + gimp_dynamics_curves_finalize (options->angle_dynamics); + g_slice_free (GimpDynamicsOutput, options->angle_dynamics); G_OBJECT_CLASS (parent_class)->finalize (object); } static void -gimp_dynamics_options_curves_init (GimpDynamicOutputOptions *dynamics) +gimp_dynamics_curves_init (GimpDynamicsOutput *dynamics) { dynamics->pressure_curve = g_object_new (GIMP_TYPE_CURVE, "name", "Pressure curve", @@ -444,7 +444,7 @@ gimp_dynamics_options_curves_init (GimpDynamicOutputOptions *dynamics) } static void -gimp_dynamics_options_curves_finalize (GimpDynamicOutputOptions *dynamics) +gimp_dynamics_curves_finalize (GimpDynamicsOutput *dynamics) { g_object_unref(dynamics->pressure_curve); @@ -462,20 +462,20 @@ gimp_dynamics_options_curves_finalize (GimpDynamicOutputOptions *dynamics) static void -gimp_dynamics_options_set_property (GObject *object, +gimp_dynamics_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec) { - GimpDynamicsOptions *options = GIMP_DYNAMICS_OPTIONS (object); + GimpDynamics *options = GIMP_DYNAMICS (object); - GimpDynamicOutputOptions *opacity_dynamics = options->opacity_dynamics; - GimpDynamicOutputOptions *hardness_dynamics = options->hardness_dynamics; - GimpDynamicOutputOptions *rate_dynamics = options->rate_dynamics; - GimpDynamicOutputOptions *size_dynamics = options->size_dynamics; - GimpDynamicOutputOptions *aspect_ratio_dynamics = options->aspect_ratio_dynamics; - GimpDynamicOutputOptions *color_dynamics = options->color_dynamics; - GimpDynamicOutputOptions *angle_dynamics = options->angle_dynamics; + GimpDynamicsOutput *opacity_dynamics = options->opacity_dynamics; + GimpDynamicsOutput *hardness_dynamics = options->hardness_dynamics; + GimpDynamicsOutput *rate_dynamics = options->rate_dynamics; + GimpDynamicsOutput *size_dynamics = options->size_dynamics; + GimpDynamicsOutput *aspect_ratio_dynamics = options->aspect_ratio_dynamics; + GimpDynamicsOutput *color_dynamics = options->color_dynamics; + GimpDynamicsOutput *angle_dynamics = options->angle_dynamics; switch (property_id) { @@ -660,19 +660,19 @@ gimp_dynamics_options_set_property (GObject *object, static void -gimp_dynamics_options_get_property (GObject *object, +gimp_dynamics_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec) { - GimpDynamicsOptions *options = GIMP_DYNAMICS_OPTIONS (object); - GimpDynamicOutputOptions *opacity_dynamics = options->opacity_dynamics; - GimpDynamicOutputOptions *hardness_dynamics = options->hardness_dynamics; - GimpDynamicOutputOptions *rate_dynamics = options->rate_dynamics; - GimpDynamicOutputOptions *size_dynamics = options->size_dynamics; - GimpDynamicOutputOptions *aspect_ratio_dynamics = options->aspect_ratio_dynamics; - GimpDynamicOutputOptions *color_dynamics = options->color_dynamics; - GimpDynamicOutputOptions *angle_dynamics = options->angle_dynamics; + GimpDynamics *options = GIMP_DYNAMICS (object); + GimpDynamicsOutput *opacity_dynamics = options->opacity_dynamics; + GimpDynamicsOutput *hardness_dynamics = options->hardness_dynamics; + GimpDynamicsOutput *rate_dynamics = options->rate_dynamics; + GimpDynamicsOutput *size_dynamics = options->size_dynamics; + GimpDynamicsOutput *aspect_ratio_dynamics = options->aspect_ratio_dynamics; + GimpDynamicsOutput *color_dynamics = options->color_dynamics; + GimpDynamicsOutput *angle_dynamics = options->angle_dynamics; switch (property_id) { @@ -856,11 +856,11 @@ gimp_dynamics_options_get_property (GObject *object, static void -gimp_dynamics_options_notify (GObject *object, +gimp_dynamics_notify (GObject *object, GParamSpec *pspec) { /* - GimpDynamicsOptions *options = GIMP_DYNAMICS_OPTIONS (object); + GimpDynamics *options = GIMP_DYNAMICS (object); if (pspec->param_id == PROP_USE_GRADIENT) { @@ -884,11 +884,11 @@ gimp_dynamics_options_notify (GObject *object, } GimpData * -gimp_dynamics_options_new (const gchar *name) +gimp_dynamics_new (const gchar *name) { - GimpDynamicsOptions *options; + GimpDynamics *options; - options = g_object_new (GIMP_TYPE_DYNAMICS_OPTIONS, + options = g_object_new (GIMP_TYPE_DYNAMICS, "name", name, NULL); @@ -903,7 +903,7 @@ gimp_dynamics_get_standard (void) if (! standard_dynamics) { - standard_dynamics = gimp_dynamics_options_new ("Standard"); + standard_dynamics = gimp_dynamics_new ("Standard"); standard_dynamics->dirty = FALSE; gimp_data_make_internal (standard_dynamics, @@ -916,7 +916,7 @@ gimp_dynamics_get_standard (void) } gdouble -gimp_dynamics_options_get_output_val (GimpDynamicOutputOptions *output, GimpCoords *coords) +gimp_dynamics_get_output_val (GimpDynamicsOutput *output, GimpCoords *coords) { printf("Dynamics queried..."); return 1; diff --git a/app/core/gimpdynamics.h b/app/core/gimpdynamics.h new file mode 100644 index 0000000000..513e4cc261 --- /dev/null +++ b/app/core/gimpdynamics.h @@ -0,0 +1,92 @@ +/* GIMP - The GNU Image Manipulation Program + * Copyright (C) 1995-1999 Spencer Kimball and Peter Mattis + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#ifndef __GIMP_DYNAMICS_H__ +#define __GIMP_DYNAMICS_H__ + +#include "core/gimpdata.h" +#include "gimpcurve.h" + +typedef struct _GimpDynamicsOutput GimpDynamicsOutput; + + +struct _GimpDynamicsOutput +{ + gboolean pressure; + gboolean velocity; + gboolean direction; + gboolean tilt; + gboolean random; + gboolean fade; + + gdouble fade_length; + + GimpCurve* pressure_curve; + GimpCurve* velocity_curve; + GimpCurve* direction_curve; + GimpCurve* tilt_curve; + GimpCurve* random_curve; + GimpCurve* fade_curve; + +}; + + +#define GIMP_PAINT_PRESSURE_SCALE 1.5 +#define GIMP_PAINT_VELOCITY_SCALE 1.0 + + +#define GIMP_TYPE_DYNAMICS (gimp_dynamics_get_type ()) +#define GIMP_DYNAMICS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DYNAMICS, GimpDynamics)) +#define GIMP_DYNAMICS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DYNAMICS, GimpDynamicsClass)) +#define GIMP_IS_DYNAMICS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DYNAMICS)) +#define GIMP_IS_DYNAMICS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DYNAMICS)) +#define GIMP_DYNAMICS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_DYNAMICS, GimpDynamicsClass)) + + +typedef struct _GimpDynamics GimpDynamics; + +struct _GimpDynamics +{ + GimpDataClass parent_instance; + + GimpDynamicsOutput* opacity_dynamics; + GimpDynamicsOutput* hardness_dynamics; + GimpDynamicsOutput* rate_dynamics; + GimpDynamicsOutput* size_dynamics; + GimpDynamicsOutput* aspect_ratio_dynamics; + GimpDynamicsOutput* color_dynamics; + GimpDynamicsOutput* angle_dynamics; + +}; + +typedef struct _GimpDynamicsClass GimpDynamicsClass; + +struct _GimpDynamicsClass +{ + GimpDataClass parent_instance; +}; + + +GType gimp_dynamics_get_type (void) G_GNUC_CONST; + +GimpData * gimp_dynamics_new (const gchar *name); + +GimpData * gimp_dynamics_get_standard (void); + +gdouble gimp_dynamics_get_output_val (GimpDynamicsOutput *output, GimpCoords *coords); + +#endif /* __GIMP_DYNAMICS_OPTIONS_H__ */ diff --git a/app/paint/Makefile.am b/app/paint/Makefile.am index f32e54d21d..18108b3712 100644 --- a/app/paint/Makefile.am +++ b/app/paint/Makefile.am @@ -60,8 +60,6 @@ libapppaint_a_sources = \ gimppaintcoreundo.h \ gimppaintoptions.c \ gimppaintoptions.h \ - gimpdynamicsoptions.c \ - gimpdynamicsoptions.h \ gimppencil.c \ gimppencil.h \ gimppenciloptions.c \ diff --git a/app/paint/gimpbrushcore.c b/app/paint/gimpbrushcore.c index 7eb28da3b0..464e297774 100644 --- a/app/paint/gimpbrushcore.c +++ b/app/paint/gimpbrushcore.c @@ -36,11 +36,12 @@ #include "core/gimperror.h" #include "core/gimpimage.h" #include "core/gimpmarshal.h" +#include "core/gimpdynamics.h" #include "gimpbrushcore.h" #include "gimpbrushcore-kernels.h" #include "gimppaintoptions.h" -#include "gimpdynamicsoptions.h" + #include "gimp-intl.h" @@ -87,8 +88,8 @@ static TempBuf *gimp_brush_core_get_paint_area (GimpPaintCore *paint_core static void gimp_brush_core_real_set_brush (GimpBrushCore *core, GimpBrush *brush); -static void gimp_brush_core_real_set_dynamics (GimpBrushCore *core, - GimpDynamicsOptions *dynamics); +static void gimp_brush_core_real_set_dynamics (GimpBrushCore *core, + GimpDynamics *dynamics); static inline void rotate_pointers (gulong **p, guint32 n); @@ -160,7 +161,7 @@ gimp_brush_core_class_init (GimpBrushCoreClass *klass) NULL, NULL, gimp_marshal_VOID__OBJECT, G_TYPE_NONE, 1, - GIMP_TYPE_DYNAMICS_OPTIONS); + GIMP_TYPE_DYNAMICS); object_class->finalize = gimp_brush_core_finalize; @@ -744,7 +745,7 @@ gimp_brush_core_get_paint_area (GimpPaintCore *paint_core, core->scale = paint_options->brush_scale; if (core->dynamics) { - core->scale *= gimp_dynamics_options_get_output_val(core->dynamics->size_dynamics, coords); + core->scale *= gimp_dynamics_get_output_val(core->dynamics->size_dynamics, coords); } core->angle = paint_options->brush_angle; /* gimp_paint_options_get_dynamic_angle (paint_options, coords, @@ -825,7 +826,7 @@ gimp_brush_core_real_set_brush (GimpBrushCore *core, static void gimp_brush_core_real_set_dynamics (GimpBrushCore *core, - GimpDynamicsOptions *dynamics) + GimpDynamics *dynamics) { if (core->dynamics) { @@ -849,11 +850,11 @@ gimp_brush_core_set_brush (GimpBrushCore *core, } void -gimp_brush_core_set_dynamics (GimpBrushCore *core, - GimpDynamicsOptions *dynamics) +gimp_brush_core_set_dynamics (GimpBrushCore *core, + GimpDynamics *dynamics) { g_return_if_fail (GIMP_IS_BRUSH_CORE (core)); - g_return_if_fail (dynamics == NULL || GIMP_IS_DYNAMICS_OPTIONS (dynamics)); + g_return_if_fail (dynamics == NULL || GIMP_IS_DYNAMICS (dynamics)); g_signal_emit (core, core_signals[SET_DYNAMICS], 0, dynamics); } diff --git a/app/paint/gimpbrushcore.h b/app/paint/gimpbrushcore.h index 2498a70ad1..c82b450177 100644 --- a/app/paint/gimpbrushcore.h +++ b/app/paint/gimpbrushcore.h @@ -20,7 +20,7 @@ #include "gimppaintcore.h" - +#include "core/gimpdynamics.h" #define BRUSH_CORE_SUBSAMPLE 4 #define BRUSH_CORE_SOLID_SUBSAMPLE 2 @@ -43,7 +43,7 @@ struct _GimpBrushCore GimpBrush *main_brush; GimpBrush *brush; - GimpDynamicsOptions *dynamics; + GimpDynamics *dynamics; gdouble spacing; gdouble scale; gdouble angle; @@ -101,7 +101,7 @@ struct _GimpBrushCoreClass void (* set_brush) (GimpBrushCore *core, GimpBrush *brush); void (* set_dynamics) (GimpBrushCore *core, - GimpDynamicsOptions *brush); + GimpDynamics *brush); }; @@ -112,7 +112,7 @@ void gimp_brush_core_set_brush (GimpBrushCore *core, GimpBrush *brush); void gimp_brush_core_set_dynamics (GimpBrushCore *core, - GimpDynamicsOptions *dynamics); + GimpDynamics *dynamics); void gimp_brush_core_create_bound_segs (GimpBrushCore *core, GimpPaintOptions *options); diff --git a/app/paint/gimpdynamicsoptions.h b/app/paint/gimpdynamicsoptions.h deleted file mode 100644 index 875242d857..0000000000 --- a/app/paint/gimpdynamicsoptions.h +++ /dev/null @@ -1,91 +0,0 @@ -/* GIMP - The GNU Image Manipulation Program - * Copyright (C) 1995-1999 Spencer Kimball and Peter Mattis - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * This program 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 General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#ifndef __GIMP_DYNAMICS_OPTIONS_H__ -#define __GIMP_DYNAMICS_OPTIONS_H__ - - -#include "gimppaintoptions.h" -#include "core/gimpdata.h" - -typedef struct _GimpDynamicOutputOptions GimpDynamicOutputOptions; - - -struct _GimpDynamicOutputOptions -{ - gboolean pressure; - gboolean velocity; - gboolean direction; - gboolean tilt; - gboolean random; - gboolean fade; - - gdouble fade_length; - - GimpCurve* pressure_curve; - GimpCurve* velocity_curve; - GimpCurve* direction_curve; - GimpCurve* tilt_curve; - GimpCurve* random_curve; - GimpCurve* fade_curve; - -}; - - -#define GIMP_PAINT_PRESSURE_SCALE 1.5 -#define GIMP_PAINT_VELOCITY_SCALE 1.0 - - -#define GIMP_TYPE_DYNAMICS_OPTIONS (gimp_dynamics_options_get_type ()) -#define GIMP_DYNAMICS_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_DYNAMICS_OPTIONS, GimpDynamicsOptions)) -#define GIMP_DYNAMICS_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_DYNAMICS_OPTIONS, GimpDynamicsOptionsClass)) -#define GIMP_IS_DYNAMICS_OPTIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_DYNAMICS_OPTIONS)) -#define GIMP_IS_DYNAMICS_OPTIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_DYNAMICS_OPTIONS)) -#define GIMP_DYNAMICS_OPTIONS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_DYNAMICS_OPTIONS, GimpDynamicsOptionsClass)) - - -typedef struct _GimpDynamicsOptionsClass GimpDynamicsOptionsClass; - -struct _GimpDynamicsOptions -{ - GimpDataClass parent_instance; - - GimpDynamicOutputOptions* opacity_dynamics; - GimpDynamicOutputOptions* hardness_dynamics; - GimpDynamicOutputOptions* rate_dynamics; - GimpDynamicOutputOptions* size_dynamics; - GimpDynamicOutputOptions* aspect_ratio_dynamics; - GimpDynamicOutputOptions* color_dynamics; - GimpDynamicOutputOptions* angle_dynamics; - -}; - -struct _GimpDynamicsOptionsClass -{ - GimpDataClass parent_instance; -}; - - -GType gimp_dynamics_options_get_type (void) G_GNUC_CONST; - -GimpData * gimp_dynamics_options_new (const gchar *name); - -GimpData * gimp_dynamics_get_standard (void); - -gdouble gimp_dynamics_options_get_output_val (GimpDynamicOutputOptions *output, GimpCoords *coords); - -#endif /* __GIMP_DYNAMICS_OPTIONS_H__ */ diff --git a/app/widgets/gimpdynamicseditor.c b/app/widgets/gimpdynamicseditor.c index 87ebd91793..3b846df141 100644 --- a/app/widgets/gimpdynamicseditor.c +++ b/app/widgets/gimpdynamicseditor.c @@ -43,7 +43,7 @@ #include "gimpmenufactory.h" #include "widgets/gimpdynamicseditor.h" -#include "paint/gimpdynamicsoptions.h" +#include "core/gimpdynamics.h" #include "core/gimpbrush.h" //To do: // discard unneeded ones. @@ -194,7 +194,7 @@ gimp_dynamics_editor_init (GimpDynamicsEditor *editor) data_editor->view = gimp_view_new_full_by_types (NULL, GIMP_TYPE_VIEW, - GIMP_TYPE_DYNAMICS_OPTIONS, + GIMP_TYPE_DYNAMICS, DYNAMICS_VIEW_SIZE, DYNAMICS_VIEW_SIZE, 0, FALSE, FALSE, TRUE); @@ -286,7 +286,7 @@ gimp_dynamics_editor_new (GimpContext *context, "data", gimp_context_get_dynamics (context), NULL); /* - GtkWidget *vbox; + GtkWidget *vbox; GtkWidget *table; GtkWidget *menu; GtkWidget *label;