1. 11 Jul, 2018 1 commit
  2. 16 May, 2018 1 commit
    • Ell's avatar
      Bug 796153 - Airbrush doesn't paint on timeout, and crashes with dynamics · 23dab431
      Ell authored
      gimp_airbrush_stamp(), which is called during the airbrush timeout
      to periodically stamp the airbrush, assumes the saved symmetry's
      origin is the same as during the original call to
      gimp_airbrush_paint().  However, since commit
      bc09c718, we clear the symmetry's
      origin at the end of gimp_paint_core_paint(), resulting in an empty
      symmetry with a NULL origin during gimp_airbrush_stamp().  As a
      result, no dab is painted, and we segfault if there's active
      dynamics.
      
      Fix this by saving the symmetry's origin coords during
      gimp_airbrush_paint(), and restoring them in gimp_airbrush_stamp().
      23dab431
  3. 18 Apr, 2018 1 commit
    • Ell's avatar
      app: fix airbrush periodic stamp behavior · 542a0473
      Ell authored
      Commit ddfc7715 changed the
      airbrush periodic stamp behavior, so that instead of using the main
      brush, it issued a full MOTION event, potentially using a different
      brush when using a GIH brush.
      
      Fix this, by renaming the "timeout" signal of GimpAirbrush to
      "stamp", and by adding a new gimp_airbrush_stamp() function, which
      should be used for painting the periodic airbrush dab in response,
      instead of calling gimp_paint_core_paint() directly, and which
      calls gimp_airbrush_paint() instead, as the old code did.
      
      In order to call this function from the paint thread, we replace
      the various gimp_paint_tool_paint_core_foo() functions, introduced
      in the above commit, with a generic gimp_paint_tool_paint_push()
      function, which takes a callback (and a data pointer) to run on the
      paint thread, and queues it for execution (when not using the paint
      thread, the function is called directly from the calling thread.)
      542a0473
  4. 16 Apr, 2018 1 commit
    • Ell's avatar
      app: make the airbrush tool thread-safe w.r.t. paint thread · ddfc7715
      Ell authored
      GimpAirbrush currently performs painting and flushes the image on
      its own during the airbrush timeout.  This is unsafe w.r.t. the
      paint thread, since the timeout is run on the main thread, while
      paint commands should run on the paint thread.
      
      Add a "timeout" signal to GimpAirbrush, and simply emit this signal
      during the airbrush timeout, rather than actually painting.
      
      Connect to this signal in GimpAirbrushTool, and use
      gimppaintool-paint to perform the actual painting, in a thread-safe
      manner (see the previous commit.)
      ddfc7715
  5. 02 Feb, 2016 1 commit
    • Jehan's avatar
      Bug 648776 - mirror symmetries. · 76f573c9
      Jehan authored
      You can now set any paint tool to mirror painting relatively
      horizontal/vertical axis or a central point (any combination of these 3
      symmetries).
      This has been implemented as a new multi-stroke core, where every stroke
      is actually handled as a multi-stroke (default of size 1).
      This is also the first usage of custom guides for symmetry guiding.
      Current version has to be activated in the playground.
      76f573c9
  6. 17 Jan, 2009 1 commit
    • Michael Natterer's avatar
      Change licence to GPLv3 (and to LGPLv3 for libgimp). · d9b5207a
      Michael Natterer authored
      2009-01-17  Michael Natterer  <mitch@gimp.org>
      
      	* all files with a GPL header and all COPYING files:
      
      	Change licence to GPLv3 (and to LGPLv3 for libgimp).
      
      	Cleaned up some copyright headers and regenerated the parsers in
      	the ImageMap plugin.
      
      
      svn path=/trunk/; revision=27913
      d9b5207a
  7. 08 Feb, 2007 1 commit
  8. 09 Dec, 2006 1 commit
  9. 15 Jul, 2003 1 commit
    • Michael Natterer's avatar
      took the fade options out of GimpGradientOptions and added them to the new · 562865a0
      Michael Natterer authored
      2003-07-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/paint/gimppaintoptions.[ch]: took the fade options out of
      	GimpGradientOptions and added them to the new GimpFadeOptions
      	struct. Added a GObject::finalize() implementation.
      
      	* app/paint/gimppaintbrush.[ch]: changed accordingly. Made
      	gimp_paintbrush_motion() a protected function and renamed it to
      	_gimp_paintbrush_motion() added a "gdouble opacity" parameter so
      	an initial brush opacity can be passed in by subclasses.
      
      	* app/paint/gimpairbrush.[ch]: derive it from GimpPaintbrush so it
      	gets all its rendering features. Removed own rendering code and
      	use _gimp_paintbrush_motion(), passing airbrush_options->pressure
      	as initial opacity. Removed all static variables.
      
      	* app/tools/gimpairbrushtool.[ch]
      	* app/tools/gimppenciltool.[ch]: derive them from GimpPaintbrushTool.
      
      	* app/tools/gimppaintoptions-gui.c: changed accordingly. Added the
      	full paintbrush options overkill to the airbrush GUI. Cleanup.
      
      	* app/tools/gimperasertool.c: forgot to remove the "Hard Edge"
      	toggle here.
      562865a0
  10. 05 Feb, 2003 1 commit
    • Michael Natterer's avatar
      Made GimpToolOptions a GimpContext subclass and objectified all tool · aa9f82d1
      Michael Natterer authored
      2003-02-05  Michael Natterer  <mitch@gimp.org>
      
      	Made GimpToolOptions a GimpContext subclass and objectified
      	all tool options types.
      
      	* app/core/core-types.h: replaced GimpToolOptionsNewFunc by
      	GimpToolOptionsGUIFunc.
      
      	* libgimpproxy/gimpproxytypes.h: regenerated.
      
      	* app/core/gimppaintinfo.[ch]: added "GType paint_options_type".
      
      	* app/core/gimptoolinfo.[ch]: added "GType tool_options_type",
      	removed tool_info->context since GimpToolOptions are a GimpContext
      	now. Added "gboolean use_context" as a temp_hack.
      
      	* libgimptool/gimptooltypes.h: added the tool_options_type to
      	the tool registering callback.
      
      	* app/tools/tool_options.[ch]: is a real GimpContext subclass now.
      
      	* app/paint/paint-types.h
      	* app/paint/paint.c: added the paint_options_type to the paint
      	registering stuff.
      
      	* app/paint/gimppaintoptions.[ch]: is a real GimpToolOptions
      	subclass now.
      
      	* app/paint/Makefile.am
      	* app/paint/gimpairbrushoptions.[ch]
      	* app/paint/gimpcloneoptions.[ch]
      	* app/paint/gimpconvolveoptions.[ch]
      	* app/paint/gimpdodgeburnoptions.[ch]
      	* app/paint/gimperaseroptions.[ch]
      	* app/paint/gimpsmudgeoptions.[ch]: new files holding
      	GimpPaintOptions subclasses.
      
      	* app/paint/gimpairbrush.[ch]
      	* app/paint/gimpclone.[ch]
      	* app/paint/gimpconvolve.[ch]
      	* app/paint/gimpdodgeburn.[ch]
      	* app/paint/gimperaser.[ch]
      	* app/paint/gimppaintbrush.c
      	* app/paint/gimppaintcore.c
      	* app/paint/gimppencil.[ch]
      	* app/paint/gimpsmudge.[ch]: removed paint options stuff, lots
      	of related changed & cleanups.
      
      	* tools/pdbgen/pdb/paint_tools.pdb: changed accordingly.
      
      	* app/pdb/paint_tools_cmds.c: regenerated.
      
      	* app/tools/Makefile.am
      	* app/tools/gimpblendoptions.[ch]
      	* app/tools/gimpbucketfilloptions.[ch]
      	* app/tools/gimpcolorpickeroptions.[ch]
      	* app/tools/gimpcropoptions.[ch]
      	* app/tools/gimpflipoptions.[ch]
      	* app/tools/gimpinkoptions.[ch]
      	* app/tools/gimpmagnifyoptions.[ch]
      	* app/tools/gimpmeasureoptions.[ch]
      	* app/tools/gimpmoveoptions.[ch]
      	* app/tools/gimptextoptions.[ch]
      	* app/tools/gimpvectoroptions.[ch]: new files holding the various
      	tool options classes.
      
      	* app/tools/selection_options.[ch]
      	* app/tools/transform_options.[ch]: made them objects.
      
      	* app/tools/paint_options.[ch]: contains only the paint_options
      	GUI and reset stuff.
      
      	* app/tools/tools-types.h: removed SelectionOptions typedef for
      	now.
      
      	* app/tools/[all tools]: removed the tool options stuff except
      	some GUI constructors. Tons of related changes.
      
      	* app/tools/tool_manager.[ch]: changed tool registration / restore /
      	switching accordingly.
      
      	* app/widgets/gimpdrawablelistview.c
      	* app/widgets/gimpselectioneditor.c: changed accordingly.
      aa9f82d1
  11. 27 Nov, 2002 1 commit
    • Michael Natterer's avatar
      app/paint/gimpairbrush.[ch] app/paint/gimpclone.[ch] · 4d2cc645
      Michael Natterer authored
      2002-11-27  Michael Natterer  <mitch@gimp.org>
      
      	* app/paint/gimpairbrush.[ch]
      	* app/paint/gimpclone.[ch]
      	* app/paint/gimpconvolve.[ch]
      	* app/paint/gimpdodgeburn.[ch]
      	* app/paint/gimperaser.[ch]
      	* app/paint/gimppaintoptions.[ch]
      	* app/paint/gimpsmudge.[ch]: it's hard to paint without a context
      	to get color, brush etc. from. Added "context" parameters to
      	all paint options constructors.
      
      	* tools/pdbgen/pdb/paint_tools.pdb: pass gimp_get_current_context()
      	to the constructors. Fixes bug #99557.
      
      	* app/pdb/paint_tools_cmds.c: regenerated.
      
      	* app/tools/gimpairbrushtool.c
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbucketfilltool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpconvolvetool.c
      	* app/tools/gimpdodgeburntool.c
      	* app/tools/gimperasertool.c
      	* app/tools/gimpinktool.c
      	* app/tools/gimpsmudgetool.c: changed accordingly.
      
      	* app/tools/paint_options.c: ditto. Don't set
      	paint_options->context here because we also need it in the
      	no-interface case above.
      4d2cc645
  12. 27 Feb, 2002 1 commit
    • Michael Natterer's avatar
      app/core/Makefile.am new object for registering GimpPaintCore subclasses, · 6086f832
      Michael Natterer authored
      2002-02-27  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/Makefile.am
      	* app/core/gimppaintinfo.[ch]: new object for registering
      	GimpPaintCore subclasses, just like GimpToolInfo for tools.
      
      	* app/core/gimp.h: added gimp->paint_info_list to hold them.
      
      	* app/core/gimptoolinfo.[ch]: removed the "pdb_string" and
      	"paint_core_name" pointers and added a GimpPaintInfo pointer
      	instead.
      
      	* app/core/gimpimage-mask.c
      	* app/gui/vectors-commands.c
      	* app/tools/gimpbezierselecttool.c
      	* app/tools/tool_manager.c: changed accordingly.
      
      	* app/paint/paint-types.h
      	* app/paint/paint.c: added paint class registration stuff like
      	the tool_manager does.
      
      	* app/paint/gimpairbrush.[ch]
      	* app/paint/gimpclone.[ch]
      	* app/paint/gimpconvolve.[ch]
      	* app/paint/gimpdodgeburn.[ch]
      	* app/paint/gimperaser.[ch]
      	* app/paint/gimppaintbrush.[ch]
      	* app/paint/gimppencil.[ch]
      	* app/paint/gimpsmudge.[ch]: added register functions which are
      	called from paint_init().
      
      	The core object system lives not only in "core/", but in
      	core, paint, vectors, file, plug-in and xcf, so I had to hack
      	a bit to keep the deps working:
      
      	* app/pdb/pdb-types.h: don't include "paint/paint-types.h"...
      
      	* app/core/core-types.h: ...because it's included here. Moved
      	the inclusions of the core's subsystems' "foo/foo-types.h"
      	files to the end of the file.
      
      	* app/paint/Makefile.am: Some slimy radioactive uglyness.
      
      	* app/gui/drawable-commands.c
      	* app/tools/gimpblendtool.c: removed calling core functions via
      	the PDB because it makes no sense to do it manually in only a few
      	places.  This needs to be done generically using generated
      	wrappers living in "app/commands/" or something...
      6086f832
  13. 21 Feb, 2002 1 commit
    • Michael Natterer's avatar
      Made the paint tool PDB wrappers work again (a bit at least...) · 9c510759
      Michael Natterer authored
      2002-02-21  Michael Natterer  <mitch@gimp.org>
      
      	Made the paint tool PDB wrappers work again (a bit at least...)
      
      	* app/Makefile.am: changed linking order. libtool sucks.
      
      	* app/undo.c: check if active_tool is a GimpPaintTool before
      	casting it.
      
      	* app/paint/Makefile.am
      	* app/paint/paint-types.h: added new files/types.
      
      	* app/paint/gimppaintoptions.[ch]: new files cut out of
      	tools/paint_options.h. Prefixed everything with "Gimp". There is
      	still GtkWidget* cruft hanging around in the structs...
      
      	* app/paint/gimppaintcore-stroke.[ch]: utility function
      	which paints a stroke array. Needed for the PDB wrappers.
      
      	* app/paint/gimpairbrush.[ch]
      	* app/paint/gimpclone.[ch]
      	* app/paint/gimpconvolve.[ch]
      	* app/paint/gimpdodgeburn.[ch]
      	* app/paint/gimperaser.[ch]
      	* app/paint/gimppaintbrush.c
      	* app/paint/gimppaintcore.[ch]
      	* app/paint/gimppencil.c
      	* app/paint/gimpsmudge.[ch]: added *_options_new() functions which
      	create correctly initialized options structures without widgets.
      
      	* app/tools/paint_options.[ch]: removed the options struct
      	definitions and value initialisations.
      
      	* app/tools/gimpairbrushtool.c
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbucketfilltool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpconvolvetool.c
      	* app/tools/gimpdodgeburntool.c
      	* app/tools/gimperasertool.c
      	* app/tools/gimpinktool.c
      	* app/tools/gimppaintbrushtool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimppenciltool.c
      	* app/tools/gimpsmudgetool.c: changed all paint_options functions
      	accordingly, s/PaintOptions/GimpPaintOptions/g etc., removed all
      	#if 0'ed non_gui functions.
      
      	* tools/pdbgen/pdb/paint_tools.pdb: use gimp_paint_core_stroke().
      	We currently leak all paint_options structs created by the PDB
      	wrappers, more stuff to come...
      
      	* app/pdb/paint_tools_cmds.c: regenerated.
      9c510759
  14. 14 Feb, 2002 1 commit
    • Michael Natterer's avatar
      Core/UI separation for the paint tools: · dca988f7
      Michael Natterer authored
      2002-02-14  Michael Natterer  <mitch@gimp.org>
      
      	Core/UI separation for the paint tools:
      
      	* configure.in
      	* app/Makefile.am
      	* app/paint/.cvsignore
      	* app/paint/Makefile.am: added new directory for the paint methods
      	without GUI and tools around them.
      
      	* app/paint/paint-types.h: typedefs for this module.
      
      	* app/paint/gimppaintcore-kernels.h
      	* app/paint/gimppaintcore.[ch]: the general paint logic taken
      	from GimpPaintTool.
      
      	* app/paint/gimpairbrush.[ch]
      	* app/paint/gimpclone.[ch]
      	* app/paint/gimpconvolve.[ch]
      	* app/paint/gimpdodgeburn.[ch]
      	* app/paint/gimperaser.[ch]
      	* app/paint/gimppaintbrush.[ch]
      	* app/paint/gimppencil.[ch]
      	* app/paint/gimpsmudge.[ch]: subclasses of GimpPaintCore,
      	implementing their own paint() methods.  Needs more hacking
      	to get the GtkWidget pointers out of the options structs.
      
      	* app/tools/gimppainttool_kernels.h: removed.
      
      	* app/tools/tools-types.h: removed the paint tool enums.
      
      	* app/tools/gimpairbrushtool.[ch]
      	* app/tools/gimpclonetool.[ch]
      	* app/tools/gimpconvolvetool.[ch]
      	* app/tools/gimpdodgeburntool.[ch]
      	* app/tools/gimperasertool.[ch]
      	* app/tools/gimppaintbrushtool.[ch]
      	* app/tools/gimppainttool.[ch]
      	* app/tools/gimppenciltool.[ch]
      	* app/tools/gimpsmudgetool.[ch]: all paint tools are pure GUI
      	things now.  PaintOptions and friends still need to be chopped up
      	though...
      
      	* app/undo.c: changed PaintUndo to GimpPaintCoreUndo, some minor
      	cleanup.
      
      	* tools/kernelgen.c: changed accordingly.
      
      	* tools/pdbgen/Makefile.am: scan paint/paint-types.h for enums.
      
      	* tools/pdbgen/pdb/paint_tools.pdb: hardcode "success = FALSE" for
      	all paint PDB wrappers.  The non-gui stuff is completely broken.
      	More commits to come...
      
      	* app/pdb/paint_tools_cmds.c
      	* tools/pdbgen/enums.pl: regenerated.
      dca988f7
  15. 22 Nov, 2001 1 commit
    • Sven Neumann's avatar
      bumped version number to 1.3.1. Require Glib/GTK+-1.3.11 and Pango-0.22. · 757017a8
      Sven Neumann authored
      2001-11-23  Sven Neumann  <sven@gimp.org>
      
      	* configure.in: bumped version number to 1.3.1.
      	Require Glib/GTK+-1.3.11 and Pango-0.22. Removed GDK_DISABLE_COMPAT_H
      	and GTK_DISABLE_COMPAT_H from our default CFLAGS since they don't
      	exist any longer.
      
      	* RELEASE-TO-CVS.patch: removed since the glib/gtk+ API is supposed to
      	be frozen now.
      
      	* HACKING: removed reference to RELEASE-TO-CVS.patch
      
      	* app/gui/menus.c
      	* app/tools/gimptexttool.c: applied RELEASE-TO-CVS.patch to conform
      	to the new GTK+/Pango API.
      
      	* app/core/Makefile.am: generate marshallers with gimp_marshal prefix.
      
      	* app/core/gimpmarshal.list: added all marshallers we use.
      
      	* app/core/gimpmarshal.[ch]: regenerated.
      
      	* app/[lots of .c files]: use gimp_marshal_* for all marshallers.
      
      	* data/images/
      	* app/app_procs.c
      	* app/gui/splash.c:
      
      	* libgimpbase/Makefile.am
      	* libgimpbase/gimpbase.h
      	* libgimpbase/gimputils.[ch]: removed since they are no longer needed.
      
      	* app/gimprc.c
      	* plug-ins/common/ps.c
      	* plug-ins/gdyntext/gdyntext.c
      	* plug-ins/gdyntext/gdyntextcompat.c
      	* plug-ins/gfig/gfig.c
      	* plug-ins/gflare/gflare.c
      	* plug-ins/script-fu/script-fu-scripts.c: use glib functions instead
      	of gimp_strescape() and gimpstrcompress().
      
      	* cleaned up all header files: use G_BEGIN_DECLS/G_END_DECLS, declared
      	all _get_type function as G_GNUC_CONST.
      
      	* tools/pdbgen/enumcode.pl
      	* tools/pdbgen/lib.pl: make them generate header files using
      	G_BEGIN_DECLS/G_END_DECLS.
      
      	* pixmaps/Makefile.am
      	* pixmaps/wilber3.xpm: removed ...
      	* data/images/tips_wilber.png: ... and added here as PNG
      
      	* app/gui/tips-dialog.c: load the Wilber on demand using GdkPixbuf.
      
      	* data/images/gimp_splash.ppm: removed ...
      	* data/images/gimp_splash.png: ... and added as PNG
      
      	* app/app_procs.c
      	* app/gui/splash.[ch]: load the splash image using GdkPixbuf.
      
      	* app/gui/about-dialog.c: sink the GtkPreview.
      757017a8
  16. 20 Nov, 2001 1 commit
    • Michael Natterer's avatar
      added GimpToolRegisterFunc, GimpToolRegisterCallback and · a75c675d
      Michael Natterer authored
      2001-11-20  Michael Natterer  <mitch@gimp.org>
      
      	* app/tools/tools-types.h: added GimpToolRegisterFunc,
      	GimpToolRegisterCallback and GimpToolOptionsNewFunc typedefs
      	which are used to register tools.
      
      	* app/tools/tools.c: put the register funcs in an array of
      	GimpToolRegisterFuncs. Pass a Gimp pointer *plus* a
      	GimpToolRegisterCallback (which is tool_manager_register_tool())
      	to the tools' register functions.
      
      	* app/tools/tool_manager.[ch]: added a GimpToolOptionsNewFunc to
      	the parameters of tool_manager_register_tool(). Create the tool
      	options here, not in each tool.
      
      	* app/tools/paint_options.[ch]
      	* app/tools/selection_options.[ch]
      	* app/tools/tool_options.[ch]
      	* app/tools/transform_options.[ch]: all _init() and _new()
      	functions take a GimpToolInfo pointer now. The _reset() func needs
      	to be set manually now.
      
      	* app/tools/[all_tools].[ch]: changed accordingly:
      
      	- pass GimpToolOptionsNewFuncs to the register callback.
      	- don't create the tool options in the tools' _init() function.
      	- removed all static tool options variables.
      	- get the options from the tool system in the cases i missed
      	  in my last commit.
      	- added minor hacks to get rid of the static options pointer
      	  in some pathological cases :) (i.e. the ink tool).
      a75c675d
  17. 14 Aug, 2001 1 commit
    • Michael Natterer's avatar
      an evil temp_hack which lets GimpContext managing the active display · e2daae31
      Michael Natterer authored
      2001-08-14  Michael Natterer  <mitch@gimp.org>
      
      	* app/gdisplay.h: an evil temp_hack which lets GimpContext managing
      	the active display withoug including "gdisplay.h". Will go away as
      	soon ad context properties are registered dynamically.
      
      	* app/module_db.c: cleaned up the object code in preparation of
      	moving it to core/.
      
      	* app/path.c: connect to GimpImage's
      
      	* app/core/gimpobject.[ch]: derive it from GObject, not from
      	GtkObject any more (yeah :-)
      
      	* app/core/*.c: #include <glib-object.h> instead of <gtk/gtk.h>,
      	removed some remaining GtkObject-isms.
      
      	(left in a few #include <gtk/gtk.h> where bigger changes are needed
      	to get rid of the UI dependency).
      
      	* app/core/core-types.h: #include <gdk-pixbuf/gdk-pixbuf.h> here
      	temporarily.
      
      	* app/core/gimp.c (gimp_create_display): unref the image after
      	creating it's first display.
      
      	* app/core/gimpbrush.[ch]: disabled the parts of the code which
      	depend on GimpPaintTool.
      
      	* app/core/gimpbrushgenerated.c
      	* app/core/gimpbrushpipe.c: changed accordingly.
      
      	* app/core/gimpcontext.[ch]: evil hack (see above) to manage the
      	active display without including "gdisplay.h"
      
      	* app/core/gimpimage-mask.[ch]: pass a context to
      	gimage_mask_stroke() and get the current tool's PDB string from
      	there.
      
      	* app/core/gimpedit.c: changed accordingly.
      
      	* app/core/gimpimage.c: use gimp_image_update() instead of
      	gdisplays_update_full().
      
      	* app/gui/color-area.c
      	* app/gui/colormap-dialog.c
      	* app/gui/dialogs-constructors.c
      	* app/gui/edit-commands.c
      	* app/gui/image-commands.c
      	* app/gui/toolbox.c: changed accordingly (don't use Gtk methods on
      	GObjects).
      
      	* app/gui/menus.c: fix some const warnings by explicit casting.
      
      	* app/tools/*.[ch]: ported all tools to GObject, some minor
      	cleanup while i was on it.
      
      	* app/widgets/gimpdialogfactory.[ch]: ported to GObject.
      
      	* app/widgets/gimplayerlistview.h: added FOO_GET_CLASS() macro.
      
      	* tools/pdbgen/app.pl: added a "widgets_eek" hack like "tools_eek"
      	which inserts #include "widgets/widgets-types.h" before ordinary
      	includes.
      
      	* tools/pdbgen/pdb/brush_select.pdb
      	* tools/pdbgen/pdb/edit.pdb
      	* app/pdb/brush_select_cmds.c
      	* app/pdb/edit_cmds.c: changed according to the stuff above.
      e2daae31
  18. 24 Jul, 2001 1 commit
    • Michael Natterer's avatar
      Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning) · 06b16890
      Michael Natterer authored
      2001-07-24  Michael Natterer  <mitch@gimp.org>
      
      	Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)
      
      	* configure.in: require glib/gtk+ >= 1.3.7, commented out the
      	gtkxmhtml stuff.
      
      	From now on, you will need glib, pango, atk and gtk+ HEAD from CVS
      	to hack or use GIMP HEAD.
      
      	Beware, it crashes randomly :)
      
      	* app/core/Makefile.am
      	* app/core/gimpmarshal.list: new file plus rules to generate
      	gimpmarshal.[ch] from it.
      
      	* app/core/*
      	* app/tools/*
      	* app/widgets/*
      	* libgimpwidgets/*: started to use the glib object system. All
      	core/ objects are still gtk objects however. All signals are
      	created using g_signal_new(). There are many gtk+ artefacts left.
      	Finally, we will _not_ use the gtk_signal_foo() wrappers and
      	friends any more.
      
      	* app/colormaps.c
      	* app/devices.[ch]
      	* app/disp_callbacks.c
      	* app/errorconsole.c
      	* app/file-save.[ch]
      	* app/interface.c
      	* app/module_db.c
      	* app/nav_window.c
      	* app/ops_buttons.c
      	* app/scroll.c
      	* app/user_install.c
      	* app/gui/about-dialog.c
      	* app/gui/brush-editor.c
      	* app/gui/brushes-commands.c
      	* app/gui/color-notebook.c
      	* app/gui/colormap-dialog.c
      	* app/gui/dialogs-commands.c
      	* app/gui/dialogs-constructors.c
      	* app/gui/file-commands.c
      	* app/gui/file-dialog-utils.c
      	* app/gui/file-new-dialog.c
      	* app/gui/file-open-dialog.[ch]
      	* app/gui/file-save-dialog.c
      	* app/gui/gradient-editor.c
      	* app/gui/gradients-commands.c
      	* app/gui/image-commands.c
      	* app/gui/info-dialog.[ch]
      	* app/gui/layer-select.c
      	* app/gui/layers-commands.c
      	* app/gui/menus.c
      	* app/gui/offset-dialog.c
      	* app/gui/palette-editor.c
      	* app/gui/palettes-commands.c
      	* app/gui/patterns-commands.c
      	* app/gui/preferences-dialog.c
      	* app/gui/resize-dialog.[ch]
      	* app/gui/splash.c
      	* app/gui/tips-dialog.c
      	* app/gui/tool-options-dialog.c
      	* app/gui/toolbox.c
      	* app/gui/tools-commands.c
      	* libgimp/gimpbrushmenu.c
      	* libgimp/gimpmenu.c
      	* libgimp/gimppatternmenu.c
      	* libgimp/gimpui.c
      	* libgimpbase/gimpenv.c: tons and tons of changes like "const
      	gchar*", switch from GdkDeviceInfo to GdkDevice (very incomplete
      	and currently disables), lots of s/gtk_signal/g_signal/,
      	removal/replacement of deprecated stuff,
      	s/GtkSignalFunc/GCallback/ and lots of small changes and fixes
      	while I was on it, zillions of warnings left...
      
      	* modules/Makefile.am: disabled the water color selector
      	temporarily (XInput issues).
      
      	* plug-ins/Makefile.am
      	* plug-ins/common/.cvsignore
      	* plug-ins/common/Makefile.am
      	* plug-ins/common/plugin-defs.pl: simply excluded all plug-ins
      	which did not build (including Script-Fu). They are trivial to
      	fix.
      06b16890
  19. 07 Jul, 2001 1 commit
    • Michael Natterer's avatar
      app/Makefile.am removed. · 1bcd3e18
      Michael Natterer authored
      2001-07-07  Michael Natterer  <mitch@gimp.org>
      
      	* app/Makefile.am
      	* app/context_manager.[ch]: removed.
      
      	* app/app_procs.c: call tool_mananger instead of context_manager
      	functions, pass "the_gimp" to some more functions.
      
      	* app/drawable.[ch]: pass a GimpContext to drawable_fill().
      
      	* app/errors.c: behave according to "stack_trace_mode" when using
      	the debugging signal handler.
      
      	* app/gimprc.[ch]: removed the core/ config variables.
      
      	* app/selection.c: set the selection's state to INVISIBLE in
      	selection_pause().
      
      	* app/core/Makefile.am
      	* app/core/gimpcoreconfig.[ch]: new files (the configuration
      	variables used by core/).
      
      	* app/core/gimpcontext.[ch]: removed the global contexts (user,
      	default, ...) and their functions. It's no longer possible to pass
      	NULL to the context functions to manipulate the current context
      	(gimpcontext.c doesn't know the current context any more).
      
      	* app/core/gimp.[ch]: added them here. The functions are now called
      	gimp_[set|get]_*_context(). Added gimp_create_context() which is
      	the only function to create contexts now.
      
      	* app/gui/dialogs.[ch]
      	* app/gui/gui.[ch]: pass "gimp" to all functions.
      
      	* app/tools/tool_manager.[ch]
      	* app/tools/tools.[ch]: pass "gimp" to lots of functions. Added
      	the "global_tool_context" logic and the global/non-global paint
      	options switching from the context_manager. Pass "gimp" to all
      	tools' "register" functions.
      
      	* app/tools/*: changed accordingly.
      
      	* app/devices.c
      	* app/disp_callbacks.c
      	* app/file-open.[ch]
      	* app/file-save.c
      	* app/gdisplay.c
      	* app/gimage.c
      	* app/libgimp_glue.c
      	* app/module_db.c
      	* app/nav_window.c
      	* app/plug_in.c
      	* app/qmask.c
      	* app/undo.c
      	* app/base/base-config.c
      	* app/core/gimpbrushpipe.c
      	* app/core/gimpdrawable-offset.c
      	* app/core/gimpgradient.c
      	* app/core/gimpimage-duplicate.c
      	* app/core/gimpimage-mask.c
      	* app/core/gimpimage-new.c
      	* app/core/gimpimage.c
      	* app/core/gimppalette.c
      	* app/core/gimptoolinfo.[ch]
      	* app/core/gimpundo.c
      	* app/gui/brush-select.c
      	* app/gui/channels-commands.c
      	* app/gui/color-area.c
      	* app/gui/dialogs-constructors.c
      	* app/gui/file-new-dialog.c
      	* app/gui/file-open-dialog.c
      	* app/gui/gradient-editor.c
      	* app/gui/gradient-select.c
      	* app/gui/info-window.c
      	* app/gui/layers-commands.c
      	* app/gui/menus.c
      	* app/gui/palette-editor.c
      	* app/gui/palette-import-dialog.c
      	* app/gui/palette-select.c
      	* app/gui/paths-dialog.c
      	* app/gui/pattern-select.c
      	* app/gui/preferences-dialog.c
      	* app/gui/resize-dialog.c
      	* app/gui/test-commands.c
      	* app/gui/tool-options-dialog.c
      	* app/gui/toolbox.c
      	* app/gui/tools-commands.c
      	* app/xcf/xcf-load.c
      	* app/xcf/xcf-save.c
      	* app/widgets/gimpchannellistview.c
      	* app/widgets/gimpdnd.c
      	* app/widgets/gimpdrawablelistview.[ch]
      	* app/widgets/gimpimagedock.c
      	* app/widgets/gimplayerlistview.c
      	* app/pdb/brushes_cmds.c
      	* app/pdb/drawable_cmds.c
      	* app/pdb/gradient_select_cmds.c
      	* app/pdb/gradients_cmds.c
      	* app/pdb/palette_cmds.c
      	* app/pdb/patterns_cmds.c
      	* app/pdb/procedural_db.c
      	* tools/pdbgen/pdb/brushes.pdb
      	* tools/pdbgen/pdb/drawable.pdb
      	* tools/pdbgen/pdb/gradient_select.pdb
      	* tools/pdbgen/pdb/gradients.pdb
      	* tools/pdbgen/pdb/palette.pdb
      	* tools/pdbgen/pdb/patterns.pdb: changed accordingly: remove usage
      	of gimp_context_[get|set]_*(NULL), create contexts with
      	gimp_create_context(). Get the user/current context with
      	gimp_get_[user|current]_context(). Added/removed access to the
      	global "the_gimp" variable in some places. Get the core's config
      	variables from "core_config".
      1bcd3e18
  20. 31 Mar, 2001 1 commit
    • Michael Natterer's avatar
      app/tools/Makefile.am back again. · 647bf443
      Michael Natterer authored
      2001-04-01  Michael Natterer  <mitch@gimp.org>
      
      	* app/tools/Makefile.am
      	* app/tools/gimpairbrushtool.[ch]: back again.
      
      	* app/tools/gimptool.[ch]
      	* app/tools/paint_options.c
      	* app/tools/tool_manager.c
      	* app/tools/tools.c: changed accordingly.
      647bf443
  21. 31 Dec, 2000 1 commit
    • Michael Natterer's avatar
      app/airbrush.[ch] app/bezier_select.c app/bezier_selectP.h app/blend.[ch] · 2db88815
      Michael Natterer authored
      2000-12-31  Michael Natterer  <mitch@gimp.org>
      
      	* app/airbrush.[ch]
      	* app/bezier_select.c
      	* app/bezier_selectP.h
      	* app/blend.[ch]
      	* app/boundary.h
      	* app/brightness_contrast.[ch]
      	* app/bucket_fill.c
      	* app/by_color_select.c
      	* app/clone.[ch]
      	* app/color_balance.c
      	* app/color_picker.c
      	* app/commands.c
      	* app/convolve.[ch]
      	* app/crop.c
      	* app/crop.h
      	* app/curves.c
      	* app/dodgeburn.[ch]
      	* app/edit_selection.[ch]
      	* app/ellipse_select.c
      	* app/eraser.[ch]
      	* app/flip_tool.[ch]
      	* app/free_select.[ch]
      	* app/fuzzy_select.[ch]
      	* app/gdisplay.c
      	* app/gimage.c
      	* app/histogram_tool.[ch]
      	* app/hue_saturation.[ch]
      	* app/image_map.[ch]
      	* app/ink.[ch]
      	* app/iscissors.c
      	* app/levels.c
      	* app/magnify.[ch]
      	* app/move.c
      	* app/nav_window.[ch]
      	* app/paint_core.[ch]
      	* app/paintbrush.[ch]
      	* app/path_bezier.[ch]
      	* app/path_tool.c
      	* app/pencil.[ch]
      	* app/perspective_tool.[ch]
      	* app/posterize.c
      	* app/rect_select.[ch]
      	* app/rotate_tool.[ch]
      	* app/scale_tool.[ch]
      	* app/selection.[ch]
      	* app/shear_tool.[ch]
      	* app/smudge.[ch]
      	* app/text_tool.[ch]
      	* app/threshold.c
      	* app/tools.[ch]
      	* app/transform_core.[ch]: removed the "gdisp_ptr" madness and
      	useless casts all over the place. Introduced a "PaintState" enum
      	instead of #define's. Various cleanups.
      2db88815
  22. 29 Dec, 2000 1 commit
    • Michael Natterer's avatar
      app/Makefile.am app/channel_pvt.h app/drawable_pvt.h app/gdisplayF.h · 8d6c335f
      Michael Natterer authored
      2000-12-29  Michael Natterer  <mitch@gimp.org>
      
      	* app/Makefile.am
      	* app/channel_pvt.h
      	* app/drawable_pvt.h
      	* app/gdisplayF.h
      	* app/gimpdrawableP.h
      	* app/gimpimageP.h
      	* app/layer_pvt.h
      	* app/toolsF.h: removed these files.
      
      	* app/apptypes.h
      	* tools/pdbgen/enums.pl: added tons of opaque typedefs and enums.
      
      	* tools/pdbgen/pdb/brush_select.pdb
      	* tools/pdbgen/pdb/brushes.pdb
      	* tools/pdbgen/pdb/channel.pdb
      	* tools/pdbgen/pdb/color.pdb
      	* tools/pdbgen/pdb/convert.pdb
      	* tools/pdbgen/pdb/display.pdb
      	* tools/pdbgen/pdb/drawable.pdb
      	* tools/pdbgen/pdb/fileops.pdb
      	* tools/pdbgen/pdb/gradient_select.pdb
      	* tools/pdbgen/pdb/gradients.pdb
      	* tools/pdbgen/pdb/help.pdb
      	* tools/pdbgen/pdb/image.pdb
      	* tools/pdbgen/pdb/layer.pdb
      	* tools/pdbgen/pdb/pattern_select.pdb
      	* tools/pdbgen/pdb/patterns.pdb
      	* tools/pdbgen/pdb/selection.pdb
      	* tools/pdbgen/pdb/tools.pdb
      	* app/*: chainsaw #include cleanup:
      
      	- Never (never!!) include stuff in header files except where we
      	  need access to structures' contents (like derived objects).
      	- Added prototypes and proper formating in many files.
      	- The #include order in *all* *.c files is as follows:
      
      	#include "config.h"
      
      	#include <system stuff>
      
      	#include <gtk/gtk.h>
      
      	#include "apptypes.h"
      
      	#include "gimp stuff"
      
      	#include "libgimp stuff"
      
      	#include "libgimp/gimpintl.h"
      
      	By following this scheme we can easily see a file's dependencies
      	from it's #include's and can grep for the inclusion to find out
      	where a file is used.
      
      	* tools/pdbgen/app.pl: changed to follow the include scheme above.
      
      	* libgimp/Makefile.am
      	* libgimp/gimpuitypes.h: new file, included from libgimp/gimpui.h
      	and from app/apptypes.h.
      
      	* libgimp/gimpcolorbutton.[ch]
      	* libgimp/gimpdialog.[ch]
      	* libgimp/gimphelpui.[ch]
      	* libgimp/gimpparasite.[ch]
      	* libgimp/gimppatheditor.[ch]
      	* libgimp/gimpprotocol.c
      	* libgimp/gimpquerybox.[ch]
      	* libgimp/gimpsizeentry.[ch]
      	* libgimp/gimptypes.h
      	* libgimp/gimpui.h
      	* libgimp/gimpunit.h
      	* libgimp/gimpunitmenu.[ch]
      	* libgimp/gimpwidgets.[ch]: changed accordingly.
      
      	* plug-ins/FractalExplorer/Dialogs.c
      	* plug-ins/gdyntext/message_window.c
      	* plug-ins/imagemap/imap_default_dialog.c
      	* plug-ins/imagemap/imap_file.c: these files used to include
      	"libgimp/gimpui.h" without including "libgimp/gimp.h". This is
      	no longer possible because the libgimpui headers don't inlcude
      	"libgimp/gimpunit.h" any more.
      8d6c335f
  23. 19 Jul, 1999 1 commit
    • BST 1999 Andy Thomas's avatar
      app/indicator_area.c app/paths_dialog.c app/tools_cmds.c app/airbrush.c · 6c28319b
      BST 1999 Andy Thomas authored
      
      Mon Jul 19 23:40:56 BST 1999 Andy Thomas <alt@gimp.org>
      
      	* app/indicator_area.c
      	* app/paths_dialog.c
      	* app/tools_cmds.c
      	* app/airbrush.c
      	* app/airbrush.h
      	* app/bezier_select.c
      	* app/paintbrush.c
      	* app/paintbrush.h
      	* app/clone.c
      	* app/clone.h
      	* app/eraser.c
      	* app/eraser.h
      	* app/convolve.c
      	* app/convolve.h
      	* app/smudge.c
      	* app/smudge.h
      	* app/dodgeburn.c
      	* app/dodgeburn.h
      	* app/internal_procs.c
      	* plug-ins/sel2path/sel2path.c
      	* tools/pdbgen/pdb/tools.pdb
      	* tools/pdbgen/enums.pl
      
      	1) Fixed the brushpreview popup problem where it remained onscreen
                 if the mouse button was released in another GTK window that accepted
      	   mouse events.
      
      	2) Selection to path now works on all types of images (it should have
      	   anyway).
      
      	3) Fixed PDB so you can once again use the PDB interfaces to the clone
      	   and airbrush tools.
      
      	4) PDB Function to add a path to an image now adds it correctly.
      
      	5) airbrush/paintbrush/clone/eraser/convolve New PDB functions that
                 use the options dialogs settings (or sane defaults if option dialog
                 not present)
      
      	6) Added PDB functions for Smudge & DodgeBurn tools.
      
      	7) Path stroke command (from the LCP dialog) can now use any of the
      	   painting tools (airbrush/paintbrush/clone/eraser/convolve/smudge/
                 dodgeburn except ink). Just have the tool selected when you
      	   press the stroke button.
      6c28319b
  24. 18 Apr, 1999 1 commit
    • Manish Singh's avatar
      new file, containes the PDB stuff for most of the tools · ccac10a4
      Manish Singh authored
      * app/tools_cmds.c: new file, containes the PDB stuff for most
      of the tools
      
      * app/gimprc_cmds.c: new file, PDB interface stuff for gimprc
      access
      
      * app/Makefile.am: added tools_cmds.c and gimprc_cmds.c
      
      * app/airbrush.[ch]
      * app/blend.[ch]
      * app/bucket_fill.[ch]
      * app/by_color_select.[ch]
      * app/clone.[ch]
      * app/color_picker.[ch]
      * app/convolve.[ch]
      * app/crop.[ch]
      * app/ellipse_select.[ch]
      * app/eraser.[ch]
      * app/flip_tool.[ch]
      * app/free_select.[ch]
      * app/fuzzy_select.[ch]
      * app/gimprc.[ch]
      * app/paintbrush.[ch]
      * app/pencil.[ch]
      * app/perspective_tool.[ch]
      * app/rect_select.c app/rect_select.h
      * app/rotate_tool.[ch]
      * app/scale_tool.[ch]
      * app/shear_tool.[ch]: bye bye PDB stuff (exported necessary enums
      functions, vars, etc.)
      
      * app/internal_procs.c: use register_foo functions
      
      * app/blend.[ch]: GradientType enum case changed
      
      * app/bucket_fill.[ch]: s/FillMode/BucketFillMode/, made the enum
      more consistent
      
      * app/clone.[ch]: capitalized the CloneType enum
      
      * app/color_picker.[ch]: changed get_color to pick_color so we don't
      conflict with colormaps.c get_color
      
      * app/convolve.[ch]: capitalized the ConvolveType enum
      
      * app/paint_core.h: made a GradientPaintMode enum
      
      * app/transform_core.h: BoundingBox enum
      
      * app/scale_tool.c: use the generic bounding box enum for X1, Y1, etc.
      
      * app/shear_tool.[ch]: turned HORZ and VERT into a ShearType enum
      
      -Yosh
      ccac10a4
  25. 13 Apr, 1998 1 commit
  26. 22 Jan, 1998 1 commit
  27. 24 Nov, 1997 1 commit