1. 06 Aug, 2004 1 commit
    • Michael Natterer's avatar
      Transform tool cleanup: · db821565
      Michael Natterer authored
      2004-08-06  Michael Natterer  <mitch@gimp.org>
      
      	Transform tool cleanup:
      
      	* app/tools/gimptransformtool.[ch]: added new virtual function
      	GimpTransformTool::dialog_update().
      	Made wrapper for ::recalc() public and function
      	transform_bounding_box() private.
      	Call ::dialog_update() and transform_bounding_box() from the
      	::recalc() wrapper.
      
      	* app/tools/gimpperspectivetool.[ch]
      	* app/tools/gimprotatetool.[ch]
      	* app/tools/gimpscaletool.[ch]
      	* app/tools/gimpsheartool.[ch]: turned all info_dialog update
      	functions into GimpTransformTool::dialog_update() implementations
      	and don't call them from ::recalc(), also removed calls to
      	transform_bounding_box(); both functions are called by the parent
      	class now. Call gimp_transform_tool_recalc() when dialog values
      	were changed, not the tool's internal function.
      	Moved all static variables to the instance structs.
      db821565
  2. 29 Jul, 2004 1 commit
    • Michael Natterer's avatar
      Replaced the concept of having a boolean indicating if an undo step · 4b582b48
      Michael Natterer authored
      2004-07-29  Michael Natterer  <mitch@gimp.org>
      
      	Replaced the concept of having a boolean indicating if an undo
      	step dirties the image by a bitfield indicating which parts
      	of the image are dirtied:
      
      	* app/core/core-enums.[ch]: reordered two values in enum
      	GimpUndoType, added GIMP_DIRTY_IMAGE_SIZE to enum GimpDirtyMask.
      
      	The values of GimpDirtyMask are still questionable and will
      	probably change...
      
      	* app/core/gimpimage.[ch]: removed signal "undo_start" and added
      	a GimpDirtyMask parameter to the "dirty" and "clean" signals.
      
      	* app/core/gimpimage-undo.[ch] (gimp_image_undo_push): replaced
      	"gboolean dirties_image" by "GimpDirtyMask dirty_mask" and pass
      	it to gimp_image_dirty().
      
      	(gimp_image_undo_group_start): added *ugly* code which tries to
      	figure GimpDirtyMask from the group's GimpUndoType and store it in
      	the GimpUndoGroup. Call gimp_image_dirty() instead of the removed
      	gimp_image_undo_start(). This means the undo group now dirties the
      	image just like one of its undo steps, but that's no problem since
      	undoing cleans it in the same way.
      
      	* app/core/gimpundo.[ch]: s/dirties_image/dirty_mask/g
      
      	(gimp_undo_pop): emit clean/dirty signals *before* performing the
      	actual undo step so listeners can detach from the image before it
      	is changed by undo.
      
      	* app/core/gimpimage-undo-push.c (gimp_image_undo_push_*): pass a
      	GimpDirtyMask instead of TRUE/FALSE to gimp_image_undo_push().
      
      	* app/core/gimpimagemap.[ch]: removed "gboolean interactive"
      	because it makes no sense to use GimpImageMap noninteractively.
      	Don't freeze()/thaw() undo while the image_map is active which
      	fixes many ways of trashing the image's undo state but probably
      	introduces new ways of doing evil things.
      
      	* app/display/gimpdisplay-foreach.c
      	* app/display/gimpdisplayshell-handlers.c: changed according
      	to the GimpImage::clean()/dirty() signal changes. Small fixes
      	in the quit dialog's dirty image container.
      
      	* app/tools/gimptoolcontrol.[ch]: added member and API to
      	set/get the dirty_mask.
      
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpimagemaptool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimptexttool.c
      	* app/tools/gimptransformtool.c: whenever setting "preserve" to
      	FALSE, also set a "dirty_mask" which specifies on which image
      	changes the tool wants to be canceled.
      
      	* app/tools/tool_manager.c: removed "undo_start" connection and
      	connect to both "dirty" *and* "clean" to check if the active_tool
      	needs to be canceled. Cancel the tool only if the dirty_mask
      	passed in the signal has common bits with the tool's dirty_mask.
      
      	Fixes bug #109561 and probably opens some new ones...
      4b582b48
  3. 13 Jul, 2004 1 commit
  4. 02 Jul, 2004 1 commit
  5. 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
      	gimp_controllers_get_keyboard().
      
      	* 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().
      02b91f66
  6. 18 Jun, 2004 2 commits
  7. 14 Jun, 2004 6 commits
    • Michael Natterer's avatar
      use gimp_draw_tool_is_active() instead of · 4b9a4db2
      Michael Natterer authored
      2004-06-14  Michael Natterer  <mitch@gimp.org>
      
      	* app/tools/gimptransformtool.c: use gimp_draw_tool_is_active()
      	instead of GIMP_IS_DISPLAY(draw_tool->gdisp).
      4b9a4db2
    • Philip Lafleur's avatar
      Disable preview in corrective mode, and notify preview when switching · 905b0e03
      Philip Lafleur authored
      2004-06-14  Philip Lafleur  <plafleur@cvs.gnome.org>
      
      	* app/tools/gimptransformtool.c: Disable preview in corrective
      	mode, and notify preview when switching transform type and
      	direction.
      905b0e03
    • Philip Lafleur's avatar
      Preview is now only used for layer transformations. · 4ad2d717
      Philip Lafleur authored
      2004-06-14  Philip Lafleur  <plafleur@cvs.gnome.org>
      
      	* app/tools/gimptransformtool.c: Preview is now only used for
      	layer transformations.
      4ad2d717
    • Michael Natterer's avatar
      app/tools/gimpperspectivetool.c app/tools/gimprotatetool.c · 4c68bd87
      Michael Natterer authored
      2004-06-14  Michael Natterer  <mitch@gimp.org>
      
      	* app/tools/gimpperspectivetool.c
      	* app/tools/gimprotatetool.c
      	* app/tools/gimpscaletool.c
      	* app/tools/gimpsheartool.c: removed calls to
      	gimp_transform_tool_expose_preview() from all
      	GimpTransformTool::motion() implementations...
      
      	* app/tools/gimptransformtool.c: ...and call it after calling
      	tr_tool_class->preview().
      4c68bd87
    • Michael Natterer's avatar
      remember the last used GimpCursorFormat so changing the format in prefs · 1082ee6b
      Michael Natterer authored
      2004-06-14  Michael Natterer  <mitch@gimp.org>
      
      	* app/display/gimpdisplayshell.[ch]: remember the last used
      	GimpCursorFormat so changing the format in prefs applies
      	instantly, and not after the next tool change.
      
      	* app/display/gimpdisplayshell-cursor.[ch]
      	* app/tools/gimptool.[ch]
      	* app/tools/gimptoolcontrol.[ch]
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcolortool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpcurvestool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimptransformtool.c: s/GdkCursorType/GimpCursorType/g
      1082ee6b
    • Philip Lafleur's avatar
      Preview wasn't being turned off before performing a transformation. Also · 71b4d891
      Philip Lafleur authored
      2004-06-14  Philip Lafleur  <plafleur@cvs.gnome.org>
      
      	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): Preview
      	wasn't being turned off before performing a transformation. Also
      	converted tabs to spaces.
      71b4d891
  8. 13 Jun, 2004 1 commit
    • Philip Lafleur's avatar
      Fixed incorrect logic that caused perfect-but-slow pointer tracking to be · afb3f5c1
      Philip Lafleur authored
      2004-06-12  Philip Lafleur  <plafleur@cvs.gnome.org>
      
      	* app/display/gimpdisplayshell-callbacks.c: Fixed incorrect logic that
      	caused perfect-but-slow pointer tracking to be used in tools that
      	don't request exact mode.
      
      	* app/display/Makefile.am:
      	* app/display/gimpdisplayshell-appearance.[ch]:
      	* app/display/gimpdisplayshell-callbacks.c:
      	* app/display/gimpdisplayshell.[ch]:
      	* app/display/gimpdisplayshell-preview.[ch]: added
      	* app/tools/gimpperspectivetool.c:
      	* app/tools/gimprotatetool.c:
      	* app/tools/gimpscaletool.c:
      	* app/tools/gimpsheartool.c:
      	* app/tools/gimptransformoptions.[ch]:
      	* app/tools/gimptransformtool.[ch]: Implemented live transformation
      	previews, available through tool options. Fixes bug #108172.
      afb3f5c1
  9. 12 Jun, 2004 1 commit
  10. 04 Jun, 2004 1 commit
    • Michael Natterer's avatar
      cursors/Makefile.am cursors/cursor-none.png new empty cursor images. · 714d63fc
      Michael Natterer authored
      2004-06-05  Michael Natterer  <mitch@gimp.org>
      
      	* cursors/Makefile.am
      	* cursors/cursor-none.png
      	* cursors/xbm/cursor-none.xbm: new empty cursor images.
      
      	* app/config/gimpdisplayconfig.[ch]
      	* app/config/gimprc-blurbs.h
      	* app/widgets/widgets-enums.h
      	* app/widgets/gimpcursor.c
      	* app/display/gimpdisplayshell-cursor.c
      	* app/tools/gimppainttool.[ch]
      	* app/tools/gimpinktool.c
      	* app/gui/preferences-dialog.c: applied patches from Philip
      	Lafleur which implement hiding the cursor completely for paint
      	tools. Changed the name of the config option from
      	"hide-paint-tool-cursor" to "show-paint-tool-cursor" and default
      	to TRUE because this needs the brush outline being visible while
      	painting to be really usable. Fixes bug #132163.
      
      	* app/widgets/widgets-enums.h: renamed all GimpCursorType and
      	GimpToolCursorType enum values to GIMP_CURSOR_* and
      	GIMP_TOOL_CURSOR_*.
      
      	* app/widgets/gimpcursor.c
      	* app/display/gimpdisplayshell-callbacks.c
      	* app/display/gimpdisplayshell-cursor.c
      	* app/tools/gimp*tool.c; changed accordingly.
      714d63fc
  11. 14 Apr, 2004 1 commit
    • Michael Natterer's avatar
      Get rid of the "current_context" which was in fact just a bunch of global · 18d9161e
      Michael Natterer authored
      2004-04-15  Michael Natterer  <mitch@gimp.org>
      
      	Get rid of the "current_context" which was in fact just a bunch of
      	global variables. Instead, pass the needed context all the way
      	from the GUI and the PDB to the core. This is a prerequisite for
      	macro recording and generally helps separating the various
      	subsystems from each other. Work in progress...
      
      	* app/core/gimp.[ch]: removed member "current_context" and
      	gimp_[get|set]_current_context().
      
      	* app/core/gimp-edit.[ch]
      	* app/core/gimpdrawable-blend.[ch]
      	* app/core/gimpdrawable-bucket-fill.[ch]
      	* app/core/gimpdrawable-offset.[ch]
      	* app/core/gimpdrawable-transform.[ch]
      	* app/core/gimpimage-crop.[ch]
      	* app/core/gimpimage-flip.[ch]
      	* app/core/gimpimage-merge.[ch]
      	* app/core/gimpimage-resize.[ch]
      	* app/core/gimpimage-rotate.[ch]
      	* app/core/gimpimage.[ch]
      	* app/core/gimpimagefile.[ch]
      	* app/core/gimpitem-linked.[ch]
      	* app/core/gimpitem.[ch]
      	* app/core/gimplayer.[ch]
      	* ...
      18d9161e
  12. 31 Mar, 2004 1 commit
  13. 19 Mar, 2004 1 commit
    • Michael Natterer's avatar
      app/gui/color-notebook.c (color_notebook_new) app/tools/gimpcroptool.c · fddb9ce0
      Michael Natterer authored
      2004-03-19  Michael Natterer  <mitch@gimp.org>
      
      	* app/gui/color-notebook.c (color_notebook_new)
      	* app/tools/gimpcroptool.c (crop_info_create)
      	* app/tools/gimptransformtool.c (gimp_transform_tool_dialog):
      	explicitely set a default response for dialog buttons which were
      	created using gtk_dialog_add_buttons().
      fddb9ce0
  14. 15 Mar, 2004 3 commits
    • Michael Natterer's avatar
      emit "update" signals from the drawable before and after setting tiles and · 59b77c35
      Michael Natterer authored
      2004-03-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawable.c (gimp_drawable_set_tiles_full): emit
      	"update" signals from the drawable before and after setting tiles
      	and offsets.
      
      	* app/core/gimpdrawable-offset.c (gimp_drawable_offset)
      	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste)
      	* app/core/gimpimage-undo-push.c (undo_pop_layer_mod, _channel_mod)
      	* app/text/gimptextlayer.c (gimp_text_layer_render)
      	* app/tools/gimptransformtool.c (gimp_transform_tool_doit):
      	removed calls to gimp_drawable_update().
      
      	* app/core/gimpdrawable-offset.c (gimp_drawable_offset): don't
      	push an undo step before calling gimp_drawable_set_tiles()
      	but simply pass push_undo == TRUE and the undo_desc.
      59b77c35
    • Michael Natterer's avatar
      added "offset_x" and "offset_y" parameters to GimpDrawable::set_tiles(). · 1ef5fa93
      Michael Natterer authored
      2004-03-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawable.[ch]: added "offset_x" and "offset_y"
      	parameters to GimpDrawable::set_tiles().
      
      	(gimp_drawable_set_tiles): removed the "GimpImageType" parameter.
      
      	(gimp_drawable_set_tiles_full): new function adding type, offset_x
      	and offset_y parameters.
      
      	(gimp_drawable_real_set_tiles): set the drawable's offsets from
      	the offset parameters and its size from the passed TileManager's
      	size. Emit "size_changed" accordingly.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-offset.c
      	* app/core/gimpdrawable-transform.c
      	* app/core/gimpimage-convert.c
      	* app/core/gimpimage-undo-push.c
      	* app/core/gimplayer.c
      	* app/text/gimptextlayer.c
      	* app/tools/gimptransformtool.c: changed accordingly: removed
      	calls to gimp_viewable_size_changed() and all sorts of hackish
      	assignments of the drawable's width/height/offset_x/offset_y
      	properties.
      1ef5fa93
    • Michael Natterer's avatar
      don't call gimp_image_flush(). · 79776036
      Michael Natterer authored
      2004-03-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/text/gimptextlayer.c (gimp_text_layer_render): don't call
      	gimp_image_flush().
      
      	* app/tools/gimpxttool.c (gimp_text_tool_apply): call it here
      	instead.
      
      	Now that we have a common place that exchanges drawable->tiles,
      	we can abstract away boundary invalidation for this operation:
      
      	* app/core/gimpdrawable.c (gimp_drawable_real_set_tiles):
      	call gimp_drawable_invalidate_boundary() before setting
      	the new tiles.
      
      	* app/core/gimpchannel.c (gimp_channel_set_tiles)
      	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste)
      	* app/core/gimpimage-undo-push.c (undo_pop_layer_mod)
      	* app/core/gimplayer.c (gimp_layer_scale) (gimp_layer_resize)
      	(gimp_layer_flip) (gimp_layer_rotate) (gimp_layer_transform)
      	* app/text/gimptextlayer.c (gimp_text_layer_render): removed
      	calls to gimp_drawable_invalidate_boundary() from all functions
      	which finally call gimp_drawable_real_set_tiles().
      
      	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): no
      	need to set channel->bounds_known to FALSE, because
      	gimp_drawable_set_tiles() already did this.
      79776036
  15. 14 Mar, 2004 1 commit
    • Sven Neumann's avatar
      app/tools/gimpcolorpickertool.c app/tools/gimpcroptool.c · 63bb032f
      Sven Neumann authored
      2004-03-14  Sven Neumann  <sven@gimp.org>
      
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpimagemaptool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimptransformtool.c: don't set tool dialogs transient
      	to the image window. Fixes bug #128833.
      63bb032f
  16. 13 Mar, 2004 3 commits
    • Michael Natterer's avatar
      Completed the fix for bug #136702: · 2498c665
      Michael Natterer authored
      2004-03-13  Michael Natterer  <mitch@gimp.org>
      
      	Completed the fix for bug #136702:
      
      	* app/core/gimpitem.[ch]: added "gboolean supersample" and
      	"gint recursion_level" to GimpItem::transform().
      
      	* app/core/gimpitem-linked.[ch]	(gimp_item_linked_transform): ditto.
      
      	* app/core/gimpdrawable-transform.[ch]: added "recursion_level"
      	parameters and removed the RECURSION_LEVEL #define.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable.c
      	* app/core/gimplayer.c
      	* app/vectors/gimpvectors.c: changed accordingly.
      
      	* app/tools/gimptransformoptions.[ch]: added new property
      	"recursion_level" which is not serializable and has no GUI. Pretty
      	useless, but it's IMHO better to hardcode the default value here
      	than in gimpdrawable-transform.c
      
      	* app/tools/gimptransformtool.c: changed accordingly.
      
      	* tools/pdbgen/pdb/transform_tools.pdb: hardcode "recursion_level"
      	to 3.
      
      	* app/pdb/transform_tools_cmds.c: regenerated.
      2498c665
    • Sven Neumann's avatar
      added new virtual function GimpDrawable::set_tiles(). · c179f9ac
      Sven Neumann authored
      2004-03-13  Sven Neumann  <sven@gimp.org>
      
      	* app/core/gimpdrawable.[ch]: added new virtual function
      	GimpDrawable::set_tiles().
      
      	* app/core/gimpchannel.c
      	* app/core/gimplayer.c: push an undo before chaining up in
      	set_tiles().
      
      	* app/core/gimpdrawable-transform.c
      	* app/core/gimpimage-convert.c
      	* app/tools/gimptransformtool.c: use gimp_drawable_set_tiles()
      	instead of fiddling with the drawable's tile manager directly.
      c179f9ac
    • Raphael Quinet's avatar
      added new "supersample" property to GimpTransformOptions and added · 59dfdac9
      Raphael Quinet authored
      2004-03-13  Raphael Quinet  <quinet@gamers.org>
      
      	* app/tools/gimptransformoptions.[ch]: added new "supersample"
      	property to GimpTransformOptions and added corresponding check
      	button in the option dialog for the transform tools.
      
      	* app/core/gimpdrawable-transform.[ch],
      	* app/core/gimpdrawable.c,
      	* app/tools/gimptransformtool.c: new "gboolean supersample"
      	parameter added to gimp_drawable_transform_tiles_affine() and
      	gimp_drawable_transform_affine().
      
      	* tools/pdbgen/pdb/transform_tools.pdb: ditto.  For the PDB calls,
      	the supersample parameter is set to FALSE for "rotate" and "shear"
      	and set to TRUE for "perspective", "scale" and "transform_2d".
      
      	* app/pdb/transform_tools_cmds.c: regenerated.
      
      	The new "supersample" option lets the user decide if the
      	transformations should use supersampling (RECURSION_LEVEL 3) or
      	not.  This fixes both bug #136702 and bug #109817.  Hopefully for
      	good, this time.
      59dfdac9
  17. 10 Mar, 2004 1 commit
  18. 21 Jan, 2004 2 commits
    • Michael Natterer's avatar
      added boolean return value to GimpTool::initialize(). Returning FALSE · 613e328f
      Michael Natterer authored
      2004-01-21  Michael Natterer  <mitch@gimp.org>
      
      	* app/tools/gimptool.[ch]: added boolean return value to
      	GimpTool::initialize(). Returning FALSE means the tool could not
      	be initialized and doesn't want to receive button events.
      	Return TRUE from the default implementation.
      
      	* app/tools/tool_manager.[ch]: added boolean return value to
      	tool_manager_initialize_active(). Don't set the tool's display or
      	drawable if initialize() returns FALSE.
      
      	* app/display/gimpdisplayshell-callbacks.c: don't send button
      	events to the tool if initialize() returns FALSE.
      
      	* app/tools/gimpbrightnesscontrasttool.c
      	* app/tools/gimpcolorbalancetool.c
      	* app/tools/gimpcolorizetool.c
      	* app/tools/gimpcurvestool.c
      	* app/tools/gimphuesaturationtool.c
      	* app/tools/gimplevelstool.c
      	* app/tools/gimpposterizetool.c
      	* app/tools/gimpthresholdtool.c: return FALSE for NULL and indexed
      	drawables.
      
      	* app/tools/gimpimagemaptool.c: always return TRUE because our
      	subclasses already checked if the active drawable is OK.
      
      	* app/tools/gimptransformtool.c: return FALSE for layers with
      	masks. Fixes bug #132089. Some random cleanups.
      613e328f
    • Michael Natterer's avatar
      renamed info_dialog_popdown() to info_dialog_hide() and · 73d258eb
      Michael Natterer authored
      2004-01-21  Michael Natterer  <mitch@gimp.org>
      
      	* app/gui/info-dialog.[ch]: renamed info_dialog_popdown() to
      	info_dialog_hide() and info_dialog_popup() to info_dialog_present().
      	Added info_dialog_show() which just shows the dialog without
      	calling gtk_window_present().
      
      	* app/gui/info-window.c
      	* app/gui/view-commands.c
      	* app/tools/gimptransformtool.c: changed accordingly.
      
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpperspectivetool.c
      	* app/tools/gimprotatetool.c
      	* app/tools/gimpscaletool.c
      	* app/tools/gimpsheartool.c: use info_dialog_show() so the dialog
      	doesn't grab the focus away from the canvas. Fixes bug #132041.
      73d258eb
  19. 14 Nov, 2003 1 commit
    • Michael Natterer's avatar
      libgimpwidgets/gimpquerybox.c configure the labels in the message dialog · 6eb77294
      Michael Natterer authored
      2003-11-14  Michael Natterer  <mitch@gimp.org>
      
      	* libgimpwidgets/gimpquerybox.c
      	* app/widgets/gimpwidgets-utils.c: configure the labels in the
      	message dialog and the query boxes to do automatic word wrapping
      	to be HIG compliant.
      
      	* app/app_procs.c
      	* app/batch.c
      	* app/config/gimpconfig-deserialize.c
      	* app/config/gimpconfig-path.c
      	* app/config/gimpconfig-utils.c
      	* app/config/gimpconfigwriter.c
      	* app/config/gimpscanner.c
      	* app/core/gimpbrush.c
      	* app/core/gimpbrushgenerated.c
      	* app/core/gimpbrushpipe.c
      	* app/core/gimpdatafactory.c
      	* app/core/gimpgradient.c
      	* app/core/gimpimage-merge.c
      	* app/core/gimpimage.c
      	* app/core/gimpimagefile.c
      	* app/core/gimplayer-floating-sel.c
      	* app/core/gimppalette.c
      	* app/core/gimppattern.c
      	* app/core/gimpselection.c
      	* app/display/gimpdisplayshell.c
      	* app/file/file-utils.c
      	* app/gui/brush-select.c
      	* app/gui/dialogs-commands.c
      	* app/gui/drawable-commands.c
      	* app/gui/edit-commands.c
      	* app/gui/file-commands.c
      	* app/gui/file-new-dialog.c
      	* app/gui/font-select.c
      	* app/gui/gradient-select.c
      	* app/gui/gui.c
      	* app/gui/image-commands.c
      	* app/gui/layers-commands.c
      	* app/gui/palette-select.c
      	* app/gui/palettes-commands.c
      	* app/gui/pattern-select.c
      	* app/gui/preferences-dialog.c
      	* app/gui/select-commands.c
      	* app/gui/stroke-dialog.c
      	* app/gui/tool-options-menu.c
      	* app/gui/vectors-commands.c
      	* app/gui/view-commands.c
      	* app/plug-in/plug-in-message.c
      	* app/plug-in/plug-in.c
      	* app/plug-in/plug-ins.c
      	* app/text/gimptextlayer-xcf.c
      	* app/text/gimptextlayer.c
      	* app/tools/gimpcurvestool.c
      	* app/tools/gimphuesaturationtool.c
      	* app/tools/gimplevelstool.c
      	* app/tools/gimptransformtool.c
      	* app/vectors/gimpvectors-export.c
      	* app/widgets/gimpdatafactoryview.c
      	* app/widgets/gimphelp.c
      	* app/widgets/gimptemplateview.c
      	* app/widgets/gimptooloptionseditor.c
      	* app/xcf/xcf.c
      	* tools/pdbgen/pdb/image.pdb: removed explicit newlines from
      	messages. Reduced number of translatable strings by making many
      	file error messages the same. Quote single words and filenames
      	with 'foo', not "foo". Replaced some more "drawable" by "layer".
      	General message cleanup and consistency check.
      
      	* app/pdb/image_cmds.c: regenerated.
      6eb77294
  20. 08 Nov, 2003 1 commit
    • Michael Natterer's avatar
      To be multihead safe, each new window or menu needs to be associated with · b62f8e9a
      Michael Natterer authored
      2003-11-08  Michael Natterer  <mitch@gimp.org>
      
      	To be multihead safe, each new window or menu needs to be
      	associated with a GdkScreen or it will pop up on the default
      	screen.
      
      	* libgimpwidgets/gimpquerybox.[ch]
      	* app/display/gimpdisplayshell-layer-select.[ch]
      	* app/widgets/widgets-types.h
      	* app/widgets/gimpitemfactory.[ch]
      	* app/widgets/gimpitemtreeview.[ch]
      	* app/widgets/gimptemplateview.[ch]
      	* app/widgets/gimptooldialog.[ch]
      	* app/widgets/gimpviewabledialog.[ch]
      	* app/gui/channels-commands.[ch]
      	* app/gui/color-notebook.[ch]
      	* app/gui/convert-dialog.[ch]
      	* app/gui/edit-commands.[ch]
      	* app/gui/grid-dialog.[ch]
      	* app/gui/image-commands.[ch]
      	* app/gui/info-dialog.[ch]
      	* app/gui/layers-commands.[ch]
      	* app/gui/offset-dialog.[ch]
      	* app/gui/resize-dialog.[ch]
      	* app/gui/stroke-dialog.[ch]
      	* app/gui/templates-commands.[ch]
      	* app/gui/vectors-commands.[ch]: added "GtkWidget *parent"
      	paramaters to all functions which create menus, popups or windows
      	and pass "parent" to gimp_dialog_new() or one of the various
      	wrappers around it. As a side effect, this fixes bug #61092.
      
      	* app/widgets/gimpdialogfactory.[ch]: added "GdkScreen *screen"
      	instead of "parent" here since there are no possible parent
      	windows on startup.
      
      	* app/display/gimpdisplayshell-callbacks.c
      	(gimp_display_shell_origin_button_press): added a quick hack to
      	send a display to another screen: click the origin button with the
      	middle mouse button.
      
      	* app/display/gimpdisplayshell.c
      	(gimp_display_shell_screen_changed): don't chain up
      	undonditionally (don't crash).
      
      	* libgimpwidgets/gimpdialog.c (gimp_dialog_new_valist): set the
      	dialog's screen from a non-GtkWidget parent widget. The rest of
      	non-window parent widget handling is still unimplemented.
      
      	* libgimpwidgets/gimpcolorbutton.c
      	* app/widgets/gimpcolormapeditor.c
      	* app/widgets/gimpcolorpanel.c
      	* app/widgets/gimpcomponenteditor.c
      	* app/widgets/gimpcontainereditor.c
      	* app/widgets/gimpcontainergridview.c
      	* app/widgets/gimpcontainerpopup.c
      	* app/widgets/gimpcontainertreeview.c
      	* app/widgets/gimpdatafactoryview.c
      	* app/widgets/gimpdevicestatus.c
      	* app/widgets/gimpdockable.c
      	* app/widgets/gimpdrawabletreeview.c
      	* app/widgets/gimperrorconsole.c
      	* app/widgets/gimpgradienteditor.c
      	* app/widgets/gimphelp.c
      	* app/widgets/gimppaletteeditor.c
      	* app/widgets/gimppreview-popup.c
      	* app/widgets/gimpselectioneditor.c
      	* app/widgets/gimpsessioninfo.c
      	* app/widgets/gimptoolbox-color-area.c
      	* app/widgets/gimptoolbox-indicator-area.c
      	* app/widgets/gimptoolbox.c
      	* app/widgets/gimptooloptionseditor.c
      	* app/widgets/gimpvectorstreeview.c
      	* app/widgets/gimpwidgets-utils.c
      	* app/display/gimpdisplayshell-scale.c
      	* app/display/gimpnavigationview.c
      	* app/gui/module-browser.c
      	* app/gui/dialogs-commands.c
      	* app/gui/dialogs-constructors.c
      	* app/gui/drawable-commands.c
      	* app/gui/file-commands.c
      	* app/gui/file-new-dialog.c
      	* app/gui/file-save-dialog.c
      	* app/gui/gradient-editor-commands.c
      	* app/gui/gui-vtable.c
      	* app/gui/gui.c
      	* app/gui/info-window.c
      	* app/gui/palette-import-dialog.c
      	* app/gui/palettes-commands.c
      	* app/gui/qmask-commands.c
      	* app/gui/select-commands.c
      	* app/gui/tool-options-commands.c
      	* app/gui/view-commands.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpimagemaptool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimptransformtool.c
      	* plug-ins/FractalExplorer/FractalExplorer.c
      	* plug-ins/gfig/gfig.c
      	* plug-ins/gflare/gflare.c: changed accordingly. Changed all
      	menu_position funcs to place the menu on the right screen.
      b62f8e9a
  21. 06 Nov, 2003 1 commit
    • Michael Natterer's avatar
      removed our own action_area API and use GtkDialog's one. Create all · 66c5dd87
      Michael Natterer authored
      2003-11-06  Michael Natterer  <mitch@gimp.org>
      
      	* libgimpwidgets/gimpdialog.[ch]: removed our own action_area API
      	and use GtkDialog's one. Create all dialogs without separator.
      	Changed almost everything else too. Fixes bug #125143.
      
      	* libgimpwidgets/gimpquerybox.c
      	* libgimpwidgets/gimpunitmenu.c: changed accordingly.
      
      	* libgimp/gimpexport.[ch]: ditto. Renamed enum GimpExportReturnType
      	to GimpExportReturn.
      
      	* libgimp/gimpcompat.h: added a #define for the old name.
      
      	* themes/Default/gtkrc: increased action_area border to 6 pixels.
      
      	* app/display/gimpdisplayshell-filter-dialog.c
      	* app/display/gimpdisplayshell-scale.c
      	* app/display/gimpprogress.c
      	* app/gui/brush-select.c
      	* app/gui/channels-commands.c
      	* app/gui/color-notebook.c
      	* app/gui/convert-dialog.c
      	* app/gui/file-new-dialog.c
      	* app/gui/font-select.c
      	* app/gui/gradient-editor-commands.c
      	* app/gui/gradient-select.c
      	* app/gui/grid-dialog.c
      	* app/gui/image-commands.c
      	* app/gui/info-window.c
      	* app/gui/layers-commands.c
      	* app/gui/module-browser.c
      	* app/gui/offset-dialog.c
      	* app/gui/palette-import-dialog.c
      	* app/gui/palette-select.c
      	* app/gui/pattern-select.c
      	* app/gui/preferences-dialog.c
      	* app/gui/qmask-commands.c
      	* app/gui/resize-dialog.c
      	* app/gui/resolution-calibrate-dialog.c
      	* app/gui/stroke-dialog.c
      	* app/gui/templates-commands.c
      	* app/gui/user-install-dialog.c
      	* app/gui/vectors-commands.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpimagemaptool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimptransformtool.c
      	* app/widgets/gimptexteditor.c
      	* app/widgets/gimptooldialog.[ch]
      	* app/widgets/gimpviewabledialog.[ch]
      	* app/widgets/gimpwidgets-utils.c: changed accordingly and increased
      	the dialogs' outer borders to 6 pixels all over the place.
      
      	* plug-ins/*/*.c: changed accordingly. The plug-ins may be
      	arbitrarily broken, I tested none of them.
      66c5dd87
  22. 31 Oct, 2003 1 commit
    • Michael Natterer's avatar
      should actually call gimp_item_flip() on the path to transform. Fixes bug · 2edd422a
      Michael Natterer authored
      2003-10-31  Michael Natterer  <mitch@gimp.org>
      
      	* app/tools/gimpfliptool.c (gimp_flip_tool_transform): should
      	actually call gimp_item_flip() on the path to transform.
      	Fixes bug #125895.
      
      	* app/tools/gimptransformtool.c (gimp_transform_tool_notify_type):
      	if the transform tool is in the CREATING state, don't skip the
      	whole callback but still copy the transform type and direction
      	from the options to the tool. Fixes preview of transformed paths.
      2edd422a
  23. 20 Oct, 2003 1 commit
    • Sven Neumann's avatar
      app/widgets/Makefile.am added a simple utility function · 445d6bfc
      Sven Neumann authored
      2003-10-20  Sven Neumann  <sven@gimp.org>
      
      	* app/widgets/Makefile.am
      	* app/widgets/gimptooldialog.[ch]: added a simple utility function
      	gimp_tool_dialog_new() that creates a GimpVieawableDialog based on
      	GimpToolInfo and registers it with the toplevel dialog factory.
      
      	* app/tools/gimpbrightnesscontrasttool.c
      	* app/tools/gimpcolorbalancetool.c
      	* app/tools/gimpcolorizetool.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpcurvestool.c
      	* app/tools/gimphistogramtool.c
      	* app/tools/gimphuesaturationtool.c
      	* app/tools/gimpimagemaptool.[ch]
      	* app/tools/gimplevelstool.c
      	* app/tools/gimpmeasuretool.c: use the new functionality; removed
      	the shell_identifier since it can be created from the tool name.
      
      	* app/tools/gimpperspectivetool.c
      	* app/tools/gimpposterizetool.c
      	* app/tools/gimprotatetool.c
      	* app/tools/gimpscaletool.c
      	* app/tools/gimpsheartool.c
      	* app/tools/gimpthresholdtool.c
      	* app/tools/gimptransformtool.[ch]: removed the shell_identifier
      	here as well. Should also be ported to gimp_tool_dialog_new().
      
      	* NEWS: removed stuff that isn't new at all.
      445d6bfc
  24. 06 Oct, 2003 1 commit
    • Michael Natterer's avatar
      Treat changes to the selection like changes to any other drawable: · f0372cad
      Michael Natterer authored
      2003-10-06  Michael Natterer  <mitch@gimp.org>
      
      	Treat changes to the selection like changes to any other drawable:
      
      	* app/core/gimpchannel.c
      	* app/core/gimpchannel-combine.c: call gimp_drawable_update() after
      	changing the channel.
      
      	* app/core/gimpimage.[ch]: added struct GimpImageFlushAccumulator
      	with one member "gboolean mask_changed". Connect to "update" of
      	the selection and set accum.mask_changed to TRUE in the callback.
      	Added default implementation for GimpImage::flush() and emit
      	"mask_changed" there.
      
      	Unrelated:
      	* app/core/gimpimage.h: removed GimpGuide struct...
      	* app/core/gimpimage-guides.h: ...and added it here.
      
      	* app/core/gimpimage-undo-push.c (undo_pop_mask)
      	(undo_pop_channel_mod): don't distinguish between selection and
      	non-selection channels and just call gimp_drawable_update().
      
      	* app/core/gimpundo.h
      	* app/core/gimpimage-undo.c: removed "gboolean mask_changed" from
      	the GimpUndoAccumulator struct since we don't have to care about
      	that signal explicitly any more.
      
      	* app/display/gimpdisplay-foreach.[ch]: removed gimp_displays_flush().
      
      	* tools/pdbgen/pdb/display.pdb (displays_flush_invoker): call
      	gimp_image_flush() on all images so the flush accumulator is
      	honored.
      
      	This generalization enables the removal of more special purpose
      	code which was needed to treat the selection different:
      
      	* app/core/gimpimage-mask-select.[ch]: removed...
      
      	* app/core/gimpchannel-select.[ch]: ...and added under a new name
      	because it's not selection specific any more.
      
      	* app/core/gimpimage-mask.[ch]: removed...
      
      	* app/core/gimpselection.[ch]: ...added the two remaining
      	functions here. Removed all calls to gimp_image_mask_changed().
      
      	* app/core/Makefile.am
      	* app/core/gimp-edit.c
      	* app/core/gimpdrawable-transform.c
      	* app/core/gimpimage-scale.c
      	* app/core/gimpimage-snap.c
      	* app/display/gimpdisplayshell.c
      	* app/gui/channels-commands.c
      	* app/gui/layers-commands.c
      	* app/gui/select-commands.c
      	* app/gui/vectors-commands.c
      	* app/tools/gimpbycolorselecttool.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpellipseselecttool.c
      	* app/tools/gimpfreeselecttool.c
      	* app/tools/gimpfuzzyselecttool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimprectselecttool.c
      	* app/tools/gimptransformtool.c
      	* app/widgets/gimpchanneltreeview.c
      	* app/widgets/gimpselectioneditor.c
      	* app/widgets/gimpvectorstreeview.c
      	* app/xcf/xcf-save.c
      	* tools/pdbgen/pdb/paths.pdb
      	* tools/pdbgen/pdb/selection.pdb
      	* tools/pdbgen/pdb/selection_tools.pdb: changed accordingly.
      
      	* app/core/gimpdrawable-bucket-fill.c
      	* app/core/gimpimage-colormap.c
      	* app/core/gimplayer-floating-sel.c
      	* app/core/gimplayer.c
      	* app/gui/image-menu.c
      	* app/paint/gimppaintcore.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpinkoptions.c
      	* app/tools/gimpvectortool.c: removed useless and/or obsolete
      	#includes.
      
      	* app/pdb/display_cmds.c
      	* app/pdb/paths_cmds.c
      	* app/pdb/selection_cmds.c
      	* app/pdb/selection_tools_cmds.c: regenerated.
      f0372cad
  25. 12 Sep, 2003 1 commit
    • Michael Natterer's avatar
      app/core/gimpimage-mask-select.c (gimp_image_mask_select_vectors) · 9c13b724
      Michael Natterer authored
      2003-09-12  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpimage-mask-select.c (gimp_image_mask_select_vectors)
      	* app/paint/gimppaintcore-stroke.c (gimp_paint_core_stroke_vectors)
      	* app/display/gimpdisplayshell.c (gimp_display_shell_draw_vector)
      	* app/tools/gimpdrawtool.c (gimp_draw_tool_real_draw)
      	* app/tools/gimptransformtool.c (gimp_transform_tool_draw)
      	* app/tools/gimpvectortool.c (gimp_vector_tool_vectors_visible)
      	(gimp_vector_tool_draw): all callers of gimp_stroke_interpolate():
      	don't leak the returned GimpCoords array and don't crash if it's
      	NULL.
      
      	* app/tools/gimpvectortool.[ch]: added VECTORS_SELECT_VECTOR state
      	which enables activating any visible GimpVectors on any display.
      
      	(gimp_vector_tool_on_handle)
      	(gimp_vector_tool_on_curve): added a GimpVectors parameter so we
      	can check for vectors which are not vector_tool->vectors.
      
      	(gimp_vector_tool_oper_update): iterate gdisp->gimage->vectors
      	to figure if we are hovering any visible vectors and set
      	VECTORS_SELECT_VECTOR.
      
      	(gimp_vector_tool_button_press): catch VECTORS_SELECT_VECTOR and
      	start editing the selected vectors. Also make it the image's
      	active_vectors.
      
      	(gimp_vector_tool_button_release): removed unneeded call to
      	gimp_viewable_invalidate_preview(vectors).
      
      	Random cleanup all over the place.
      9c13b724
  26. 04 Sep, 2003 1 commit
    • Michael Natterer's avatar
      removed the _push_undo() and _invalidate() wrappers. · a33f06e7
      Michael Natterer authored
      2003-09-04  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpimage-mask.[ch]: removed the _push_undo() and
      	_invalidate() wrappers.
      
      	* app/core/gimpimage-mask-select.c
      	* app/core/gimpimage-undo-push.c
      	* app/core/gimplayer-floating-sel.c
      	* app/tools/gimptransformtool.c: changed accordingly.
      a33f06e7
  27. 03 Sep, 2003 2 commits
    • Michael Natterer's avatar
      removed the _bounds() and _boundary() wrappers. · 008e3e20
      Michael Natterer authored
      2003-09-03  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpimage-mask.[ch]: removed the _bounds() and
      	_boundary() wrappers.
      
      	* app/core/gimpdrawable.c
      	* app/display/gimpdisplayshell-selection.c
      	* app/gui/image-commands.c
      	* app/gui/layers-commands.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimptransformtool.c
      	* app/xcf/xcf-save.c: changed accordingly.
      008e3e20
    • Michael Natterer's avatar
      removed the _value() and _is_empty() wrappers. · e8378499
      Michael Natterer authored
      2003-09-03  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpimage-mask.[ch]: removed the _value() and
      	_is_empty() wrappers.
      
      	* app/display/gimpdisplayshell.[ch]: removed
      	gimp_display_shell_mask_value() since it is not used.
      
      	* app/core/gimpdrawable-blend.c
      	* app/core/gimpdrawable-transform.c
      	* app/core/gimpedit.c
      	* app/core/gimpimage.c
      	* app/core/gimplayer.c
      	* app/gui/image-menu.c
      	* app/gui/vectors-menu.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpfliptool.c
      	* app/tools/gimpinktool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimpselectiontool.c
      	* app/tools/gimptransformtool.c
      	* tools/pdbgen/pdb/misc_tools.pdb: changed accordingly.
      
      	* app/pdb/misc_tools_cmds.c: regenerated.
      e8378499
  28. 30 Aug, 2003 1 commit
    • Michael Natterer's avatar
      made "tool-info" a G_PARAM_CONSTRUCT_ONLY property. · c049f82e
      Michael Natterer authored
      2003-08-30  Michael Natterer  <mitch@gimp.org>
      
      	* app/tools/gimptool.c: made "tool-info" a G_PARAM_CONSTRUCT_ONLY
      	property.
      
      	* app/tools/tool_manager.c (tool_manager_tool_changed): pass it to
      	g_object_new() instead of setting it after tool creation.
      
      	* app/tools/gimppainttool.[ch]
      	* app/tools/gimptransformtool.[ch]: removed ugly
      	"gboolean notify_connected" hacks and connect to the signals in
      	GObject::constructor().
      
      	* app/tools/gimppainttool.c (gimp_paint_tool_contstructor): create
      	paint_tool->core here from tool->tool_info->paint_info->paint_type.
      
      	* app/tools/gimpairbrushtool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpconvolvetool.c
      	* app/tools/gimpdodgeburntool.c
      	* app/tools/gimperasertool.c
      	* app/tools/gimppaintbrushtool.c
      	* app/tools/gimppenciltool.c
      	* app/tools/gimpsmudgetool.c: changed accordingly. Removed lots of
      	useless class_init functions. Converted tabs to spaces. Cleanup.
      c049f82e