1. 08 Sep, 2006 1 commit
    • Sven Neumann's avatar
      added function gimp_get_tool_info(). · 2426755b
      Sven Neumann authored
      2006-09-08  Sven Neumann  <sven@gimp.org>
      	* app/core/gimp.[ch]: added function gimp_get_tool_info().
      	* app/actions/tools-commands.c
      	* app/actions/vectors-commands.c
      	* app/tools/gimppainttool.c
      	* app/widgets/gimpdrawabletreeview.c
      	* app/widgets/gimpselectioneditor.c
      	* app/widgets/gimptoolbox.c: use the new function instead of poking
      	into gimp->tool_info_list.
      	* app/display/gimpdisplayshell-callbacks.c
      	* app/display/gimpdisplayshell.[ch]: moved code that deals with
      	the space key into separate functions. Added space_shaded_tool
      	to GimpDisplayShell instead of using a static variable for it.
      	* app/tools/tool_manager.c: removed unused include.
  2. 05 Sep, 2006 1 commit
    • Michael Natterer's avatar
      added gimp_tool_get_options() so tools don't need to incude · 6c7f0c68
      Michael Natterer authored
      2006-09-05  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimptool.[ch]: added gimp_tool_get_options() so tools
      	don't need to incude "core/gimptoolinfo.h" just to get to
      	their options.
      	* app/tools/gimp*tool.h: added macros GIMP_FOO_TOOL_GET_OPTIONS()
      	which return specific tool options types and do all casting
      	* app/tools/*.c: use the new macros and don't include
      	"core/gimptoolinfo.h" in most files.
      	* app/tools/gimpcolorpickertool.c (gimp_color_picker_tool_register):
      	make it use the parent context's FG and BG.
      	* app/tools/gimpcolortool.c (gimp_color_tool_real_picked): set the
      	color on the tool's options, not on the user context.
  3. 03 Sep, 2006 1 commit
    • Sven Neumann's avatar
      added construct-only property "undo-desc". Use this when pushing an undo · a44d24cc
      Sven Neumann authored
      2006-09-03  Sven Neumann  <sven@gimp.org>
              * app/paint/gimppaintcore.[ch]: added construct-only property
              "undo-desc". Use this when pushing an undo instead of attempting
              an unsuccessful lookup of the GimpPaintInfo object.
              * tools/pdbgen/pdb/paint_tools.pdb
              * app/tools/gimppainttool.c: use paint_info->blurb as undo
              description when constructing the paint core.
              * app/pdb/paint_tools_cmds.c: regenerated.
  4. 21 Aug, 2006 1 commit
    • William Skaggs's avatar
      Bill Skaggs <weskaggs@primate.ucdavis.edu> · d4f21713
      William Skaggs authored
      	* app/display/gimpdisplayshell-callbacks.c: allow modifier key events
      	for Shift and Control to be propagated even if button1 is down.
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpforegroundselecttool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimpvectortool.c: change  modifier_key method
      	to prevent any bad consequences.
      	* app/tools/gimprectangletool.[ch]:  add modifier_key handler, and use it
      	to toggle "make-square" if Shift is pressed while button1 is down, and
      	"fixed-center" if Control is pressed while button1 is down.
      	* app/tools/gimprectangleselecttool.c (gimp_rectangle_tool_modifier_key):
      	call rectangle tool modifer_key method after chaining up.
  5. 15 Aug, 2006 1 commit
    • Michael Natterer's avatar
      app/tools/Makefile.am app/tools/tools-types.h new GimpPaintTool subclass · 269ab384
      Michael Natterer authored
      2006-08-15  Michael Natterer  <mitch@gimp.org>
      	* app/tools/Makefile.am
      	* app/tools/tools-types.h
      	* app/tools/gimpbrushtool.[ch]: new GimpPaintTool subclass which
      	completely handles brush outline drawing.
      	* app/tools/gimppainttool.[ch]: removed all brush stuff here.
      	* app/tools/gimpclonetool.[ch]
      	* app/tools/gimpconvolvetool.[ch]
      	* app/tools/gimpdodgeburntool.[ch]
      	* app/tools/gimperasertool.[ch]
      	* app/tools/gimppaintbrushtool.[ch]
      	* app/tools/gimpsmudgetool.[ch]: derive from GimpBrushTool.
      	* app/tools/gimpinktool.c: removed now obsolete cursor_update()
  6. 02 Aug, 2006 1 commit
    • Raphael Quinet's avatar
      Allow some paint tools to not suggest using the Ctrl modifier. · 8960d6ac
      Raphael Quinet authored
      2006-08-02  Raphael Quinet  <raphael@gimp.org>
      	* app/tools/gimppainttool.c (gimp_paint_tool_oper_update): Allow
      	some paint tools to not suggest using the Ctrl modifier.
      	* app/tools/gimpvectortool.c (gimp_vector_tool_status_update):
      	slightly more elegant way to free the status string.
  7. 01 Aug, 2006 1 commit
    • Raphael Quinet's avatar
      app/widgets/gimpwidgets-utils.h New utility function to build status bar · a54a6b16
      Raphael Quinet authored
      2006-08-02  Raphael Quinet  <raphael@gimp.org>
      	* app/widgets/gimpwidgets-utils.h
      	* app/widgets/gimpwidgets-utils.c (gimp_suggest_modifiers):
      	New utility function to build status bar messages while allowing
      	dynamic names for the modifiers.
      	* app/tools/gimppainttool.h
      	* app/tools/gimppainttool.c: Added new members to the class in
      	order to allow paint tools to set different status messages for
      	the normal case or when drawing a line.
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpconvolvetool.c
      	* app/tools/gimpdodgeburntool.c
      	* app/tools/gimperasertool.c
      	* app/tools/gimpsmudgetool.c: Use the new functions to set
      	appropriate messages in the status bar.  Still work in progress,
      	partial fix for bug #124040.
      	* app/tools/gimpvectortool.c: Use gimp_suggest_modifiers().
  8. 30 Jul, 2006 1 commit
  9. 28 May, 2006 1 commit
    • Michael Natterer's avatar
      removed all code except info dialog updating and chain up instead. · 5af5606a
      Michael Natterer authored
      2006-05-28  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimpcolorpickertool.c (gimp_color_picker_tool_picked):
      	removed all code except info dialog updating and chain up instead.
      	* app/tools/gimpcolortool.c (gimp_color_tool_real_picked): newly
      	added default implementation. Also updates the colormap dialog and
      	picks into a palette.
      	* app/tools/gimppainttool.c (gimp_paint_tool_color_picked):
      	removed. The default impl. does this and much more now. Hopefully
      	fixes bug #320660.
  10. 22 May, 2006 1 commit
    • Michael Natterer's avatar
      remove some #if 0'ed cruft. · 4a9a8054
      Michael Natterer authored
      2006-05-22  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimppainttool.c (gimp_paint_tool_control): remove
      	some #if 0'ed cruft.
  11. 21 May, 2006 1 commit
    • Michael Natterer's avatar
      prefix with GIMP_TOOL_ACTION_ · b3c20ed2
      Michael Natterer authored
      2006-05-21  Michael Natterer  <mitch@gimp.org>
      	* app/tools/tools-enums.h (enum GimpToolAction): prefix with
      	* app/display/gimpdisplay.c
      	* app/display/gimpdisplayshell.c
      	* app/tools/gimpaligntool.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpcolortool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpdrawtool.c
      	* app/tools/gimpforegroundselecttool.c
      	* app/tools/gimpfreeselecttool.c
      	* app/tools/gimpimagemaptool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimpnewrectselecttool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimpselectiontool.c
      	* app/tools/gimptexttool.c
      	* app/tools/gimptool.c
      	* app/tools/gimptransformtool.c
      	* app/tools/gimpvectortool.c
      	* app/tools/tool_manager.c: changed accordingly. Introduce a
      	common style for GimpTool::control()'s switch() block. Some
      	minor cleanups.
  12. 15 May, 2006 1 commit
  13. 06 May, 2006 1 commit
  14. 12 Apr, 2006 1 commit
  15. 28 Mar, 2006 2 commits
  16. 25 Mar, 2006 1 commit
    • Michael Natterer's avatar
      app/tools/gimptool.[ch] add "gboolean proximity" parameter to · 2ed407b5
      Michael Natterer authored
      2006-03-25  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimptool.[ch]
      	* app/tools/tool_manager.[ch]: add "gboolean proximity" parameter
      	to GimpTool::oper_update() in order to emphasize its importance
      	and to avoid peeking around in the GimpDisplayShell struct.
      	* app/tools/gimpbycolorselecttool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpcolortool.c
      	* app/tools/gimpcurvestool.c
      	* app/tools/gimpforegroundselecttool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimpnewrectselecttool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimprectangletool.[ch]
      	* app/tools/gimpselectiontool.c
      	* app/tools/gimptransformtool.c
      	* app/tools/gimpvectortool.c: changed accordingly. Got rid of
      	quite some "display/gimpdisplayshell.h" includes.
      	* app/display/gimpdisplayshell-callbacks.c
      	(gimp_display_shell_canvas_tool_events): pass shell->proximity to
  17. 13 Dec, 2005 1 commit
  18. 03 Oct, 2005 1 commit
  19. 03 Sep, 2005 1 commit
    • Michael Natterer's avatar
      some general cleanup. · 09454fb2
      Michael Natterer authored
      2005-09-03  Michael Natterer  <mitch@gimp.org>
      	* app/base/pixel-region.[ch]: some general cleanup.
      	(pixel_region_init_data): new functions which initialize pixel
      	regions on TempBufs and on raw contiguous arrays of pixel data.
      	(pixel_region_configure): fixed a bug that has probably been there
      	forever: when processing contiguous (non-tiled) data, interpret
      	the original x and y coordinates of the region as offsets into
      	the data. Before this fix, the initial x and y were simply ignored
      	(by using them in a broken way), thus always forcing the upper
      	left corner of the region being the beginning of the passed data.
      	Lots of code was working around this problem by setting the
      	pixel_region's data pointer to the proper starting pixel of the
      	region in the middle the buffer.
      	* libgimp/gimppixelrgn.c: some general cleanup.
      	(gimp_pixel_rgn_configure): same fix as above. Fortunately, nobody
      	seems to know that libgimp pixel regions can be used on arrays of
      	data, just as core ones. Only two plug-ins were using this
      	feature, and they are antique and written by spencer and federico,
      	respectively. They both don't use offsets into the buffers and are
      	not affected by this change. It's highly unlikely that anybody out
      	there knows/uses this feature, so it can IMHO be safely changed.
      	* app/base/temp-buf.c
      	* app/core/gimpbuffer.c
      	* app/core/gimpdrawable-combine.c
      	* app/core/gimpdrawable-preview.c
      	* app/core/gimpimage-preview.c
      	* app/core/gimplayer.c
      	* app/paint/gimpbrushcore.c
      	* app/paint/gimpclone.c
      	* app/paint/gimpconvolve.c
      	* app/paint/gimpdodgeburn.c
      	* app/paint/gimppaintcore.c
      	* app/paint/gimpsmudge.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimppainttool.c: use the pixel_region_init_foo()
      	functions instead of initializing regions of TempBufs and raw data
      	manually. Removed lots of workarounds for the broken offset
      	handling. The changed places of code are much more readable now.
  20. 20 Aug, 2005 1 commit
    • Michael Natterer's avatar
      renamed puclic functions, defines and enums to live in a proper "boundary" · 4fb1743f
      Michael Natterer authored
      2005-08-20  Michael Natterer  <mitch@gimp.org>
      	* app/base/boundary.[ch]: renamed puclic functions, defines and
      	enums to live in a proper "boundary" namespace. Cleaned up and
      	simplified internal code even more.
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-stroke.c
      	* app/core/gimplayer-floating-sel.c
      	* app/paint/gimppaintcore-stroke.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpfuzzyselecttool.c
      	* app/tools/gimppainttool.c: changed accordingly.
  21. 18 Jul, 2005 1 commit
  22. 26 Jun, 2005 1 commit
    • Tor Lillqvist's avatar
      Store the GimpBrushCore::brush_bound_segs as sorted (the result of · 8cf79496
      Tor Lillqvist authored
      2005-06-26  Tor Lillqvist  <tml@novell.com>
      	* app/tools/gimppainttool.c (gimp_paint_tool_draw): Store the
      	GimpBrushCore::brush_bound_segs as sorted (the result of
      	sort_boundary), as the only place where it is used
      	(gimp_draw_tool_draw_boundary()) would sort it each time it is
      	called anyway.
      	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_boundary):
      	Correspondingly we now don't have to sort the boundary here.
  23. 07 May, 2005 1 commit
    • Sven Neumann's avatar
      app/tools/gimppainttool.[ch] unified tool and paint-tool statusbar APIs. · 27042a7b
      Sven Neumann authored
      2005-05-07  Sven Neumann  <sven@gimp.org>
      	* app/tools/gimppainttool.[ch]
      	* app/tools/gimptool.[ch]: unified tool and paint-tool statusbar APIs.
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcolortool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpfuzzyselecttool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimpnewrectselecttool.c
      	* app/tools/gimprectangletool.c
      	* app/tools/gimprectselecttool.c
      	* app/tools/gimpvectortool.c: changed accordingly.
      	* app/tools/gimpselectiontool.c: give more hints in the statusbar.
      	Some of the selection tools should probably override these.
  24. 13 Apr, 2005 1 commit
    • Sven Neumann's avatar
      register handler for the "GimpPaint" log domain. · aca3e853
      Sven Neumann authored
      2005-04-13  Sven Neumann  <sven@gimp.org>
      	* app/app_procs.c: register handler for the "GimpPaint" log domain.
      	* app/core/gimpdatafactory.c (gimp_data_factory_init): don't load
      	any data if TRUE is passed for no_data.
      	* app/tools/gimppainttool.c (gimp_paint_tool_draw): handle a NULL
      	brush gracefully.
  25. 04 Apr, 2005 1 commit
  26. 01 Apr, 2005 2 commits
  27. 04 Mar, 2005 2 commits
    • Michael Natterer's avatar
      in the spirit of the fix for bug #165618 below, allow tools to specify up · 1870b5d5
      Michael Natterer authored
      2005-03-04  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimptoolcontrol.[ch]: in the spirit of the fix for bug
      	#165618 below, allow tools to specify up to two "object actions"
      	(actions which select brushes, patterns, ...).
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbucketfilltool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimptexttool.c: set actions where appropriate.
      	* app/actions/actions.c (action_select_object): allow objects to
      	be selected by index.
      	* app/actions/context-actions.c: added actions which select
      	objects by index. Not really used but the same actions can be used
      	to generically pass any GimpActionSelectType enum value to the
      	action callbacks.
      	* app/actions/tools-actions.c
      	* app/actions/tools-commands.[ch]: added actions and callbacks
      	for the new generic tool objects.
      	Also fixed and cleaned up the new generic tool value code.
    • Michael Natterer's avatar
      Fixed bug #165618: · a303b44c
      Michael Natterer authored
      2005-03-04  Michael Natterer  <mitch@gimp.org>
      	Fixed bug #165618:
      	* app/tools/gimptoolcontrol.[ch]: added new functions
      	gimp_tool_control_set/get_action_value_1/2/3/4() which allow tools
      	to specify their primary, secondary etc. "values" using
      	action-identifying strings like "context/context-brush-radius-set".
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbucketfilltool.c
      	* app/tools/gimpcolortool.c
      	* app/tools/gimpinktool.c
      	* app/tools/gimppainttool.c: set actions where appropriate. Still
      	needs some way to document the mapping in a user-visible way.
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbucketfilltool.c: tab removal and minor cleanups.
      	* app/actions/actions.[ch]: added utility function
      	* app/actions/tools-actions.c
      	* app/actions/tools-commands.[ch]: added actions and callbacks for
      	setting the ink blob size, aspect and angle. Also added actions
      	and callbacks for the new generic tool values.
  28. 22 Aug, 2004 1 commit
    • Sven Neumann's avatar
      app/tools/Makefile.am added gimp_tool_motion_constrain(), · 0c2d88e9
      Sven Neumann authored
      2004-08-22  Sven Neumann  <sven@gimp.org>
      	* app/tools/Makefile.am
      	* app/tools/tools-utils.[ch]: added gimp_tool_motion_constrain(),
      	* app/paint/gimppaintcore.[ch]: removed gimp_paint_core_constrain().
      	* app/tools/gimppainttool.c: changed accordingly.
      	* app/tools/gimpblendtool.[ch]: use gimp_tool_motion_constrain()
      	instead of duplicating that functionality.
      	* app/tools/gimpmeasuretool.c: use gimp_tool_motion_constrain()
      	instead of implementing completely different constraints.
  29. 19 Jul, 2004 1 commit
    • Michael Natterer's avatar
      removed enum GimpPaintCoreState. · 85c2b2dd
      Michael Natterer authored
      2004-07-19  Michael Natterer  <mitch@gimp.org>
      	* app/paint/gimppaintcore.h: removed enum GimpPaintCoreState.
      	* app/paint/paint-enums.h: added enum GimpPaintState (with values
      	that have a name space).
      	* app/paint/gimppaintcore.[ch]
      	* app/paint/gimpairbrush.c
      	* app/paint/gimpbrushcore.c
      	* app/paint/gimpclone.c
      	* app/paint/gimpconvolve.c
      	* app/paint/gimpdodgeburn.c
      	* app/paint/gimperaser.c
      	* app/paint/gimpink.c
      	* app/paint/gimppaintbrush.c
      	* app/paint/gimppaintcore-stroke.c
      	* app/paint/gimpsmudge.c
      	* app/tools/gimppainttool.c: changed accordingly.
      	* app/tools/gimpinktool.c: removed unused #include.
  30. 13 Jul, 2004 1 commit
  31. 04 Jul, 2004 1 commit
    • Simon Budig's avatar
      app/actions/dialogs-commands.c app/display/gimpdisplayshell-dnd.c · e7af53b0
      Simon Budig authored
      2004-07-04  Simon Budig  <simon@gimp.org>
      	* app/actions/dialogs-commands.c
      	* app/display/gimpdisplayshell-dnd.c
      	* app/gui/preferences-dialog.c
      	* app/tools/gimppainttool.c
      	* app/widgets/gimpdeviceinfo.c
      	* app/widgets/gimpitemtreeview.c
      	* plug-ins/imagemap/imap_selection.c
      	* tools/pdbgen/pdb/gradients.pdb: Small changes to make GIMP
      	CVS compile with gcc 2.95 again. Mostly double semicolons and
      	variable declarations after other stuff. Spotted by Martin
      	* app/pdb/gradients_cmds.c: regenerated.
      	(there is one issue left, see his patch at
      	http://old.homeip.net/martin/gcc-2.95.diff, I did not
      	copy the #define va_copy __va_copy, since I don't know
      	what happens here.)
  32. 03 Jul, 2004 1 commit
  33. 01 Jul, 2004 1 commit
  34. 30 Jun, 2004 1 commit
    • Michael Natterer's avatar
      Fixed a 1.2 -> 2.0 regression that was forgotten: · 40229803
      Michael Natterer authored
      2004-06-30  Michael Natterer  <mitch@gimp.org>
      	Fixed a 1.2 -> 2.0 regression that was forgotten:
      	* app/widgets/widgets-enums.[ch]: added enum GimpColorPickState
      	which can be one of { NEW, UPDATE }.
      	* app/widgets/gimppaletteeditor.[ch]: changed #if 0'ed function
      	gimp_palette_editor_update_color() to
      	gimp_palette_editor_pick_color() and restored the functionality of
      	creating/updating colors via this API
      	Changed button_press handler to only edit the color on double
      	click if it's really a double click on the same color.
      	Fixes bug #141381.
      	* app/tools/gimpcolorpickeroptions.[ch]: added boolean property
      	"add-to-palette" and a GUI for it.
      	* app/core/gimpmarshal.list
      	* app/tools/gimpcolortool.[ch]: added a GimpColorPickState
      	parameter to the "color_picked" signal. Pass NEW on button_press
      	and UPDATE on motion.
      	* app/tools/gimpcurvestool.c (gimp_curves_tool_color_picked)
      	* app/tools/gimplevelstool.c (gimp_levels_tool_color_picked)
      	* app/tools/gimppainttool.c (gimp_paint_tool_color_picked):
      	changed accordingly
      	* app/tools/gimpcolorpickertool.c (gimp_color_picker_tool_picked):
      	If "add-to-palette" is TRUE, get the palette editor and call
  35. 28 Jun, 2004 1 commit
    • Michael Natterer's avatar
      removed again (tools must not draw outside GimpDrawTool::draw()). · c1861260
      Michael Natterer authored
      2004-06-28  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimpclonetool.c (gimp_clone_tool_button_release):
      	removed again (tools must not draw outside GimpDrawTool::draw()).
      	(gimp_clone_tool_draw): removed check for gimp_draw_tool_is_active()
      	because the draw function would not be called if the draw tool was
      	inactive. Simplified check for whether or not to draw the src
      	* app/tools/gimppainttool.c (gimp_paint_tool_button_release):
      	pause/resume the draw tool across all button_release actions so
      	tools (clone) have a chance to draw different things depending on
      	gimp_tool_control_is_active(tool->control). Fixes bug #145022.
  36. 24 Jun, 2004 1 commit
    • Michael Natterer's avatar
      app/tools/gimptool.[ch] added boolean return value to · 02b91f66
      Michael Natterer authored
      2004-06-24  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimptool.[ch]
      	* app/tools/tool_manager.[ch]: added boolean return value to
      	GimpTool::key_press() which indicates if the event was handled.
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpeditselectiontool.[ch]
      	* app/tools/gimptransformtool.c
      	* app/tools/gimpvectortool.c: return TRUE if the key event was handled.
      	* app/tools/gimppainttool.c: removed key_press() implementation.
      	* app/widgets/Makefile.am
      	* app/widgets/widgets-types.h
      	* app/widgets/gimpcontrollerkeyboard.[ch]: new controller class
      	which takes GdkEventKey and emits controller events for all
      	combinations of modifiers and cursor keys.
      	* app/widgets/gimpcontrollers.[ch]: added new function
      	* app/display/gimpdisplayshell-callbacks.c: if a key event was not
      	handled by the active tool, dispatch it to the keyboard controller.
      	* etc/controllerrc: add a keyboard controller which is configured
      	to do the same as the removed gimp_paint_tool_key_press().
  37. 23 Jun, 2004 1 commit
    • Michael Natterer's avatar
      added signal "set-brush" which is G_SIGNAL_RUN_LAST so we can connect · 7e52ed90
      Michael Natterer authored
      2004-06-23  Michael Natterer  <mitch@gimp.org>
      	* app/paint/gimpbrushcore.[ch]: added signal "set-brush" which is
      	G_SIGNAL_RUN_LAST so we can connect before and after the default
      	implementation. Moved the brush setting and outline invalidation
      	stuff to its default implementation. Also remember the outline's
      	width and height. Call gimp_brush_core_set_brush() from
      	gimp_brush_core_invalidate_cache() so "set-brush" is emitted
      	whenever a generated brush becomes dirty.
      	* app/tools/gimppainttool.c (gimp_paint_tool_button_press): don't
      	pause/resume but rather stop/start the draw_tool. Fixes straight
      	line preview aretefacts.
      	(gimp_paint_tool_oper_update): set the brush_core's brush before
      	starting the draw_tool.
      	(gimp_paint_tool_draw): never free the brush_core's cached brush
      	outline because the brush_core does that by itself now.
      	(gimp_paint_tool_set_brush_after): new callbacks which pause and
      	resume the draw_tool. Fixes brush outline artefacts when modifying
      	the current brush e.g. by using the mouse wheel.