Commit graph

2449 commits

Author SHA1 Message Date
Michael Natterer
db52679583 Merged the "soc-2006-healing-brush" branch. That branch is now officially
2006-09-02  Michael Natterer  <mitch@gimp.org>

	Merged the "soc-2006-healing-brush" branch. That branch is now
	officially closed and all further fixes and changes have to be
	applied to HEAD.

	Did some minor adjustments, mostly small indentation and spacing
	fixes. Derive the tool from the newly introduced GimpBrushTool
	which did not exist when the branch was created.

	Thanks a lot to Kevin Sookocheff for this nice contribution!

	* app/paint/paint-enums.[ch]: new enum GimpHealAlignMode.

	* app/paint/Makefile.am
	* app/paint/makefile.msc
	* app/paint/gimpheal.[ch]
	* app/paint/gimphealoptions.[ch]: the heal core and its options.

	* app/paint/gimp-paint.c: register the heal core.

	* app/tools/Makefile.am
	* app/tools/makefile.msc
	* app/tools/gimphealtool.[ch]: the heal tool.

	* app/tools/gimp-tools.c: register the heal tool.

	* app/tools/gimppaintoptions-gui.c: show the widgets that are used
	by heal.

	* app/widgets/gimphelp-ids.h: the heal help ID.

	* tools/pdbgen/stddefs.pdb
	* tools/pdbgen/pdb/paint_tools.pdb: the heal PDB wrappers.

	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c
	* cursors/Makefile.am
	* cursors/makefile.msc
	* cursors/tool-heal.png
	* cursors/xbm/tool-heal.xbm
	* cursors/xbm/tool-heal-mask.xbm: a new cursor for the heal tool.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/makefile.msc
	* themes/Default/images/tools/stock-tool-heal-16.png
	* themes/Default/images/tools/stock-tool-heal-22.png: new stock
	icons for the heal tool.

	* app/pdb/internal_procs.c
	* app/pdb/paint_tools_cmds.c
	* libgimp/gimppainttools_pdb.[ch]: regenerated.
2006-09-02 18:54:35 +00:00
Michael Natterer
d999499640 This commit *should* fix the remaining missing contexts for preview
2006-09-01  Michael Natterer  <mitch@gimp.org>

	This commit *should* fix the remaining missing contexts for
	preview creation. Eek at me if it doesn't.

	* app/core/gimpundo.c: pass a struct containing a context to
	gimp_undo_create_preview_idle().

	* app/widgets/gimpundoeditor.[ch]: implement
	GimpDocked::set_context(), remember the context and use it for the
	undo treeview.

	* app/widgets/gimpviewrenderergradient.c: disable debugging output.
2006-09-01 21:18:03 +00:00
Michael Natterer
7e7e7480a6 added a context property and use it when creating GimpViews.
2006-09-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpaction.[ch]: added a context property and use
	it when creating GimpViews.

	* app/actions/file-actions.c: set the context on the "Open Recent"
	actions.
2006-09-01 17:12:29 +00:00
Michael Natterer
cc8553fd1e implement set_context() and set the view renderers' contexts.
2006-09-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainercombobox.c: implement set_context() and
	set the view renderers' contexts.

	(gimp_container_combo_box_insert_item): unselect after inserting
	the first item, GimpContainerView doesn't select items by itself.

	* app/dialogs/image-new-dialog.c: create a local context for the
	combo box, connect to the context's "template-changed" signal
	instead of the combo boxed's "select-item", fix some stuff and
	don't leak the local GimpTemplate.
2006-09-01 16:55:37 +00:00
Michael Natterer
a6dbb78dfa added GimpContext parameters and create the GimpView with that context.
2006-09-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpviewabledialog.[ch]: added GimpContext
	parameters and create the GimpView with that context.

	* app/widgets/gimpcolordialog.[ch]
	* app/dialogs/convert-dialog.[ch]
	* app/dialogs/desaturate-dialog.[ch]
	* app/dialogs/grid-dialog.[ch]
	* app/dialogs/image-properties-dialog.[ch]
	* app/dialogs/layer-add-mask-dialog.[ch]
	* app/dialogs/offset-dialog.[ch]
	* app/dialogs/print-size-dialog.[ch]
	* app/dialogs/resize-dialog.[ch]
	* app/dialogs/scale-dialog.[ch]
	* app/dialogs/stroke-dialog.[ch]
	* app/dialogs/template-options-dialog.[ch]
	* app/dialogs/vectors-options-dialog.[ch]: added GimpContext
	parameters here too and pass them to gimp_viewable_dialog_new().

	* app/actions/colormap-editor-commands.c
	* app/actions/drawable-commands.c
	* app/actions/gradient-editor-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palette-editor-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c
	* app/dialogs/channel-options-dialog.c
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/image-merge-layers-dialog.c
	* app/dialogs/image-scale-dialog.c
	* app/dialogs/layer-options-dialog.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-scale.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimpcontrollereditor.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimptoolbox-color-area.c: pass contexts to above
	dialog constructors.
