Commit Graph

44 Commits

Author SHA1 Message Date
Michael Natterer 64317165e9 app/tools/gimprectangleselecttool.[ch]
2008-03-09  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimprectangleselecttool.[ch]
	* app/tools/gimprectangleselectoptions.[ch]
	* app/tools/gimpellipseselecttool.[ch]
	* app/tools/gimp-tools.c: s/Rect/Rectangle/ and s/rect/rectangle/
	in types and function names.


svn path=/trunk/; revision=25076
2008-03-09 15:38:25 +00:00
Michael Natterer b477c755b8 app/tools/Makefile.am add experimental GEGL tool which will allow to try
2008-02-05  Michael Natterer  <mitch@gimp.org>

	* app/tools/Makefile.am
	* app/tools/gimpgegltool.[ch]: add experimental GEGL tool which
	will allow to try arbitrary GEGL operations. 100% unusable at the
	moment.

	* app/tools/gimp-tools.c: register it.

	* app/dialogs/dialogs.c: register its dialog.

	* menus/image-menu.xml.in: add it to the tools menu.


svn path=/trunk/; revision=24799
2008-02-04 23:32:45 +00:00
Martin Nordholts 919a298092 Added a Polygon Select Tool which is a primitive selection tool based on
2008-01-30  Martin Nordholts  <martinn@svn.gnome.org>

	Added a Polygon Select Tool which is a primitive selection tool
	based on Free Hand Select. Code filtered through David Gowers who
	also made the tool icon. This version of the tool is a for-now
	solution to bug #119646.

	* app/tools/gimppolygonselecttool.[ch]: The new tool.

	* app/tools/gimp-tools.c: Add the tool.

	* app/tools/Makefile.am: Add tool source.

	* app/widgets/gimphelp-ids.h: Add help id for the tool.

	* libgimpwidgets/gimpstock.[ch]: Setup for the new tool icon.

	* menus/image-menu.xml.in: Add action entry for the tool.

	* themes/Default/images/tools/stock-tool-polygon-select-{16,24}.png:
	Tool icon graphics.

	* themes/Default/images/Makefile.am: Add tool icon graphics.

svn path=/trunk/; revision=24753
2008-01-30 20:33:58 +00:00
Michael Natterer ca5ffa5b3f don't #include <gegl.h>
2008-01-23  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.h: don't #include <gegl.h>

	* app/actions/tools-commands.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimp-tools.c: include it here. Whenever the build
	breaks because of some GEGL change in GIMP, please inlcude
	<gegl.h> instead of <glib-object.h> or before <gtk/gtk.h> in the
	affected .c files.


svn path=/trunk/; revision=24685
2008-01-23 09:51:43 +00:00
Michael Natterer 1542f99678 app/core/gimp-contexts.[ch] add GErrors to save() and load().
2007-12-19  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-contexts.[ch]
	* app/core/gimp-documents.[ch]: add GErrors to save() and load().

	* app/core/gimp.c
	* app/tools/gimp-tools.c: handle the returned errors.


svn path=/trunk/; revision=24403
2007-12-19 17:45:47 +00:00
Sven Neumann f3c451becd use the tool-info identifier as the name of the tool-options object.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimptoolinfo.c (gimp_tool_info_new): use the tool-info
	identifier as the name of the tool-options object.

	* app/paint/gimppaintoptions.c (gimp_paint_options_new): use the
	paint-info identifier as the name of the paint-options object.

	* app/paint/gimp-paint.c (gimp_paint_register): added parameter check.

	* app/tools/gimp-tools.c (gimp_tools_init): formatting.

svn path=/trunk/; revision=22941
2007-07-17 10:04:06 +00:00
Sven Neumann 4fb72eb8cf added API to delete saved tool-options.
2006-12-11  Sven Neumann  <sven@gimp.org>

	* app/core/gimptooloptions.[ch]: added API to delete saved
	tool-options.

	* app/tools/gimp-tools.c: don't deal with saving presets, just
	load them on startup. Create the tool-options directory when
	saving tool-options.

	* app/core/gimptoolpresets.[ch]: added new signal that is
