Commit Graph

270 Commits

Author SHA1 Message Date
Sven Neumann 5439aa4995 did a global gdisp -> display substitution.
2006-03-28  Sven Neumann  <sven@gimp.org>

	* app/*: did a global gdisp -> display substitution.
2006-03-28 17:55:52 +00:00
Sven Neumann 905fdfcbed did a global gimage -> image substitution.
2006-03-28  Sven Neumann  <sven@gimp.org>

	* app/*: did a global gimage -> image substitution.
2006-03-28 17:08:36 +00:00
Sven Neumann 2a0378acb5 keep a reference on the old image until the display is connected to the
2006-03-06  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.c (gimp_display_reconnect): keep a
	reference on the old image until the display is connected to the
	new one. Fixes bug #333568.

	* app/display/gimpdisplay-handlers.c: fixed typo in comment.

	* app/actions/file-commands.c: cosmetics.
2006-03-06 17:35:40 +00:00
Michael Natterer e1ceed5147 define GIMP_PARAM_STATIC_STRINGS which is G_PARAM_STATIC_NAME|NICK|BLURB.
2006-01-18  Michael Natterer  <mitch@gimp.org>

	* app/config/config-types.c: define GIMP_PARAM_STATIC_STRINGS
	which is G_PARAM_STATIC_NAME|NICK|BLURB. Also define
	GIMP_PARAM_READABLE, _WRITABLE and _READWRITE which include
	GIMP_PARAM_STATIC_STRINGS.

	* app/*/*.c: use them for all object properties so their
	strings are not copied.
2006-01-18 20:29:40 +00:00
Michael Natterer 0d4a10fee4 app/config/*.c app/core/*.c app/display/*.c app/text/*.c port to
2005-12-10  Michael Natterer  <mitch@gimp.org>

	* app/config/*.c
	* app/core/*.c
	* app/display/*.c
	* app/text/*.c
	* app/vectors/*.c: port to G_DEFINE_TYPE() and friends. Some related
	core reordering and cleanup.
2005-12-10 19:24:36 +00:00
Michael Natterer b10adabb5e Added parent window API to the GimpProgress interface and to the libgimp
2005-09-09  Michael Natterer  <mitch@gimp.org>

	Added parent window API to the GimpProgress interface and to
	the libgimp progress stuff. Might look strange, but does
	the right thing in almost all cases (image window, file dialog,
	script-fu dialog etc). Fixes bug #62988.

	* app/core/gimpprogress.[ch]: added GimpProgress::get_window()
	which should return a toplevel window ID if the progress is in a
	window that wants to be the transient parent of plug-in dialogs.

	* app/widgets/gimpwidgets-utils.[ch] (gimp_window_get_native): new
	function which returns the window handle of a GtkWindow's GdkWindow.

	* app/widgets/gimpfiledialog.c: implement ::get_window().

	* app/display/gimpdisplay.[ch]: ditto. Removed window handle API.

	* app/gui/gui-vtable.c: changed accordingly.

	* libgimpbase/gimpbaseenums.[ch] (enum GimpProgressCommand):
	added GIMP_PROGRESS_COMMAND_GET_WINDOW.

	* app/plug-in/plug-in-progress.[ch] (plug_in_progress_get_window):
	new function. Also renamed some functions to match the
	GimpProgress interface, and not the legacy PDB procedure names.

	* tools/pdbgen/pdb/progress.pdb
	* app/core/gimppdbprogress.c: implement get_window() on both
	sides of the wire, keeping backward compatibility (hopefully).

	* libgimp/gimpprogress.[ch]: deprecated gimp_progress_install()
	and added gimp_progress_install_vtable() which takes a vtable with
	padding to be extensible. Added get_window() vtable entry and
	dispatch it accordingly. Also added pulse() which was implemented
	in a hackish way before. Everything is of course backward
	compatible.

	* libgimp/gimpprogressbar.c: inmplement the get_window() stuff
	so a plug-in dialog containing a progress can be the transient
	parent of another dialog in another plug-in.

	* libgimp/gimpui.[ch] (gimp_ui_get_progress_window): new function
	which returns a foreign GdkWindow of this plug-ins progress
	window.

	Renamed gimp_window_set_transient_for_default_display() to
	gimp_window_set_transient() and make it use the progress' window
	handle instead of the display's (which is the right thing to do in
	almost all cases).

	* libgimp/gimp.def
	* libgimp/gimpui.def: add the new functions.

	* tools/pdbgen/enums.pl
	* app/pdb/internal_procs.c
	* app/pdb/progress_cmds.c
	* libgimp/gimpprogress_pdb.[ch]: regenerated.

	* libgimp/gimpexport.c
	* plug-ins/*/*.c: follow API change.
2005-09-09 18:07:31 +00:00
Sven Neumann ec56ef9d01 Address bug #307971:
2005-09-05  Sven Neumann  <sven@gimp.org>

	Address bug #307971:

	* app/core/gimp-gui.[ch]
	* app/display/gimpdisplay.[ch]
	* app/gui/gui-vtable.c
	* tools/pdbgen/pdb/display.pdb: added PDB function to obtain a
	window handle on an image display.

	* app/pdb/display_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpdisplay_pdb.[ch]: regenerated.

	* libgimp/gimpui.[ch]: added functions to set a GtkWindow transient
	to an image display.

	* plug-ins/common/gauss.c: use the new function exemplarily.

	* libgimp/gimp.def
	* libgimp/gimpui.def: updated.
2005-09-05 20:47:12 +00:00
Sven Neumann 5fb2c4fc86 added a read-only property to access the display-shell w/o having to
2005-05-11  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.c: added a read-only property to access
	the display-shell w/o having to include gimpdisplay.h.
2005-05-11 20:41:51 +00:00
Sven Neumann 7c19953c39 added GimpProgress::pulse.
2005-02-12  Sven Neumann  <sven@gimp.org>

	* app/core/gimpprogress.[ch]: added GimpProgress::pulse.

	* app/display/gimpdisplay.c
	* app/display/gimpstatusbar.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpprogressbox.c
	* app/widgets/gimpprogressdialog.c
	* app/widgets/gimpthumbbox.c: implement it in the classes that
	implement the GimpProgress interface.

	* app/plug-in/plug-in-progress.[ch]: allow plug-ins to pulse their
	progress.

	* tools/pdbgen/pdb/progress.pdb: added a procedure for the new
	functionality.

	* app/pdb/internal_procs.c
	* app/pdb/progress_cmds.c
	* libgimp/gimpprogress_pdb.[ch]: regenerated.

	* libgimp/gimp.def: updated.
2005-02-12 14:18:12 +00:00
Michael Natterer 2a67415c51 app/display/gimpdisplay.c gracefully handle progress calls after the
2004-09-01  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.c
	* app/widgets/gimpprogressdialog.c: gracefully handle progress
	calls after the widget is destroyed. Re-fixes bug #150194.