2006-09-01 11:26:54 +00:00
Sven Neumann
eeb0b1477f fixed includes for gimp_rectangle_intersect().
2006-09-01  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewrendererdrawable.c: fixed includes for
	gimp_rectangle_intersect().
2006-09-01 09:04:03 +00:00
Michael Natterer
5e0576af9d ref the context.
2006-09-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpviewrenderer.c
	(gimp_view_renderer_real_set_context): ref the context.
2006-09-01 08:59:24 +00:00
Michael Natterer
875342af5d support setting a context even if the viewed container's children_type is
2006-08-31  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainerview.c
	(gimp_container_view_real_set_container)
	(gimp_container_view_real_set_context)
	(gimp_container_view_item_selected)
	(gimp_container_view_thaw): support setting a context even if
	the viewed container's children_type is *not* a property of
	GimpContext. This removes a major restriction of container
	views and allows to get rid of some hacks:

	* app/widgets/gimpitemtreeview.[ch]: removed GimpContext member
	and implement GimpContainerView::set_context() instead of
	GimpDocked::set_context().

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimplayertreeview.c: use GimpContainerView's context
	instead of GimpItemTreeView's and implement GimpContainerView's
	set_context() instead of GimpDocked's.

	* app/actions/actions.c (action_data_get_gimp)
	(action_data_get_context): don't special-case GimpItemTreeView any
	more, it's just like a normal GimpContainerView now.

	* app/widgets/gimpcontrollerlist.c
	(gimp_controller_list_constructor): set a context on the
	GimpContainerView so its renderers have a context to use.
2006-08-31 21:40:16 +00:00
Michael Natterer
0699627ad8 remember the context passed to gimp_thumb_box_new() and use it instead of
2006-08-31  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpthumbbox.[ch]: remember the context passed to
	gimp_thumb_box_new() and use it instead of the user context when
	creating thumbnails.
2006-08-31 19:02:22 +00:00
Michael Natterer
fcdb536372 removed GimpContext member I added before deciding it needs to be added to
2006-08-31  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpgradienteditor.[ch] (struct GimpGradientEditor):
	removed GimpContext member I added before deciding it needs to be
	added to GimpDataEditor.

	Use GimpDataEditor's context instead of the bogus one. Also use
	the data editor's context instead of the user context wherever it
	was used.

	* app/widgets/gimppaletteeditor.c: use GimpDataEditor's context
	instead of the user context here too.
2006-08-31 18:54:20 +00:00
Michael Natterer
663b44c988 new funtion which returns TRUE if any of the gradient's segments refer to
2006-08-31  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpgradient.[ch] (gimp_gradient_has_fg_bg_segments):
	new funtion which returns TRUE if any of the gradient's segments
	refer to FG of BG.

	(gimp_gradient_segment_get_left_color_type)
	(gimp_gradient_segment_set_left_color_type)
	(gimp_gradient_segment_get_right_color_type)
	(gimp_gradient_segment_set_right_color_type): new accessors for
	the new GimpGradientColor stuff.

	(gimp_gradient_segment_split_midpoint)
	(gimp_gradient_segment_range_flip)
	(gimp_gradient_segment_range_replicate): split, flip and replicate
	the segments' color_types too.

	* app/widgets/gimpviewrenderer.[ch]: added virtual functions
	::set_context() and ::invalidate() and call them.

	* app/widgets/gimpviewrenderergradient.[ch]: implement the virtual
	functions. Connect to the context's "foreground-changed" and
	"background-changed" signals if the gradient contains FG or BG
	colors and invalidate the renderer whenever they change.

	* app/core/gimp-gradients.c: removed signal connections which
	invalidated the gradients on FG/BG changes of the user context.