emitted
	whenever the presets changes. Create the tool-options directory
	when saving a preset.

	* app/widgets/gimptooloptionseditor.[ch]: listen to the
"changed"
	signal of GimpToolPresets and queue an idle save.
2006-12-11 15:16:13 +00:00
Sven Neumann 6dc91417e1 app/actions/tool-options-commands.c app/core/gimptoolpresets.[ch] code
2006-12-11  Sven Neumann  <sven@gimp.org>

	* app/actions/tool-options-commands.c
	* app/core/gimptoolpresets.[ch]
	* app/tools/gimp-tools.c: code cleanup.
2006-12-11 08:23:00 +00:00
Sven Neumann df8bf728a6 app/core/Makefile.am app/core/core-types.h added GimpToolPresets, derived
2006-12-10  Sven Neumann  <sven@gimp.org>

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimptoolpresets.[ch]: added GimpToolPresets, derived
	from GimpList.

	* app/core/gimptoolinfo.[ch]: use the new type, renamed
	member "options_presets" to "presets".

	* app/actions/tool-options-actions.c
	* app/actions/tool-options-commands.c
	* app/core/gimptooloptions.[ch]
	* app/menus/tool-options-menu.c
	* app/widgets/gimptooloptionseditor.c: changed accordingly.

	* app/tools/gimp-tools.c: let the GimpToolPresets object deal
with
	loading and saving the presets from ${gimpdir}/tool-options.

	* app/core/gimpcontainer-filter.c
	* app/core/gimpdocumentlist.c
	* app/core/gimplist.c
	* app/text/gimpfontlist.c: use canonical property names.
2006-12-10 19:13:58 +00:00
Sven Neumann 41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Sven Neumann e5893265b1 reverted my last change; will have to address this differently.
2006-12-07  Sven Neumann  <sven@gimp.org>

	* app/tools/gimp-tools.c (gimp_tools_save): reverted my last change;
	will have to address this differently.
2006-12-07 09:48:40 +00:00
Sven Neumann 5cc125827b only write a .presets file if the presets container is not empty.
2006-12-06  Sven Neumann  <sven@gimp.org>

	* app/tools/gimp-tools.c (gimp_tools_save): only write a
.presets
	file if the presets container is not empty.
2006-12-06 20:43:06 +00:00
Michael Natterer 1b1497657a Merged the "soc-2006-perspective-clone" branch. That branch is now
2006-09-07  Michael Natterer  <mitch@gimp.org>

	Merged the "soc-2006-perspective-clone" 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 GimpBrushTool and renamed the enum
	added to paint-enums.h and it values, added stock icon and menu
	entry.

	Thanks a lot to Pedro Alonso Ferrer!

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

	* app/paint/Makefile.am
	* app/paint/gimpperspectiveclone.[ch]
	* app/paint/gimpperspectivecloneoptions.[ch]: the perspective
	clone core and its options.

	* app/paint/gimp-paint.c: register it.

	* app/tools/Makefile.am
	* app/tools/gimpperspectiveclonetool.[ch]: the perspective clone tool.

	* app/tools/gimp-tools.c: register it.

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

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

	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/stock-tool-perspective-clone-16.png
	* themes/Default/images/tools/stock-tool-perspective-clone-22.png
	* libgimpwidgets/gimpstock.[ch]: its stock ID and icons.

	* menus/image-menu.xml.in: added it to the menu.
2006-09-07 17:10:22 +00:00
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
Sven Neumann 1051b7167a use italic style for the informative label.
2006-08-31  Sven Neumann  <sven@gimp.org>

	* app/tools/gimp-tools.c: use italic style for the informative label.
2006-08-31 10:33:31 +00:00
Sven Neumann 4a265d02cd don't attempt to reorder to a position >= container->num_children.
2006-06-21  Sven Neumann  <sven@gimp.org>

	* app/tools/gimp-tools.c (gimp_tools_restore): don't attempt to
	reorder to a position >= container->num_children.