2004-09-01 15:26:48 +00:00
Michael Natterer 57a3396d40 added virtual function gboolean GimpProgressInterface::is_active().
2004-08-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpprogress.[ch]: added virtual function
	gboolean GimpProgressInterface::is_active().

	* app/display/gimpdisplay.c
	* app/display/gimpstatusbar.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpprogressbox.c
	* app/widgets/gimpprogressdialog.c
	* app/widgets/gimpthumbbox.c: implement it.

	* app/plug-in/plug-in.h: removed "gboolean progress_active" and
	added "gulong progress_cancel_id" instead.

	* app/plug-in/plug-in-progress.c: changed accordingly. Make sure
	we correctly handle the "cancel" connections of progress instances
	passed from other plug-ins.
2004-08-11 10:29:56 +00:00
Michael Natterer 02d2b990f5 Redid the whole internal progress stuff: don't pass around
2004-08-10  Michael Natterer  <mitch@gimp.org>

	Redid the whole internal progress stuff: don't pass around
	progress_callback and progress_data; instead, provide a
	pointer to a GimpProgressInterface which can be implemented
	by a variety of backends.

	Addresses (but not yet fixes) bugs #6010, #97266 and #135185.

	* app/display/Makefile.am
	* app/display/gimpprogress.[ch]: removed the old progress hack.

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpprogress.[ch]: implement GimpProgressInterface.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpprogressdialog.[ch]: the standalone progress
	dialog as widget implementing GimpProgressInterface.

	* app/display/gimpdisplay.c
	* app/display/gimpstatusbar.[ch]
	* app/widgets/gimpfiledialog.[ch]
	* app/widgets/gimpthumbbox.[ch]: added GimpProgressInterface
	implementation to these classes.

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: replaced the old progress vtable entries
	by two new to create and destroy a GimpProgressDialog in case
	no other progress is available.

	* app/pdb/procedural_db.[ch]
	* app/plug-in/plug-in-run.[ch]
	* tools/pdbgen/app.pl: pass a GimpProgress to all PDB wrappers and
	all plug-ins.

	* app/plug-in/plug-in.[ch]
	* app/plug-in/plug-ins.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-progress.c: handle the case there the
	plug-in was crated with a progress as well as the case where it
	wasn't.

	* app/app_procs.c
	* app/batch.c
	* app/xcf/xcf.c
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/widgets/gimphelp.c
	* app/widgets/gimpbrushselect.c
	* app/widgets/gimpfontselect.c
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimppaletteselect.c
	* app/widgets/gimppatternselect.c: changed accordingly.

	* app/core/gimpimagefile.[ch]
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/file-open-dialog.c
	* app/gui/file-open-location-dialog.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c: pass a GimpProgress to all file
	related functions. Embed the progress in the file dialog where
	possible.

	* app/core/gimpdrawable-blend.[ch]
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpimage-convert.[ch]
	* app/core/gimpimage-flip.[ch]
	* app/core/gimpimage-resize.[ch]
	* app/core/gimpimage-rotate.[ch]
	* app/core/gimpimage-scale.[ch]
	* app/core/gimpitem-linked.[ch]
	* app/core/gimpitem.[ch]
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/vectors/gimpvectors.c: replaced callback/data by GimpProgress.

	* app/tools/gimpblendtool.c
	* app/tools/gimptransformtool.c
	* app/gui/convert-dialog.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/plug-in-commands.c
	* app/actions/vectors-commands.c
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb: changed callers accordingly.

	* app/pdb/*_cmds.c: regenerated.
2004-08-10 18:47:21 +00:00
Michael Natterer fe9d9be66b Code review & cleanup:
2004-07-14  Michael Natterer  <mitch@gimp.org>

	Code review & cleanup:

	* app/config/gimpguiconfig.[ch]: removed transparency-size,
	transparency-type and snap-distance properties...

	* app/config/gimpdisplayconfig.[ch]: ...and added them here.

	* app/display/gimpdisplayshell.c
	* app/tools/gimpmovetool.c: changed accordingly.

	* app/core/gimpimage-scale.[ch] (gimp_layer_scale_check): added a
	"max_memsize" parameter instead of looking it up in GimpGuiConfig.

	* app/actions/image-commands.c: changed accordingly.

	* app/core/gimparea.c
	* app/core/gimpdrawable.c: converted tabs to spaces, cleanup.

	* app/core/gimpprojection.[ch]: renamed IdleRenderStruct to
	GimpProjectionIdleRender, reordered functions, cleanup.

	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplay.c: removed unused #includes.

	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpdisplayshell-close.c: renamed
	shell->warning_dialog to shell->close_dialog, some random
	cleanups.

	* app/display/gimpdisplayshell-handlers.c
	* app/widgets/gimpselectioneditor.c: minor coding style cleanup.
2004-07-14 10:31:59 +00:00
Michael Natterer c5ec0d4f70 *** empty log message *** 2004-07-13 16:36:29 +00:00
Michael Natterer 87c1722700 added an "id" CONSTRUCT_ONLY property. Some minor cleanup.
2004-07-12  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.c: added an "id" CONSTRUCT_ONLY
	property. Some minor cleanup.
2004-07-12 11:43:00 +00:00
Sven Neumann c509204b7d tools/pdbgen/pdb/image.pdb app/pdb/image_cmds.c reverted changes I did to
2004-06-01  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/image.pdb
	* app/pdb/image_cmds.c
	* app/core/gimpimage.[ch]: reverted changes I did to the image
	unit earlier. As in 2.0, it will continue to not accept pixels.
	This makes the PDB API and the XCF format compatible again and
	fixes bug #142961 (and to some extent bug #137704).

	* app/core/Makefile.am
	* app/core/gimpimage-unit.[ch]: removed these files. The
	convenience accessors defined here aren't commonly used any
	longer.

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell.[ch]: added a unit parameter to
	gimp_display_new(). Made "unit" and "scale" properties of
	GimpDisplayShell.

	* app/actions/image-commands.c
	* app/actions/images-commands.c
	* app/actions/layers-commands.c
	* app/actions/select-commands.c
	* app/actions/view-commands.c
	* app/core/gimp-edit.c
	* app/core/gimp.[ch]
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpstatusbar.c
	* app/file/file-open.c
	* app/gui/gui-vtable.c
	* app/gui/info-window.c
	* app/gui/offset-dialog.c
	* app/gui/resize-dialog.[ch]
	* app/pdb/display_cmds.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/vectors/gimpvectors-export.c
	* app/widgets/gimptoolbox-dnd.c
	* tools/pdbgen/pdb/display.pdb: changed accordingly. Use the
	display unit where the image unit was used before.
2004-06-01 22:04:20 +00:00
Michael Natterer 4654280114 Switch from GtkItemFactory to GtkUIManager. The migration is almost
2004-04-29  Michael Natterer  <mitch@gimp.org>

	Switch from GtkItemFactory to GtkUIManager. The migration is
	almost complete, still stuff missing/incomplete, definitely added
	a bunch of new bugs...

	* app/actions/*-commands.[ch]: converted all callback from
	GtkItemFactory callbacks to GtkAction callbacks.

	* app/actions/debug-actions.c
	* app/actions/gradient-editor-actions.c
	* app/actions/help-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/qmask-actions.c
	* app/actions/tool-options-actions.c: various fixes.

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell-appearance.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: move everything from
	GtkItemFactory to GtkUIManager.

	* app/gui/dialogs.[ch]: added new function dialogs_get_toolbox().
	Needed because the action callbacks don't have a widget parameter
	and sometimes we need a parent window for showing dialogs.

	* app/gui/Makefile.am
	* app/gui/brushes-menu.[ch]
	* app/gui/buffers-menu.[ch]
	* app/gui/channels-menu.[ch]
	* app/gui/colormap-editor-menu.[ch]
	* app/gui/dialogs-menu.[ch]
	* app/gui/documents-menu.[ch]
	* app/gui/error-console-menu.[ch]
	* app/gui/fonts-menu.[ch]
	* app/gui/gradient-editor-menu.[ch]
	* app/gui/gradients-menu.[ch]
	* app/gui/images-menu.[ch]
	* app/gui/layers-menu.[ch]
	* app/gui/palette-editor-menu.[ch]
	* app/gui/palettes-menu.[ch]
	* app/gui/patterns-menu.[ch]
	* app/gui/qmask-menu.[ch]
	* app/gui/templates-menu.[ch]
	* app/gui/vectors-menu.[ch]: removed these files.

	* app/gui/gui.c: create a global UI manager for the image popup
	menu and the toolbox menubar.

	* app/gui/menus.[ch]: removed all GtkItemFactory code.

	* app/gui/image-menu.[ch]
	* app/gui/toolbox-menu.[ch]: removed everything except the trivial
	setup_funcs.

	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/tool-options-menu.c: don't use the macros from menus.h
	any more, they are gone.

	* app/gui/gui-vtable.c
	* app/gui/plug-in-menus.[ch]: create/destroy the dynamic plug-in
	menu entries.

	* app/tools/gimpimagemaptool.c: s/gimp_item_factory_update/
	gimp_ui_manager_update/g

	* app/widgets/gimpuimanager.[ch]: added API to get an action
	group by name.

	* app/widgets/gimpmenufactory.c: don't choke on the item_factory
	entries being NULL.

	* app/widgets/gimpactiongroup.c: make sure booleans set using
	g_object_set() only have TRUE or FALSE values.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdocked.[ch]
	* app/widgets/gimpeditor.[ch]
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptooloptionseditor.c: removed all GtkItemFactory
	code and enable the #if 0'ed UI manager stuff.

	* menus/gradient-editor-menu.xml: fixed typos.

	* menus/image-menu.xml: duplicate everything so we have both
	an image menubar and an image popup menu. Badly cries for an
	XSL processor.

	* menus/toolbox-menu.xml: added an "Extensions" placeholder.
2004-04-29 12:52:29 +00:00
Michael Natterer 1071842535 remember and ref the created widgets. Added gimp_ui_manager_ui_popup()
2004-04-22  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpuimanager.[ch]: remember and ref the created
	widgets.  Added gimp_ui_manager_ui_popup() which pops up a GtkMenu
	with a custom GimpMenuPositionFunc and a GtkDestroyNotify which is
	called on popdown.

	* app/widgets/gimpmenufactory.c (gimp_menu_factory_finalize):
	don't forget to free the list of managed UIs.

	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdockbook.[ch]
	* app/widgets/gimpdocked.[ch]
	* app/widgets/gimpeditor.[ch]: added GimpUIManager stuff parallel
	to the to-be-removed GtkItemFactory stuff.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimptooloptionseditor.c: changed accordingly and added
	#if 0'ed code which actually uses all the UI managers.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell.c
	* app/gui/gui-vtable.c: disabled some gimp_ui_manager_update()
	calls because they were invoking toggle and radio callbacks
	which still have the wrong signature.
2004-04-22 17:14:22 +00:00
Michael Natterer 0b8c4b3ec9 app/widgets/Makefile.am app/widgets/widgets-types.h new GtkUIManager
2004-04-21  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpuimanager.[ch]: new GtkUIManager subclass. Adds
	API to update all action groups and knows which UIs it can create
	from which XML files.

	* app/widgets/gimpmenufactory.[ch]: register the XML file
	basenames along with path of their toplevel menus. Create
	GimpUIManagers instead of GtkUIManagers and register the
	XML files and menu paths with them.

	* app/gui/menus.c: register all XML files and their toplevel
	menu paths.

	* app/widgets/gimpeditor.[ch]: also create a GimpUIManager when
	creating the GtkItemFactory. Added "const gchar *ui_identifier"
	parameter to gimp_editor_create_menu().

	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpitemtreeview.[ch]: added "ui_identifier"
	parameters to all constructors.

	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimppatternfactoryview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptooloptionseditor.c
	* app/gui/dialogs-constructors.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: pass UI identifiers to the changed
	functions above.

	* app/display/gimpdisplayshell.[ch]: added a GimpUIManager for
	the menubar (menubar creating code still commented out).

	* app/display/gimpdisplay.c
	* app/gui/gui-vtable.c: update the ui manager.
2004-04-21 16:33:17 +00:00
Simon Budig 645a1ab652 Store the zoom factor as float, not as a ratio.
2004-01-29  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell.[ch]: Store the zoom factor as
	float, not as a ratio.

	* app/display/gimpdisplayshell-scale.[ch]: change the API to
	expose the Float instead a weirdly encoded integer. Implement
	functions to get a ratio from the scale factor. Implement a set
	as presets as discussed on the mailinglist. Changed Zoom->Other
	dialog to enable entering a float.

	* app/display/gimpdisplayshell-title.c
	* app/display/gimpnavigationview.c
	* app/gui/image-menu.c
	* app/gui/info-window.c
	* app/tools/gimpmagnifytool.c: changed accordingly.

	* app/core/gimp.[ch]
	* app/display/gimpdisplay.[ch]
	* app/gui/gui-vtable.c
	* app/widgets/widgets-enums.h: Made the various display-creating
	functions accept a float for the scale. Introduce a new
	GimpZoomType: GIMP_ZOOM_TO. Generally adjust the API to use
	floats instead of weird integers.

	* app/core/gimp-edit.c
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/file/file-open.c
	* app/gui/image-commands.c
	* app/gui/view-commands.[ch]
	* tools/pdbgen/pdb/display.pdb
	* app/widgets/gimpimageview.c
	* app/widgets/gimptoolbox-dnd.c: changed accordingly

	* app/pdb/display_cmds.c: regenerated
2004-01-29 22:22:29 +00:00
Michael Natterer dbbf5130cd applied patch from Pedro Gimeno that makes sure we always invalidate
2004-01-12  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-projection.c (gimp_image_invalidate): applied
	patch from Pedro Gimeno that makes sure we always invalidate
	complete tiles, not parts of it. Fixes bug #116765.

	* app/display/gimpdisplay.c (gimp_display_paint_area): calculate
	the image area to invalidate using sub-pixel precision and
	ceil()/floor() the resulting area to make sure we always
	invalidate a superset of the dirty area, not a subset. A rounding
	error here has never been reported but would cause effects similar
	to #116765.
2004-01-12 11:11:27 +00:00
Michael Natterer 84458f5b95 removed GimpTool::cursor_update() implementation (which was there only to
2004-01-02  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimppainttool.c: removed GimpTool::cursor_update()
	implementation (which was there only to stop drawing the brush
	preview when the mouse leaves the canvas). Instead, look at
	shell->proximity in GimpTool::oper_update() and just don't start
	drawing the preview if proximity is FALSE.

	* app/display/gimpdisplay.c (gimp_display_delete): set
	gdisp->shell to NULL *before* gtk_widget_destroy()ing the shell so
	our tool callbacks don't dispatch stuff while the shell is in the
	middle of being destroyed.

	Both changes fix bug #129374, though the latter is the fix for the
	real problem.
2004-01-02 17:36:45 +00:00
Michael Natterer 8f8df33b57 *** empty log message *** 2003-11-20 18:08:01 +00:00
Michael Natterer 78bf44ddb6 update shell->popup_factory only if this is the active display or we will
2003-11-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-appearance.c: update
	shell->popup_factory only if this is the active display or we will
	change another display's options when creating a new display.
	Fixes bug #126668.

	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/view-commands.c
	* app/tools/gimpimagemaptool.c: do the same here. Can't really
	happen in these places but it's more correct to have the check
	for the active display.

	* app/display/gimpdisplay.c (gimp_display_flush_whenever): get the
	active display from the user_context, not the current_context.

	* app/gui/image-menu.c (image_menu_update): removed unused code.
2003-11-11 13:09:50 +00:00
Michael Natterer b19deeb311 Refactored modifier handling of displays and tools. Hopefully finally
2003-10-14  Michael Natterer  <mitch@gimp.org>

	Refactored modifier handling of displays and tools. Hopefully
	finally fixes bug #124135.

	* app/tools/gimptool.[ch] (struct GimpTool): added private members
	"focus_display" and "modifier_state" so tools are aware of their
	modifier state.

	* app/tools/gimptool.[ch]
	* app/tools/tool_manager.[ch]: removed all public modifier_key()
	API and added set_focus_display() and set_modifier_state()
	instead.

	* app/tools/tool_manager.c (tool_manager_select_tool)
	* app/display/gimpdisplay.c (gimp_display_delete): set the
	active_tool's focus_display to NULL.

	* app/display/gimpdisplayshell.[ch] (struct GimpDisplayShell):
	added almost the whole stuff that used to be static variables of
	gimp_display_shell_tool_events(). Cleaned up the struct a bit.

	* app/display/gimpdisplayshell-callbacks.c: removed utility
	function gimp_display_shell_update_tool_modifiers().

	(gimp_display_shell_tool_events):

	- Replaced all calls to gimp_display_shell_update_tool_modifiers()
	  and tool_manager_modifier_key_active() by
	  tool_manager_modifier_state_active().

	- Call tool_manager_focus_display_active() before setting the
	  tool's modifier_state. Set the tool's focus_display to NULL when
	  we get a focus_out event.

	- Don't grab/ungrab the keyboard twice when <space>-selecting the
	  move tool.

	- Removed most static variables and use the new members of
	  GimpDisplayShell. Don't remember any old modifier states since
	  GimpTool does that by itself now.
2003-10-14 11:14:28 +00:00
Michael Natterer abf13dd16f HALT the active tool before reconnecting. Fixes bug #124388.
2003-10-12  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.c (gimp_display_reconnect): HALT the
	active tool before reconnecting. Fixes bug #124388.
2003-10-12 11:20:22 +00:00
Michael Natterer 96e9f052a2 Fixed bug #119423. There was no speed regression with the actual painting,
2003-10-08  Michael Natterer  <mitch@gimp.org>

	Fixed bug #119423. There was no speed regression with the actual
	painting, just with the display update (which effectively led to
	faster painting, it just felt slower).

	* app/display/gimpdisplayshell.c (gimp_display_shell_flush): added
	"gboolean now" parameter and update the display immediately if
	it is TRUE.

	* app/display/gimpdisplay.c (gimp_display_flush_whenever): pass
	the "now" we got passed to the function above, so calling
	gimp_display_flush_now() really flushes *now* again.
2003-10-08 14:50:26 +00:00
Michael Natterer 6c0c7fda33 moved the code which manipulates gimage->layer_stack and the call to
2003-07-29  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.c (gimp_image_set_active_layer): moved the
	code which manipulates gimage->layer_stack and the call to
	gimp_layer_invalidate_boundary() inside the if(layer != active_layer)
	branch so it is called less often. Fixes the slowness of bug #104440
	for most cases since we don't need to recalculate the selection
	boundary in the next step.

	(gimp_image_set_active_channel): call
	gimp_layer_invalidate_boundary() before setting the active_layer
	to NULL. Fixes stale layer boundary when switching to a channel.

	* app/display/gimpdisplay.c (gimp_display_flush_whenever): when
	there are no updates, we still need to restart the selection.
	Fixes missing layer boundary when switching from a channel to
	a layer.
2003-07-29 16:36:56 +00:00
Michael Natterer c1ab39a5e8 removed gimp_drawable_offsets().
2003-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: removed gimp_drawable_offsets().

	* app/core/gimpitem.[ch]: added gimp_item_offsets().

	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-histogram.c
	* app/core/gimpedit.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-mask-select.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-pick-color.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpdisplayshell.c
	* app/gui/channels-commands.c
	* app/gui/layers-commands.c
	* app/paint/gimppaintcore.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpinktool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox.c
	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/drawable.pdb: changed accordingly.

	* app/pdb/color_cmds.c
	* app/pdb/drawable_cmds.c: regenerated.
2003-05-08 14:06:03 +00:00
Michael Natterer 54878b79ce removed gimp_drawable_width,height().
2003-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: removed gimp_drawable_width,height().

	* app/core/gimpitem.[ch]: added gimp_item_width,height().

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable-preview.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-contiguous-region.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage.c
	* app/core/gimpimagemap.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/core/gimplayermask.c
	* app/core/gimpscanconvert.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-dnd.c
	* app/display/gimpdisplayshell.c
	* app/gui/channels-commands.c
	* app/gui/layers-commands.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimppaintcore.c
	* app/paint/gimpsmudge.c
	* app/text/gimptextlayer.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/selection.pdb: changed accordingly.

	* app/pdb/drawable_cmds.c
	* app/pdb/selection_cmds.c: regenerated.
2003-05-08 13:12:46 +00:00
Sven Neumann 0c399e5c93 Removed support for pluggable tools:
2003-04-15  Sven Neumann  <sven@gimp.org>

	Removed support for pluggable tools:

	* configure.in: bumped version number to 1.3.15.

	* Makefile.am
	* libgimpproxy
	* libgimptool
	* plug-ins/Makefile.am
	* plug-ins/plugin-helper
	* plug-ins/tools: removed libgimpproxy, libgimptool and plug-ins
	that used it.

	* tools/Makefile.am
	* tools/gimp-mkproxy: removed tool that used to generate
	libgimpproxy.

	* app/core/core-enums.h
	* app/core/gimpchannel.h
	* app/display/display-types.h
	* app/widgets/widgets-enums.h: removed proxy-skip/resume stuff.

	* app/core/gimpobject.c: use gimp marshallers.

	* app/tools/Makefile.am
	* app/tools/gimptool.h
	* app/tools/tools-enums.[ch]: moved these files back from
	libgimptool.

	* app/tools/gimptool.c
	* app/tools/gimptoolcontrol.h: merged back functionality from
	libgimptool.

	* app/Makefile.am
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/tools-commands.c
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpbucketfilltool.h
	* app/tools/gimpdrawtool.h
	* app/tools/gimpimagemaptool.h
	* app/tools/gimpinktool.h
	* app/tools/gimptoolmodule.c
	* app/tools/tool_manager.c
	* app/tools/tools-types.h
	* app/tools/tools.c
	* tools/pdbgen/Makefile.am: changed accordingly.
2003-04-15 14:20:19 +00:00
Sven Neumann 28fddfd554 Makefile.am removed this header file.
2003-03-25  Sven Neumann  <sven@gimp.org>

	* Makefile.am
	* gimpintl.h: removed this header file.

	* gimpmiscui.c: include libgimp-intl.h.

	* gimp.c (gimp_main): call setlocale() and bind to the libgimp
	textdomain so that plug-ins don't need to do that explicitely.

	* libgimp/stdplugins-intl.h: added the functionality that used to
	live in gimpintl.h and removed the libgimp related stuff. Got rid
	of the INIT_I18N_UI() macro.

	* plug-ins/*/*.c: removed all occurances of INIT_I18N_UI().
	Plug-ins simply call INIT_I18N() once in their run() function.

	* plug-ins/script-fu/script-fu-intl.h: added the functionality
	that used to live in gimpintl.h and removed the libgimp related
	stuff.

	* app/Makefile.am
	* app/gimp-intl.h: new file that defines the gettext macros for
	the GIMP core.

	* app/*/*.c: include gimp-intl.h instead of libgimp/gimpintl.h.

	* plug-ins/script-fu/scripts/test-sphere.scm: fixed typos.
2003-03-25 16:38:19 +00:00
Michael Natterer 906c5a9f38 removed gdisp->draw_guides and gdisp->snap_to_guides.
2003-03-20  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.[ch]: removed gdisp->draw_guides
	and gdisp->snap_to_guides.

	* app/display/gimpdisplayshell.[ch]: added shell->snap_to_guides.
	Added the state of guide, selection and active_layer visibility to
	the GimpDisplayShellVisibility struct so they can be configured
	separately for fullscreen mode. Update the popup_factory in
	gimp_display_shell_real_scaled() only if this is the active
	display.

	* app/display/gimpdisplayshell-appearance.[ch]: added accessors
	for selection, active_layer and guide visibility.

	* app/display/gimpdisplayshell-selection.[ch]: changed
	accordingly.  Changed the selection and active_layer toggle
	functions to *_set_hidden().

	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/image-menu.c
	* app/gui/view-commands.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpmovetool.c: changed accordingly.

	* app/gui/gui.c (gui_display_new): update the menubar_factory
	*after* making the new display the active one.
2003-03-20 11:31:33 +00:00
Sven Neumann 1b0339ad34 replaced a for-loop with a call to memcpy().
2003-02-21  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (render_image_rgb):
	replaced a for-loop with a call to memcpy().

	* app/display/gimpdisplay.c: use g_memdup() instead of g_new()
	followed by memcpy().
2003-02-21 12:48:13 +00:00
Michael Natterer 5f5e0bf5d6 Refactored the GimpDisplayShell update/draw code:
2003-02-21  Michael Natterer  <mitch@gimp.org>

	Refactored the GimpDisplayShell update/draw code:

	* app/display/gimpdisplayshell.[ch]: removed the display_areas
	list which used to hold the GimpAreas to update. Instead, simply
	queue draws using gtk_widget_queue_draw[_area]() in
	gimp_display_shell_expose_area(), _expose_full() and
	_expose_guide(). Made all _draw() functions public because they
	are now called from the "expose_event" handler.  Removed rendering
	from gimp_display_shell_flush() because stuff is now flushed
	automatically by the gtk idle renderer.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_expose): draw everything here (the code
	removed from gimp_display_shell_flush() without the GimpArea list).
	(gimp_display_shell_canvas_tool_events): return "return_val", not
	TRUE if gimp->busy is TRUE. Fixes unupdated (windowk bg color)
	display areas. Fixes bug #106595.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-cursor.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-selection.c
	* app/gui/view-commands.c: changed accordingly. Removed calls to
	gimp_display_shell_flush() all over the place.

	* app/display/gimpdisplayshell-scroll.c: replaced lots of code by
	a single call to gdk_window_scroll().
2003-02-21 12:16:43 +00:00
Michael Natterer 8d86ec25e0 Move away from creating all item_factories statically in menus_init() but
2003-01-10  Michael Natterer  <mitch@gimp.org>

	Move away from creating all item_factories statically in
	menus_init() but create a new one for each place where one is
	needed:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpmenufactory.[ch]: new factory which creates and
	configures the GimpItemFactories it knows about on-the-fly.

	* app/widgets/gimpitemfactory.[ch]: added
	gimp_item_factory_update() which calls the "update_func". Added
	"gboolean update_on_popup" so item_factories can be configured to
	require manual updates (used for the <Image> factory).

	* app/gui/menus.[ch]: create a "global_menu_factory" and register
	all menus we have with it. Added various setup functions which
	do stuff like adding the "Open Recent" menu or reorder plug-in
	menu entries. Removed the debugging stuff...

	* app/gui/Makefile.am
	* app/gui/debug-commands.[ch]: ...and added it here.

	* app/gui/gui.c: create the <Toolbox>, the popup-<Image> and the
	<Paths> factories here because they are still global.

	* app/gui/plug-in-menus.[ch]: changed the "image_factory"
	parameters to "item_factory" and create/update the entries for the
	passed item_factory only. Makes the whole stuff much more
	straightforward.

	* app/plug-in/plug-ins.c: don't call plug_in_make_menu().

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell.[ch]: added "menu_factory" and
	"popup_factory" parameters to gimp_display_new() and
	gimp_display_shell_new(). Create the menubar_factory and the
	qmask_factory dynamically. Pass the shell, not a Gimp to the QMask
	callbacks. Changed gimp_display_shell_set_menu_sensitivity() to
	gimp_display_shell_menu_update() and don't call it directly (it's
	a GimpItemFactory update_func now). Call gimp_item_factory_update()
	on the resp. factories instead.

	* app/gui/qmask-commands.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpimagemaptool.c: changed accordingly.

	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpbrushfactoryview.[ch]
	* app/widgets/gimpbufferview.[ch]
	* app/widgets/gimpcolormapeditor.[ch]
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpdialogfactory.[ch]
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockbook.[ch]
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimpimageview.[ch]
	* app/widgets/gimpitemlistview.[ch]
	* app/widgets/gimppaletteeditor.[ch]: pass around lots of
	GimpMenuFactory pointers and menu_identifiers so all views can
	create their item_factories themselves. Unref the factories when
	they are no longer needed because they belong to the views now.

	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c
	* app/gui/brush-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: changed accordingly.

	* app/gui/file-dialog-utils.[ch] (file_dialog_new): require
	menu_factory and menu_identifier parameters.

	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]: removed file_*_dialog_menu_init()
	(they went to menus.c as setup_funcs). Added file_*_dialog_set_type()
	and moved the <Load> and <Save> factory callbacks to file-commands.c

	* app/gui/file-commands.[ch]: changed accordingly.

	* app/gui/view-commands.c: changed the statusbar, menubar, rulers
	and guides callbacks to do their job only if the setting has
	actually changed. Don't update whole item factories afterwards.
	Instead, just change the state of the items that actually need
	update.

	Unrelated:

	* app/core/gimpchannel.c (gimp_channel_init): set "bounds_known"
	and friends to FALSE since we don't know that the new channel will
	be empty (fixes QMask and probably other stuff).

	* app/gui/image-commands.c
	* app/gui/vectors-commands.c: cleanup.
2003-01-10 17:55:53 +00:00
Manish Singh 1a44f2126c cleanup, removed unecessary G_OBJECT() casts. Should do the same for
2003-01-05  Manish Singh  <yosh@gimp.org>

        * many files in app, modules and libgimp*: cleanup, removed unecessary
        G_OBJECT() casts. Should do the same for plug-ins, when more of them
        get undeprecated.
2003-01-05 22:07:10 +00:00
Sven Neumann ec6c98656e bumped the version number to 1.3.12.
2003-01-03  Sven Neumann  <sven@gimp.org>

	* configure.in: bumped the version number to 1.3.12.

	* app/display/Makefile.am
	* app/display/gimpdisplayshell-cursor.[ch]
	* app/display/gimpdisplayshell-title.[ch]
	* app/display/gimpdisplayshell-transform.[ch]: new files with code
	that used to live in gimpdisplayshell.c.

	* app/display/gimpdisplay-foreach.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpdisplayshell.[ch]
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpdrawtool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimptool.c: changed accordingly.
2003-01-03 18:01:30 +00:00
Michael Natterer f03b6b6d75 Changed menubar showing/hiding to work like rulers and statusbar:
2002-12-14  Michael Natterer  <mitch@gimp.org>

	Changed menubar showing/hiding to work like rulers and statusbar:

	* app/config/gimpconfig-blurbs.h
	* app/config/gimpdisplayconfig.[ch]: renamed "menu_bar_per_display"
	to "show_menubar". Removed GIMP_PARAM_RESTART flag.

	* app/display/gimpdisplayshell.[ch]: chaged shell->item_factory to
	shell->menubar_factory plus shell->popup_factory and always create
	both of them. Added "gboolean update_popup" to
	gimp_display_shell_set_menu_sensitivity() and call it recursively
	with update_popup == TRUE if the display it is called for is the
	active one.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c: changed accordinly.

	* app/gui/gui.c: ditto. Set the menu sensitivity of new displays.

	* app/gui/menus.c: added "<Image>/View/Toggle Menubar" menu item.
	Moved some factory initialization code from gimpdisplayshell.c
	here.

	* app/gui/view-commands.[ch]: added
	view_toggle_menubar_cmd_callback(). Update the menu sensitivity
	manually in all callbacks which don't call gimp_image_flush().

	* app/gui/preferences-dialog.c (prefs_dialog_new): moved the "Show
	Menubar" toggle to the "Appearance" frame of the "Image Windows"
	page. Added an own frame for the display zoom/scaling settings.

	(preferences_dialog_create): Attach config_copy and config_orig
	using g_object_set_data_full() instead of just g_object_set_data()
	plus a g_object_weak_ref().

	(prefs_default_resolution_callback): set the resolution for both
	fields of the "size_sizeentry" instead of setting it for "x"
	twice.
2002-12-14 14:13:54 +00:00
Sven Neumann 073e533a8a Finally landed the new GimpConfig based gimprc parser. It's not finished
2002-11-18  Sven Neumann  <sven@gimp.org>

	Finally landed the new GimpConfig based gimprc parser. It's not
	finished yet but we need to start somewhere. This release removes
	the old gimprc.[ch] files. The gimprc format changes slightly, but
	the changes are minimal. The Preferences dialog is temporarily
	disabled since it still needs to be ported. If you are are afraid,
	stay away from CVS for a few days ;-)

	* app/Makefile.am
	* app/gimprc.[ch]: removed the old gimprc system.

	* app/base/Makefile.am
	* app/base/base-config.[ch]: removed these files in favor of
	config/gimpbaseconfig.[ch].

	* app/core/Makefile.am
	* app/core/gimpcoreconfig.[ch]: removed these files in favor of
	config/gimpcoreconfig.[ch].

	* app/config/Makefile.am
	* app/config/config-types.h: moved typedefs into this new file.

	* app/config/gimpbaseconfig.[ch]
	* app/config/gimpcoreconfig.[ch]
	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc.[ch]
	* app/config/test-config.c: brought into shape for real use.

	* app/base/base-types.h: include config/config-types.h here. Added
	a global GimpBaseConfig *base_config variable to ease migration.

	* app/gui/Makefile.am: temporarily disabled the preferences dialog.

	* app/app_procs.c
	* app/undo.c
	* app/undo_history.c
	* app/base/base.[ch]
	* app/base/gimphistogram.c
	* app/base/pixel-processor.c
	* app/base/temp-buf.c
	* app/base/tile-cache.c
	* app/core/core-types.h
	* app/core/gimp-documents.c
	* app/core/gimp.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpcontext.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimpmodules.c
	* app/core/gimppattern.c
	* app/display/Makefile.am
	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpnavigationview.c
	* app/file/file-save.c
	* app/gui/device-status-dialog.c
	* app/gui/dialogs-constructors.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/paths-dialog.c
	* app/gui/resize-dialog.c
	* app/gui/session.c
	* app/gui/test-commands.c
	* app/gui/tips-dialog.c
	* app/gui/tips-dialog.h
	* app/gui/user-install-dialog.c
	* app/gui/view-commands.c
	* app/paint/gimppaintcore.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppathtool.c
	* app/tools/gimptexttool.[ch]
	* app/tools/selection_options.c
	* app/tools/tools.c
	* app/tools/transform_options.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpitemfactory.c
	* app/widgets/gimpselectioneditor.c
	* app/xcf/xcf-load.c
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/gimprc.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: use the new config system
	instead of the old gimprc stuff.

	* etc/gimprc.in
	* etc/gimprc_user.in: adapted to the new gimprc format. Will update
	the man-page later...

	* app/pdb/fileops_cmds.c
	* app/pdb/gimprc_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/transform_tools_cmds.c
	* libgimp/gimpgimprc_pdb.c: regenerated.
2002-11-18 20:50:31 +00:00
Sven Neumann 6303579945 added convenience function gimp_display_coords_in_active_drawable().
2002-10-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.[ch]: added convenience function
	gimp_display_coords_in_active_drawable().

	* app/tools/gimpcurvestool.c: indicate the possibility to pick color
	values from the image by showing a color picker cursor. Made the
	file selection dialog transient for the tool shell.

	* app/tools/gimplevelstool.c: made the file selection dialog
	transient for the tool shell.
2002-10-14 13:39:35 +00:00
Michael Natterer fa537489d7 removed gdisp->scale, gdisp->dot_for_dot, the scaling marcos and the
2002-06-27  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.[ch]: removed gdisp->scale,
	gdisp->dot_for_dot, the scaling marcos and the
	gdisplay_[un]transform[_f]() functions.

	* app/display/gimpdisplayshell.[ch]: added them here. Named the
	transform functions gimp_display_shell_[un]transform_xy[_f]().

	Made the gimp_display_shell_[un]transform_coords() functions copy
	all values of the GimpCoords struct, not just x and y.

	* app/display/gimpstatusbar.[ch]: keep a pointer to
	GimpDisplayShell, not GimpDisplay.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpnavigationview.c
	* app/gui/image-commands.c
	* app/gui/info-window.c
	* app/gui/select-commands.c
	* app/gui/view-commands.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpdrawtool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppathtool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpvectortool.c: changed accordingly.

	* app/gui/layers-commands.c: if(gimage->selection_mask) is always
	TRUE, use if(!gimp_image_mask_is_empty(gimage)) instead.

	* app/tools/gimpfuzzyselecttool.[ch]: moved global variables
	to the object struct.
2002-06-26 22:16:59 +00:00
Michael Natterer 666b72e501 EEK, actually increase gimp->next_display_ID after taking a value.
2002-05-10  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.c: EEK, actually increase
	gimp->next_display_ID after taking a value.
2002-05-10 18:27:51 +00:00
Michael Natterer 359990db33 added a read-only property for the display's image, so it can be retreived
2002-05-10  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.c: added a read-only property for the
	display's image, so it can be retreived by the core, which
	treats displays as simple GimpObjects.

	* app/core/gimpcontext.c: made context->display an object
	property, not just gpointer. Connect to the "remove" signal of
	gimp->displays to get notified of disappearing displays. Removed
	the EEKWrapper and get the display's gimage with g_object_get().

	* app/widgets/gimpimagedock.[ch]: added image_dock->display_container
	and require it being passed in the constructor. Do voodoo things
	in the "image_changed" and "display_changed" callbacks to ensure
	that the dock doesn't end up with no display even if the active
	image has one. Added a style property for the image menu's preview
	size.

	* app/gui/dialogs-commands.c (dialogs_menu_update): set the
	"View as List" and "View as Grid" items insensitive if the
	other view type doesn't exist. Hide them if the view cannot
	be classified as "list" or "grid" at all. Also hide the
	"Preview Size" submenu if it's pointless for the view.

	* app/gui/dialogs-constructors.c: added a special tab for the
	navigation dialog. Will propbaby add dockable->stock_id to
	generalize this kind of tab. Pass gimp->displays to
	gimp_image_dock_new().

	* app/gui/menus.c: reordered the "<Dialogs>" factory entries,
	added more stock icons, cleanup.

	* etc/gtkrc_user
	* themes/Default/gtkrc: document usage of GimpImageDock's
	"menu_preview_height" property.
2002-05-10 13:09:19 +00:00
Michael Natterer a3bb0b0dad Started to get rid of the gdisplays_foo() functions in
2002-05-08  Michael Natterer  <mitch@gimp.org>

	Started to get rid of the gdisplays_foo() functions in
	app/display/gimpdisplay-foreach.[ch]. Work in progress...

	* app/core/gimp.[ch]: added the display list to the Gimp object
	(as a GimpList of GimpObjects). This way we get more independent
	from whether there is GUI or not, as gimp->displays will simply
	be an empty list for the --no-interface case.

	* app/display/gimpdisplay.[ch]: Removed the global "display_list"
	and "display_num" variables. Use gimp->displays instead.

	* app/display/gimpdisplay-foreach.[ch]: renamed most functions
	from gdisplays_foo() to gimp_displays_foo() and pass them a Gimp
	pointer.

	* app/core/gimpimage.[ch]: added a "flush" signal.

	* app/display/gimpdisplay-handlers.c: connect to "flush" and call
	gimp_display_flush() in the callback.

	* tools/pdbgen/pdb/display.pdb: use gimp_displays_flush(gimp)
	here and only here.

	* app/pdb/display_cmds.c: regenerated.

	* app/app_procs.c
	* app/gui/gui.c
	* app/gui/preferences-dialog.c:
	s/gdislays_foo()/gimp_displays_foo(gimp)/

	* app/image_map.c
	* app/undo_history.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-dnd.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell-scale.c
	* app/gui/channels-commands.c
	* app/gui/colormap-editor-commands.c
	* app/gui/convert-dialog.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* app/gui/qmask-commands.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/paint/gimpairbrush.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpdrawablelistitem.c
	* app/widgets/gimpdrawablelistview.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimpitemlistitem.c
	* app/widgets/gimpitemlistview.c
	* app/widgets/gimplayerlistitem.c
	* app/widgets/gimplayerlistview.c
	* app/widgets/gimpvectorslistview.c: replaced gdisplays_flush()
	with calls to gimp_image_flush(gimage). Removed inclusion of
	"display/gimpdisplay-foreach.h" from most files.
2002-05-08 17:48:24 +00:00
Michael Natterer ff722d0cff removed unused commented out prototype.
2002-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.h: removed unused commented out prototype.

	* app/core/gimpimage.c (gimp_image_set_tattoo_state): fixed it
	again after I have b0rked it when using vectors instead of paths.

	* app/display/gimpdisplay.c: some comments and one more
	g_return_val_if_fail().

	* app/widgets/gimpimagedock.c: more fixes for the subtle
	active_image <-> active_display difference.

	* tools/pdbgen/pdb/display.pdb (gimp_display_delete): call
	gimp_display_delete() instead of just destroying it's shell (eek).

	* app/pdb/display_cmds.c: regenerated.

	Added a special view type for the image list so we can implement
	stuff like deleting images which are left over from crashed
	plug-ins:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpimageview.[ch]: new widget: a view on the image
	container.

	* app/gui/Makefile.am
	* app/gui/images-commands.[ch]: new callbacks for it's context menu.

	* app/gui/dialogs-constructors.c: use the new widget instead of
	plain GimpContainerViews.

	* app/gui/menus.c: added an item_factory for it.
2002-05-08 12:39:01 +00:00
Michael Natterer b6c56ff9ac app/Makefile.am removed.
2002-05-07  Michael Natterer  <mitch@gimp.org>

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

	* app/display/Makefile.am
	* app/display/display-types.h
	* app/display/gimpnavigationview.[ch]: new widget partially based
	on the removed nav_window.

	* libgimpproxy/gimpproxytypes.h: regnenerated.

	* app/display/gimpdisplay-foreach.[ch]: removed
	gdisplays_nav_preview_resized(). The new config system will allow
	us to get notified of changes.

	* app/display/gimpdisplayshell.[ch]: added "scaled" and "scrolled"
	signals.

	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c: emit "scaled" and
	"scrolled" appropriately. Removed nav_window stuff.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c: changed accordingly.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c
	* app/gui/menus.c: made the navigation dialog dockable.

	* app/gui/view-commands.c: changed the nav_dialog callback accordingly.

	* app/gui/preferences-dialog.c
	* app/gimprc.[ch]
	* app/config/gimpguiconfig.[ch]: removed "nav_window_per_display"
	as it's now a dockable and it's state is saved in sessionrc.

	* app/widgets/gimpnavigationpreview.[ch]: added context sensitive
	mouse cursors.

	* app/widgets/gimpimagedock.c: made it capable of holding
	display-related dialogs (like GimpNavigationView) by connecting
	to the context's "display_changed" signal.

	* app/widgets/widgets-types.h: removed inclusion of
	"display/display-types.h".

	* app/widgets/gimpbufferview.c
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpdrawablelistitem.c
	* app/widgets/gimpdrawablelistview.c
	* app/widgets/gimpitemlistitem.c
	* app/widgets/gimpitemlistview.c
	* app/widgets/gimplayerlistitem.c
	* app/widgets/gimplayerlistview.c
	* app/widgets/gimppreview.c
	* app/widgets/gimpvectorslistview.c: warn about inclusion of
	"display/display-types.h".
2002-05-07 16:23:14 +00:00
Michael Natterer c86ca2da6a app/Makefile.am removed...
2002-05-05  Michael Natterer  <mitch@gimp.org>

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

	* app/widgets/Makefile.am
	* app/widgets/gimphelp.[ch]: ...and added here.

	* app/widgets/widgets-enums.[ch]: added GimpHelpBrowserType here
	as registered enum. Added an evil hack with GimpCursorType so
	app/config/gimpguiconfig.h can include this file.

	* app/widgets/gimpcursor.c: added an assertion because of the
	changed GimpCursorType.

	* app/config/gimpguiconfig.[ch]: added a property for the help
	browser type.

	* app/gimprc.c
	* app/libgimp_glue.c
	* app/gui/preferences-dialog.c
	* tools/pdbgen/pdb/help.pdb

	* app/pdb/help_cmds.c: regenerated.

	Some nav_window cleanup before chopping:

	* app/nav_window.[ch]: removed the old preview code and use
	GimpNavigationPreviews only. Namespaceified all functions. Speak
	in terms of GimpDisplayShell, not GimpDisplay. Lots of internal
	cleanup.

	* app/gui/gui-types.h: removed NadiagtionDialog here...

	* app/display/display-types.h: ...and added it here.

	* app/display/gimpdisplayshell-callbacks.[ch]: added a callback
	for the navigation button and call nav_window_show_popup() from there.

	* app/display/gimpdisplayshell.c: free shell->nav_dialog
	unconditionally, connect to the new callback.

	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/gui/view-commands.c: changed accordingly.

	* app/widgets/gimppreview.c (gimp_preview_set_viewable): the
	assertion introduced recently was too tight, breaking
	GimpNavigationPreview. Changed it to do an "is a" check, not exact
	preview type matching.

	* app/widgets/gimpimagepreview.c: added quick-hack support for
	xres != yres.

	* app/widgets/gimpnavigationpreview.[ch]: made
	gimp_navigation_preview_grab_pointer() public so the nav_window
	can call it.

	Unrelated:

	* app/display/gimpdisplay.c: removed the gui/ dependency from this
	file by removing info_window stuff.

	* app/display/gimpdisplayshell.c (gimp_display_shell_flush): update
	the info_window here.

	* app/gui/dialogs-constructors.c (dialogs_indexed_palette_new): call
	gimp_dockable_set_context() like all other constructors.

	* app/undo.c
	* app/paint/gimppaintcore.h: some more include cleanup.
2002-05-05 19:17:41 +00:00
Michael Natterer a74a8997b4 devel-docs/Makefile.am new file documenting the core's include policy.
2002-05-03  Michael Natterer  <mitch@gimp.org>

	* devel-docs/Makefile.am
	* devel-docs/includes.txt: new file documenting the core's
	include policy.

	* HACKING: mention it here.

	* libgimptool/gimptooltypes.h: removed GimpToolOptions here.

	* app/core/core-types.h: and added it here. This is a temp hack
	needed because GimpToolInfo needs to know the GimpToolOptions
	type.

	* libgimpproxy/gimpproxytypes.h: regenerated.

	* libgimptool/gimptoolmodule.h: don't include gimptooltypes.h here...
	* libgimptool/gimptoolmodule.c: ...but here.

	* app/config/gimpconfig-params.c: include "libgimpbase/gimpbase.h"
	entirely, not single files from it.

	* app/core/gimp.c
	* app/core/gimpcontext.c
	* app/core/gimpcoreconfig.c
	* app/core/gimpdatafactory.c
	* app/core/gimpdocuments.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpdrawable.c
	* app/core/gimpedit.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-guides.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage-qmask.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage.c
	* app/core/gimpitem.c
	* app/core/gimpmodules.c
	* app/core/gimppaintinfo.c
	* app/core/gimpparasite.c
	* app/core/gimppreviewcache.c
	* app/core/gimptoolinfo.c
	* app/core/gimpunit.c: include "core-types.h" and no other types file.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.c: include "tools/tools-types.h"
	instead of "libgimptool/gimptooltypes.h", warn about inclusion
	on "gui/gui-types.h"

	* app/file/file-open.c
	* app/file/file-save.c: don't include "libgimptool/gimptooltypes.h".

	* app/gui/about-dialog.c
	* app/gui/brush-select.c
	* app/gui/brushes-commands.c
	* app/gui/color-select.c
	* app/gui/data-commands.c
	* app/gui/device-status-dialog.c
	* app/gui/dialogs.c
	* app/gui/gradients-commands.c
	* app/gui/help-commands.c
	* app/gui/info-window.c
	* app/gui/palettes-commands.c
	* app/gui/patterns-commands.c
	* app/gui/resize-dialog.c
	* app/gui/tips-dialog.c
	* app/gui/tool-options-dialog.c: include "gui-types.h" and no
	other types file.

	* app/paint/gimpairbrush.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimperaser.c
	* app/paint/gimppaintbrush.c
	* app/paint/gimppaintcore-stroke.c
	* app/paint/gimppaintcore.c
	* app/paint/gimppaintoptions.c
	* app/paint/gimppencil.c
	* app/paint/gimpsmudge.c
	* app/paint/paint.c: include "paint-types.h" and no other types file.

	* app/pdb/pdb-types.h: don't include "libgimptool/gimptooltypes.h".

	* app/plug-in/plug-in-progress.c: warn about inclusion of
	"display/display-types.h"

	* app/tools/tools-types.h: include "libgimptool/gimptooltypes.h".

	* app/tools/gimpairbrushtool.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpdrawtool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppathtool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptoolcontrol.c
	* app/tools/gimptoolcontrol.h
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/tools/tools.c: include "tools-types.h" and no other types file,
	warn about inclusion of "gui/gui-types.h".

	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimptoolbox-color-area.c: warn about inclusion of
	"gui/gui-types.h".

	* app/xcf/xcf-load.c
	* app/xcf/xcf.c: don't include "libgimptool/gimptooltypes.h".

	Split tool-safe-mode up in two files, one including libgimpproxy,
	one libgimp.

	* plug-ins/tools/Makefile.am
	* plug-ins/tools/tool-safe-mode-plug-in.[ch]: new files including
	libgimp/ stuff only.

	* plug-ins/tools/tool-safe-mode.[ch]: include libgimpproxy/ and
	libgimptool/ but don't include libgimp/ because of conflicting
	declarations.

	Unrelated:

	* app/tools/gimpclonetool.c: create the clone core so we don't crash.

	* app/gui/file-open-dialog.c: changed the way we create previews
	so that only out-of-date previews are created on a click in the
	preview area. Unconditional creation can still be forced by
	<Ctrl>+click. Changed the tooltip to document this.
2002-05-03 12:45:22 +00:00
Nate Summers 69ccb4d370 massive tool plugin changes 2002-03-29 03:50:29 +00:00