2006-08-31 18:47:13 +00:00
Michael Natterer
b53aa45a76 Changed GimpViewable preview rendering to have a context to get
2006-08-29  Michael Natterer  <mitch@gimp.org>

	Changed GimpViewable preview rendering to have a context to get
	FG/BG/whatever from. Use the context to enable dynamic FG/BG
	colors in gradients. Fixes bug #127676 and bug #352214. Addresses
	bug #128367 (doesn't fix it because there's no loading/saving and
	no GUI yet).

	* app/core/core-enums.[ch]: added enum GimpGradientColor to enable
	specifying gradient colors in terms of foreground and background.

	* app/core/gimpgradient.[ch]: added color_type members to the
	GimpGradientSegment struct and honor them in
	gimp_gradient_get_color_at(). Added GimpContext parameters to all
	functions which finally call get_color_at().

	* app/core/gimp-gradients.c: use the new method to implement the
	builtin gradients.

	* app/core/gimpviewable.[ch]: added GimpContext parameters to all
	get_preview() and get_pixbuf() functions.

	* app/core/gimpbrush.c
	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpgradient.c
	* app/core/gimpimage-preview.[ch]
	* app/core/gimpimagefile.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpundo.[ch]
	* app/text/gimpfont.c
	* app/vectors/gimpvectors-preview.[ch]: changed ::get_preview()
	and ::get_pixbuf() implementations accordingly.

	* app/core/gimpdrawable-blend.c
	* app/core/gimppalette-import.[ch]
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/resize-dialog.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpnavigationeditor.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimptexttool.c
	* app/actions/gradient-editor-commands.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpbrusheditor.[ch]
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcellrendererviewable.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpclipboard.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainercombobox.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerentry.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpdnd.[ch]
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimppropwidgets.[ch]
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpthumbbox.[ch]
	* app/widgets/gimptoolbox-image-area.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptooloptionseditor.c
	* app/widgets/gimpundoeditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpview-popup.[ch]
	* app/widgets/gimpview.[ch]
	* app/widgets/gimpviewablebutton.c
	* app/widgets/gimpviewabledialog.c
	* app/widgets/gimpviewrenderer.[ch]
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrendererbrush.c
	* app/widgets/gimpviewrendererbuffer.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrenderergradient.c
	* app/widgets/gimpviewrendererimage.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb: added tons of GimpContext members
	and parameters, implement GimpDocked::set_context() in many
	widgets. Pass these locally remembered contexts to GimpViewable
	functions. Did some minor cleanups on the way. There are still
	some minor FIXMEs around where the code uses a NULL context (which
	is allowed by the APIs)

	* app/pdb/drawable_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/image_cmds.c: regenerated.
2006-08-29 21:44:51 +00:00
Sven Neumann
e6350b15dd app/core/gimpimage-duplicate.c (gimp_image_duplicate) a somewhat hackish
2006-08-29  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-duplicate.c (gimp_image_duplicate)
	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_image): a
	somewhat hackish implementation of what's suggested in bug #353246.
	Let the save dialog default to the folder of the duplicated image.
2006-08-29 09:55:34 +00:00
Michael Natterer
9ad621c200 made set_container() a virtual function of the GimpContainerView
2006-08-28  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainerview.[ch]: made set_container() a
	virtual function of the GimpContainerView interface.
2006-08-28 19:40:20 +00:00
Sven Neumann
f234f146e7 app/tools/gimptextoptions.[ch] app/tools/gimptexttool.c make the text
2006-08-28  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.[ch]
	* app/tools/gimptexttool.c
	* app/widgets/gimptexteditor.[ch]: make the text editor transient
	to the display shell.
2006-08-28 15:26:25 +00:00
Michael Natterer
3db2d10539 gimp_show_message_dialog() takes a GtkWidget, cast the dialog variable
2006-08-28  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppdbdialog.c (gimp_pdb_dialog_run_callback):
	gimp_show_message_dialog() takes a GtkWidget, cast the dialog
	variable accordingly.