2006-06-21 21:59:03 +00:00
William Skaggs ca059c11d6 Bill Skaggs <weskaggs@primate.ucdavis.edu>
Following up on previous commit, with assist from yosh.

	* app/tools/gimpnewrectselectoptions.[ch]
	* app/tools/gimpnewrectselecttool.[ch]: removed

	* app/tools/gimprectangleselectoptions.[ch]: magic-moved
	from gimpnewrectselectoptions.[ch]

	* app/tools/gimprectangleselecttool.[ch]: magic-moved
	from gimpnewrectselecttool.[ch]

	* app/tools/Makefile.am
	* app/tools/gimp-tools.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimpellipseselecttool.h
	* app/tools/gimpselectionoptions.c: change file names to
	refer to moved files.
2006-06-10 21:34:12 +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 fa03960519 the default tool is the paintbrush, not rect select.
2006-05-24  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.c (gimp_context_tool_list_thaw): the
	default tool is the paintbrush, not rect select.

	* app/tools/gimp-tools.c (gimp_tools_register): attach the default
	visibility state to the tool_info.

	* app/actions/tools-commands.c (tools_reset_cmd_callback): use the
	attached boolean instead of reimplementing the default visibility
	logic.
2006-05-24 15:04:45 +00:00
Karine Delvare 1ce44a4555 app/core/gimpcontext.c app/tools/gimp-tools.c
2006-05-23  Karine Delvare  <edhel@gimp.org>

	* app/core/gimpcontext.c
	* app/tools/gimp-tools.c
	* app/tools/gimpnewrectselecttool.c
	* app/tools/gimprectselecttool.c
	* app/widgets/gimptoolbox.c
	* menus/image-menu.xml.in: replace old rect select by new in the
	toolbox.
2006-05-23 18:14:51 +00:00
Michael Natterer f42487cfc8 move the align tool after the move tool.
2006-05-18  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimp-tools.c (gimp_tools_init): move the align tool
	after the move tool.
2006-05-17 22:37:12 +00:00
Sven Neumann 049872b361 app/*.[ch] converted tabs to spaces.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* app/*.[ch]
	* app/*/*.[ch]: converted tabs to spaces.