2006-08-28 09:06:10 +00:00
Sven Neumann
bc3c41b648 removed "(Fastest)" from "None" and added translation context (bug
2006-08-23  Sven Neumann  <sven@gimp.org>

        * libgimpbase/gimpbaseenums.[ch]: removed "(Fastest)" from "None"
        and added translation context (bug #343576).

        * app/actions/select-actions.c (select_actions): added translation
        context for "None" and "All".

        * app/widgets/gimpactiongroup.c: strip translation context from
        all labels.

        * libgimpwidgets/gimppageselector.c: fixed singular form.
2006-08-23 14:55:39 +00:00
Hans Breuer
37e4b80204 updated
2006-08-15  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated

	* app/xcf/xcf-save.c(1464) : error C2036: 'void *' : unknown size
	pointer arithmetics on void a pointer looks like a GCC extension
	* app/tools/gimpbrightnesscontrasttool.c
	  app/tools/gimpcolorbalancetool.c
	  app/tools/gimphuesaturationtool.c
	  app/tools/gimpcolorizetool.c : #include "core/gimp.h" for gimp_message
	* app/tools/gimpiscissorstool.c : use RINT() rather than rint()
	* app/widgets/gimpcontrollerlist.c : #include "gimpwidgets-utils.h"
	for gimp_show_message_dialog
	* app/core/gimpprogress.c(229) : 'gimp_progress_message' must
	return a value
2006-08-15 15:13:08 +00:00
Sven Neumann
c2fb42003a introduced a simple message dialog to use when there's no progress but a
2006-08-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-utils.[ch]: introduced a simple message
	dialog to use when there's no progress but a parent widget.

	* app/dialogs/convert-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/tools/gimpimagemaptool.c
	* app/widgets/gimpactionview.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppdbdialog.c
	* app/widgets/gimpvectorstreeview.c: use the new utility function
	instead of g_message().
2006-08-11 12:56:26 +00:00
Sven Neumann
3fbf7436c9 added a GError parameter to file_utils_find_proc().
2006-08-10  Sven Neumann  <sven@gimp.org>

	* app/file/file-utils.[ch]: added a GError parameter to
	file_utils_find_proc().

	* app/actions/file-commands.c
	* app/dialogs/file-save-dialog.c
	* app/file/file-open.c
	* app/widgets/gimpdnd-xds.c
	* tools/pdbgen/pdb/fileops.pdb: changed accordingly.

	* app/pdb/fileops_cmds.c: regenerated.
2006-08-10 21:22:05 +00:00
Sven Neumann
fa7427487f allow to configure the ellipsize property of the text renderer.
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcontainercombobox.[ch]: allow to configure the
	ellipsize property of the text renderer.

	* app/dialogs/image-new-dialog.c: don't pack the template
combo-box
	expanding, unset the ellipsize property.
2006-08-08 22:15:46 +00:00
Sven Neumann
48d054e8d4 added new function gimp_message() as a replacement for g_message(). Part
2006-08-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added new function gimp_message() as a
	replacement for g_message(). Part of the fix for bug #347214.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/actions/layers-commands.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimagefile.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/pdb/gimppdb.c
	* app/tools/gimpblendtool.c
	* 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
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-private.h
	* app/xcf/xcf-save.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/palette.pdb: use gimp_message() instead of
	gimp_message() whenever we have a GimpProgress.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-08-08 21:06:36 +00:00
Sven Neumann
14b9553a2c added missing cast.
2006-08-07  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpactiongroup.c
	(gimp_action_group_add_string_actions): added missing cast.
2006-08-07 08:31:50 +00:00
Michael Natterer
0005f0ff5d app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these
2006-08-05  Michael Natterer  <mitch@gimp.org>

	* app/pdb/Makefile.am
	* app/pdb/gimppluginprocedure.[ch]
	* app/pdb/gimptemporaryprocedure.[ch]: removed these files...

	* app/plug-in/Makefile.am
	* app/plug-in/gimppluginprocedure.[ch]
	* app/plug-in/gimptemporaryprocedure.[ch]: ...and added them here.

	* app/Makefile.am
	* app/config/Makefile.am: reordered stuff to make it link again.

	* app/pdb/gimppdb.c: removed gimp_pdb_eek() hack.

	* app/actions/plug-in-actions.c
	* app/dialogs/file-save-dialog.c
	* app/file/file-open.c
	* app/file/file-save.c
	* app/file/file-utils.c
	* app/menus/plug-in-menus.c
	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimpplugin-progress.c
	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-call.c
	* app/plug-in/gimppluginmanager-file.c
	* app/plug-in/gimppluginmanager-query.c
	* app/plug-in/gimppluginmanager.c
	* app/plug-in/gimppluginprocframe.c
	* app/plug-in/plug-in-def.c
	* app/plug-in/plug-in-rc.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimppluginaction.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/plug_in.pdb: changed includes accordingly.

	* app/pdb/plug_in_cmds.c: regenerated.
2006-08-05 21:21:01 +00:00
Michael Natterer
9dabd23e2d Applied (modified and enhanced) patch from Chris Moller which allows tools
2006-08-05  Michael Natterer  <mitch@gimp.org>

	Applied (modified and enhanced) patch from Chris Moller which allows
	tools to distinguish similar colors not only by composite, but also
	by R, G, B, H, S and V. Fixes bug #348291.

	* app/core/core-enums.[ch]: added new enum GimpSelectCriterion
	which can be one of { COMPOSITE, R, G, B, H, S, V }.

	* app/core/gimpimage-contiguous-region.[ch]: added
	select_criterion params and create the region based on difference
	by the selected criterion.

	* app/core/gimpchannel-select.[ch]
	* app/core/gimpdrawable-bucket-fill.[ch]: take criterion params and
	pass them through to the contiguous region functions.

	* app/tools/gimpbucketfilloptions.[ch]
	* app/tools/gimpselectionoptions.[ch]: added criterion properties
	and GUI to select it.

	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpfuzzyselecttool.c: pass the selected criterion to
	the resp. core functions.

	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpselectioneditor.c
	* app/display/gimpdisplayshell-dnd.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/selection_tools.pdb: changed accordingly
	(simply pass GIMP_SELECT_CRITERION_COMPOSITE in most cases).

	* app/pdb/edit_cmds.c
	* app/pdb/selection_tools_cmds.c: regenerated.
2006-08-05 13:02:47 +00:00
Michael Natterer
3de105e9c5 some doc fixes.
2006-08-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppropwidgets.c: some doc fixes.
2006-08-04 09:41:09 +00:00
Raphael Quinet
a54a6b162c app/widgets/gimpwidgets-utils.h New utility function to build status bar
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().
2006-08-01 23:42:12 +00:00
Michael Natterer
c09e7f5914 removed code that was special-casing RTL since
2006-07-26  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainertreeview.c
	(gimp_container_tree_view_button_press): removed code that was
	special-casing RTL since gtk_tree_view_get_path_at_pos() takes
	this correctly into account now. Fixes bug #348347.

	* app/widgets/gimpdockable.c (gimp_dockable_size_allocate): fix
	menu button positioning for RTL.
2006-07-26 09:47:05 +00:00
Michael Natterer
8ae28a136c use file_utils_uri_display_basename() instead of g_path_get_basename() to
2006-07-18  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_image): use
	file_utils_uri_display_basename() instead of g_path_get_basename()
	to get an uri's basename. Fixes bug #347544.
2006-07-18 08:44:14 +00:00
Sven Neumann
bb77afc127 fixed potential crash based on a patch from David Gowers (bug #347593).
2006-07-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppaletteeditor.c (gimp_palette_editor_get_index,
	 gimp_palette_editor_set_index, gimp_palette_editor_max_index):
	fixed potential crash based on a patch from David Gowers (bug #347593).
2006-07-18 07:45:54 +00:00
Sven Neumann
68f562226c app/widgets/gimpcoloreditor.c in the tooltip for the hex entry, mention
2006-07-07  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcoloreditor.c
	* libgimpwidgets/gimpcolorselection.c: in the tooltip for the hex
	entry, mention that it also accepts CSS color names.

	* libgimpwidgets/gimpwidgets.c (gimp_scale_entry_new_internal):
	use an invisible event box for the tooltip.
2006-07-07 11:19:52 +00:00
Michael Natterer
6feb7bb82c depend on glib >= 2.10.2, gtk+ >= 2.8.18 and pango >= 1.12.3. Define
2006-07-05  Michael Natterer  <mitch@gimp.org>

	* configure.in: depend on glib >= 2.10.2, gtk+ >= 2.8.18
	and pango >= 1.12.3. Define FOO_DISABLE_DEPRECATED also for
	glib 2.12, gtk+ 2.10 and pango 2.14

	* app/sanity.c
	* app/gui/gui.c: adjusted sanity checks accordingly.

	* app/dialogs/stroke-dialog.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpuimanager.c
	* libgimpwidgets/gimphelpui.c
	* libgimpwidgets/gimpmemsizeentry.c
	* plug-ins/helpbrowser/gimpthrobber.c: replace gtk_object_sink()
	by combinations of g_object_ref_sink() and g_object_unref().
2006-07-05 13:40:47 +00:00
Sven Neumann
7dfeb72203 ellipsize the filename label.
2006-07-05  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpthumbbox.c: ellipsize the filename label.
2006-07-05 08:10:22 +00:00
Simon Budig
a306b34f5e unref the old StrokeOptions when new ones get set as a property. Spotted
2006-06-30  Simon Budig  <simon@gimp.org>

	* app/widgets/gimpstrokeeditor.c: unref the old StrokeOptions
	when new ones get set as a property. Spotted by Henk Boom.
2006-06-30 00:03:33 +00:00
Sven Neumann
dd5962fa67 Applied patch from Zbigniew Chyla (bug 345982):
2006-06-27  Sven Neumann  <sven@gimp.org>

	Applied patch from Zbigniew Chyla (bug 345982):

	* app/widgets/gimpactiongroup.c
(gimp_action_group_add_string_actions)
	strip translation context from translated entries[i].label.

	* app/tools/gimpmagnifytool.c: added translation context.
2006-06-27 20:11:31 +00:00
Sven Neumann
7b1327dd86 I18n improvements based on a patch from Zbigniew Chyla:
2006-06-27  Sven Neumann  <sven@gimp.org>

	I18n improvements based on a patch from Zbigniew Chyla:

	* app/main.c:
	* modules/controller_midi.c
	* plug-ins/script-fu/scripts/guides-new.scm: marked strings for
	translation.

	* app/widgets/gimpdock.c
	* libgimpwidgets/gimppageselector.c
	* plug-ins/common/plugin-browser.c: use ngettext() for plural
forms.
2006-06-27 07:49:14 +00:00
Michael Natterer
03c929240d don't try to set "." as current_folder_uri.
2006-06-20  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_image): don't
	try to set "." as current_folder_uri.
2006-06-20 18:35:00 +00:00
Sven Neumann
7e82d1623d app/actions/error-console-commands.c app/display/gimpdisplayshell-draw.c
2006-06-19  Sven Neumann  <sven@gimp.org>

	* app/actions/error-console-commands.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptexttool.c
	* app/widgets/gimpcellrendereraccel.c
	* app/widgets/gimpviewabledialog.c
	* app/widgets/gimpviewrenderer.c: changed casts in calls to
	g_object_add_weak_pointer() to silence compiler warnings.
2006-06-19 17:50:40 +00:00
Michael Natterer
6f90261568 put the event box' event window above its children because now that it is
2006-06-17  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockbook.c (gimp_dockbook_get_tab_widget): put
	the event box' event window above its children because now that it
	is input-only, it won't receive events that are not in its
	childrens' event mask if the event window is below.
	Fixes bug #345137.
2006-06-17 09:36:18 +00:00
Michael Natterer
c24c1fe064 always call gtk_file_chooser_set_current_folder_uri() and
2006-06-16  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_image):
	always call gtk_file_chooser_set_current_folder_uri() and
	gtk_file_chooser_set_current_name() instead of
	gtk_file_chooser_set_uri(), since the latter only works if the
	file exists and its return value is bogus. Fixes bug #343284.
2006-06-17 09:32:30 +00:00
Sven Neumann
cba830e75b fixed casts to silence compiler warnings.
2006-06-17  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpview.c: fixed casts to silence compiler
warnings.
2006-06-17 08:51:47 +00:00
Michael Natterer
88dedcc424 Allow plug-ins to register in <Layers>, <Channels>, <Vectors> and
2006-06-16  Michael Natterer  <mitch@gimp.org>

	Allow plug-ins to register in <Layers>, <Channels>, <Vectors> and
	<ColormapEditor>:

	* app/pdb/gimppluginprocedure.c
	(gimp_plug_in_procedure_add_menu_path): added the argument type
	checks for the new locations. Factored out duplicated code.

	* app/menus/menus.c (menus_init): add the "plug-in" action
	group to the resp. UI managers.

	* app/menus/plug-in-menus.c (plug_in_menus_menu_path_added):
	support them here too.

	* app/widgets/gimpimageeditor.[ch]
	* app/widgets/gimpitemtreeview.[ch]: added get_image() functions.

	* app/actions/plug-in-commands.c: added new utility functions
	which collect plug-in arguments from GimpImageEditor and
	GimpItemTreeView widgets.

	* menus/channels-menu.xml
	* menus/colormap-editor-menu.xml
	* menus/layers-menu.xml
	* menus/vectors-menu.xml: added separators.

	* menus/image-menu.xml.in: added a "Colormap" placeholder in
	Colors/Map

	* plug-ins/common/colormap-remap.c (query): register a menu
	entry in <ColormapEditor> and moved the existing one to the
	"Colormap" placeholder. Also register an icon to make this
	menu item clearly distinct from the others in that menu.

	Unrelated:

	* plug-ins/common/colormap-remap.c (run): cleaned up quite a
	bit. Fixed last-vals code and simplified map handling.

	(remap_swap): removed, folded into run().

	(remap_dialog): use the passed map to initialize the dialog so it
	starts with the last-vals. Tweaked layout to have 16 columns
	and simplified cell renderer creation.
2006-06-16 17:02:14 +00:00
Michael Natterer
1a635e06a0 set the event box' window invisible so we get the right background with
2006-06-15  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockbook.c (gimp_dockbook_get_tab_widget): set
	the event box' window invisible so we get the right background
	with all themes.
2006-06-15 10:44:24 +00:00
William Skaggs
701b7b31d7 Bill Skaggs <weskaggs@primate.ucdavis.edu>
Finally implemented the suggestion in bug #144854, of
	"strong" undo/redo commands that continue undoing so long
	as they only encounter visibility changes.

	* app/actions/edit-actions.c
	* app/actions/edit-commands.c
	* app/actions/edit-commands.h: added "strong undo"
	and "strong redo" commands/actions.

	* app/core/gimpimage-undo.[ch]: added functions
	gimp_image_strong_undo() and gimp_image_strong_redo().

	* app/core/gimpundo.[ch]: added utility function
	gimp_undo_is_weak().

	* app/widgets/gimphelp-ids.h:added id's.

	* menus/image-menu.xml.in: added to edit menu,
	bound to C-S-z and C-S-y.

	This will no doubt need tweaking, but I will consider it
	to fix bug #144854.
2006-06-13 02:03:44 +00:00
William Skaggs
36ee184375 Bill Skaggs <weskaggs@primate.ucdavis.edu>
Here is the big change-over, finally.

	* app/tools/gimprectselecttool.[ch]: removed.

	* app/tools/Makefile.am
	* app/tools/gimp-tools.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimpellipseselecttool.h
	* app/tools/gimpnewrectselectoptions.c
	* app/tools/gimpnewrectselectoptions.h
	* app/tools/gimpnewrectselecttool.c
	* app/tools/gimpnewrectselecttool.h
	* app/tools/gimpselectionoptions.c
	* app/widgets/gimptoolbox.c
	* menus/image-menu.xml.in: get rid of the "new" in everything
	referring to the new rect select tool, except filenames.  This
	will wait for yosh to perform cvs-magic-foo.

	* app/tools/gimprectangleoptions.[ch]
	* app/tools/gimprectangletool.[ch]: fix a couple of minor
	problems that popped up during testing.
2006-06-10 18:24:58 +00:00
Michael Natterer
10c8c709d3 simply use gimp_button_new() instead of g_object_new(). Don't set the
2006-06-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpeditor.c (gimp_editor_add_action_button): simply
	use gimp_button_new() instead of g_object_new(). Don't set the
	"use-stock" property and reordered some code. Keeps GtkButton from
	thinking that is has constructed the button's child itself and
	thus makes the function more rubust against changes in GtkButton.
2006-06-10 17:48:33 +00:00
Sven Neumann
75815e3a23 app/actions/error-console-commands.[ch] app/widgets/gimphelp-ids.h added
2006-06-07  Sven Neumann  <sven@gimp.org>

	* app/actions/error-console-actions.c:
	* app/actions/error-console-commands.[ch]
	* app/widgets/gimphelp-ids.h
	* menus/error-console-menu.xml: added "select-all" action as
	suggested in bug #328838.
2006-06-07 13:47:55 +00:00
Michael Natterer
c2928c8721 changed mnemonic from "_Preview" to "Pr_eview" because the GTK+ HEAD file
2006-06-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpthumbbox.c (gimp_thumb_box_new): changed
	mnemonic from "_Preview" to "Pr_eview" because the GTK+ HEAD
	file chooser has a "_Places" mnemonic now.

	* app/widgets/gimpcomponenteditor.c: minor cleanup.
2006-06-04 11:49:30 +00:00
Michael Natterer
962282fe5f use gimp_rgba_distance() instead of gimp_rgb_distance(), so alpha changes
2006-06-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcolorframe.c (gimp_color_frame_set_color): use
	gimp_rgba_distance() instead of gimp_rgb_distance(), so alpha
	changes update the color frame too.
2006-06-04 11:39:22 +00:00
Michael Natterer
d1a76d93f7 cursors/Makefile.am cursors/cursor-corner-bottom-left.png
2006-06-02  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/cursor-corner-bottom-left.png
	* cursors/cursor-corner-bottom-right.png
	* cursors/cursor-corner-top-left.png
	* cursors/cursor-corner-top-right.png
	* cursors/cursor-side-bottom.png
	* cursors/cursor-side-left.png
	* cursors/cursor-side-right.png
	* cursors/cursor-side-top.png
	* cursors/xbm/cursor-corner-bottom-left-mask.xbm
	* cursors/xbm/cursor-corner-bottom-left.xbm
	* cursors/xbm/cursor-corner-bottom-right-mask.xbm
	* cursors/xbm/cursor-corner-bottom-right.xbm
	* cursors/xbm/cursor-corner-top-left-mask.xbm
	* cursors/xbm/cursor-corner-top-left.xbm
	* cursors/xbm/cursor-corner-top-right-mask.xbm
	* cursors/xbm/cursor-corner-top-right.xbm
	* cursors/xbm/cursor-side-bottom-mask.xbm
	* cursors/xbm/cursor-side-bottom.xbm
	* cursors/xbm/cursor-side-left-mask.xbm
	* cursors/xbm/cursor-side-left.xbm
	* cursors/xbm/cursor-side-right-mask.xbm
	* cursors/xbm/cursor-side-right.xbm
	* cursors/xbm/cursor-side-top-mask.xbm
	* cursors/xbm/cursor-side-top.xbm: new cursors for edge and corner
	resizing. They perfectly align with the small crosshair and can be
	used together with tool cursors and cursor modifiers.

	* cursors/gimp-tool-cursors.xcf: add them here too.

	* app/widgets/widgets-enums.h: add them to the GimpCursorType enum.

	* app/widgets/gimpcursor.c: add them here too.

	* app/display/gimpdisplayshell-cursor.c: treat them like the small
	crosshair (don't replace them by the small crosshair but use them
	as-is). Also allow the bad modifier with the large crosshair.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_cursor_update): use the new cursors. Don't
	call gimp_tool_set_cursor() here.

	(gimp_rectangle_tool_response): reset "function" to RECT_CREATING
	when resetting the tool.

	* app/tools/gimpselectiontool.[ch] (struct GimpSelectionTool):
	added boolean member "allow_move" which defalts to TRUE.

	(gimp_selection_tool_oper_update): don't move masks, floating
	selections or anything when "allow_move" is FALSE. Changed
	behavior of click inside a selection to simply create a new
	selection, need to press alt+shift now to drag-float the
	selection. Please test this, it's apretty fundamental change!

	(gimp_selection_tool_cursor_update): use the tool's configured
	cursor instead of always GIMP_CURSOR_MOUSE, so this function can
	be called after gimp_rectangle_tool_cursor_update() to add the
	plus, minus etc. modifiers.

	* app/tools/gimpnewrectselecttool.c: implement
	GimpTool::cursor_update() and call
	gimp_rectangle_tool_cursor_update() from there. Chain up to get
	the plus, minus etc. modifiers added.

	Re-enble selection moving:

	(gimp_new_rect_select_tool_oper_update): set GimpSelectionTool's
	"allow_move" to FALSE unless the rectangle tool is in an idle
	state.

	(gimp_new_rect_select_tool_button_press): allow a selection moving
	to be started if the rectangle tool is idle. Fall back to starting
	a rect select if gimp_selection_tool_start_edit() returned FALSE.
2006-06-02 15:23:47 +00:00