2006-04-12 12:49:29 +00:00
Michael Natterer ef9b04c535 Fixed incomplete core/ui separation of paint tools and paint methods:
2005-12-27  Michael Natterer  <mitch@gimp.org>

	Fixed incomplete core/ui separation of paint tools and paint
	methods:

	* app/core/core-enums.h
	* app/core/gimpcontext.[ch]: added a "paint-info" property and API
	so the current paint method can be selected without the need for
	an active tool.

	(gimp_context_real_set_tool): set the paint-info to
	tool_info->paint_info so the paint method follows the active tool
	just as the active image follows the active display.

	* app/core/gimp.h (struct Gimp)
	* app/core/gimppaintinfo.[ch]: added "standard_paint_info" API
	and stuff to be consistent with other context object properties.

	* app/paint/gimp-paint.c: set the paintbrush as
	standard_paint_info.

	* app/core/gimpstrokedesc.c (gimp_stroke_desc_new): removed the
	hack of falling back to the paintbrush when there is no active
	tool and use the active paint method instead. Fall back to the
	standard paint method if there is no active one.
	(nothing in the core uses the active tool any more now).

	* app/widgets/gimpdeviceinfo.h: add the paint info to the
	properties which are saved in devicerc.

	Added identifiers (names) and stock-ids to GimpPaintInfo:

	* app/core/gimppaintinfo.[ch] (gimp_paint_info_new): added
	identifier and stock-id parameters.

	* app/core/gimptoolinfo.c (gimp_tool_info_new): removed the hack
	of setting the paint-info stock-id from the tool-info stock-id.

	* app/paint/paint-types.h
	* app/paint/gimp-paint.c: changed GimpPaintRegisterCallback
	accordingly.

	* app/tools/gimp-tools.c (gimp_tools_register): changed paint
	info names accordingly.

	* app/paint/*.c (gimp_*_register): pass identifier and stock-id
	accordingly.
2005-12-27 18:57:01 +00:00
Michael Natterer aa80506d6d app/core/gimp-contexts.c app/core/gimp-documents.c
2005-11-06  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-contexts.c
	* app/core/gimp-documents.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp-units.c
	* app/core/gimpdatafactory.c
	* app/core/gimptooloptions.c
	* app/gui/color-history.[ch]
	* app/gui/gui.c
	* app/gui/session.c
	* app/plug-in/plug-ins.c
	* app/text/gimp-fonts.c
	* app/tools/gimp-tools.c
	* app/widgets/gimpcontrollers.c
	* app/widgets/gimpdevices.c: when running --verbose, print the
	name of each config file parsed or written.
2005-11-06 22:01:25 +00:00
Michael Natterer 37354a9248 Cleaned up and fixed the order in which default tool options and user
2005-09-04  Michael Natterer  <mitch@gimp.org>

	Cleaned up and fixed the order in which default tool options and
	user context values are initialized, and added loading / saving of
	the global user context.  Fixes bug #165078.

	* app/core/Makefile.am
	* app/core/gimp-contexts.[ch]: new files which manage the global
	contexts. Contains gimp_contexts_init/exit/load/save/clear().

	* app/core/gimp.c: use the new init/exit functions instead of
	implementing the stuff here.

	* app/tools/gimp-tools.c: load/save/clear the user context from
	here so it follows the same logic as the tool options. Reset all
	tool options before loading the user context and copy the user
	context's property to all tool options before loading tool
	options.

	* app/core/gimptoolinfo.c (gimp_tool_info_new): don't initialize
	the tool options with the users context's properties. It's way too
	early here and they will be overwritten later.

	* app/widgets/gimpdevices.c (gimp_devices_restore): initialize all
	device contexts with the user context's properties before loading
	the devices and copying the active one back to the user context.
2005-09-04 10:44:04 +00:00
Sven Neumann a5abd45337 added gimp_scan_convert_render_value(), a variant of
2005-07-29  Sven Neumann  <sven@gimp.org>

	* app/core/gimpscanconvert.[ch]: added
	gimp_scan_convert_render_value(), a variant of
	gimp_scan_convert_render() that allows to pass the foreground value.

	* app/tools/gimpfreeselecttool.[ch]: added a virtual "select" method.

	* app/tools/Makefile.am
	* app/tools/gimp-tools.c
	* app/tools/gimpforegroundselecttool.[ch]: added a rough first
	version of foreground selection tool based on the SIOX algorithm.
	Work in progress...

	* app/widgets/gimphelp-ids.h: added help-id for the new tool.
2005-07-29 01:48:56 +00:00
William Skaggs 7250297297 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* gimp/app/tools/Makefile.am
	* gimp/app/tools/gimp-tools.c
	* gimp/app/tools/gimpalignoptions.c
	* gimp/app/tools/gimpalignoptions.h
	* gimp/app/tools/gimpaligntool.c
	* gimp/app/tools/gimpaligntool.h: Add new tool for
	aligning layers etc, as described in bug #147437.

	* gimp/app/core/gimpitem.c
	* gimp/app/core/gimpitem.h (gimp_item_align): add
	function required by new tool.

	* gimp/app/core/core-enums.c
	* gimp/app/core/core-enums.h: add enum for alignment
	types.

	* gimp/themes/Default/images/stock-hcenter-24.png
	* gimp/themes/Default/images/stock-vcenter-24.png
	* gimp/libgimpwidgets/gimpstock.c
	* gimp/libgimpwidgets/gimpstock.h
	* gimp/themes/Default/images/Makefile.am
	* gimp/themes/Default/images/makefile.msc: add two
	stock symbols, modeled on the gravity symbols.
2005-06-03 17:05:01 +00:00
Michael Natterer e6063f61a2 Let the user decide whether tool options are persistant or not as
2005-04-11  Michael Natterer  <mitch@gimp.org>

	Let the user decide whether tool options are persistant or not as
	suggested in bug #165078:

	* app/config/gimprc-blurbs.h
	* app/config/gimpguiconfig.[ch]: added "gboolean save_tool_options".

	* app/tools/gimp-tools.[ch]: implement the same logic as for
	devicerc and essionrc: added gimp_tools_clear() which deletes the
	stored tool options and added "save_tool_options" and
	"always_save" parameters to gimp_tools_save(). Everything affects
	just the primary tool options, *not* the separately saved presets
	for each tool.

	* app/gui/gui.c (gui_exit_callback): changed accordingly.

	* app/dialogs/preferences-dialog.c: added GUI for the stuff above
	in the style of the devicerc and seccionrc prefs GUIs.
2005-04-11 21:17:59 +00:00
William Skaggs 876bd885d7 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpnewrectselecttool.[ch]: new rectangle select tool

	* app/tools/Makefile.am
	* app/tools/gimp-tools.c: add it to toolbox

	* app/tools/gimpselectionoptions.[ch]: set its options

	* themes/Default/images/tools/stock-tool-new-rect-select-16.png
	* themes/Default/images/tools/stock-tool-new-rect-select-22.png: toolbox
	icon

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am: add the toolbox icon
2005-01-31 18:43:28 +00:00
William Skaggs 1cee9b7298 continuing commit after broken pipe 2005-01-25 19:11:26 +00:00
Michael Natterer 62c23a2361 reset the tool options before deserializing so they have the correct
2004-10-06  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimp-tools.c (gimp_tools_restore): reset the tool
	options before deserializing so they have the correct default
	values. Fixes bug #120832.

	* app/tools/gimpbucketfilloptions.c
	* app/tools/gimpmagnifyoptions.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimptransformoptions.c: removed all set_defaults()
	utility functions and moved their code to reset(). The change
	above calls them automatically so there is no need to call them
	from the GUI constructors any more.
2004-10-06 17:21:22 +00:00
Sven Neumann 7e18e1f3f8 set the paintbrush as the default tool as suggested in bug #151091.
2004-08-26  Sven Neumann  <sven@gimp.org>

	* app/tools/gimp-tools.c (gimp_tools_register): set the paintbrush
	as the default tool as suggested in bug #151091.
2004-08-26 09:41:18 +00:00
Michael Natterer 23f6a194ac added context->serialize_props mask which enables specifying exactly which
2004-07-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.[ch]: added context->serialize_props mask
	which enables specifying exactly which properties will be
	serialized. Also fixes a bug that prevented undefined properties
	from being serialized, breaking tool_options and device status
	serialization.

	* app/core/gimptoolinfo.c (gimp_tool_info_new): make only the
	properties in the tool_info->context_props mask serializable, also
	configure/initialize tool_info->tool_options.

	* app/tools/gimp-tools.c (gimp_tools_register): removed
	tool_options initialization that is now done in
	gimp_tool_info_new().

	* app/widgets/gimpdeviceinfo.c: make only the properties in
	GIMP_DEVICE_INFO_CONTEXT_MASK serializable.

	* app/widgets/gimpdevicestatus.c: add the device table to its
	parent container again. Fixes "missing" devices.

	* app/core/gimptooloptions.c
	* app/widgets/gimpdevices.c: cleanup / code review.
2004-07-03 20:27:28 +00:00
Michael Natterer 5e07ceb851 app/paint/Makefile.am app/paint/gimpink-blob.[ch] app/paint/gimpink.[ch]
2004-05-26  Michael Natterer  <mitch@gimp.org>

	* app/paint/Makefile.am
	* app/paint/gimpink-blob.[ch]
	* app/paint/gimpink.[ch]
	* app/paint/gimpinkoptions.[ch]: new files. Ported the ink tool
	to be a direct GimpPaintCore subclass without any GUI.

	* app/paint/gimp-paint.c: register GimpInk with the list of paint
	cores.

	* app/tools/Makefile.am
	* app/tools/gimpinkoptions.[ch]
	* app/tools/gimpinktool-blob.[ch]: removed these files.

	* app/tools/gimpinkoptions-gui.[ch]: new files containing only
	the GUI for GimpInkOptions.

	* app/tools/gimpinktool.[ch]: reduced to some few lines which
	implement a simple GimpPaintTool subclass.

	* app/tools/gimp-tools.c: associate the GimpInk paint_core with
	the GimpInkTool.
2004-05-26 15:34:45 +00:00
Michael Natterer 1c62ddef4d Long overdue core container cleanup:
2004-05-24  Michael Natterer  <mitch@gimp.org>

	Long overdue core container cleanup:

	* app/core/gimplist.[ch]: added "unique-names" and "sort-func"
	properties and merged the resp. code from GimpDataList into
	GimpList. Removed "policy" parameters from gimp_list_new() and
	added "unique_names". Added new constructor gimp_list_new_weak().
	Made public function gimp_list_uniquefy_name() private.

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpdatalist.[ch]: removed. Its functionality is
	entirely in GimpList now.

	* app/core/gimpdata.[ch]: added gimp_data_name_compare() which
	used to live in GimpDataList.

	* app/core/gimp.c
	* app/core/gimpdatafactory.c
	* app/core/gimpimage.c
	* app/core/gimptoolinfo.c
	* app/core/gimpundostack.c
	* app/paint/gimp-paint.c
	* app/tools/gimp-tools.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimpundoeditor.c: changed list creation accordingly.

	Made gimp->templates, gimp->named_buffers, tool_info->presets and
	the image's lists of layers, channels and vectors automatically
	ensure unique names.

	* app/widgets/gimptemplateview.c
	* app/actions/file-commands.c
	* app/actions/templates-commands.c
	* app/actions/tool-options-commands.c: removed calls to
	gimp_list_uniquefy_name().

	* app/core/gimpitem.c: removed major insanity where the items
	themselves where ensuring their unique names. Bah!

	* app/core/gimplayer.c (gimp_layer_name_changed): chain up
	conditionally.

	* app/core/gimplayermask.c (gimp_layer_mask_name_changed): removed
	because there is no need any more to keep the parent
	implementation from being invoked.
2004-05-24 10:49:34 +00:00
Michael Natterer 6f1f65d514 made the "visible" property serializable.
2004-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.c: made the "visible" property serializable.

	* app/tools/gimp-tools.c: store the tools' order and visibility
	in a new config file called "toolrc".
2004-05-18 12:23:56 +00:00
Michael Natterer da0de0873f Started making the toolbox configurable. Addresses bug #105764. Not
2004-05-10  Michael Natterer  <mitch@gimp.org>

	Started making the toolbox configurable.
	Addresses bug #105764. Not finished yet.

	* app/core/gimptoolinfo.[ch]: renamed "in_toolbox" to "visible"
	and made it a GObject property.

	* app/tools/gimp-tools.[ch]: added new function
	gimp_tools_get_default_order() which returns a GList of tool
	identifiers.

	* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: added actions & callbacks for
	toggling the "visible" boolean and for resetting all tools.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolview.[ch]: new widget which allows to
	toggle a tool's visibility and to reorder the tools.

	* app/widgets/gimptoolbox.[ch]: removed member "GtkWidget *trash"
	and pack all tool buttons into the same wrap box. Connect to
	"reoder" of the tool container and to "notify::visible" of all
	tool infos and update the toolbox accordingly.

	* app/gui/dialogs-constructors.c: create a GimpToolView for the
	tools list/grid.

	* app/menus/menus.c: register a <Tools> menu for the dialog above.

	* menus/Makefile.am
	* menus/tools-menu.xml: added the menu.
2004-05-10 00:41:57 +00:00
Michael Natterer 62dcfaecbf app/actions/qmask-actions.c prepared qmask_actions_update() and the qmask
2004-04-21  Michael Natterer  <mitch@gimp.org>

	* app/actions/qmask-actions.c
	* app/actions/qmask-commands.c: prepared qmask_actions_update()
	and the qmask callbacks to be merged into the image ui manager.

	* app/actions/dialogs-actions.c
	* app/actions/edit-actions.c
	* app/actions/file-actions.c
	* app/actions/image-actions.c
	* app/actions/layers-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/tools-actions.c
	* app/actions/view-actions.c: fixed lots of typos and buglets
	spotted in my first test run.

	* app/gui/menus.c: register the needed action groups with the
	<Image> menu.

	* app/tools/gimp-tools.c
	* app/tools/gimpdodgeburntool.[ch]
	* app/tools/gimppaintoptions-gui.c: s/dodgeburn/dodge_burn/g.

	* app/widgets/gimpactionfactory.c
	* app/widgets/gimpmenufactory.[ch]: s/G_GNUC_FUNCTION/G_STRFUNC/g,
	updated copyright header.

	* menus/image-menu.xml: fixed typos and added the "Filters"
	submenus.
2004-04-21 10:55:45 +00:00
Sven Neumann dcf50dc2a9 Replaced the histogram tool by a histogram dialog:
2003-11-01  Sven Neumann  <sven@gimp.org>

	Replaced the histogram tool by a histogram dialog:

	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/stock-tool-histogram-[16|22].png:
	removed here ...

	* themes/Default/images/stock-histogram-[16|22].png: ,,, and added
	under these new names.

	* libgimpwidgets/gimpstock.[ch]: register the icons as
	GIMP_STOCK_HISTOGRAM and removed the histogram tool stock icons.

	* app/base/gimphistogram.c: don't crash when uncalculated values
	are requested from a GimpHistogram. Allow to reset the histogram
	by calling gimp_histogram_calculate() with a NULL region.

	* app/widgets/gimphistogrambox.[ch]: renamed the GimpHistogramView
	struct member to "view".

	* app/tools/gimpthresholdtool.c: changed accordingly.

	* app/widgets/gimphistogramview.[ch] (gimp_histogram_view_events):
	return TRUE when events were handled.

	* app/tools/Makefile.am
	* app/tools/gimp-tools.c
	* app/tools/gimphistogramtool.[ch]: removed the histogram tool.

	* app/widgets/Makefile.am
	* app/widgets/gimphelp-ids.h
	* app/widgets/widgets-types.h
	* app/widgets/gimphistogrameditor.[ch]: added GimpHistogramEditor.
	Has some rough edges still...

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c
	* app/gui/image-menu.c: register the new dialog instead of the
	histogram tool.
2003-11-01 02:39:34 +00:00
Michael Natterer b0fd43dd45 made Dodge/Burn the last paint tool, so Convolve and Smudge are together.
2003-10-30  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimp-tools.c (gimp_tools_init): made Dodge/Burn the
	last paint tool, so Convolve and Smudge are together.
2003-10-30 17:55:03 +00:00
Michael Natterer 78b6153301 added gimp_container_freeze() / _thaw() around font list reloading.
2003-10-18  Michael Natterer  <mitch@gimp.org>

	* app/text/gimp-fonts.c (gimp_fonts_load): added
	gimp_container_freeze() / _thaw() around font list reloading.

	* app/tools/gimp-tools.c (gimp_tools_init): added missing
	gimp_container_freeze().

	* app/widgets/gimpcontainerview.c: connect to the container's
	"freeze" and "thaw" signals and empty / refill the view
	accordingly. Ignore "add", "remove" and "reorder" signals while
	the container is frozen. Fixes font list sorting after refresh and
	speeds up refreshing of fonts, brushes, patterns etc.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfontview.[ch]: new widget for the font list/grid.

	* app/widgets/gimphelp-ids.h: added GIMP_HELP_FONT_REFRESH.

	* app/gui/dialogs-constructors.c: changed accordingly.

	* app/gui/Makefile.am
	* app/gui/fonts-commands.[ch]
	* app/gui/fonts-menu.[ch]: new files: a menu for the font view.

	* app/gui/menus.c (menus_init): register the new <Fonts> menu.

	* app/gui/preferences-dialog.c (prefs_dialog_new): removed the
	fonts refreshing hack from the "Environment" page.
2003-10-18 16:23:15 +00:00
Sven Neumann a88e11afb3 app/widgets/gimpdocked.[ch] renamed GimpDockedIface to
2003-10-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdocked.[ch]
	* app/widgets/widgets-types.h: renamed GimpDockedIface to
	GimpDockedInterface.

	* app/display/gimpnavigationview.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpimageeditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimptooloptionseditor.c: changed accordingly.

	* app/config/config-types.h
	* app/config/gimpconfig.[ch]
	* app/config/gimpconfig-deserialize.[ch]
	* app/config/gimpconfig-serialize.[ch]
	* app/config/gimpconfig-utils.[ch]: added a GimpConfig typedef and
	changed the GimpConfig API to take GimpConfig instead of GObject
	pointers.

	* app/config/gimpconfig-dump.c
	* app/config/gimprc.c
	* app/config/test-config.c
	* app/core/gimp-documents.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp.[ch]
	* app/core/gimpcontainer.c
	* app/core/gimpcontext.c
	* app/core/gimpdocumentlist.c
	* app/core/gimpgrid.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage.c
	* app/core/gimpparasitelist.c
	* app/core/gimptemplate.c
	* app/core/gimptooloptions.c
	* app/core/gimpviewable.c
	* app/gui/grid-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/stroke-dialog.c
	* app/gui/templates-commands.c
	* app/gui/tool-options-commands.c
	* app/paint/gimppaintcore.c
	* app/pdb/gimprc_cmds.c
	* app/text/gimptext-parasite.c
	* app/text/gimptext.c
	* app/text/gimptextlayer.c
	* app/tools/gimp-tools.c
	* app/tools/gimptexttool.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptemplateview.c
	* tools/pdbgen/pdb/gimprc.pdb: changed accordingly.
2003-10-11 14:30:18 +00:00
Michael Natterer d1ba870458 added a GimpContainer of tool options presets.
2003-09-29  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.[ch]: added a GimpContainer of tool
	options presets.

	* app/core/gimptooloptions.[ch] (gimp_tool_options_set_property):
	silently accept setting the *same* tool_info again.

	(gimp_tool_options_build_filename): is public now.

	* app/tools/gimp-tools.c (gimp_tools_restore,save): load and save
	the presets container.

	* app/gui/tool-options-dialog.[ch]: removed.

	* app/gui/tool-options-commands.[ch]
	* app/gui/tool-options-menu.[ch]: new files implementing a menu
	for the new GimpToolOptionsEditor widget. Has submenus for saving,
	loading, and deleting tool options to/from the
	tool_info->options_presets container.

	* app/gui/Makefile.am
	* app/gui/dialogs-constructors.c
	* app/gui/menus.c: changed accordingly.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptooloptionseditor.[ch]: the tool options dialog
	as proper widget. The "Load" and "Save" buttons still do the same
	stuff as before. Will make them use the new presets since making
	them do something useful was the reason for this whole change.

	* app/widgets/gimphelp-ids.h: added missing help IDs for the tool
	options dialog.
2003-09-29 20:26:09 +00:00
Michael Natterer 6b2ca702ad app/paint/Makefile.am removed... ...and added.
2003-09-18  Michael Natterer  <mitch@gimp.org>

	* app/paint/Makefile.am
	* app/paint/paint.[ch]: removed...
	* app/paint/gimp-paint.[ch]: ...and added.

	* app/core/gimp.c: changed accordingly.

	* app/tools/Makefile.am
	* app/tools/tools.[ch]: removed...

	* app/tools/gimp-tools.[ch]: ...and added. Added
	gimp_tools_restore() and gimp_tools_save() and moved the entire
	tool registering and tool_options loading/saving code here. Call
	tool_manager_init() from gimp_tools_init() and tool_manager_exit()
	from gimp_tools_exit().

	* app/tools/tool_manager.[ch]: removed the code which now lives
	in gimp-tools.[ch]. The tool manager now has no knowledge about
	individual tools any more and just handles the active_tool
	and the tool part of tool <-> display interaction.
	Removed tool_manager_get_info_by_type().

	* app/tools/gimpvectortool.c (gimp_vector_tool_register): the
	tool's identifier is "gimp-vector-tool", not "gimp-path-tool".

	* app/app_procs.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/vectors-commands.c
	* app/tools/gimppainttool.c: changed accordingly.
2003-09-18 13:51:10 +00:00