Commit Graph

1731 Commits

Author SHA1 Message Date
Sven Neumann a87da0ea1c improved error handling.
2003-03-11  Sven Neumann  <sven@gimp.org>

	* app/gui/session.c (session_info_deserialize): improved error
	handling.
2003-03-11 12:32:26 +00:00
Sven Neumann 2553b3cab8 app/display/gimpdisplayshell-callbacks.c app/display/gimpdisplayshell.[ch]
2003-03-11  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]
	* app/gui/image-menu.c
	* app/gui/view-commands.c: rewrote the fullscreen mode
	implementation so that it doesn't loop infinitely.
2003-03-11 11:53:26 +00:00
Sven Neumann 632b7f8ac6 app/display/gimpdisplayshell-callbacks.c app/display/gimpdisplayshell.[ch]
2003-03-11  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]
	* app/gui/image-menu.c
	* app/gui/view-commands.[ch]: added a fullscreen mode for the
	image display by means of gtk_window_fullscreen/unfullscreen.
	Depends on the window manager implementing _NET_WM_STATE_FULLSCREEN.

	* app/tools/gimpcroptool.c: made gimp_crop_tool_draw() static.

	* app/tools/gimptexttool.[ch]: derive from GimpDrawTool, no real
	changes yet.
2003-03-11 01:22:57 +00:00
Sven Neumann 3ab2e64809 removed gimp_scanner_parse_string_list() since the format it read wasn't
2003-03-10  Sven Neumann  <sven@gimp.org>

	* app/config/gimpscanner.[ch]: removed gimp_scanner_parse_string_list()
	since the format it read wasn't proper s-expressions syntax.

	* app/config/gimpconfigwriter.c: a couple of minor cleanups.

	* app/gui/color-history.[ch]
	* app/gui/session.c
	* app/widgets/gimpdialogfactory.[ch]: use GimpConfigWriter to
	write the sessionrc. Had to do some minor changes to the file
	format.
2003-03-10 19:01:07 +00:00
Michael Natterer a00a565c8c added GimpData::duplicate() implementation so read-only palettes can be
2003-03-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimppalette.[ch]: added GimpData::duplicate()
	implementation so read-only palettes can be edited again by
	duplicating them first.

	* app/gui/dialogs-constructors.c: pass the <Palettes>, not the
	<Gradients> menu identifier to the palette grid and tree view
	constructors (spotted by Tigert).
2003-03-10 17:35:42 +00:00
Michael Natterer 1522b841fa added "gboolean data_editable" which gets set in
2003-03-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdataeditor.[ch]: added "gboolean data_editable"
	which gets set in gimp_data_editor_real_set_data(). Set the name
	entry insensitive if the data is not editable.

	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimpgradienteditor.c: look at editor->data_editable
	instead of duplicating the logic in all subclasses.

	* app/widgets/gimppreview.[ch]: added "gboolean expand" and
	gimp_preview_set_expand() like in GtkPreview bacause smooth auto
	resizing can only be done by the widget itself, not via external
	callbacks.

	* app/display/gimpnavigationview.c
	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpselectioneditor.c: set expand == TRUE. Removed
	"size_allocate" callbacks. They resize *much* smoother now.
	Various cleanups.

	* app/widgets/gimpnavigationpreview.c: recalculate the preview
	coordinates when the size changes.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreviewrenderer-utils.c
	* app/widgets/gimppreviewrenderergradient.[ch]: new renderer which
	is much faster because it projects the gradient without creating
	intermediate buffers. Rendering can be restricted to an interval
	from [left...right].

	* app/widgets/gimpgradienteditor.[ch]: undeprecated by using
	GimpPreview instead of GtkPreview. Cleanup.

	* app/gui/gradient-editor-commands.c: changed accordingly.
2003-03-10 14:07:22 +00:00
Michael Natterer 3c33140fc1 themes/Default/images/stock-delete-16.png
2003-03-06  Michael Natterer  <mitch@gimp.org>

	* themes/Default/images/stock-delete-16.png
	* themes/Default/images/stock-lower-16.png
	* themes/Default/images/stock-new-16.png
	* themes/Default/images/stock-paste-16.png
	* themes/Default/images/stock-raise-16.png
	* themes/Default/images/stock-refresh-16.png: removed these files
	since we use the icons provided by GTK+ now.

	* themes/Default/gtkrc
	* themes/Default/images/Makefile.am: removed them here hoo.

	* libgimpwidgets/gimpstock.[ch]: reordered stuff to be consistent
	in the header and the .c file. Added GIMP_STOCK_ERROR and
	GIMP_STOCK_QUESTION which are available in all sizes (unlike
	GTK_STOCK_DIALOG_ERROR and GTK_STOCK_DIALOG_QUESTION).

	* app/core/gimpviewable.c
	* app/display/gimpdisplayshell.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimpwidgets-utils.c
	* app/widgets/gimpdatafactoryview.c: use the new stock IDs.

	* app/config/gimpcoreconfig.[ch]: renamed "preview_size" to
	"layer_preview_size" and added "gboolean layer_previews" which
	switches layer previews on/off independent of their size.

	* app/config/gimprc-blurbs.h: added/changed their blurbs.

	* app/core/core-enums.[ch]: removed GIMP_PREVIEW_SIZE_NONE.

	* app/core/gimpdrawable-preview.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage.c: return NULL previews if
	core_config->layer_previews is FALSE. Invalidate all layer/channel
	previews whenever "layer_previews" changes.

	* app/widgets/gimppreviewrendererdrawable.c
	* app/widgets/gimppreviewrendererimage.c: render the stock_id
	if the drawable/image returns a NULL preview. Fixes bug #107242.

	* app/display/gimpdisplayshell-handlers.c: don't set the
	sensitivity of the navigation button because it can no longer be
	disabled.

	* app/display/gimpdisplayshell-layer-select.c
	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c
	* app/gui/paths-dialog.c: changed accordingly.

	* app/gui/preferences-dialog.c: added a toggle button for the new
	"layer_previews" boolean.

	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainerlistview.c: chain up unconditionally
	in GimpContainerView::clear_items().

	* app/widgets/gimpcontainertreeview.c: ditto. Made the reorder()
	implementation lengthy and eeky (but working) again... Stop signal
	emission on double clicks so GtkTreeView doesn't re-select the
	item we are about change.

	* app/widgets/gimpcontainerview.c
	(gimp_container_view_real_clear_items): need to use
	g_hash_table_new_full() here too or everything will b0rk.

	* app/widgets/gimppreviewrenderer.c
	(gimp_preview_renderer_default_render_stock): use
	gtk_widget_render_icon() instead of gtk_icon_set_render_icon().

	* tools/pdbgen/enums.pl: this file wanted to be regenerated...
2003-03-06 16:47:34 +00:00
Sven Neumann 5e11bae69b fixed parasite serialization that I broke yesterday.
2003-03-06  Sven Neumann  <sven@gimp.org>

	* app/core/gimpparasitelist.c: fixed parasite serialization that
	I broke yesterday.

	* app/widgets/gimpenummenu.c: added support for mnemonics.

	* app/core/core-enums.h: removed the inverted variants from the
	GimpAddMaskType enum. Registered the enum with the type system.

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

	* app/gui/layers-commands.c (layers_add_mask_query): use an enum
	frame and added a check button that allows to invert the inital
	layer mask.

	* tools/pdbgen/pdb/layer.pdb: updated documentation for the
	gimp-layer-create-mask PDB function.

	* plug-ins/script-fu/siod-wrapper.c: removed new enum values from
	the compatibility defines.

	* app/core/core-enums.c
	* app/pdb/layer_cmds.c
	* libgimp/gimpenums.h
	* libgimp/gimplayer_pdb.c
	* plug-ins/pygimp/gimpenums.py
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.
2003-03-06 13:22:11 +00:00
Manish Singh d395daa7b2 require GTK+ 2.2. The 2.0.x series is no longer maintained, and there are
2003-03-05  Manish Singh  <yosh@gimp.org>

        * configure.in: require GTK+ 2.2. The 2.0.x series is no longer
        maintained, and there are some very real bugs that won't go away.

        * app/gui/about-dialog.c
        * app/widgets/gimppreviewrenderer.c
        * app/widgets/gimptoolbox-color-area.c
        * plug-ins/common/uniteditor.c: remove special casing for GTK+ 2.0
        vs. 2.2

        * app/widgets/gtkwrapbox.[ch]
        * app/widgets/gtkhwrapbox.[ch]
        * app/widgets/gtkvwrapbox.[ch]: remove deprecated functions

        * app/gui/gui.c: free return value of gdk_get_display ()

        * app/widgets/gimpcontainertreeview.c: use gtk_list_store_move_before ()        for reordering.
2003-03-05 22:31:13 +00:00
Sven Neumann d457b9eb9b app/config/Makefile.am new files featuring a simple config file writer.
2003-03-05  Sven Neumann  <sven@gimp.org>

	* app/config/Makefile.am
	* app/config/gimpconfigwriter.[ch]: new files featuring a simple
	config file writer.

	* app/config/gimpconfig-serialize.[ch]
	* app/config/gimpconfig.[ch]: changed the serialize routines to
	use a GimpConfigWriter instead of passing around a file descriptor
	and the indentation level.

	* app/config/config-types.h
	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-dump.c
	* app/config/gimpconfig-utils.c
	* app/config/gimprc.c
	* app/config/gimpscanner.c
	* app/config/test-config.c
	* app/core/gimp-documents.c
	* app/core/gimp-parasites.c
	* app/core/gimpcontainer.c
	* app/core/gimpcontext.c
	* app/core/gimpdocumentlist.c
	* app/core/gimpparasitelist.c
	* app/gui/test-commands.c
	* app/tools/tool_options.c
	* app/widgets/gimpdevices.c: changed accordingly.

	* libgimpwidgets/gimpwidgets.c: documentation updates.

	* app/core/gimpitem.c: removed a redundant type-check.
2003-03-05 20:21:50 +00:00
Michael Natterer 614ff00629 themes/Default/images/stock-channels-16.png
2003-03-05  Michael Natterer  <mitch@gimp.org>

	* themes/Default/images/stock-channels-16.png
	* themes/Default/images/stock-device-status-16.png
	* themes/Default/images/stock-images-16.png
	* themes/Default/images/stock-layers-16.png
	* themes/Default/images/stock-paths-16.png: new icons from Jimmac.

	* themes/Default/imagerc
	* themes/Default/images/Makefile.am
	* libgimpwidgets/gimpstock.[ch]: add them to the stock system.

	* app/gui/dialogs-menu.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: use them.
2003-03-05 17:30:34 +00:00
Michael Natterer d404068c13 added GError reporting, removed g_message() stuff.
2003-03-05  Michael Natterer  <mitch@gimp.org>

	* app/file/file-save.[ch]: added GError reporting, removed
	g_message() stuff.

	* app/gui/file-commands.c
	* app/gui/file-save-dialog.c: g_message() here if file_save_*()
	returns an error.

	* app/file/file-open.c: use the G_FILE_ERROR quark and the
	GFileError enum for reporting errors. Removed g_message() if the
	passed in GError** pointer is NULL (passing NULL as error return
	location should never mean "show the error message yourself").

	* app/app_procs.c
	* app/gui/file-commands.c
	* app/gui/file-open-dialog.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdocumentview.c: g_message() here if file_open_*()
	returns an error.
2003-03-05 11:25:59 +00:00
Sven Neumann 2935a320f7 plug-ins/common/compose.c plug-ins/common/decompose.c plug-ins/fp/fp.c
2003-03-05  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/compose.c
	* plug-ins/common/decompose.c
	* plug-ins/fp/fp.c
	* plug-ins/rcm/rcm.c: moved these plug-ins to the Filters menu
	(fixes bug #107587).

	* app/gui/image-menu.c (image_menu_entries): removed a menu
	separator which is not needed any longer.
2003-03-04 23:21:09 +00:00
Sven Neumann a7dabdf068 Based on suggestions by Michael J. Hammel <mjhammel@graphics-muse.org>:
2003-03-04  Sven Neumann  <sven@gimp.org>

        Based on suggestions by Michael J. Hammel <mjhammel@graphics-muse.org>:

	* app/gui/preferences-dialog.c: use US english spelling, fixed a
	typo.

	* app/config/gimprc-blurbs.h: rephrased some blurbs so they fit
	better as tooltips.
2003-03-04 15:12:27 +00:00
Michael Natterer a53f1ba4ca added new function file_save_as() which always uses the uri and file_proc
2003-03-04  Michael Natterer  <mitch@gimp.org>

	* app/file/file-save.[ch]: added new function file_save_as() which
	always uses the uri and file_proc parameters passed and never
	looks at the image's uri and file_proc. Renamed "gboolean set_uri"
	to "set_uri_and_proc" and always set them both if the save
	succeeded.  Fixes bug #97835.  Removed most parameters from
	file_save() and made it a small wrapper around file_save_as().

	* app/gui/file-commands.c (file_save_cmd_callback): changed
	accordingly.

	* app/gui/file-save-dialog.c: call file_save_as(), renamed
	"set_uri" variables to "set_uri_and_proc".
2003-03-04 10:32:35 +00:00
Hans Breuer 594bccd558 app/text/makefile.msc (new file) */makefile.msc */*/makefile.msc : updated
2003-03-03  Hans Breuer  <hans@breuer.org>

	* app/text/makefile.msc (new file)
	  */makefile.msc */*/makefile.msc : updated

	* app/core/gimpdata.c : define access() constants
	for G_OS_WIN32 case

	* app/text/gimptext.c : <stdlib.h> for getenv()

	* libgimp/gimp.def libgimp/gimpui.def : updated externals

	* libgimpwidgets/libgimp-glue.c : make dynamic_resolve
	actually work again for 'my' DLL naming convention

	* plug-ins/gap/gap_pdb_calls.c : reflect renaming
	of GIMP_VERTICAL to GIMP_ORIENTATION_VERTICAL
2003-03-03 18:14:31 +00:00
Michael Natterer b31fd4b911 removed the constructors with a GimpViewable parameter and always create
2003-03-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppreviewrenderer.[ch]: removed the constructors
	with a GimpViewable parameter and always create renderers from
	viewable types only. Made gimp_preview_renderer_update() emit only
	the "update" signal and added the new function
	gimp_preview_renderer_invalidate() which does what the old
	_update() did (invalidating and adding an idle function which
	emits "update"). Added gimp_preview_renderer_remove_idle() so
	renderer updating can be fully controlled using public functions.

	* app/widgets/gimppreviewrendererbrush.[ch]: no need to remember
	the widget for the brushpipe animation, simply call
	gimp_preview_renderer_update() in the animation timeout.

	* app/widgets/gimppreview.[ch]
	* app/widgets/gimpcontainertreeview.c: changed accordingly. Call
	gimp_preview_renderer_remove_idle() after setting the initial
	viewable because we will be updated anyway by the first expose.

	* app/widgets/gimppreview.[ch]: Added a size_request()
	implementation. Removed gimp_preview_update(). Added new
	constructor gimp_preview_new_full_by_types() to make the
	constructor API symmetric. Removed code duplication by calling the
	_by_types() constructors from the ones taking GimpViewable
	parameters.

	* app/gui/palette-import-dialog.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpselectioneditor.c: changed accordingly.
2003-03-03 12:59:03 +00:00
Michael Natterer 48bf4fb7b2 don't scale the preview up if the buffer is too small.
2003-03-01  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpbuffer.c: don't scale the preview up if the
	buffer is too small.

	* app/core/gimppattern.c: don't add a white border around the
	preview if the pattern is too small.

	* app/widgets/gimppreviewrenderer.[ch]: new object. A buffer
	that updates itself on GimpViewable changes and can render
	itself to any widget. Basically GimpPreview reduced to the
	render and draw code.

	* app/widgets/gimppreview.[ch]: removed all rendering and drawing
	code and keep a GimpPreviewRenderer instance. Connect to its
	"update" signal for queuing draws on the preview.

	* app/widgets/gimpcellrendererviewable.[ch]
	* app/widgets/gimpcontainertreeview.c: same here: removed
	rendering and drawing code and keep GimpPreviewRenderers in the
	list store.  Delays preview creation for GtkTreeViews until the
	buffer is really needed for drawing and adds idle preview updating
	on viewable changes.

	* app/widgets/gimppreview-utils.[ch]
	* app/widgets/gimpbrushpreview.[ch]
	* app/widgets/gimpbufferpreview.[ch]
	* app/widgets/gimpdrawablepreview.[ch]
	* app/widgets/gimpimagepreview.[ch]: removed...

	* app/widgets/gimppreviewrenderer-utils.[ch]
	* app/widgets/gimppreviewrendererbrush.[ch]
	* app/widgets/gimppreviewrendererdrawable.[ch]
	* app/widgets/gimppreviewrendererimage.[ch]: ...and converted to
	GimpPreviewRenderer subclasses.

	* app/display/gimpnavigationview.c
	* app/gui/palette-import-dialog.c
	* app/widgets/Makefile.am
	* app/widgets/widgets-enums.h
	* app/widgets/widgets-types.h
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimplayerlistitem.c
	* app/widgets/gimplistitem.c
	* app/widgets/gimpnavigationpreview.[ch]
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpvectorslistview.c: changed accordingly.
2003-03-01 03:53:41 +00:00
Sven Neumann b3e5867378 don't insert an extra line-break after a serialized property.
2003-02-26  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig-serialize.c (gimp_config_serialize_properties):
	don't insert an extra line-break after a serialized property.

	* app/config/gimpconfig-serialize.c
	* app/config/gimpconfig-dump.c
	* app/gui/tips-parser.c: use g_string_truncate (str, 0) instead of
	assigning an empty string.

	* app/tools/gimptextoptions.c: override the serialize and
	deserialize methods of the GimpConfig interface and save/restore
	the associated GimpText object instead of GimpTextOptions.

	* app/tools/tool_options.c (gimp_tool_options_build_filename):
	don't append ".default" if no extension is given.
2003-02-26 20:34:58 +00:00
Sven Neumann 0ceeeb0254 added a writeable field to GimpData and set it from
2003-02-26  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdata.[ch]: added a writeable field to GimpData and
	set it from gimp_data_set_filename().

	* app/gui/brushes-menu.c
	* app/gui/gradients-menu.c
	* app/gui/palettes-menu.c
	* app/gui/patterns-menu.c
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpgradienteditor.c: look at data->writeable when
	setting widgets sensitivity.

	* app/gui/user-install-dialog.c (user_install_dialog_create): reduce
	some of the dialog clutter by not showing the directories created for
	plug-ins.

	* app/core/gimpviewable.[ch]: added a default_stock_id to
	GimpViewableClass so we don't need to hold a copy in each instance.
	Added accessor functions to set and get the stock_id.

	* app/core/gimptoolinfo.c
	* app/gui/dialogs-constructors.c
	* app/gui/image-menu.c
	* app/tools/gimpcroptool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimpcellrendererviewable.c
	* app/widgets/gimppreview.c
	* app/widgets/gimptoolbox.c: use gimp_viewable_get_stock_id().

	* app/text/gimptextlayer.c: set a text icon as default stock_id.
2003-02-26 18:08:26 +00:00
Michael Natterer 305db405b2 added "gchar *stock_id" to the GimpViewable struct. It is used by the GUI
2003-02-26  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.[ch]: added "gchar *stock_id" to the
	GimpViewable struct. It is used by the GUI if the get_preview()
	functions return NULL. Default to GTK_STOCK_DIALOG_QUESTION.

	* app/core/gimptoolinfo.[ch]: set the tool's stock_id. Removed
	the cached GdkPixbuf. Don't implement any preview function
	so the GUI uses the stock_id.

	* app/tools/tool_manager.c: removed GdkPixbuf creation, removed
	the #warning about the buggy way we created the pixbuf.

	* app/gui/dialogs-constructors.c
	* app/gui/image-menu.c
	* app/tools/gimpcroptool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimptoolbox.c: use viewable->stock_id instead
	of tool_info->stock_id.

	* app/core/gimpbrush.c
	* app/core/gimpgradient.c
	* app/core/gimpimagefile.c
	* app/core/gimpundo.c: simplified get_preview() implementations:

	- never scale previews up, only down.
	- don't render white or checks backgrounds but simply return
	  TempBufs with alpha and let the preview system do its job.
	- don't add padding but simply return previews smaller than
	  requested.

	* app/display/gimpdisplayshell-render.[ch]: added
	"render_blend_white", a 2d lookup table for blending on white,
	just as the check lookup tables. Added "render_white_buf".

	* app/widgets/gimppreview.[ch]: changed a lot:

	- don't render the preview's border into the buffer.
	- added "GdkGC *border_gc" and draw the preview's border in expose()
	  using gdk_draw_rectangle().
	- added "GdkPixbuf *no_preview_pixbuf" and create it in
	  gimp_preview_real_render() if gimp_viewable_get_preview()
	  returned NULL.
	- factored the actual preview rendering out to
	  gimp_preview_render_to_buffer(). Added configurable background
	  rendering for the preview itself and it's padding area
	  (the area the preview is larger than the buffer returned
	  by gimp_viewable_get_preview()).
	- changed gimp_preview_render_and_flush() to
	  gimp_preview_render_preview() and added "inside_bg" and
	  "outside_bg" parameters.
	- use the new render buffers for blending on white.

	* app/widgets/gimpbrushpreview.c
	* app/widgets/gimpbufferpreview.c
	* app/widgets/gimpdrawablepreview.c
	* app/widgets/gimpgradientpreview.c
	* app/widgets/gimpimagepreview.c
	* app/widgets/gimppalettepreview.c
	* app/widgets/gimppatternpreview.c: don't create large white
	TempBufs to center the previews in but simply set the TempBuf's
	offsets to get them centered. Simplified & cleaned up many preview
	render functions. Pass the correct GimpPreviewBG modes to
	gimp_preview_render_preview().

	* app/widgets/gimpcellrendererviewable.[ch]: new GtkCellRenderer
	class derived from GtkCellRendererPixbuf which knows how
	to use gimp_viewable_get_preview_size() and renders the
	viewable's stock item if no preview can be created.

	* app/widgets/gimpcontainertreeview.c: added a GtkTreeCellDataFunc
	which creates the preview pixbuf if needed so we don't create it
	unconditionally upon item insertion. Fixed preview size assertion
	to use GIMP_PREVIEW_MAX_SIZE, not "64". Block "selection_changed"
	while reordering the selected item.

	* app/widgets/gimpcontainerview.c: cosmetic.

	* app/widgets/gimpimagefilepreview.[ch]
	* app/widgets/gimptoolinfopreview.[ch]
	* app/widgets/gimpundopreview.[ch]: removed because the default
	implementation is good enough.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreview-utils.c: changed accordingly.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: register grid and tree view variants
	of the document history.

	Unrelated:

	* app/gui/gui.c (gui_exit_finish_callback): disconnect from
	signals earlier.

	* app/gui/user-install-dialog.c: create the "tool-options" subdir
	of the user's ~/.gimp-1.3 directory.
2003-02-26 16:17:10 +00:00
Sven Neumann 3d526e741c app/display/gimpdisplayshell-callbacks.[ch] override
2003-02-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.[ch]
	* app/display/gimpdisplayshell.c: override GtkWidget::popup_menu()
	so we popup the Image menu on the default shortcut (Shift F10).

	* app/gui/image-menu.c (image_menu_entries): removed or replaced
	shortcuts that use the Alt key. Added access keys to all toplevel
	entries of the Image menu (see bug #106991).

	* app/gui/tools-commands.[ch]: removed "Swap Contexts" functionality.

	* app/widgets/gimpselectioneditor.[ch]: moved "Invert" button.
2003-02-25 19:12:11 +00:00
Sven Neumann 890c6fdee4 app/config/gimpdisplayconfig.[ch] app/config/gimprc-blurbs.h
2003-02-25  Sven Neumann  <sven@gimp.org>

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/display/gimpdisplayshell.c
	* app/gui/preferences-dialog.c: applied a modified version of a
	patch from Toralf Lund <toralf@kscanners.no> that adds a new
	preferences option to choose the inital zoom ratio. Fixes bug
	#106730 and in my opinion also #103547.
2003-02-25 16:30:53 +00:00
Sven Neumann a4f8b0caa8 app/config/gimprc-blurbs.h tried to improve the explanations of the new
2003-02-25  Sven Neumann  <sven@gimp.org>

	* app/config/gimprc-blurbs.h
	* app/gui/preferences-dialog.c: tried to improve the explanations
	of the new undo limits.
2003-02-25 02:46:44 +00:00
Michael Natterer 034d9d3e49 fixed strstr() call so we can switch back from tree views again.
2003-02-24  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs-commands.c (dialogs_toggle_view_cmd_callback):
	fixed strstr() call so we can switch back from tree views again.
2003-02-24 12:40:55 +00:00
Sven Neumann 4b42b55bf4 set the correct default value for the palette type menu (fixes bug
2003-02-23  Sven Neumann  <sven@gimp.org>

	* app/gui/convert-dialog.c (convert_to_indexed): set the correct
	default value for the palette type menu (fixes bug #106798).
2003-02-23 16:06:21 +00:00
Manish Singh 393fe155b9 app/gui/about-dialog.c app/widgets/gimpimagefilepreview.c use
2003-02-21  Manish Singh  <yosh@gimp.org>

        * app/gui/about-dialog.c
        * app/widgets/gimpimagefilepreview.c
        * app/widgets/gimptoolbox-color-area.c: use gdk_draw_pixbuf with
        GTK+ 2.2 or higher instead of gdk_pixbuf_render_to_drawable.
        That function will be deprecated in GTK+ 2.4. We should remove the
        fallback at some point when we start depending on GTK+ 2.2 for other
        stuff.
2003-02-22 01:33:42 +00:00
Michael Natterer 9ee632a656 Started migration from GtkList to GtkTreeView:
2003-02-21  Michael Natterer  <mitch@gimp.org>

	Started migration from GtkList to GtkTreeView:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainertreeview.[ch]; new GimpContainerView
	subclass using GtkListStore/GtkTreeView.

	* app/widgets/widgets-enums.h: added GIMP_VIEW_TYPE_TREE to
	thje GimpViewType enum.

	* app/widgets/gimpcontainereditor.c: added GimpContainerTreeView
	to the switch() which selects the view type.

	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c: added tree view versions of many dialogs.

	* app/widgets/gimppreview.[ch]: removed the get_size() virtual
	function and gimp_preview_calc_size().

	* app/core/gimpviewable.[ch]: added virtual function
	get_preview_size() and gimp_viewable_calc_preview_size().

	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpdrawable.c
	* app/core/gimpgradient.c
	* app/core/gimpimage.c
	* app/core/gimppalette.c: added get_preview_size() implementations.

	* app/widgets/gimpbufferpreview.c
	* app/widgets/gimpdrawablepreview.c
	* app/widgets/gimpgradientpreview.c
	* app/widgets/gimpimagepreview.c
	* app/widgets/gimppalettepreview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpundopreview.c
	* app/display/gimpnavigationview.c: changed accordingly, removed
	get_size() implementations.

	* app/widgets/widgets-types.h: changed the first param of
	GimpItemGetNameFunc from GtkWidget to GObject.

	* app/widgets/gimpcontainerview-utils.c: accept a GimpViewable as
	object in the built-in get_name funcs.

	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimplistitem.c
	* app/widgets/gimpmenuitem.c: changed accordingly.
2003-02-21 19:03:19 +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 94bdcbcc01 app/widgets/Makefile.am app/widgets/widgets-types.h new GimpEditor
2003-02-20  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpimageeditor.[ch]: new GimpEditor subclass adding
	a GimpImage pointer and a virtual set_image() function.

	* app/widgets/gimpcolormapeditor.[ch]
	* app/widgets/gimpselectioneditor.[ch]
	* app/widgets/gimpundoeditor.[ch]: derive them from GimpImageEditor.
	Removed the public set_image() functions.

	* app/gui/colormap-editor-commands.c
	* app/gui/colormap-editor-menu.c: changed accordingly.

	* app/gui/dialogs-constructors.c: removed lots of code duplication
	and use the uniform GimpImageEditor API. Misc cleanups.
2003-02-20 15:40:15 +00:00
Michael Natterer c8b4394d71 Reimplemented the undo history:
2003-02-20  Michael Natterer  <mitch@gimp.org>

	Reimplemented the undo history:

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

	Changes/cleanups to the undo system to enable/simplify the new
	undo history implementation:

	* app/core/core-types.h: removed enum undo_event_t. Removed the
	GimpImage parameter from GimpUndoPopFunc and GimpUndoFreeFunc
	because GimpUndo has a GimpImage pointer now (see below).

	* app/core/core-enums.[ch]: added enum GimpUndoEvent. Added an
	enum value for REDO_EXPIRED.

	* app/core/gimpimage.[ch]: added a GimpUndo pointer to the
	"undo_event" signal which needs to be passed for all events except
	UNDO_FREE.

	* app/display/gimpdisplayshell-handlers.c: changed accordingly.

	* app/core/gimpundo.[ch]: added a GimpImage pointer to the
	GimpUndo struct. Removed GimpImage parameters all over the
	place. Added preview stuff. The preview creation needs to be
	triggered explicitly using gimp_undo_create_preview() because the
	GimpUndo can't know when it's possible to create the preview.

	* app/core/gimpimage-undo-push.c
	* app/paint/gimppaintcore-undo.c
	* app/tools/gimptransformtool-undo.c: changed accordingly, cleanup.

	* app/core/gimpundostack.[ch]: ditto. Return the freed undo from
	gimp_undo_stack_free_bottom(). Removed unused container signal
	handlers.

	* app/core/gimpimage-undo.c: free the redo stack the same way old
	undos are freed (from bottom up). Emit "undo_event" with event ==
	REDO_EXPIRED for each removed redo.

	* app/core/gimpmarshal.list: added new marshallers.

	New undo history implementation:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpundoeditor.[ch]
	* app/widgets/gimpundopreview.[ch]: new widgets for the undo
	step previews and the history itself.

	* app/widgets/gimppreview-utils.c: added GimpUndoPreview to the
	list of possible preview types.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: removed the old and added the new undo
	history to the dialog factory and the various dialog menus.

	* app/widgets/gimpdnd.[ch]: don't warn if a GType has no
	corresponding DND type. Instead, return FALSE from the function
	that failed.

	* app/widgets/gimppreview.c: check the return value of gimpdnd
	functions.  Not only add drag sources but also remove them when no
	longer needed.

	* app/widgets/gimpselectioneditor.h: removed unneeded inclusion of
	"gui/gui-types.h".
2003-02-20 12:47:42 +00:00
Michael Natterer 4a8118070a added plug_ins_proc_def_find() which takes a ProcRecord and returns the
2003-02-18  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-ins.[ch]: added plug_ins_proc_def_find() which
	takes a ProcRecord and returns the corresponding PlugInProcDef.

	* app/plug-in/plug-in.[ch]: added a ProcRecord pointer to the
	PlugIn struct so we know which procedure the plug-in is
	executing. Replaced "gboolean in_temp_proc" by
	"ProcRecord *current_temp_proc". Added plug_in_get_undo_desc()
	which uses the new ProcRecord members and plug_ins_proc_def_find()
	to return a human readable string.

	* app/plug-in/plug-in-run.c: pass the ProcRecord to plug_in_new().
	Set plug_in->current_temp_proc while executing a temp_proc.
	(The latter won't work since we don't run temp_procs recursively
	at the moment).

	* app/gui/plug-in-menus.c: translate the plug-in's menu_path
	before chopping it for the "Repeat" and "Reshow" menu items.

	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/undo.pdb: use plug_in_get_undo_desc() when
	pushing plug-in undos.

	* app/pdb/drawable_cmds.c
	* app/pdb/undo_cmds.c: regenerated.
2003-02-18 14:08:14 +00:00
Michael Natterer fefaa3092f added "undo_desc" parameters.
2003-02-17  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.[ch] (gimp_image_position_*): added
	"undo_desc" parameters.

	* app/core/gimpimage-undo-push.c: changed accordingly.

	* app/widgets/gimpitemlistview.[ch]: moved the item stack
	manipulation function pointers from the instance to the class
	struct. Added lots of descriptive strings to be used by tooltips
	and undo steps.

	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpitemlistitem.c
	* app/widgets/gimplayerlistview.[ch]
	* app/widgets/gimpvectorslistview.c
	* app/gui/dialogs-constructors.c
	* app/gui/layers-commands.[ch]
	* app/gui/vectors-commands.c: changed accordingly. Cleanup.
2003-02-17 13:33:29 +00:00
Michael Natterer 7a6a8d9dbb Moved the undo step implementations to the core and pass around lots of
2003-02-14  Michael Natterer  <mitch@gimp.org>

	Moved the undo step implementations to the core and pass around
	lots of "const gchar *undo_desc". Fixes bug #104367.

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

	* app/core/Makefile.am
	* app/core/gimpimage-undo-push.[ch]: ...and added here.

	* app/paint/Makefile.am
	* app/tools/Makefile.am
	* app/paint/gimppaintcore-undo.[ch]
	* app/tools/gimptransformtool-undo.[ch]: new files for the
	paint and transform undos.

	* app/core/gimppaintinfo.[ch]: added a blurb.

	* 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.c
	* app/paint/gimppencil.c
	* app/paint/gimpsmudge.c
	* app/paint/paint-types.h
	* app/paint/paint.c: pass the blurb when registering the core.

	* app/core/gimpdrawable.[ch]
	* app/core/gimpimage.[ch]
	* app/core/gimpimage-mask-select.[ch]
	* app/core/gimpimage-mask.[ch]
	* app/core/gimpimagemap.[ch]
	* app/core/gimplayer-floating-sel.[ch]: added "undo_desc" parameters
	to all undo pushing helper functions.

	* app/undo_history.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpdrawable-equalize.c
	* app/core/gimpdrawable-invert.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpedit.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-guides.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-qmask.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-undo.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/core/gimplayermask.c
	* app/display/gimpdisplayshell-dnd.c
	* app/file/file-open.c
	* app/file/file-save.c
	* app/gui/channels-commands.c
	* app/gui/file-commands.c
	* app/gui/file-open-dialog.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/paths-dialog.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/text/gimptext-compat.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpdrawablelistview.c
	* app/widgets/gimpselectioneditor.c
	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/guides.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/selection_tools.pdb: changed accordingly: pass
	"undo_desc" strings, changed includes or simply removed inclusion
	of "undo.h". Some random cleanups.

	* tools/pdbgen/pdb/guides.pdb: cleaned up a lot. Fixed
	gimp_image_find_next_guide() to not return guides with
	position < 0 (and made it shorter and readable).

	* app/pdb/color_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/guides_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/selection_cmds.c
	* app/pdb/selection_tools_cmds.c: regenerated.
2003-02-14 14:14:29 +00:00
Michael Natterer b600fd8605 changed FOO_UNDO enum values to GIMP_UNDO_FOO.
2003-02-13  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.[ch]: changed FOO_UNDO enum values to
	GIMP_UNDO_FOO.

	* app/undo.[ch]: removed the undo group wrappers.

	* app/undo_history.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpedit.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-qmask.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-undo.c
	* app/core/gimpimage.c
	* app/core/gimpitem.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/channels-commands.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/paint/gimppaintcore.c
	* app/text/gimptext-compat.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/undo.pdb: changed accordingly. Pass meaningful
	undo names to gimp_image_undo_group_start().

	* app/pdb/layer_cmds.c
	* app/pdb/undo_cmds.c: regenerated.
2003-02-13 11:23:50 +00:00
Michael Natterer be70105d3b Moved the undo system to the core: Keep GimpUndoStack objects as undo and
2003-02-12  Michael Natterer  <mitch@gimp.org>

	Moved the undo system to the core: Keep GimpUndoStack objects as
	undo and redo stack. Use GimpUndo objects as members of the
	stacks. GimpUndoStack is derived from GimpUndo and keeps undo
	groups, so undo group handling is much simpler than before
	(the whole group is just a single GimpUndo object on the
	stack and not everything between group boundary markers).

	* app/Makefile.am
	* app/undo_types.h: removed.

	* app/config/gimpcoreconfig.[ch]: added "gulong undo_size".
	* app/config/gimprc-blurbs.h: and its blurb.

	* app/core/core-enums.[ch]: added GimpUndoMode and GimpUndoType.

	* app/core/core-types.h: removed UndoType, added GimpUndoAccumulator,
	GimpUndoPopFunc and GimpUndoFreeFunc.

	* app/core/gimpundo.[ch]: do everything the old "Undo" struct did.
	Removed the virtual push() function and added free().

	* app/core/gimpundostack.[ch]: keeps the new undo/redo stacks
	and also acts as undo group.

	* app/core/gimpimage-undo.[ch]: moved the undo apparatus here.

	* app/core/gimpimage.[ch]: removed the old stuff.

	* app/core/gimpmarshal.list: added marshaller needed for GimpUndo.

	* app/undo.[ch]: removed the whole undo mechanism. Only the
	actual undo pushing functions are left.

	* app/undo_history.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/image-menu.c
	* app/gui/preferences-dialog.c
	* app/tools/gimpeditselectiontool.c: changed accordingly.
2003-02-12 17:11:34 +00:00
Michael Natterer 436ed648e8 added new virtual function duplicate() as replacement for all
2003-02-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added new virtual function duplicate()
	as replacement for all gimp_*_copy() functions.

	* app/core/gimpchannel.[ch]
	* app/core/gimpdrawable.[ch]
	* app/core/gimplayer.[ch]
	* app/core/gimplayermask.[ch]
	* app/vectors/gimpvectors.[ch]: replaced public copy() functions
	by duplicate() implementations.

	* app/text/gimptextlayer.c: added a duplicate() implementation.

	* app/widgets/gimpitemlistview.[ch]: removed the "copy_item_func"
	and simply call gimp_item_duplicate().

	* app/undo.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-qmask.c
	* app/gui/channels-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/layers-commands.c
	* app/gui/vectors-commands.c
	* app/widgets/gimptoolbox.c
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/selection.pdb: changed accordingly.

	* app/pdb/channel_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/selection_cmds.c: regenerated.
2003-02-11 13:52:47 +00:00
Michael Natterer af330e9659 added lots of members for the complete state of the plug-ins.
2003-02-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.h: added lots of members for the complete
	state of the plug-ins.

	* app/plug-in/plug-in-types.h: added PlugInShm typedef.

	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-rc.[ch]
	* app/plug-in/plug-in-run.[ch]
	* app/plug-in/plug-in-shm.c
	* app/plug-in/plug-in.[ch]
	* app/plug-in/plug-ins.[ch]: removed all global & static variables
	and pass around more "Gimp" pointers.

	* app/plug-in/plug-in-debug.c: use G_N_ELEMENTS().

	* app/gui/image-menu.c
	* app/gui/plug-in-commands.c
	* app/gui/plug-in-menus.c
	* app/gui/toolbox-menu.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly.

	* app/pdb/fileops_cmds.c
	* app/pdb/plug_in_cmds.c: regenerated.
2003-02-11 12:07:31 +00:00
Michael Natterer a071be69ae added a "const gchar *extension" parameter to
2003-02-10  Michael Natterer  <mitch@gimp.org>

	* app/tools/tool_options.[ch]: added a "const gchar *extension"
	parameter to gimp_tool_options_[de]serialize(). Default to
	"default" if NULL is passed.

	* app/tools/tool_manager.[ch]: load the tool_options from the
	default files in tool_manager_restore(), added tool_manager_save()
	which saves the default files.

	* app/app_procs.c: call tool_manager_save() on app exit.

	* app/gui/tool-options-dialog.c: pass "user" when loading/saving
	the user defaults. Changed tooltips of the load & save buttons.
2003-02-10 11:46:10 +00:00
Michael Natterer eb6e907b36 simplified everything a lot by merging the public GimpContextPropType enum
2003-02-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.[ch]: simplified everything a lot by
	merging the public GimpContextPropType enum with the internal
	anonymous object property id enum. Removed the internal copy_prop
	functions and handle property copying in a big switch() in
	gimp_context_copy_property(). Removed the separate signal
	connections for each property of the parent context and do the
	same using a single "notify" handler. Emit "notify" signals all
	over the place.  Removed internal arrays which are no longer
	needed due to enum merge and copy_property simplification.
	Removed the array of signal names and use g_signal_name().
	Removed gimp_context_unset_parent() and allow "parent" being NULL
	in gimp_context_set_parent().

	* app/tools/tool_manager.c
	* app/widgets/gimpdevices.c: changed accordingly.

	* libgimptool/gimptooltypes.h: changed GimpToolOptionsGUIFunc to
	return a GtkWidget (the created tool options widget).

	* libgimptool/gimptoolmodule.c: #include <gtk/gtk.h>

	* app/tools/tool_options.[ch]: removed the "main_vbox" from the
	GimpToolOptions struct. Changed gimp_tool_options_gui() to create
	and return the main_vbox.

	* app/tools/tool_manager.c: create the "This Tool has no Options"
	label here if NULL was passed as "options_gui_func". Attach the
	options widget to the tool_options object using
	g_object_set_data().

	* app/gui/tool-options-dialog.c: changed accordingly.

	* app/tools/gimpairbrushtool.c
	* app/tools/gimpblendoptions.[ch]
	* app/tools/gimpbucketfilloptions.[ch]
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorpickeroptions.[ch]
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcropoptions.[ch]
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpflipoptions.[ch]
	* app/tools/gimpinkoptions.[ch]
	* app/tools/gimpmagnifyoptions.[ch]
	* app/tools/gimpmeasureoptions.[ch]
	* app/tools/gimpmoveoptions.[ch]
	* app/tools/gimpselectionoptions.[ch]
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptextoptions.[ch]
	* app/tools/gimptransformoptions.[ch]
	* app/tools/gimpvectoroptions.[ch]
	* app/tools/paint_options.[ch]: return the options vbox from
	all tool_options_gui functions.
2003-02-09 17:32:52 +00:00
Michael Natterer 4bd30b8c3c added gimp_tool_options_[de]serialize() utility functions.
2003-02-09  Michael Natterer  <mitch@gimp.org>

	* app/tools/tool_options.[ch]: added
	gimp_tool_options_[de]serialize() utility functions.

	* app/gui/tool-options-dialog.c: use them, cleanup.
2003-02-08 23:56:16 +00:00
Michael Natterer 7fe80e8dc8 the virtual serialize_property() returning FALSE doesn't mean the
2003-02-08  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-serialize.c (gimp_config_serialize_property):
	the virtual serialize_property() returning FALSE doesn't mean the
	serialization failed but that the function didn't handle the
	property, so don't error but continue with the default
	implementation. Print newlines after properties only if
	indent_level == 0.

	* app/gui/tool-options-dialog.c: added tool options saving/loading
	as quickly hacked proof-of-concept.

	* app/paint/paint-enums.[ch]: added enum GimpInkBlobType.

	* app/tools/gimpinkoptions.[ch]: ported to object properties,
	cleanup.

	* app/tools/gimpinktool.c: changed accordingly.
2003-02-08 15:27:51 +00:00
Michael Natterer eeec3cedb8 Added object properties for almost all tool_options values and registered
2003-02-07  Michael Natterer  <mitch@gimp.org>

	Added object properties for almost all tool_options values
	and registered lots of enums with the type system:

	Part I (enum and type cleanup):

	* app/core/core-enums.[ch]
	* app/core/core-types.h: removed InternalOrientaionType and
	register GimpOrientationType. Register GimpChannelOps.
	Removed GimpToolOptionsGUIFunc.

	* app/xcf/xcf-private.h: added XcfOrientationType with the
	same values as the old InternalOrientationType

	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c: translate between GimpOrientationType and
	XcfOrientationType.

	* app/core/gimpdrawable-transform-utils.[ch]
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-guides.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage.h
	* app/display/gimpdisplayshell.c
	* tools/pdbgen/stddefs.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: changed accordingly.

	* app/pdb/guides_cmds.c
	* app/pdb/transform_tools_cmds.c
	* libgimp/gimpenums.h
	* libgimpproxy/gimpproxytypes.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.

	* libgimptool/gimptoolenums.[ch]: added GimpTransformGridType.

	* libgimptool/gimptooltypes.h: removed GimpToolOptionsResetFunc,
	added GimpToolOptionsGUIFunc.

	Part II (tool options changes):

	* app/config/gimpconfig-utils.c (gimp_config_reset_properties):
	don't reset object properties because they have NULL as default
	value.

	* app/widgets/gimppropwidgets.[ch]: added
	gimp_prop_[enum|boolean]_radio_frame_new(),
	gimp_prop_paint_mode_menu_new() and gimp_prop_scale_entry_new(),
	which are all needed by the new tool options GUI code.

	* app/tools/tool_options.[ch]: removed the "reset_func" since
	the virtual reset() method is used now.

	* app/paint/gimpairbrushoptions.[ch]
	* app/paint/gimpcloneoptions.[ch]
	* app/paint/gimpconvolveoptions.[ch]
	* app/paint/gimpdodgeburnoptions.[ch]
	* app/paint/gimperaseroptions.[ch]
	* app/paint/gimppaintoptions.[ch]
	* app/paint/gimpsmudgeoptions.[ch]: added properties all over the
	place and removed the widget and default_value members from
	the structs. Renamed some values (e.g. s/type/clone_type/).
	Don't #include <gtk/gtk.h>.

	* 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/gimppencil.c
	* app/paint/gimpsmudge.c
	* app/paint/paint-types.h
	* app/paint/paint.c: changed accordingly. Don't #include <gtk/gtk.h>.

	* tools/pdbgen/pdb/paint_tools.pdb: changed accordingly.

	* app/pdb/paint_tools_cmds.c: regenerated.

	* app/tools/gimpblendoptions.[ch]
	* app/tools/gimpbucketfilloptions.[ch]
	* app/tools/gimpcolorpickeroptions.[ch]
	* app/tools/gimpcropoptions.[ch]
	* app/tools/gimpflipoptions.[ch]
	* app/tools/gimpinkoptions.c
	* app/tools/gimpmagnifyoptions.[ch]
	* app/tools/gimpmeasureoptions.[ch]
	* app/tools/gimpmoveoptions.[ch]
	* app/tools/gimptextoptions.c
	* app/tools/paint_options.[ch]
	* app/tools/selection_options.[ch]
	* app/tools/transform_options.[ch]: ditto: added properties and
	removed widget and default_value stuff. Removed most reset functions.
	Use gimp_prop widgets all over the place, renamed some values
	as above.

	* app/tools/Makefile.am
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectoroptions.c: changed accordingly. Ported
	the paint_options GUI constructors to gimp_prop widgets.

	* app/widgets/gimpselectioneditor.c
	* app/gui/tool-options-dialog.c: changed accordingly.
2003-02-07 17:12:21 +00:00
Sven Neumann ba246fb10c removed /Filters/Text menu branch now that we don't install any plug-in
2003-02-06  Sven Neumann  <sven@gimp.org>

	* app/gui/image-menu.c (image_menu_entries): removed /Filters/Text
	menu branch now that we don't install any plug-in there and
	gimp-freetype is becoming obsolete.
2003-02-05 23:07:46 +00:00
Michael Natterer 2db2ef6185 removed gimp_main_loop() and gimp_main_loop_quit() because they were a
2003-02-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.[ch]: removed gimp_main_loop() and
	gimp_main_loop_quit() because they were a temp_hack until plug-ins
	have their own main loops. Added gimp_threads_enter() and
	gimp_threads_leave() instead.

	* app/gui/gui.c: ditto: removed the main loop stuff and added
	functions which call GDK_THREADS_ENTER() and GDK_THREADS_LEAVE()
	instead.

	* app/app_procs.c: create the main GMainLoop here and use
	gimp_threads_enter,leave().

	* app/plug-in/plug-in.[ch]: added a ref_count per plug-in so the
	plug-in is not destroyed under our feet while running a recursive
	main loop. Added plug_in_ref(). Changed plug_in_destroy() to
	plug_in_unref(). Don't destroy the plug-in if plug_in_open()
	fails. Call gimp_threads_enter,leave() around g_main_loop_run().
	Changed the way plug_in_push,pop() are used: "current_plug_in" is
	no longer the plug-in which currently uses the wire, but the
	plug-in which currently preforms a PDB call (the former meaning
	was needed when wire callbacks had no plug-in context but needed
	to get the plug-in from the global "current_plug_in" variable).
	Removed all calls to plug_in_push,pop() from this file.

	* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): added
	plug_in_push,pop() around procedural_db_execute(). No need
	to construct an error return value if the procedure was not found
	because procedural_db_execute() already does this.

	Removed all other plug_in_push,pop(). Added more checks to plug-in
	message handlers and kill the plug-in if it misbehaves. Cleanup.

	* app/plug-in/plug-in-progress.c (plug_in_progress_cancel): if the
	plug-in runs synchronously, provide a GIMP_PDB_CANCEL return value
	so we don't see error messages about the "failed" procedure.

	* app/plug-in/plug-in-run.c: removed plug_in_push,pop() stuff.
	Set the new plug_in->starting_ext boolean while starting an
	extension so the extension_ack handler knows that it wasn't called
	from a buggy plug-in. Cleanup.

	* app/plug-in/plug-ins.c: Cleanup.
2003-02-03 13:21:31 +00:00
Michael Natterer 794885e297 added gimp_item_configure() and gimp_item_copy().
2003-01-31  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added gimp_item_configure() and
	gimp_item_copy().

	* app/core/gimpdrawable.c (gimp_drawable_configure,copy): use them.

	* app/vectors/gimpvectors.[ch]: added gimp_vectors_new(),
	gimp_vectors_copy() and gimp_vectors_copy_points(). Use the new
	GimpItem functions just as GimpDrawable does. Added a
	get_memsize() implementation.

	* app/vectors/gimpstroke.[ch]: made it a GimpObject and added
	a get_memsize() implementation.

	* app/undo.c: implemented vectors undo as if the new GimpVectors
	functions above worked.

	* app/gui/dialogs-constructors.c
	* app/gui/vectors-commands.c
	* app/tools/gimpvectortool.c: use gimp_vectors_new,copy().
2003-01-31 18:08:32 +00:00
Michael Natterer 5f57c07fa5 removed.
2003-01-31  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-dialog-utils.[ch] (file_dialog_update_menus): removed.

	* app/gui/file-save-menu.[ch] (file_save_menu_update): added here.

	* app/gui/menus.c: register it as non-automatic update_func.

	* app/gui/file-save-dialog.c: changed accordingly.
2003-01-31 11:54:16 +00:00
Michael Natterer a3c388149d renamed plug_in->busy to plug_in->in_temp_proc. Added a stack of
2003-01-30  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in.[ch]: renamed plug_in->busy to
	plug_in->in_temp_proc. Added a stack of GMainLoops to each
	plug-in. Added the "current_return_vals" to the PlugIn
	struct. Renamed plug_in_kill() to plug_in_exit(). Removed
	the stuff added below. Cleanup.

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-message.[ch]
	* app/plug-in/plug-in-run.[ch]
	* app/plug-in/plug-in-shm.[ch]: new files taking out functionality
	from the overloaded plug-in.c. Added the code back in that implements
	temp proc return messages (inside an #ifdef) because i don't
	really get why it was removed on Sep 19 1998.

	* app/plug-in/plug-ins.c: changed accordingly.

	* app/plug-in/plug-in-def.c
	* app/plug-in/plug-in-params.c: removed inclusion of <gtk/gtk.h>.

	* app/gui/file-save-dialog.c
	* app/gui/paths-dialog.c
	* app/gui/plug-in-commands.c
	* app/gui/plug-in-menus.c
	* app/pdb/procedural_db.c
	* app/widgets/gimphelp.c: changed plug-in includes accordingly.

	* app/gui/plug-in-commands.c: don't use "the_gimp" from
	"app_procs.h" but get it from the GimpItemFactory that invoked the
	plug-in callback.
2003-01-30 11:20:12 +00:00
Sven Neumann 3aa36bbb13 removed unused function gimp_prop_enum_option_menu_new_with_values() which
2003-01-29  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppropwidgets.[ch]: removed unused function
	gimp_prop_enum_option_menu_new_with_values() which caused problems
	on some platforms (fixes bug #102514).

	* app/gui/preferences_dialog.c: removed some unused code.
2003-01-29 15:55:13 +00:00
Michael Natterer 4463cdd0ed pack the button box non-expanding, removed cruft from the ModuleBrowser
2003-01-29  Michael Natterer  <mitch@gimp.org>

	* app/gui/module-browser.c: pack the button box non-expanding,
	removed cruft from the ModuleBrowser struct.
2003-01-29 11:08:51 +00:00
Sven Neumann 416049f460 commented out debugging output.
2003-01-27  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: commented out debugging output.
2003-01-27 13:41:27 +00:00
Sven Neumann 1ca73a96d5 app/core/gimpbrushpipe.c plugged some obvious memleaks related to the use
2003-01-26  Sven Neumann  <sven@gimp.org>

	* app/core/gimpbrushpipe.c
	* app/gui/about-dialog.c: plugged some obvious memleaks related to
	the use of GRand.
2003-01-26 14:27:53 +00:00
Michael Natterer 51785c1d5b app/core/gimpdocumentlist.[ch] added "Gimp" pointers so we don't need to
2003-01-24  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdocumentlist.[ch]
	* app/core/gimpimagefile.[ch]: added "Gimp" pointers so we don't
	need to use "the_gimp" from "app_procs.h".

	* app/core/core-types.h
	* app/core/gimp.c
	* app/gui/file-open-dialog.c
	* tools/pdbgen/pdb/fileops.pdb: changed accordingly.

	* app/pdb/fileops_cmds.c: regenerated.
2003-01-24 17:38:24 +00:00
Sven Neumann 850cdc6eff made labels in the info dialog selectable as suggested in #103991.
2003-01-20  Sven Neumann  <sven@gimp.org>

	* app/gui/info-dialog.c (info_dialog_add_label): made labels in
	the info dialog selectable as suggested in #103991.
2003-01-20 20:07:19 +00:00
Michael Natterer d407244f7e renamed plug_in_progress_init() to plug_in_progress_start() so it matches
2003-01-20  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-progress.[ch]: renamed plug_in_progress_init()
	to plug_in_progress_start() so it matches plug_in_progress_end().
	Added g_return_if_fail() to all functions.

	* app/plug-in/plug-in.[ch]: plug_in_new(): require the passed
	path to be absolute. Removed plug_in_search_in_path(). Replaced
	some if(plug_in){...} by g_return_if_fail(plug_in!=NULL). Cleanup.

	* app/plug-in/plug-ins.c: plug_ins_def_add_from_rc(): refuse to
	add plug_in_defs with non-absolute paths (should never happen).
	Misc cleanup all over the place like s/GSList *tmp/GSList *list/.

	* app/plug-in/plug-in-params.c: cleanup.

	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly.

	* app/pdb/plug_in_cmds.c: regenerated.

	* app/gui/brush-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: some code review & cleanup.
2003-01-20 12:17:32 +00:00
Michael Natterer a31c0f7d19 One more Plug-In cleanup, it's still a mess...
2003-01-17  Michael Natterer  <mitch@gimp.org>

	One more Plug-In cleanup, it's still a mess...

	* app/plug-in/plug-in-def.[ch]: renamed "gboolean query" field
	to "needs_query". Added setters for all values. Added
	g_return_if_fail() stuff to all functions.

	* app/plug-in/plug-in-proc.[ch]: added plug_in_proc_def_new().
	Removed the "gboolean data_only" parameter from
	plug_in_proc_def_destroy() and renamed it to
	plug_in_proc_def_free().  Added plug_in_proc_def_get_progname()
	which handles GIMP_TEMPORARY procedures correctly.

	* app/plug-in/plug-in-rc.c: use the new stuff above.

	* app/plug-in/plug-in.[ch]: renamed field "user_data" to
	"plug_in_def" and added a comment that it is valid only during
	query() and init().  Use the new APIs above. Pass meaningful
	locale_domains and help_paths when adding temporary procedures
	(fixes Scrip-Fu menu translation the right way (TM)). Cleanup.

	* app/plug-in/plug-ins.[ch]: renamed plug_ins_def_add() to
	plug_ins_def_add_from_rc(). Renamed plug_ins_proc_def_[add|remove]()
	to plug_ins_temp_proc_def_[add|remove](). Added "Gimp" parameters
	to plug_ins_help_path() and plug_ins_locale_domain(). Removed
	unused pre-1.2 cruft "gimprc_prof_defs" and plug_ins_image_types().
	Reverse gimp->load_procs and gimp->save_procs after all procedures
	are registered. Removed Script-Fu translation hack. Reordered stuff.

	* app/gui/plug-in-menus.[ch]: changed accordingly. Named all
	public functions plug_in_menus_*(). Fixed Script-Fu menu translation
	by using plug_in_proc_def_get_progname(). Cleanup.

	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c: don't g_slist_reverse() gimp->load_procs
	and gimp->save_procs here.

	* app/gui/toolbox-menu.c
	* app/gui/image-menu.c
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly.

	* app/pdb/help_cmds.c
	* app/pdb/plug_in_cmds.c: regenerated.

	Unrelated:

	* app/gui/image-menu.c
	* app/widgets/gimpitemfactory.c: s/"tearoff1"/"tearoff"/g. I don't
	get why the "1" was there. Minor cleanup.
2003-01-17 18:07:37 +00:00
Manish Singh 248dbd1e93 app/core/gimpchannel.h app/core/gimpitem.c
2003-01-14  Manish Singh  <yosh@gimp.org>

        * app/core/gimpchannel.h
        * app/core/gimpitem.c
        * app/display/gimpnavigationview.c
        * app/gui/paths-dialog.c
        * app/tools/gimphistogramtool.c
        * app/tools/gimpscaletool.c
        * app/widgets/gimplistitem.c
        * libgimp/gimppixelrgn.c
        * libgimpwidgets/gimpunitmenu.c
        * plug-ins/FractalExplorer/Dialogs.c
        * plug-ins/common/aa.c
        * plug-ins/common/despeckle.c
        * plug-ins/common/psd.c
        * plug-ins/common/sharpen.c
        * plug-ins/common/snoise.c
        * plug-ins/common/spread.c
        * plug-ins/ifscompose/ifscompose.c
        * plug-ins/xjt/xjt.c: some minor code cleanup

        * plug-ins/common/csource.c: 64-bit cleanliness
2003-01-15 03:55:20 +00:00
Sven Neumann f721275a69 app/gui/image-menu.c applied a patch from Henrik Brix Andersen that
2003-01-14  Sven Neumann  <sven@gimp.org>

	* app/gui/image-menu.c
	* plug-ins/common/threshold_alpha.c: applied a patch from Henrik
	Brix Andersen that changes the Alpha menu to Transparency (#89275).
2003-01-14 13:53:24 +00:00
Michael Natterer 6f29b766e8 app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch]
2003-01-13  Michael Natterer  <mitch@gimp.org>

	* 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/file-open-menu.[ch]
	* app/gui/file-save-menu.[ch]
	* app/gui/gradient-editor-menu.[ch]
	* app/gui/gradients-menu.[ch]
	* app/gui/image-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/toolbox-menu.[ch]
	* app/gui/vectors-menu.[ch]: new files, one per GimpItemFactory,
	containing the menu entries and their setup and update funcs.

	* app/gui/brushes-commands.[ch]
	* app/gui/patterns-commands.[ch]: removed because they contained
	only update funcs.

	* app/gui/Makefile.am: changed accordingly. Split the huge
	SOURCES list in smaller ones for menus and dialogs.

	* app/gui/menus.[ch]: removed the menu entries and setup funcs.
	Added MENU_SEPARATOR() and MENU_BRANCH() macros to the header.
	Made some utility functions public.

	* app/display/gimpdisplayshell.[ch]
	* app/gui/buffers-commands.[ch]
	* app/gui/channels-commands.[ch]
	* app/gui/colormap-editor-commands.[ch]
	* app/gui/dialogs-commands.[ch]
	* app/gui/documents-commands.[ch]
	* app/gui/gradient-editor-commands.[ch]
	* app/gui/gradients-commands.[ch]
	* app/gui/images-commands.[ch]
	* app/gui/layers-commands.[ch]
	* app/gui/palette-editor-commands.[ch]
	* app/gui/palettes-commands.[ch]
	* app/gui/qmask-commands.[ch]
	* app/gui/vectors-commands.[ch]: removed the update funcs.

	* app/gui/plug-in-menus.[ch]: renamed plug_in_set_menu_sensitivity()
	to plug_in_menus_update(). Cleanup.

	* app/gui/paths-dialog.[ch]: added the <Paths> entries here
	so they will go away together with these files.

	* app/gui/dialogs-constructors.c
	* app/gui/drawable-commands.c: removed useless #includes.
2003-01-13 14:08:10 +00:00
Michael Natterer f44500aa69 pass the GimpItemListView as "data" to the item_factory callbacks, not
2003-01-12  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpitemlistview.c: pass the GimpItemListView as
	"data" to the item_factory callbacks, not just a "Gimp" pointer.

	* app/display/gimpdisplayshell.c: use
	gtk_window_add_accel_group(), not gimp_window_add_accel_group()
	because we now attach the menubar's accel group, which has the
	GimpDisplay as callback data.

	* app/display/gimpdisplayshell-callbacks.c: pass the GimpDisplay
	as "popup_data" to *_item_factory_popup_with_data().

	* app/gui/channels-commands.c
	* app/gui/drawable-commands.c
	* app/gui/layers-commands.c
	* app/gui/vectors-commands.c: changed accordingly.

	* app/widgets/gimpwidgets-utils.[ch]: removed
	gimp_window_[add|remove]_accel_group() and
	gimp_widget_get_callback_context() because they were evil hacks
	which are no longer needed now that all item_factories have proper
	callback data (no just Gimp pointers).
2003-01-12 12:35:00 +00:00
Sven Neumann ed312c95ab app/app_procs.c (app_init) delayed the activation of gimprc-autosave so we
2003-01-10  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c (app_init)
	* app/core/gimp.c (gimp_set_config): delayed the activation of
	gimprc-autosave so we don't write the monitor resolution obtained
	from GDK back to the gimprc on each startup.

	* app/gui/gui.c (gui_get_screen_resolution): round values to get
	rid of rounding errors introduced earlier. Looks better in the
	prefs dialog.

	* app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale):
	merged fix for bug #94979 from stable branch. Go even further and
	don't limit the zoom ratio between 1:16 and 16:1.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): merged
	fix for bug #103030 from stable branch.
2003-01-10 21:15:41 +00:00
Michael Natterer dd27eb1ec9 app/widgets/gimpcolormapeditor.c app/widgets/gimpcontainereditor.[ch] pass
2003-01-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdataeditor.c: pass the editor widget as
	callback_data to GtkItemFactory callbacks, not a "Gimp" pointer.

	* app/gui/buffers-commands.c
	* app/gui/colormap-editor-commands.c
	* app/gui/data-commands.c
	* app/gui/documents-commands.c
	* app/gui/gradient-editor-commands.c
	* app/gui/gradients-commands.c
	* app/gui/images-commands.c
	* app/gui/palette-editor-commands.c
	* app/gui/palettes-commands.c

	* app/gui/patterns-commands.c: simply cast the passed "data"
	pointer instead of calling gimp_widget_get_callback_context().
	Don't #include "widgets/gimpwidgets-utils.h".
2003-01-10 19:30:32 +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
Sven Neumann a46305046a prefixed ALL, NONE, GROW and SHRINK with SELECTION_ since they should only
2003-01-10  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpstock.[ch]: prefixed ALL, NONE, GROW and
	SHRINK with SELECTION_ since they should only be used for in a
	selection context. Register a few icons in dialog size as well.

	* app/gui/menus.c
	* app/widgets/gimpselectioneditor.c: changed accordingly.

	* themes/Default/images: renamed icons accordingly.

	* plug-ins/common/uniteditor.c: use stock items.
2003-01-10 13:01:41 +00:00
Manish Singh 73403a837f make gui_libs_init() use gtk_init_check() and return a gboolean on success
2003-01-08  Manish Singh  <yosh@gimp.org>

        * app/gui.[ch]: make gui_libs_init() use gtk_init_check() and return
        a gboolean on success or failure.

        * app/main.c: reorganized so that --help and --version never need
        the gui to be initialized. Print a proper message when the gui cannot
        be initialized (perhaps recommend --no-interface?). Return nonzero
        exit status on failures.
2003-01-08 23:43:31 +00:00
Michael Natterer bbc13c5199 removed gimp_help_init() and gimp_help_free(). Added _gimp_help_init()
2003-01-07  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimphelpui.[ch]: removed gimp_help_init() and
	gimp_help_free(). Added _gimp_help_init() instead.

	* libgimpwidgets/gimpwidgets.def: changed accordingly.

	* libgimpwidgets/gimpwidgets.c (gimp_widgets_init): call
	_gimp_help_init() so it doesn't need to be done in all plug-ins
	manually.

	* libgimp/gimpcompat.h: added gimp_help_init() and gimp_help_free()
	here as COMPAT_CRUFT.

	* app/gui/gui.c
	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/MapObject/mapobject_ui.c
	* plug-ins/common/AlienMap.c
	* plug-ins/common/AlienMap2.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/blur.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/gtm.c
	* plug-ins/common/illusion.c
	* plug-ins/common/jigsaw.c
	* plug-ins/common/plasma.c
	* plug-ins/common/polar.c
	* plug-ins/common/ps.c
	* plug-ins/common/randomize.c
	* plug-ins/common/sinus.c
	* plug-ins/common/snoise.c
	* plug-ins/common/sparkle.c
	* plug-ins/common/uniteditor.c
	* plug-ins/common/warp.c
	* plug-ins/common/wind.c
	* plug-ins/gap/gap_arr_dialog.c
	* plug-ins/gap/gap_mov_dialog.c
	* plug-ins/gap/gap_navigator_dialog.c
	* plug-ins/gdyntext/gdyntext_ui.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gflare/gflare.c
	* plug-ins/gimpressionist/gimpressionist.c
	* plug-ins/maze/maze_face.c
	* plug-ins/print/gimp_main_window.c
	* plug-ins/sel2path/sel2path.c: removed the calls to
	gimp_help_init() and gimp_help_free().

	Fixed bug #81017:

	* libgimpbase/gimpprotocol.[ch]: added "guint8 show_tool_tips"
	to the GPConfig message. Increased the protocol version number.

	* app/plug-in/plug-in.c: pass the value of gui_config->show_tool_tips.

	* libgimp/gimp.[ch]: added gimp_show_tool_tips() to get the value
	which was passed in the GPConfig message.

	* libgimp/gimpui.c (gimp_ui_init): disable the tooltips
	if show_tool_tips is FALSE.

	* plug-ins/MapObject/mapobject_main.[ch]
	* plug-ins/MapObject/mapobject_ui.c
	* plug-ins/common/jigsaw.c
	* plug-ins/gap/gap_navigator_dialog.c
	* plug-ins/gfig/gfig.c: removed all plug-in specific GUI for
	enabling/disabling tooltips.
2003-01-07 17:00:49 +00:00
Sven Neumann fdffb13ea8 app/gui/gradient-editor-commands.c don't split translatable sentences into
2003-01-06  Sven Neumann  <sven@gimp.org>

        * app/gui/gradient-editor-commands.c
        * libgimp/gimpexport.c: don't split translatable sentences into
        multiple messages (bug #85828).
2003-01-06 01:01:02 +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 6d7ae03080 don't free the options structure twice (fixes bug #102515).
2003-01-05  Sven Neumann  <sven@gimp.org>

	* app/gui/qmask-commands.c (qmask_channel_query): don't free the
	options structure twice (fixes bug #102515).
2003-01-05 01:30:33 +00:00
Michael Natterer ea95a3227d Replaced Garry's fix for bug #98843 by a more general solution which stops
2003-01-02  Michael Natterer  <mitch@gimp.org>

	Replaced Garry's fix for bug #98843 by a more general solution
	which stops the active tool when an undo group start is pushed:

	* app/core/gimpimage.[ch]: removed the "layer_merge" signal
	and added "undo_start" instead.

	* app/undo.c: emit "undo_start" in undo_push_group_start()
	_before_ checking if gimage->undo_on is TRUE.

	* app/tools/tool_manager.c: connect to "undo_start" and HALT the
	active tool if neccessary.

	* app/core/core-types.h: added EDIT_COPY_UNDO_GROUP.

	* app/core/gimpedit.c: push an undo group around the copy
	operation. Will probably have to add more undo group types to wrap
	other critical image modifications with.

	* app/core/gimpimage-merge.c
	* app/gui/convert-dialog.c
	* app/gui/edit-commands.c
	* app/gui/test-commands.c
	* app/tools/gimpimagemaptool.c: removed all special code to
	stop the active tool.
2003-01-02 13:38:09 +00:00
Michael Natterer 2ed235164f replaced the 0755 by properly or'ed symbolic values (undid this change
2003-01-02  Michael Natterer  <mitch@gimp.org>

	* app/gui/user-install-dialog.c: replaced the 0755 by properly
	or'ed symbolic values (undid this change from Sven accidentially).
2003-01-02 13:10:10 +00:00
Sven Neumann 6cd51e1962 changed some menu entries as suggested in bug #101974.
2003-01-01  Sven Neumann  <sven@gimp.org>

	* app/gui/menus.c (image_entries): changed some menu entries as
	suggested in bug #101974.

	* app/display/gimpdisplayshell.c: changed accordingly.
2003-01-01 14:37:14 +00:00
Hans Breuer 8364722f2d when checking for 'excecutable' make sure it is a regular file too (on
2003-01-01  Hans Breuer  <hans@breuer.org>

	* libgimpbase/gimpdatafiles.c : when checking for
	'excecutable' make sure it is a regular file too
	(on win32 even directories carry the IXUSR flag)

	* app/app_procs.h : there is still no #warning with
	msvc, special case to make it build with non GCC

	* makefile.msc */makefile.msc */*/makefile.msc : updated

	* app/gui/user-install-dialog.c : get prototype for mkdir

	* libgimpwidgets/libgimp-glue.c : make it compile without
	LT_RELEASE being defined

	* modules/module.def : removed
	  modules/Makefile.am : no export file needed when
	functions get exported by G_MODULE_EXPORT
2003-01-01 13:33:27 +00:00
Sven Neumann be4b949597 reuse a translatable message instead of introducing yet another one 2002-12-30 19:46:08 +00:00
Michael Natterer 9b751c2acd some more cleanup: check the return value of fclose() in copy_file(),
2002-12-30  Michael Natterer  <mitch@gimp.org>

	* app/gui/user-install-dialog.c: some more cleanup: check the
	return value of fclose() in copy_file(), added an enum for the
	notebook pages, added '' around displayed filenames, update the
	GUI while creating the user directory, misc stuff.
2002-12-30 18:51:57 +00:00
Sven Neumann 42b01c5256 use proper defines to specify the permissions when calling mkdir().
2002-12-30  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagefile.c (gimp_imagefile_png_thumb_path): use
	proper defines to specify the permissions when calling mkdir().

	* app/file/file-utils.c: removed redeclaration of mkdir() for
	Win32 since we don't call mkdir() here.

	* app/gui/user-install-dialog.c (user_install_run): rewrote
	copy_file() to use GError for error reporting. Use the same code
	for the user installation on all platforms. Also fixes bug #102015.

	* data/misc/Makefile.am
	* data/misc/user_install
	* data/misc/user_install.bat: removed obsoleted scripts.
2002-12-30 17:27:58 +00:00
Sven Neumann 1f47a470b3 app/app_procs.c app/core/gimp.c app/gui/gui.c removed debugging output.
2002-12-30  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c
	* app/core/gimp.c
	* app/gui/gui.c
	* app/widgets/gimpitemfactory.c: removed debugging output.

	* app/plug-in/plug-ins.c: need to expand the plug_in_path before
	using it.

	* app/gui/plug-in-menus.c (plug_in_menus_init): removed an
	unneeded assertion.

	* plug-ins/imagemap/Makefile.am (EXTRA_DIST): removed references
	to files that were removed some time ago.
2002-12-30 00:01:30 +00:00
Sven Neumann 849d6c0d68 check for app/core/gimp.c instead of etc/gimprc.in which no longer exists.
2002-12-29  Sven Neumann  <neo@wintermute>

        * configure.in: check for app/core/gimp.c instead of etc/gimprc.in
        which no longer exists.

        * app/gui/user-install-dialog.c: use the term Folder instead of
        Directory (fixes bug #102016).
2002-12-29 20:59:42 +00:00
Sven Neumann 023c76978f configure.in etc/Makefile.am etc/gimprc.in removed templates for gimprc
2002-12-29  Sven Neumann  <sven@gimp.org>

	* configure.in
	* etc/Makefile.am
	* etc/gimprc.in
	* etc/gimprc_user.in: removed templates for gimprc files.

	* etc/gimprc: added this file as generated by gimp-config-dump.

	* app/gui/user-install-dialog.c
	* data/misc/user_install: don't install an empty user gimprc.

	* app/config/Makefile.am
	* app/config/gimpconfig-substitute.[ch]: removed these files.
	* app/config/gimpconfig-path.[ch]: and added them again with
	reduced functionality. Paths found in config files are now
	basically handled like standard strings by the config system.
	Users of the GimpConfig path variables need to expand the path
	themselves.

	* app/config/gimpbaseconfig.c
	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-dump.c
	* app/config/gimpconfig-utils.c
	* app/config/gimpconfig.c
	* app/config/gimpcoreconfig.c
	* app/config/gimprc.c:
	* app/base/base.c
	* app/base/temp-buf.c
	* app/core/gimp.c
	* app/core/gimpdatafactory.c
	* app/core/gimpmodules.c
	* app/gui/user-install-dialog.c
	* app/plug-in/plug-in.c
	* app/tools/tools.c
	* app/widgets/gimppropwidgets.c: changed accordingly.
2002-12-29 18:58:24 +00:00
Tor Lillqvist 30d6dd140b On Win32, use similar code as in GIMP 1.2, i.e. don't run a script to do
2002-12-26  Tor Lillqvist  <tml@iki.fi>

	* app/gui/user-install-dialog.c (user_install_run): On Win32, use
	similar code as in GIMP 1.2, i.e. don't run a script to do the
	mkdirs and copying, but do it ourselves. Markup the tree_items
	elements accordingly to direct the action.
2002-12-26 01:51:25 +00:00
Michael Natterer 4328fa941b added utility functions gimp_get_mod_name_[shift|control|alt]() and
2002-12-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpwidgets-utils.[ch]: added utility functions
	gimp_get_mod_name_[shift|control|alt]() and gimp_get_mod_separator()
	which get the translated strings for "Shift", "Ctrl", "Alt" and "+"
	from GtkAccelLabelClass to force consistency between menu
	accelerators and other modifiers displayed in the GUI.
	Made the format string to display the modifier ("<%s>")
	translatable separately.

	* app/gui/file-open-dialog.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmovetool.c
	* app/tools/transform_options.c
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemlistview.c
	* app/widgets/gimpvectorslistview.c: use the new functions instead
	of hardcoding the modifier names over and over again.

	* app/tools/transform_options.c: made a scale_entry out of the
	grid density spinbutton.
2002-12-19 16:33:29 +00:00
Manish Singh 2bb5acc246 added some rudimentary support to prepend values to existing environment
2002-12-17  Manish Singh  <yosh@gimp.org>

        * app/core/gimpenvirontable.[ch]: added some rudimentary support
        to prepend values to existing environment variables. You can do
        "separator name=value" now. API change to gimp_environ_table_add
        for it too. Also added some error checking.

        * app/gui/gui.c: change to new above API

        * plug-ins/pygimp/Makefile.am: write ": PYTHONPATH=" out to env
        file

        * po/POTFILES.in: add gimpenvirontable.c
2002-12-18 02:47:39 +00:00
Sven Neumann 114e38f36c set text and base colors as well to the user installation dialog work on
2002-12-15  Sven Neumann  <sven@gimp.org>

	* app/gui/user-install-dialog.c: set text and base colors as well
	to the user installation dialog work on dark themes. Fixes #86187.
2002-12-15 15:27:02 +00:00
Michael Natterer 1d1be9f079 use gdisp->gimage->gimp instead of the_gimp.
2002-12-14  Michael Natterer  <mitch@gimp.org>

	* app/gui/plug-in-commands.c (plug_in_repeat_cmd_callback):
	use gdisp->gimage->gimp instead of the_gimp.

	* app/tools/gimpimagemaptool.c: pass update_popup == FALSE to
	gimp_display_shell_set_menu_sensitivity().
2002-12-14 15:55:26 +00:00
Sven Neumann b9b40c4516 data is not a Gimp pointer if this function is called from an image
2002-12-14  Sven Neumann  <sven@gimp.org>

	* app/gui/plug-in-commands.c (plug_in_repeat_cmd_callback): data
	is not a Gimp pointer if this function is called from an image
	menubar. Use the_gimp instead of crashing.
2002-12-14 14:45:38 +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 36afd6cac1 create the color button for the canvas padding color using
2002-12-12  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c (prefs_color_button_add): create the
	color button for the canvas padding color using GIMP_COLOR_AREA_FLAT.
2002-12-12 19:48:13 +00:00
Michael Natterer b1ebd9cddf The unbelievable happened: a menu bar per display (optionally)
2002-12-10  Michael Natterer  <mitch@gimp.org>

	The unbelievable happened: a menu bar per display (optionally)

	* app/widgets/gimpitemfactory.[ch]: Added the possibility to have
	more than one item factory per <Prefix>. Added
	gimp_item_factories_set_foobar() variants of all functions which
	set menu item properties (label, sensitive, ...). Removed
	the #ifndef ENABLE_NLS code since that's no longer possible.

	* app/widgets/gimptoolbox.c: made it robust againt the <Image>
	factory not existing at the time of toolbox creation.

	* app/config/gimpconfig-blurbs.h
	* app/config/gimpdisplayconfig.[ch]: added boolean
	"menu_bar_per_display" property.

	* app/gui/preferences-dialog.c: added a toggle for the new option.

	* app/gui/menus.[ch]: added menus_get_new_image_factory() as
	temporary solution. Will add a GimpMenuFactory which creates the
	item factories soon.

	* app/display/gimpdisplayshell.c: add the menu bar if requested.
	Changed widget packing slightly for the menu bar case.

	* app/display/gimpdisplayshell-callbacks.c: changed accordingly.
	Currently there is no right-click popup menu when we have a menu
	bar. This will change soon.

	* app/gui/file-dialog-utils.c
	* app/gui/gui.c: use gimp_item_factories_set_foo().

	* app/gui/channels-commands.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.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/plug-in-commands.c
	* app/gui/select-commands.c
	* app/gui/tools-commands.c
	* app/gui/vectors-commands.c
	* app/gui/view-commands.c: per-display item factories pass the
	GimpDisplay as user_data to callbacks, not a Gimp. Changed all
	return_if_no_foo() macros to handle both cases.

	Cleaned up the plug-in menu stuff:

	* app/plug-in/plug-in-types.h: removed PlugInMenuEntry type.

	* app/plug-in/plug-ins.[ch]: added plug_ins_proc_def_add() as
	counterpart to plug_ins_proc_def_remove(). Added
	plug_ins_locale_domain() as counterpart to plug_ins_help_path().
	Remember the locale domains just as the help paths. Changed
	plug-in initialization so that their menus can be created multiple
	times.

	* app/plug-in/plug-in.[ch]: use plug_ins_proc_def_add() instead of
	doing it manually.

	* app/gui/plug-in-menus.[ch]: added plug_in_menus_init() which
	just registers the locale domains. Changed plug_in_make_menu() to
	take a list of proc_defs, not plug_ins_defs so it can be used
	after plug-in query.
2002-12-10 16:38:16 +00:00
Michael Natterer b2c3f0187d Cleaned up the exit process:
2002-12-05  Michael Natterer  <mitch@gimp.org>

	Cleaned up the exit process:

	* app/core/gimp.[ch]: added an "exit" signal which carries a
	"gboolean kill_it" parameter and has a boolean return value.
	Added gimp_boolean_handled_accumulator() so the emission of "exit"
	can be stopped by returning TRUE from a callback.  Removed
	gimp_shutdown() from the public API and made it "exit"'s default
	implementation. Addec gimp_exit() to emit the signal.

	* app/core/gimpmarshal.list: added BOOLEAN__BOOLEAN marshaller.

	* app/gui/gui.[ch]: Replaced public functions gui_shutdown() and
	gui_exit() by "exit" callbacks. g_signal_connect_after() the
	latter so the shutdown order is correct.

	* app/app_procs.[ch]: removed app_exit() and connect to "exit".
	Split the exit stuff into normal and connect_after callbacks as
	above.

	* app/batch.c
	* app/gui/file-commands.c
	* tools/pdbgen/pdb/misc.pdb
	* app/widgets/gimptoolbox.c: call gimp_exit() instead of
	app_exit(). Don't #include "app_procs.h".

	* app/pdb/misc_cmds.c: regenerated.
2002-12-05 15:49:59 +00:00
Michael Natterer 9775e144f8 renamed gdisplays_reconnect() to gimp_displays_reconnect() and added a
2002-12-03  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay-foreach.[ch]: renamed
	gdisplays_reconnect() to gimp_displays_reconnect() and added a
	"Gimp" parameter.

	* app/gui/file-commands.c
	* tools/pdbgen/pdb/display.pdb: changed accordingly.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/pattern_select.pdb: some irrelevant
	code cleanups to make them look the same.

	* tools/pdbgen/pdb/message.pdb: changed $desc from "Interface"
	to "Message procedures".

	* tools/pdbgen/pdb/transform_tools.pdb: changed $desc from
	"Tool procedures" to "Transform Tool procedures".

	* app/pdb/brush_select_cmds.c
	* app/pdb/display_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/internal_procs.c
	* app/pdb/palette_select_cmds.c
	* app/pdb/pattern_select_cmds.c: regenerated.
2002-12-03 23:00:42 +00:00
Michael Natterer 9eb748adac named the menu separator "/fg-bg-separator", not just "/---".
2002-12-03  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolorbutton.c: named the menu separator
	"/fg-bg-separator", not just "/---".

	* app/widgets/gimpcolorpanel.[ch]: added a GimpContext pointer to
	get FG/BG from. Don't use "the_gimp" and don't include
	"app_procs.h".  Added gimp_color_panel_set_context(). Hide the
	FG/BG menu entries if we have no context.

	* app/gui/channels-commands.c
	* app/gui/preferences-dialog.c
	* app/gui/qmask-commands.c
	* app/display/gimpdisplayshell.c: set the color_panel's context.
2002-12-03 22:16:56 +00:00
Michael Natterer 4ccd0f0ae3 use GError for reporting load/save errors. Added gimp_data_error_quark()
2002-12-02  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdata.[ch]: use GError for reporting load/save
	errors. Added gimp_data_error_quark() and a GimpDataError enum.
	Made simple virtual functions out of save(), get_extension()
	and duplicate() because they don't need to be signals.

	* app/core/gimpbrush.[ch]
	* app/core/gimpbrushgenerated.[ch]
	* app/core/gimpbrushpipe.[ch]
	* app/core/gimpgradient.[ch]
	* app/core/gimppalette.[ch]
	* app/core/gimppattern.[ch]: changed accordingly. Set data->dirty
	to FALSE in each _load() function.

	* app/core/gimpdatafactory.[ch]: report GError messages here.
	Changed the ugly factory->path pointer location hack to
	factory->path_property_name and get the path from
	factory->gimp->config. Added gimp_data_factory_data_duplicate()
	implementation which was already declared in the header.

	* app/core/gimp.c: pass the path property name to
	gimp_data_factory_new().

	* app/widgets/gimpdatafactoryview.c: removed the duplicate
	implementation and call gimp_data_factory_data_duplicate().

	* app/core/gimpgradient.[ch]: added gimp_gradient_save_as_pov().

	* app/gui/gradients-commands.c: removed save_as_pov implementation
	and call gimp_gradient_save_as_pov().
2002-12-02 13:39:09 +00:00
Hans Breuer 7c7ff46cc6 updated
2002-11-30  Hans Breuer  <hans@breuer.org>

	* */makefile.msc */*/makefile.msc : updated

	* themes/Default/images/makefile.msc : new file
	* themes/Default/makefile.msc : removed

	* libgimpwidgets/gimpwidgets.def : updated

	* app/core/core-types.h : renamed PIXELS and POINTS
	to SIZE_* to avoid clashes with system headers
	* app/pdb/text_tool_cmds.c : updated ...
	* tools/pdbgen/enums.py : ... by renaming here too.

	* app/widgets/gimphistogrambox.c : <string.h> for memcpy()
	* app/widgets/gimppropwidgets.c : <string.h> for strlen()

	* app/config/gimpconfig.c : on win32 rename always fails
	if the destination file exists. Delete it first.

	* libgimp/gimp.def : removed all '_'-prefixed exports
	* plug-ins/common/iwarp.c : replace _gimp_layer_copy()
	with gimp_layer_copy(), gimp_layer_add_alpha()

	* libgimp/gimpmisc.c : ported gimp_timer funcs to use
	g_timer to be more portable

	* libgimpbase/gimpdatafiles.c : there are no symlinks on
	win32, inverted to #ifndef G_OS_WIN32 as it was meant.

	* libgimpbase/gimpbase.def libgimpmodule/gimpmodule.def
	  libgimpwidgets/gimpwidgets.def : updated externals

	* plug-ins/common/randomize.c plug-ins/common/sinus.c :
	don't initialize more than the defined struct size

	* plug-ins/common/warp.c : removed unneeded unistd.h and
	signal.h include

	* regexrepl/regexrepl.def : (new file) needed to build
	as DLL
2002-12-01 14:53:17 +00:00
Michael Natterer 5c86e63983 removed the global "base_config" variable.
2002-11-30  Michael Natterer  <mitch@gimp.org>

	* app/base/base-types.h: removed the global "base_config" variable.

	* app/base/base.[ch]: added "gboolean use_mmx" to base_init().
	Don't #include "appenv.h". Pass around more parameters to reduce
	the usage of the global "paint_options" pointer.

	* app/app_procs.c: pass "use_mmx" to base_init().

	* app/base/temp-buf.c: pass "temp_path" around internally. Declare
	"base_config" extern and added a #warning.

	* app/core/gimpdata.[ch]
	* app/core/gimpbrush.[ch]
	* app/core/gimpbrushgenerated.[ch]
	* app/core/gimpbrushpipe.[ch]
	* app/core/gimpgradient.[ch]
	* app/core/gimppalette.[ch]
	* app/core/gimppattern.[ch]: added "gboolean stingy_memory_use"
	parameters to all _new(), _load() and _duplicate() functions.

	* app/core/gimpmarshal.list: GimpData::duplicate needs an
	OBJECT__BOOLEAN marshaller now.

	* app/core/gimpdatafactory.[ch]: added a "Gimp" pointer so the
	factory can find the config. Pass base_config->stingy_memory_use
	to the GimpData functions changed above.

	* app/core/gimp-gradients.c
	* app/core/gimp.c
	* app/core/gimppalette-import.c
	* app/gui/palettes-commands.c
	* app/widgets/gimpdatafactoryview.c: changed accordingly.

	* app/core/gimpcontext.c: get "stingy_memory_use" from
	context->gimp->config.
2002-11-30 16:31:39 +00:00
Michael Natterer 64eb7d748a added gimp->edit_config which is a copy of gimp->config except for
2002-11-30  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.[ch]: added gimp->edit_config which is a copy of
	gimp->config except for GIMP_PARAM_RESTRT options. Create it in
	gimp_set_config() which must be called before anything else after
	gimp_new(). Install "notify" handlers between the both to keep
	them up-to-date. Enable auto saving for the edit_config.

	* app/app_procs.c: call gimp_set_config().

	* tools/pdbgen/pdb/gimprc.pdb: use gimp->edit_config here so we
	don't accidentially change GIMP_PARAM_RESTART values from the PDB.

	* app/pdb/gimprc_cmds.c: regenerated.

	* app/gui/preferences-dialog.c: use gimp->edit_config as the base
	for all prefs operations. Disable auto saving while the prefs
	dialog is open. No need any more to parse the saved gimprc to get
	GIMP_PARAM_RESTART values. Removed GIMP_PARAM_RESTART special
	hacks because edit_config handles them transparently for us.

	Unrelated:

	* app/core/gimpimage.c (gimp_image_init): initialize active_vectors.

	* app/gui/gui.c (gui_image_disconect): when the last image
	disappears, show the toolbox only if the image had a display.
2002-11-30 13:08:44 +00:00
Sven Neumann 092f855f1e fixed a compiler warning 2002-11-27 10:55:59 +00:00
Michael Natterer 46708690dd added "gboolean verbose" to GimpRc and its constructor. Print messages
2002-11-26  Michael Natterer  <mitch@gimp.org>

	* app/config/gimprc.[ch]: added "gboolean verbose" to GimpRc and
	its constructor. Print messages only if verbose == TRUE.

	* app/gui/user-install-dialog.[ch]: changed accordingly.

	* app/app_procs.c: ditto. No need any more to parse unitrc before
	calling user_install_dialog_create().

	* app/gui/preferences-dialog.c: ditto. Added the static
	prefs_dialog pointer again to our local help func finds the
	current notebook page.
2002-11-26 14:54:28 +00:00
Michael Natterer 1229d8c84c added gimp_config_diff() which returns the difference beween two
2002-11-25  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-utils.[ch]: added gimp_config_diff()
	which returns the difference beween two GimpConfig objects
	as a GList of GParamSpecs.

	* app/config/gimpconfig-params.c (gimp_param_color_cmp): compare
	the colors as integers to get rid of rounding foobar.

	* app/config/gimpconfig-serialize.c: use gimp_config_diff().

	* app/display/gimpdisplayshell-handlers.c: only need to call
	gimp_display_shell_scale_setup() on resolution change if the
	display is not in dot-for-dot mode.

	* app/display/gimpdisplayshell.c: changed a separator in the
	padding color menu.

	* app/gui/dialogs.c: made the prefs dialog a singleton again.

	* app/gui/preferences-dialog.c: Should be fully functional again:
	Apply GIMP_PARAM_CONFIRM properties on "OK". Save gimprc on "OK".
	Parse a temporaty GimpRc on dialog creation to get the current
	GIMP_PARAM_RESTART values. Use gimp_config_diff() for all config
	comparisons.
2002-11-25 13:48:24 +00:00
Manish Singh 2b16283b32 moved FINITE definition to $extra code. Changed to use #elif, much
2002-11-24  Manish Singh <yosh@gimp.org>

        * tools/pdbgen/pdb/image.pdb: moved FINITE definition to $extra
        code. Changed to use #elif, much cleaner.

        * app/pdb/image_cmds.c: regenerated

        * app/core/gimpenvirontable.[ch]: added support for app internal
        environment variable settings. These override any *.env files if
        there are collisions. Not sure on that policy. Also, envp is now
        generated on the first get_envp call.

        * app/gui/gui.[ch]: added gui_environ_init, which uses
        gimp_environ_table_add. Moved the setting of DISPLAY to here.
        Added setting of GDK_DISPLAY instead for the fb backends. Hm,
        perhaps GDK should do this itself...

        * app_procs.c: call gui_environ_init.

        * libgimpwidgets/gimpcolorscale.c
        * libgimpwidgets/gimpcolorscales.c: #include <string.h> for
        strlen and memcpy.

-Yosh
2002-11-25 00:04:26 +00:00
Michael Natterer bf53c3b2b7 removed GIMP_PARAM_RESTART from "marching-ants-speed".
2002-11-24  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpdisplayconfig.c: removed GIMP_PARAM_RESTART from
	"marching-ants-speed".

	* app/display/gimpdisplayshell-selection.[ch]: removed the "speed"
	parameter from the constructor and get the speed from
	GimpDisplayConfig when starting the ants.

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

	* app/display/gimpdisplayshell-handlers.c: connect to
	notify::marching-ants-speed and restart the ants in the handler.

	* app/gui/preferences-dialog.c: Added an own frame for the
	canvas padding color. Even more cleanup.

	* themes/Default/images/preferences/Makefile.am
	* themes/Default/images/preferences/image-title.png: new image
	for the new page. copied image-windows.png
2002-11-24 00:03:42 +00:00
Michael Natterer 4ce4adf87d removed gimp_config_values_equal().
2002-11-23  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-utils.[ch]: removed
	gimp_config_values_equal().

	* app/config/gimpconfig-serialize.c
	* app/config/gimpconfig.c: use g_param_values_cmp() instead so
	our registered compare methods are used.

	* app/config/gimpdisplayconfig.[ch]: added "canvas_padding_mode"
	and "canvas_padding_color" properties.

	* app/display/display-enums.[ch]: added enum GimpDisplayPaddingMode
	which can be one of { theme, light check, dark check, custom }.

	* app/display/gimpdisplay.h
	* app/display/gimpdisplay-handlers.c: removed cached monitor
	resolution values...

	* app/display/gimpdisplayshell.[ch]: ...and added them here. Added
	padding state as in GimpDisplayConfig. Added utility function
	gimp_display_shell_set_padding() which hides all the details.
	Added the new padding modes to the padding color button's context
	menu.

	* app/display/gimpdisplayshell-callbacks.[ch]: don't fiddle
	with colors manually but use gimp_display_shell_set_padding()
	in realize() and in the color button callbacks.

	* app/display/gimpdisplayshell-handlers.c: connect to
	notify::monitor-[xy]resolution and
	notify::canvas-padding-[mode|color] and update accordingly.

	* app/widgets/gimppropwidgets.[ch]: added
	gimp_prop_color_button_new().

	* app/widgets/gimpdialogfactory.[ch]: added
	gimp_dialog_factories_session_clear() (unimplemented).

	* app/gui/preferences-dialog.c: added widgets for padding mode and
	color. Removed some callbacks by connecting the functions they
	called directly. Cleanup.
2002-11-23 22:22:21 +00:00
Michael Natterer 72d496e637 keep a pointer to the nav_ebox in the GimpDisplayShell struct.
2002-11-22  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.[ch]: keep a pointer to the
	nav_ebox in the GimpDisplayShell struct.

	* app/display/gimpdisplayshell-handlers.c: connect to
	notify::navigation-preview-size and set the button insensitive for
	GIMP_PREVIEW_SIZE_NONE. Also destroy an existing nav_popup so it
	will be automatically re-created on the next click.  Connect to
	notify::image-title-format and notify::image-status-format and
	update them accordingly.

	* app/display/gimpnavigationview.c: don't try any voodoo in
	gimp_navigation_view_init(). Removed the notify handler.
	Set the popup's size in gimp_navigation_view_new_private().

	* app/gui/preferences-dialog.c: removed the #if 0'ed combo boxes
	and added an own sub-page for the image title and status format.
	Select the possible values using a GtkTreeView.  Some more
	cleanup.
2002-11-22 22:10:40 +00:00
Sven Neumann ac940f2cff allow to configure whether tips are shown on startup.
2002-11-22  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: allow to configure whether tips
	are shown on startup.

	* app/gui/tips-dialog.c: threw out lots of code and use
	gimp_prop_check_button_new() instead.
2002-11-22 18:06:36 +00:00
Sven Neumann 2a37c9e62e app/config/gimpdisplayconfig.[ch] moved navigation_preview_size to
2002-11-21  Sven Neumann  <sven@gimp.org>

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimpguiconfig.[ch]: moved navigation_preview_size to
	GimpDisplayConfig.

	* app/gui/preferences-dialog.c: offer the full choice of
	GimpPreviewSizes for the navigation preview size.

	* app/display/gimpnavigationview.c: multiply the preview size by 3
	to get reasonable values. Added some broken code that connects to
	notify::navigation-preview-size.

	* etc/gimprc.in: updated accordingly.
2002-11-21 17:17:03 +00:00
Michael Natterer 024061d9d7 added tile_cache_init() and tile_cache_exit() as public functions.
2002-11-21  Michael Natterer  <mitch@gimp.org>

	* app/base/tile-cache.[ch]: added tile_cache_init() and
	tile_cache_exit() as public functions.

	* app/base/base.c: call them. Connect to GimpBaseConfig's
	notify::tile-cache-size.

	* app/core/gimpimage.c: connect to notify::transparency-type and
	notify::transparency-size and call
	gimp_image_invalidate_layer_previews() in the callback.

	* app/display/gimpdisplay-foreach.[ch]: removed
	gdisplays_expose_full().

	* app/display/gimpdisplayshell-handlers.c: connect to
	notify::transparency-type and notify::transparency-size and expose
	the shell in the callback.

	* app/display/gimpdisplayshell-render.[ch]: added render_init()
	and render_exit() functions and connect to
	notify::transparency-type and notify::transparency-size for
	setting up the render buffers.

	* app/gui/gui.c: call the new functions instead of render_setup().
	Connect to notify::show-tool-tips.

	* app/gui/preferences-dialog.c: copy values between the global
	config object and its local clone only when they have changed.
	Wrap setting of lots of values in g_object_[freeze|thaw]_notify().
	Added lots of mnemonics.

	* app/gui/resolution-calibrate-dialog.c: added mnemonics.

	* app/widgets/gimppropwidgets.c: g_object_set() the values edited
	by the gimp_prop_coordinates() much less often by remembering the
	old values and setting them only when they have changed.
2002-11-21 15:46:19 +00:00
Sven Neumann bef28d23de don't set the default resolution from the monitor resolution entry.
2002-11-21  Sven Neumann  <neo@wintermute>

	* app/gui/preferences-dialog.c (prefs_dialog_new): don't set the
	default resolution from the monitor resolution entry.

	* app/gui/user-install-dialog.c: use the new GimpPropWidgets. The
	monitor resolution setup may need some more tweaking ...
2002-11-21 00:36:45 +00:00
Sven Neumann 3f201df9b6 made object properties from the gimprc filenames. Use NULL to set to the
2002-11-20  Sven Neumann  <sven@gimp.org>

	* app/config/gimprc.c: made object properties from the gimprc
	filenames. Use NULL to set to the default values.

	* app/app_procs.c
	* app/gui/user-install-dialog.[ch]: don't pass a gimp pointer to
	the user installation dialog. All it needs to know are the
	alternative gimprc names if such are given on the command-line.
2002-11-20 20:39:23 +00:00
Michael Natterer 0005b5d2e5 app/widgets/Makefile.am new files containing constructors for views on
2002-11-20  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimppropwidgets.[ch]: new files containing
	constructors for views on GObject properties.

	* app/gui/Makefile.am: the build preferences-dialog again.

	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c
	* app/gui/menus.c: added it back to the dialog system (as a non
	signleton to get the new model <-> view stuff some testing).

	* app/gui/preferences-dialog.c: here it is again, using property
	view widgets. Lots of stuff removed & simplified. Some things
	still #if 0'ed and/or non-working. No saving yet, stuff...
2002-11-20 19:45:03 +00:00
Sven Neumann 726258238b store the gimprc filenames in the GimpRc object; will become properties
2002-11-20  Sven Neumann  <sven@gimp.org>

	* app/config/gimprc.[ch]: store the gimprc filenames in the
	GimpRc object; will become properties later.

	* app/app_procs.c: use the new GimpRc API and added the
	functionality back that allows to specify different gimprc
	files on the command-line.

	* app/gui/user-install-dialog.c: don't work on the real gimprc
	object but create one for the install procedure and save it.
2002-11-20 19:32:51 +00:00
Sven Neumann 1b54514029 Don't access base_config which is not initialized at this time. 2002-11-20 15:23:11 +00:00
Dave Neary cd28dee822 configure.in app/core/gimpbrushpipe.c app/gui/about-dialog.c
2002-11-20  Dave Neary  <bolsh@gimp.org>

        * configure.in
        * app/core/gimpbrushpipe.c
        * app/gui/about-dialog.c
        * app/paint-funcs/paint-funcs-generic.h
        * app/paint-funcs/paint-funcs.c
        * libgimpmath/gimpmath.h
        * libgimpwidgets/gimpwidgets.c
        * plug-ins/common/CML_explorer.c
        * plug-ins/common/blur.c
        * plug-ins/common/cubism.c
        * plug-ins/common/gee.c
        * plug-ins/common/gee_zoom.c
        * plug-ins/common/gqbist.c
        * plug-ins/common/jigsaw.c
        * plug-ins/common/lic.c
        * plug-ins/common/noisify.c
        * plug-ins/common/nova.c
        * plug-ins/common/papertile.c
        * plug-ins/common/plasma.c
        * plug-ins/common/randomize.c
        * plug-ins/common/sample_colorize.c
        * plug-ins/common/scatter_hsv.c
        * plug-ins/common/shift.c
        * plug-ins/common/sinus.c
        * plug-ins/common/smooth_palette.c
        * plug-ins/common/snoise.c
        * plug-ins/common/sparkle.c
        * plug-ins/common/spheredesigner.c
        * plug-ins/common/spread.c
        * plug-ins/common/warp.c
        * plug-ins/common/wind.c
        * plug-ins/flame/cmap.c
        * plug-ins/flame/flame.c
        * plug-ins/flame/libifs.c
        * plug-ins/gflare/gflare.c
        * plug-ins/gimpressionist/gimpressionist.c
        * plug-ins/gimpressionist/gimpressionist.h
        * plug-ins/gimpressionist/plasma.c
        * plug-ins/gimpressionist/repaint.c
        * plug-ins/ifscompose/ifscompose_utils.c
        * plug-ins/maze/algorithms.c
        * plug-ins/maze/maze.c
        * plug-ins/maze/maze.h
        * plug-ins/mosaic/mosaic.c: Change all occurrences of RAND_MAX,
        G_MAXRAND, rand(), srand(), lrand48(), srand48(), random(),
        srandom(), RAND_FUNC and SRAND_FUNC to the appropriate g_rand*
        equivalent. Programs which require seed setting for reproducible
        results, and anything in the core, gets a dedicated GRand * for
        the lifetime required. Programs which only ever used random
        numbers for tossing a coin, rolling a dice, etc use g_random
        functions. For the rest, judgement was used. Where it was easy, a
        GRand * object was used and g_rand_* functions were
        preferred. This fixes bug #67386 in HEAD.
2002-11-20 09:27:48 +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
Michael Natterer 009e834994 removed the "feature" of creating dialogs without action area by passing
2002-11-18  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpdialog.c: removed the "feature" of creating
	dialogs without action area by passing "_delete_event_" as button
	text. Also changed the delete_event() implementation: don't
	remember a callback and call it manually but gtk_widget_activate()
	the button for which "connect_delete" was passed as TRUE.

	* app/gui/test-commands.c: added a "Close" button to the multi view.

	* app/gui/brush-select.[ch]
	* app/gui/gradient-select.[ch]
	* app/gui/palette-select.[ch]
	* app/gui/pattern-select.[ch]: ditto. Removed the "context"
	parameter of the *_select_new() functions. All sorts of cleanups
	in all dialogs.

	* app/gui/convert-dialog.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/pattern_select.pdb: changed accordingly.

	* app/pdb/brush_select_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/palette_select_cmds.c
	* app/pdb/pattern_select_cmds.c: regenerated.
2002-11-18 00:04:16 +00:00
Michael Natterer 7e8a0d7194 removed the non-dialog variant (all color notebooks have "Cancel" and "OK"
2002-11-17  Michael Natterer  <mitch@gimp.org>

	* app/gui/color-notebook.c (color_notebook_new_internal): removed
	the non-dialog variant (all color notebooks have "Cancel" and "OK"
	buttons again). We have the color dockable which can be always
	open now and don't need this hack any more.
2002-11-17 19:59:18 +00:00
Michael Natterer 7ee99ea3a3 Transform tool cleanup:
2002-11-14  Michael Natterer  <mitch@gimp.org>

	Transform tool cleanup:

	* libgimptool/gimptoolenums.[ch]: removed the TransformState enum.

	* app/tools/gimptransformtool.[ch]: don't dispatch everything
	through the transform() virtual function. Added new vitrual
	functions dialog(), prepare(), motion() and recalc(). Do only the
	actual transform in transform(). Moved lots of logic which was
	duplicated in each subclass' transform() here. Cleanup.

	* app/tools/gimpfliptool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c: changed accordingly: moved code from
	transform() to the other method imlementations. Removed duplicated
	logic which is now done by our parent class. Makes everything
	smaller and more readable.

	InfoDialog cleanup:

	* app/gui/info-dialog.c: removed the "delete_event" callback so
	InfoDialog users can decide themselves what to do.

	* app/gui/info-window.c
	* app/tools/gimpmeasuretool.c: changed accordingly.

	* app/tools/gimpcolorpickertool.c: ditto. Moved info_dialog
	creation to a utility function to improve code readbility.

	* app/tools/gimpcroptool.c: ditto. Added a "Cancel" button which
	really cancels the tool instead of just hiding the dialog.

	* app/tools/gimptransformtool.c: added a "Cancel" button here too.
2002-11-14 11:54:57 +00:00
Michael Natterer 1f3bd28832 removed the old hack which sets tool->gdisp. Fixes bug #98056.
2002-11-14  Michael Natterer  <mitch@gimp.org>

	* app/gui/tools-commands.c (tools_select_cmd_callback): removed
	the old hack which sets tool->gdisp. Fixes bug #98056.

	* app/tools/gimpimagemaptool.c (gimp_image_map_tool_initialize):
	set tool->gdisp here because the hack was there for tools which
	implement initialize() and show dialogs when selected from the
	menu. Also fixed wrong paramater to gimp_viewable_dialog_new().
2002-11-14 11:08:40 +00:00
Michael Natterer d932f87c8c use GTK_STOCK_REMOVE for "<Dialogs>/Remove Tab".
2002-11-12  Michael Natterer  <mitch@gimp.org>

	* app/gui/menus.c: use GTK_STOCK_REMOVE for "<Dialogs>/Remove Tab".
2002-11-12 14:31:45 +00:00
Manish Singh 2eef2afbc1 don't say "Now type 'make'" if configure failed.
2002-11-11  Manish Singh  <yosh@gimp.org>

        * autogen.sh: don't say "Now type 'make'" if configure failed.

        * app/core/Makefile.am
        * app/core/core-types.h
        * app/core/gimpenvirontable.[ch]: Implemented GimpEnvironTable,
        keeps an envp array built from system environment and *.env files.

        * app/core/gimp.[ch]: keep a GimpEnvironTable around.

        * app/gimprc.c
        * app/config/gimpcoreconfig.[ch]
        * app/core/gimpcoreconfig.h
        * app/gui/preferences-dialog.c
        * app/gui/user-install-dialog.c: environ-path config stuff

        * themes/Default/images/preferences/Makefile.am
        * themes/Default/images/preferences/folder-environ.png: just copied
        folder.png here, need a better one.

        * app/plug-in/plug-in.c: quick hack to use the envp in the
        GimpEnvironTable. Only on unix now, should really port the
        code to use g_spawn_*.

        * data/misc/user_install
        * etc/gimprc.in: add environ-path stuff

        * data/environ/Makefile: creates system environ directory.

        * data/environ/default.env: sample env file info.

        * data/Makefile.am
        * configure.in: added data/environ dir

        * plug-ins/pygimp/Makefile.am: python module files get put in
        $(gimpplugindir)/python now, install pygimp.env to point to it.

        * plug-ins/pygimp/doc/Makefile.am: minor clean up.
2002-11-12 03:34:11 +00:00
Sven Neumann 2ef9706b1d don't say we'd use MMX if it is disabled.
2002-11-06  Sven Neumann  <sven@gimp.org>

	* app/base/base.c (base_init): don't say we'd use MMX if it is
	disabled.

	* libgimpmodule/gimpmodule.[ch]
	* app/gui/module-browser.c: changed enum values and user-visible
	strings to saner values.

	* libgimpmodule/gimpmoduledb.c
	* plug-ins/tools/tool-safe-mode.c: made them less verbose.
2002-11-06 13:56:37 +00:00
Sven Neumann 63fb9cc82a fixed stupid bug that caused this plug-in to map to undefined values.
2002-11-05  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/mapcolor.c: fixed stupid bug that caused this
	plug-in to map to undefined values. Spotted by David Necas (#97780).

	* tools/authorsgen/contributors: added some names.

	* AUTHORS
	* app/gui/authors.h: regenerated.
2002-11-05 23:01:04 +00:00
Michael Natterer 2743f9fae1 added virtual functions set_toggles_visible() and set_toggles_sensitive().
2002-11-05  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolorselector.[ch]: added virtual functions
	set_toggles_visible() and set_toggles_sensitive(). Added a
	stock_id. Emit "color_changed" and "channel_changed" on
	set_color() and set_channel() resp.

	* libgimpwidgets/gimpcolornotebook.[ch]: implement the new
	methods.  Added gimp_color_notebook_set_has_page() to control
	which selectors a notebook contains.

	* libgimpwidgets/gimpcolorscales.[ch]: removed the toggle
	API and implement the new methods.

	* libgimpwidgets/gimpcolorselect.c: added toggle buttons for the
	channels so the widget doesn't need external ones.

	* app/gui/color-notebook.c: changed accordingly.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-color-triangle-16.png: added a
	(bad) icon for the triangle color selector.

	* modules/colorsel_triangle.c: use the new icon.
	* modules/colorsel_water.c: use the "Paintbrush" icon for now.

	* app/widgets/gimpcoloreditor.[ch]: new widget for editing the
	FG/BG color featuring a color notebook, stock buttons for
	selecting the pages and a GimpPickButton.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h: changed accordingly.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: added a dockable wrapper for GimpColorEditor.

	* app/gui/menus.c: added it to the menus. Also added separate
	Layers, Channels and Paths entries. Bind <ctrl>L to the new
	callback so it doesn't always create a new layers dialog.
2002-11-05 00:02:56 +00:00
Michael Natterer 94f8431fdd added "gimage" and "uri" parameters to file_open_dialog_show(). If an
2002-11-01  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-open-dialog.[ch]: added "gimage" and "uri"
	parameters to file_open_dialog_show(). If an image is passed, go
	to that image's directory, for an uri, preselect the file.
	Fixes bug #96779.

	* app/gui/menus.c: pass "action" to file_open_cmd_callback() so we
	can distinguish if it was invoked from the toolbox or an image.

	* app/gui/file-commands.[ch]: if invoked from an image, pass it to
	file_open_dialog_show().

	* app/widgets/gimpdocumentview.c: pass the selected document's uri
	to file_open_dialog_show().

	* app/gui/file-save-dialog.c: use gimp_image_get_filename()
	instead of fiddling with the image's uri manually.
2002-11-01 16:20:13 +00:00
Sven Neumann 8f9d5942c1 make the dialog a "normal" window if it is created w/o an action area
2002-10-31  Sven Neumann  <sven@gimp.org>

	* app/gui/color-notebook.c: make the dialog a "normal" window if
	it is created w/o an action area (#97364).

	* plug-ins/Lighting/lighting_preview.c: removed use of deprecated
	GDK functions.
2002-10-31 22:36:46 +00:00
Sven Neumann 82bc82e13f don't add "Options" to the tools name when setting the dockbook tab label.
2002-10-31  Sven Neumann  <sven@gimp.org>

	* app/gui/dialogs-constructors.c: don't add "Options" to the
	tools name when setting the dockbook tab label.
2002-10-31 19:40:32 +00:00
Sven Neumann 569875f103 removed the white and black color buttons since white and black are
2002-10-31  Sven Neumann  <sven@gimp.org>

	* app/gui/color-notebook.c: removed the white and black color
	buttons since white and black are trivial to select anyway.
2002-10-31 13:55:49 +00:00
Michael Natterer c97782f358 made the color notebook a GimpColorSelector subclass so they have the same
2002-10-29  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolornotebook.[ch]: made the color notebook
	a GimpColorSelector subclass so they have the same API.

	* app/gui/color-notebook.c: changed accordingly.
2002-10-29 12:49:02 +00:00
Michael Natterer 8945226142 the color scales from the main color selection as GimpColorSelector
2002-10-28  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolorscales.[ch]: the color scales from
	the main color selection as GimpColorSelector subclass.

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetsmarshal.list
	* libgimpwidgets/gimpwidgetstypes.h: changed accordingly.

	* libgimpwidgets/gimpcolornotebook.c: skip it when iterating the
	GimpColorSelector subclasses.

	* libgimpwidgets/gimpcolorselector.[ch]: added virtual function
	set_has_alpha() amd signal "channel_changed". Put RGB, HSV and
	channel values into to the GimpColorSelector struct where they are
	available for subclasses.

	* libgimpwidgets/gimpcolorselect.[ch]
	* modules/colorsel_triangle.c
	* modules/colorsel_water.c: changed accordingly, cleanup.

	* app/gui/color-notebook.[ch]: use the new GimpColorScales widget,
	lots of cleanup.

2002-10-28  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/tmpl/gimpcolorscales.sgml: added GimpColorScales.

	* libgimpwidgets/libgimpwidgets-docs.sgml
	* libgimpwidgets/libgimpwidgets-sections.txt
	* libgimpwidgets/libgimpwidgets.types
	* libgimpwidgets/tmpl/gimpcolorselect.sgml
	* libgimpwidgets/tmpl/gimpcolorselector.sgml; updated.
2002-10-28 20:13:17 +00:00
Michael Natterer 5f750eae3c the notebook as known from the main color selection as new widget.
2002-10-28  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolornotebook.[ch]: the notebook as known
	from the main color selection as new widget.

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpcolorselector.h
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h: changed accordingly.

	* app/gui/color-notebook.c: use the new widget.

2002-10-28  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/tmpl/gimpcolornotebook.sgml: added GimpColorNotebook.

	* libgimpwidgets/libgimpwidgets-docs.sgml
	* libgimpwidgets/libgimpwidgets-sections.txt
	* libgimpwidgets/libgimpwidgets.types
	* libgimpwidgets/tmpl/gimpcolordisplay.sgml: updated.
2002-10-28 13:19:02 +00:00
Michael Natterer b5d27fc4ac app/display/gimpdisplayshell.c app/gui/about-dialog.c
2002-10-25  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c
	* app/gui/about-dialog.c
	* app/gui/convert-dialog.c
	* app/gui/dialogs-commands.c
	* app/gui/file-commands.c
	* app/gui/palette-import-dialog.c
	* app/tools/gimptexttool.c
	* app/widgets/gimpdialogfactory.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpwidgets-utils.c
	* libgimpwidgets/gimpfileselection.c
	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/FractalExplorer/FractalExplorer.c
	* plug-ins/common/AlienMap.c
	* plug-ins/common/AlienMap2.c
	* plug-ins/common/spheredesigner.c
	* plug-ins/flame/flame.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gimpressionist/general.c
	* plug-ins/gimpressionist/gimpressionist.c: replaced all sorts of
	gtk_widget_show()/gdk_window_rise() combinations by
	gtk_window_present().
2002-10-25 01:11:24 +00:00
Michael Natterer ed3067f71a app/gui/Makefile.am new files implementing the color history which used to
2002-10-25  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/color-history.[ch]: new files implementing the color
	history which used to live in color-notebook.*

	* app/gui/color-notebook.[ch]
	* app/gui/session.c: changed accordingly.
2002-10-24 23:10:50 +00:00
Michael Natterer c7ac6aff52 Moved generic datafile loading to LibGimpBase:
2002-10-23  Michael Natterer  <mitch@gimp.org>

	Moved generic datafile loading to LibGimpBase:

	* app/core/gimpdatafiles.[ch]: removed...

	* libgimpbase/gimpdatafiles.[ch]: ...and add here with a changed
	API which requires no more global variables.

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbase.h
	* libgimpbase/gimpbasetypes.h
	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpdatafactory.c
	* app/gui/gui.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c
	* app/tools/tools.c: changed accordingly.

	Moved module loading to LibGimpModule:

	* app/core/gimpmodules.c: removed lots of code...

	* libgimpmodule/gimpmoduledb.[ch]: ...and added it here as
	GimpModuleDB object.

	* libgimpmodule/Makefile.am
	* libgimpmodule/gimpmoduletypes.h: changed accordingly.

	* app/core/gimp.[ch]: replaced gimp->modules by gimp->module_db.

	* libgimpmodule/gimpmodule.[ch]: added
	gimp_module_query(). Internal cleanup. Stuff...

	* app/gui/module-browser.c: changed accordingly. Unfinished...

	* app/core/gimpcontainer.c
	* app/core/gimplist.c: reverted the HACKS introduced recently.

	* app/core/gimpobject.[ch]: added gimp_g_object_get_memsize()
	utility function.

	* libgimpproxy/gimpobject.[ch]: regenerated.

	Changed display filter configuration stuff:

	* libgimpwidgets/gimpcolordisplay.[ch]: made the virtual
	configure() function return a GtkWidget instead of opening a
	dialog. Changed configure_cancel() to configure_reset(). Added
	"changed" signal.

	* app/display/gimpdisplayshell-filter-dialog.c: embed the filters'
	config GUI in the dialog. Connect to "changed" and added a "Reset"
	button which resets the filter.

	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c: changed accordingly.

	* modules/colorsel_triangle.c
	* modules/colorsel_water.c: minor fixes.

2002-10-23  Michael Natterer  <mitch@gimp.org>

	* libgimpbase/libgimpbase-docs.sgml
	* libgimpbase/libgimpbase-sections.txt
	* libgimpbase/tmpl/gimpbasetypes.sgml
	* libgimpbase/tmpl/gimpdatafiles.sgml: added GimpDatafiles

	* libgimpmodule/libgimpmodule-docs.sgml
	* libgimpmodule/libgimpmodule-sections.txt
	* libgimpmodule/tmpl/gimpmoduledb.sgml: added GimpModuleDB.

	* libgimpwidgets/libgimpwidgets.types: added gimp_dialog_get_type

	* libgimpmodule/tmpl/gimpmodule.sgml
	* libgimpwidgets/tmpl/gimpcolordisplay.sgml
	* libgimpwidgets/tmpl/gimpdialog.sgml: updated.
2002-10-23 14:55:07 +00:00
Sven Neumann 5f5e05a805 don't free the OffsetDialog structure twice. Fixes bug #96520.
2002-10-22  Sven Neumann  <sven@gimp.org>

	* app/gui/offset-dialog.c (offset_ok_callback): don't free the
	OffsetDialog structure twice. Fixes bug #96520.
2002-10-22 19:34:02 +00:00
Michael Natterer 0f77b4228f Makefile.am libgimpmodule/.cvsignore libgimpmodule/Makefile.am
2002-10-21  Michael Natterer  <mitch@gimp.org>

	* Makefile.am
	* libgimpmodule/.cvsignore
	* libgimpmodule/Makefile.am
	* libgimpmodule/gimpmodule.[ch]
	* libgimpmodule/gimpmodule.def
	* libgimpmodule/gimpmoduletypes.h
	* libgimpmodule/makefile.msc: new library for module loading.

	* configure.in: generate Makefiles for libgimpmodule and its
	devel-docs. Added GMODULE_CFLAGS and GMODULE_LIBS.

	* app/Makefile.am: link the app against it.

	* libgimp/gimpmodule.h
	* app/core/gimpmoduleinfo.[ch]: removed.

	* libgimp/Makefile.am
	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpmodules.c
	* app/gui/module-browser.c: changed accordingly.

	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c
	* modules/colorsel_triangle.c
	* modules/colorsel_water.c: #include "libgimpmodule/gimpmodule.h"

2002-10-21  Michael Natterer  <mitch@gimp.org>

	* Makefile.am
	* libgimpmodule/.cvsignore
	* libgimpmodule/Makefile.am
	* libgimpmodule/libgimpmodule-docs.sgml
	* libgimpmodule/libgimpmodule-sections.txt
	* libgimpmodule/libgimpmodule.types
	* libgimpmodule/tmpl/.cvsignore
	* libgimpmodule/tmpl/gimpmodule.sgml
	* libgimpmodule/tmpl/gimpmoduletypes.sgml: added API docs for the
	new module loading lib.

	* libgimp/tmpl/gimpmodule.sgml: removed.

	* libgimp/libgimp-docs.sgml
	* libgimp/libgimp-sections.txt: changed accordingly.

	* libgimpwidgets/tmpl/gimpcolordisplay.sgml
	* libgimpwidgets/tmpl/gimpcolorselect.sgml
	* libgimpwidgets/tmpl/gimpcolorselector.sgml: updated.

2002-10-21  Michael Natterer  <mitch@gimp.org>

	* POTFILES.in: removed app/core/gimpmoduleinfo.c

2002-10-21  Michael Natterer  <mitch@gimp.org>

	* POTFILES.in: added libgimpmodule/gimpmodule.c
2002-10-21 14:15:02 +00:00
Michael Natterer 4cb04533e4 app/core/gimpmoduleinfo.[ch] separated module query from type registration
2002-10-20  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpmoduleinfo.[ch]
	* libgimp/gimpmodule.h: separated module query from type
	registration by adding a separate "gimp_module_query" function
	which must be implemented by modules. Make local copies of the
	strings returned by the query function.

	* app/core/gimpmodules.c
	* app/gui/module-browser.c: changed accordingly.

	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c
	* modules/colorsel_triangle.c
	* modules/colorsel_water.c: added the gimp_module_query() functions.
2002-10-20 12:40:30 +00:00
Michael Natterer d7055a3351 Ported module loading to GTypeModule, getting rid of all own module
2002-10-20  Michael Natterer  <mitch@gimp.org>

	Ported module loading to GTypeModule, getting rid of all own
	module registering/bookkeeping stuff for color selectors and
	display filters. The modules now simply register GimpColorSelector
	and GimpColorDisplay subclasses, the list of registered subclasses
	can then be obtained calling g_type_children() on the abstract
	base classes.

	This is work in progress and just the first working state after I
	started breaking everything...

	* app/gui/color-select.[ch]
	* libgimp/gimpcolordisplay.h
	* libgimp/gimpcolorselector.h: removed.

	* app/gui/Makefile.am
	* libgimp/Makefile.am: changed accordingly.

	* libgimp/gimpmodule.h: massively simplified. All voodoo is gone.

	* libgimpwidgets/gimpcolordisplay.[ch]
	* libgimpwidgets/gimpcolorselector.[ch]: new abstract base classes
	which need to be subclassed by modules.

	* libgimpwidgets/gimpcolorselect.[ch]: the built-in color selector
	from app/gui/color-select.* ported to be a GimpColorSelector
	subclass.

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetsmarshal.list
	* libgimpwidgets/gimpwidgetstypes.h: changed accordingly.

	* app/core/gimpmoduleinfo.[ch]: made it a GTypeModule subclass

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

	* app/core/gimpcontainer.c
	* app/core/gimplist.c: HACKED around to allow GimpLists of
	GObjects (not GimpObjects). This is EEKy, so I will either make
	gimp->modules a simple GList and revert this bit of change, or
	allow GObjects all over the place in GimpContainer land...

	* app/display/gimpdisplayshell-filter.[ch]
	* app/gui/color-notebook.c: removed all module stuff and use
	g_type_children() to get the list of available color_selectors
	and display_filters.

	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-render.c
	* app/gui/module-browser.c: changed accordingly.

	* app/gui/gui.c: ref the built-in color selector's class before
	the modules are queried so it appears first in the list of
	GimpColorSelector's children.

	* modules/Makefile.am: build the water color selector again.

	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c
	* modules/colorsel_triangle.c
	* modules/colorsel_water.c: ported them all to the new API.

	* modules/gimpmodregister.[ch]: removed the old EMX module hack.
2002-10-20 10:14:17 +00:00
Michael Natterer f2dbfa1291 app/gui/dialogs-constructors.c fixed warnings by casting/bracketting
2002-10-17  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs-constructors.c
	* app/widgets/gimptoolbox.c: fixed warnings by casting/bracketting
	properly.
2002-10-17 14:31:24 +00:00
Sven Neumann eb036a7b2d draw the tool icons in dockbook tabs using GtkImages, not using
2002-10-15  Sven Neumann  <sven@gimp.org>

	* app/gui/dialogs-constructors.c: draw the tool icons in dockbook
	tabs using GtkImages, not using GimpPreviews.

	* app/widgets/gimptoolbox.c: added a "button_relief" style property
	to GimpToolbox and changed the default style to GTK_RELIEF_NONE.

	* themes/Default/gtkrc: document how to set the style here.
2002-10-15 19:07:06 +00:00
Michael Natterer 04cef20b58 s/"new_import"/"New Import"/.
2002-10-10  Michael Natterer  <mitch@gimp.org>

	* app/gui/palette-import-dialog.c: s/"new_import"/"New Import"/.
2002-10-10 14:50:54 +00:00
Michael Natterer 0c586b3044 adjust the cell_size of the preview dynamically (makes them look nicer).
2002-10-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimppalette.c (gimp_palette_get_new_preview): adjust
	the cell_size of the preview dynamically (makes them look nicer).

	* app/core/gimppalette-import.c: require n_colors to be at least
	2, not 1. Cleanup.

	* app/gui/palette-import-dialog.c: completely chopped and
	re-assembled source and GUI. Please have a look and comment...
2002-10-09 14:04:25 +00:00
Michael Natterer 0ab91f9413 some shortcut changes: Ctrl+Shift+S is now "File/Save as...", not
2002-10-09  Michael Natterer  <mitch@gimp.org>

	* app/gui/menus.c: some shortcut changes: Ctrl+Shift+S is now
	"File/Save as...", not "View/Toggle Statusbar" (HIG compliance).
	Removed Ctrl+Shift+B from "Select/Border..." because it is already
	taken by "Dialogs/Brushes...". Set the shortcut to "" instead of
	NULL whenever we abuse GTK_STOCK_NEW, so the menu item doesn't get
	the Ctrl+N shortcut (will need separate stock icons for these menu
	items).
2002-10-09 13:42:12 +00:00
Michael Natterer 80357a00c0 added a "const gchar *textdomain" parameter so g_object_[set|get]_data()
2002-09-25  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpitemfactory.[ch] (gimp_item_factory_create_item):
	added a "const gchar *textdomain" parameter so
	g_object_[set|get]_data() hacks needed for translation are private
	stuff of GimpItemFactory. Use more qdata instead of just data,
	minor cleanup.

	* app/gui/plug-in-menus.c: pass the textdomain as paramater
	instead of g_object_setting it on the item_factory.

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/menus.c: pass NULL as textdomain.
2002-09-25 10:39:41 +00:00
Michael Natterer faeee02752 escape underscores in plug-in menu entries so they don't end up as
2002-09-23  Michael Natterer  <mitch@gimp.org>

	* app/gui/plug-in-menus.c: escape underscores in plug-in menu
	entries so they don't end up as mnemonics.
2002-09-23 09:48:52 +00:00
Sven Neumann 8777d5b827 use PangoAttributes instead of PangoMarkup.
2002-09-17  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewabledialog.c: use PangoAttributes instead of
	PangoMarkup.

	* app/gui/preferences-dialog.c: adapt to the look of the
	GimpViewableDialog.
2002-09-17 13:10:56 +00:00
Sven Neumann 8ccbf199a8 app/gui/file-new-dialog.c app/gui/preferences-dialog.c
2002-09-17  Sven Neumann  <sven@gimp.org>

	* app/gui/file-new-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpimagemaptool.c
	* app/widgets/gimpfontselection-dialog.c: place the Cancel button
	next to the confirmative button as suggested by the HIG.
2002-09-17 11:55:04 +00:00
Michael Natterer 57d3fff345 app/widgets/gimpdocumentview.[ch] app/gui/documents-commands.[ch] changed
2002-09-12  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdocumentview.[ch]
	* app/gui/documents-commands.[ch]
	* app/gui/menus.c: changed icon/variables/functions to say
	"Remove" instead of "Delete" because "Delete" is misleading (we
	don't delete the file but just remove the entry from the document
	history).
2002-09-12 17:34:43 +00:00
Michael Natterer 5dc2b347d2 app/widgets/gimplayerlistview.c some more auto-sizing spinbuttons.
2002-09-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimplayerlistview.c
	* app/gui/channels-commands.c: some more auto-sizing spinbuttons.

	* app/gui/offset-dialog.c: added mnemonics for "X" and "Y".

	Dialog auto-hide cleanup:

	* app/widgets/gimpviewabledialog.c: close the dialog when the
	GimpViewable goes away (special cased GimpItems which become
	invisible on "removed"). Close the dialog by syntesizing a
	"delete_event" instead of simply hiding or destroying it so the
	closing method of the dialog's user gets invoked.

	* app/gui/resize-dialog.[ch]: don't do the same here. Simplifies
	the API even more as we don't have to pass the object to watch any
	more.

	* app/gui/image-commands.c
	* app/gui/layers-commands.c: changed accordingly.

	* app/undo_history.c
	* app/gui/convert-dialog.c
	* app/gui/qmask-commands.c
	* app/gui/vectors-commands.c: removed all dialog auto-hiding which
	is now done by GimpViewableDialog. Also connect more close
	callbacks to gtk_widget_destroy() and handle shell destruction
	accordingly, so these pseudo widgets behave more like real ones.

	Tool-dialog auto-hide fix:

	* app/tools/tool_manager.c: never call a tool's initialize()
	method with a NULL gdisp (I can't follow why we did this before
	because it's conceptually broken and makes the semantics of
	initialize() more than unclear).
	To be sure, added g_return_if_fail(GIMP_IS_DISPLAY(gdisp)) to
	tool_manager_initialize_active().

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: removed the recently added code
	for handling NULL displays in initialize().
2002-09-08 12:18:23 +00:00
Michael Natterer 18626a64de set the hex entry to 7 chars instead the whole width of the vbox. Added
2002-09-08  Michael Natterer  <mitch@gimp.org>

	* app/gui/color-notebook.[ch]: set the hex entry to 7 chars instead
	the whole width of the vbox. Added color_notebook_set_title().

	* app/widgets/gimptoolbox-color-area.c: use the new function to
	set the color selection's title to either "Change Foreground
	Color" or "Change Background Color" instead of just "Color
	Selection".
2002-09-08 09:26:45 +00:00
Michael Natterer 991a7e5b5e app/gui/file-new-dialog.c app/gui/offset-dialog.c
2002-09-07  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-new-dialog.c
	* app/gui/offset-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/resolution-calibrate-dialog.c
	* app/gui/user-install-dialog.c: replaced some more pixel sizes by
	char sizes. Tweaked table spacings. Mnemonics.

	* app/gui/info-dialog.[ch]: internal cleanup.

	* app/gui/resize-dialog.[ch]: same here. Removed the "cancel_cb"
	from the API and simply destroy the dialog on "Cancel". Makes the
	dialog construction less weird.

	* app/gui/image-commands.c
	* app/gui/layers-commands.c: changed accordingly. Same cleanups
	as above.
2002-09-07 16:47:39 +00:00
Hans Breuer e17baf71d6 updated
2002-09-06  Hans Breuer  <hans@breuer.org>

	* */*/makefile.msc : updated

	* libgimptool/makefile.msc : new file, libgimptool
	is currently build as static lib due to references
	into app/core

	* themes/Default/makefile.msc : removed
	* themes/Default/images/makefile.msc : new file

	* libgimpwidgets/makefile.msc libgimpwidgets/gimpwidgets.c
	updated (externals)

	* app/paint-funcs.c : replaced gccism varibale size array on
	stack with portable alloca, removed sizeof(buf) check which
	must fail now.

	* app/config/gimpconfig.c : get write/close protos
	on win32 from io.h
	* app/config/gimprc.c : dito and <string.h>
	* app/config/gimpscanner.c : <string.h> only

	* app/core/gimpcontainer.c : workaround for clumsy
	compilers not supporting vararg macros

	* app/core/gimpdocumentlist.c app/core/gimpparasitelist.c
	include <io.h> on win32

	* app/widgets/gimpdocumentview.c
	  app/widgets/gimpimagedock.c
	  app/widgets/gimppreview.c : add #ifdef __GNUC__
	to avoid breaking on non standard pragma #warning.

	* app/gui/session.c : include <string.h>

	* regexrepl/makefile.msc : build as dll

	* plug-ins/makefile.msc : updated

	* plug-ins/common/pix.c : open file binary

	* plug-ins/common/spheredesigner.c : avoid error
	'incompatible types' while assigning, use memcpy()
2002-09-06 22:25:19 +00:00
Michael Natterer 424ed1f480 changed "Number of Colors" to "Max Number of Colors" to clarify what this
2002-09-06  Michael Natterer  <mitch@gimp.org>

	* app/gui/convert-dialog.c: changed "Number of Colors" to
	"Max Number of Colors" to clarify what this parameter does.
	(fixes #92194).

	* app/gui/menus.c: use GIMP_STOCK_INFO for "View/Info Window".

	Specify spibutton sizes in chars, not pixels (eek) all over
	the place. Also removed explicit sizes where the GtkSpinButton
	default size does not disturbe tabular widget layouts.

	* libgimpwidgets/gimpwidgets.c: removed the hardcoded width of 75
	pixels in gimp_spin_button_new(). Changed gimp_scale_entry_new()
	and gimp_coordinates_new() to interpret their "spinbutton_width"
	parameters as chars if < 16, and as pixels otherwise. This gives
	reasonable results and doesn't cause unchanged plug-ins to
	suddenly have spinbuttons of dozens of chars width :)

	* libgimpwidgets/gimpsizeentry.c: added the same heuristic here.

	* libgimpwidgets/gimpquerybox.c
	* app/gui/color-notebook.c
	* app/gui/convert-dialog.c
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/paint_options.c
	* app/tools/selection_options.c
	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimppaletteeditor.c: changed accordingly.

	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/FractalExplorer/FractalExplorer.c
	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/common/AlienMap.c
	* plug-ins/common/AlienMap2.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/checkerboard.c
	* plug-ins/common/cubism.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/depthmerge.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/diffraction.c
	* plug-ins/common/emboss.c
	* plug-ins/common/film.c
	* plug-ins/common/flarefx.c
	* plug-ins/common/fractaltrace.c
	* plug-ins/common/gauss_iir.c
	* plug-ins/common/gauss_rle.c
	* plug-ins/common/glasstile.c
	* plug-ins/common/grid.c
	* plug-ins/common/illusion.c
	* plug-ins/common/iwarp.c
	* plug-ins/common/jigsaw.c
	* plug-ins/common/lic.c
	* plug-ins/common/max_rgb.c
	* plug-ins/common/mblur.c
	* plug-ins/common/newsprint.c
	* plug-ins/common/nova.c
	* plug-ins/common/pixelize.c
	* plug-ins/common/sample_colorize.c
	* plug-ins/common/scatter_hsv.c
	* plug-ins/common/shift.c
	* plug-ins/common/sinus.c
	* plug-ins/common/sparkle.c
	* plug-ins/common/spread.c
	* plug-ins/common/tile.c
	* plug-ins/common/tileit.c
	* plug-ins/common/unsharp.c
	* plug-ins/common/vpropagate.c
	* plug-ins/common/waves.c
	* plug-ins/common/whirlpinch.c
	* plug-ins/gflare/gflare.c
	* plug-ins/mosaic/mosaic.c
	* plug-ins/rcm/rcm_dialog.c: changed accordingly, which involves
	removals of gtk_widget_set_size_request(spinbutton), removal of
	lots of explicit spinbutton sizes in gimp_scale_entry_new(), and
	adding of new ones because GtkSpinButton's auto-size trashed
	tabular layouts.

	Lots of cleanup & indentation while browsing the plug-ins'
	code. Changed spacings, moved toggle buttons into frame titles,
	use stock items, stuff...
2002-09-06 20:44:47 +00:00
Michael Natterer 53930815e1 app/gui/color-select.c app/widgets/gimpselectioneditor.c removed some
2002-09-04  Michael Natterer  <mitch@gimp.org>

	* app/gui/color-select.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox.c: removed some leftover GtkTargetEntry
	arrays.
2002-09-04 13:35:03 +00:00
Michael Natterer c5d4b7020b DND cleanup part 1:
2002-09-02  Michael Natterer  <mitch@gimp.org>

	DND cleanup part 1:

	* app/widgets/gimpdnd.[ch]: changed all gimp_dnd_*_dest_set() and
	_unset() functions to _dest_add() and _dest_remove(). Switch from
	using static arrays of GtkTargetEntries to dynamic GtkTargetLists.
	The _add() and _remove() functions configure the drag dest
	automatically if not already done, so there is no need to call
	gtk_drag_dest_set() on the widget any more. Drag source cleanup
	will follow...

	Renamed silly function names gimp_gtk_* to gimp_dnd_*

	* app/display/gimpdisplayshell.c
	* app/tools/gimpblendtool.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimplistitem.c
	* app/widgets/gimpmenuitem.c
	* app/widgets/gimppreview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox-color-area.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptoolbox.c
	* app/gui/about-dialog.c
	* app/gui/color-select.c
	* app/gui/device-status-dialog.c
	* app/gui/tool-options-dialog.c: changed accordingly. Removed
	all calls to gtk_drag_dest_set() and their GtkTargetEntry tables.

	* app/widgets/gimpchannellistitem.c: enabled some commented out
	dnd code (which will not work since dnd needs more love...)

	* app/widgets/gimpitemlistview.[ch]: added a third
	"gboolean interactive" parameter to GimpItemNewFunc.

	* app/gui/channels-commands.[ch]
	* app/gui/layers-commands.[ch]
	* app/gui/vectors-commands.[ch]: if the new_item_func is called
	with "interactive == FALSE", don't pop up a dialog but silently
	create a new item of the image's size.

	* app/widgets/gimpdrawablelistview.c: use the new feature to allow
	color and pattern drops to the "New" button, which creates a new
	layer/channel filled with the color/pattern.
	(special feature for drc ;-)

	* app/widgets/gimppaletteeditor.c: fixed event handling so we see
	the context menu again. Also, don't redraw on "expose", since
	GtkPreview does that for us.
2002-09-02 14:39:08 +00:00
Michael Natterer ca0784570d don't display Alpha twice, more cleanup.
2002-09-02  Michael Natterer  <mitch@gimp.org>

	* app/gui/info-window.c: don't display Alpha twice, more cleanup.
2002-09-02 13:53:04 +00:00
Michael Natterer ce956702e5 GimpViewableDialogs everywhere, cleanup:
2002-09-01  Michael Natterer  <mitch@gimp.org>

	GimpViewableDialogs everywhere, cleanup:

	* libgimpwidgets/gimpstock.c: added texts for the RESIZE, SCALE
	and CROP stock items.

	* app/widgets/gimpviewabledialog.c: update the title when the
	viewable's name changes.

	* app/gui/color-notebook.[ch]: added color_notebook_viewable_new()
	which creates a GimpViewableDialog.

	* app/widgets/gimpgradienteditor.[ch]
	* app/gui/colormap-editor-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/gradient-editor-commands.c
	* app/gui/palette-editor-commands.c
	* app/undo_history.c: use GimpViewableDialogs and the new
	color_notebook constructor.

	* app/gui/convert-dialog.c: #include "widgets/gimpviewabledialog.h"

	* app/gui/image-commands.c
	* app/gui/info-dialog.c
	* app/gui/resize-dialog.c: minor cleanups.

	* app/gui/info-window.c: cleaned up the whole thing, esp. the
	"Extended" page. Added HSV color display to the color picker
	frame.  Set the icons as frame titles, stuff...

	* app/tools/gimpimagemaptool.[ch]: removed "shell_title",
	"shell_name" and "stock_id" from the GimpImageMapTool struct
	because they can be obtained from the tool's GimpToolInfo object.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: changed accordingly.

	* app/tools/gimphistogramtool.c: same here: take values from
	tool->tool_info instead of hardcoding them.

	* app/tools/gimpcroptool.[ch]: removed the static crop dialog
	variables and added them to the GimpCropTool struct. Feels safer
	and makes the callback code much simpler. Use stock items for the
	dialog's "Resize" and "Crop" buttons.

	* app/tools/gimpmeasuretool.c
	* app/tools/gimprotatetool.c: for consistency don't name the tools
	"Blah Tool", also the dialog titles need to match the menu
	entries.

	Unrelated:

	* libgimpwidgets/gimpwidgets.c: the recently changed, gtk-doc
	comment was correct, as gtk-doc takes the parameter names from
	the header, not the .c file.

	* app/tools/gimptransformtool.c: set the transform tool's state to
	TRANSFORM_CREATING after changing displays, so the initial matrix
	components are saved correctly for the "Reset" function.
2002-09-01 08:44:57 +00:00
Michael Natterer f81c13626f oops, the callback's name has changed too :)
2002-09-01  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-commands.[ch]: oops, the callback's name has
	changed too :)
2002-09-01 07:44:29 +00:00
Michael Natterer 003062dec4 HIG compliance: changed "Save a Copy as..." to "Save a Copy...".
2002-09-01  Michael Natterer  <mitch@gimp.org>

	* app/gui/menus.c: HIG compliance: changed "Save a Copy as..."
	to "Save a Copy...".

	* app/gui/file-dialog-utils.c
	* app/display/gimpdisplayshell.c: changed accordingly.
2002-09-01 07:30:27 +00:00
Michael Natterer f4e1ec9734 Refcount layer masks correctly. Fixes layer mask undo.
2002-09-01  Michael Natterer  <mitch@gimp.org>

	Refcount layer masks correctly. Fixes layer mask undo.

	* app/core/gimplayer.c (gimp_layer_add_mask): ref the mask.

	* app/xcf/xcf-load.c
	* app/gui/layers-commands.c
	* tools/pdbgen/pdb/image.pdb: unref layer masks after adding them.

	* app/pdb/image_cmds.c: regenerated.
2002-09-01 07:25:41 +00:00
Michael Natterer cc3bdec2c9 app/widgets/Makefile.am app/widgets/widgets-types.h new dialog widget
2002-08-30  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpviewabledialog.[ch]: new dialog widget featuring
	a title bar containing a stock icon, a description, the viewable's
	name and a preview. Will be used for all viewable related dialogs
	and serves as a common place to control their look & feel.

	* app/tools/gimpimagemaptool.[ch]: removed the code which did
	almost the same and use GimpViewableDialog.

	* app/gui/info-dialog.[ch]: extended the API so it has enough
	information to create a GimpViewableDialog.

	* app/gui/channels-commands.c
	* app/gui/convert-dialog.c
	* app/gui/gradient-editor-commands.c
	* app/gui/image-commands.c
	* app/gui/info-window.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* app/gui/qmask-commands.c
	* app/gui/resize-dialog.c
	* app/gui/vectors-commands.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c: use GimpViewableDialogs

	* themes/Default/gtkrc: apply the dialog style to "*Gimp*Dialog*",
	not only "*GimpDialog*" so it covers GimpViewableDialog.
2002-08-30 21:00:42 +00:00
Michael Natterer d8088f9996 g_strdup(entry->help_path) if static_entry == FALSE.
2002-08-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpitemfactory.c: g_strdup(entry->help_path) if
	static_entry == FALSE.

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/plug-in-menus.c: free the help string after adding
	a menu item with static_entry == FALSE.
2002-08-27 14:45:05 +00:00
Sven Neumann 1806e66f9b app/gui/menus.c added a menu entry that toggles the QuickMask state and
2002-08-27  Sven Neumann  <sven@gimp.org>

	* app/gui/menus.c
	* app/gui/select-commands.[ch]: added a menu entry that toggles
	the QuickMask state and bound Shift-Q to it (bug #86580).
2002-08-27 13:29:47 +00:00
Michael Natterer b8f363db4f a nicer tab for the selection dialog.
2002-08-22  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs-constructors.c: a nicer tab for the selection
	dialog.
2002-08-22 19:11:41 +00:00
Michael Natterer 464f61829a themes/Default/images/stock-all-16.png
2002-08-22  Michael Natterer  <mitch@gimp.org>

	* themes/Default/images/stock-all-16.png
	* themes/Default/images/stock-none-16.png
	* themes/Default/images/stock-grow-16.png
	* themes/Default/images/stock-shrink-16.png: new icons from Jimmac.

	* themes/Default/images/Makefile.am
	* themes/Default/imagerc
	* libgimpwidgets/gimpstock.[ch]: added them to the stock system.

	* app/gui/menus.c: use them.

	* app/widgets/gimpselectioneditor.[ch]: use the icons and added
	a "Save to Channel" button.
2002-08-22 16:24:44 +00:00
Michael Natterer 2314302c0a unref the paint info objects after adding them to their container.
2002-08-22  Michael Natterer  <mitch@gimp.org>

	* app/paint/paint.c: unref the paint info objects after adding
	them to their container.

	* app/widgets/toolbox.c: free the tooltip string after setting it.

	* app/gui/session.c: spit out the correct warning if (position x y)
	could not be parsed.
2002-08-22 14:48:28 +00:00
Michael Natterer e62c2c58c7 bumped version number to 1.3.9
2002-08-22  Michael Natterer  <mitch@gimp.org>

	* configure.in: bumped version number to 1.3.9

	* app/tools/gimpbycolorselecttool.[ch]: removed the ByColorDialog
	and cleaned up the code.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpselectioneditor.[ch]: added new widget
	GimpSelectionEditor with same same functionality as the old
	ByColorDialog which can be open all the time (independent of the
	active tool).

	* app/widgets/gimppreview.[ch]: added gimp_preview_new_by_type()
	so previews can be created without a viewable.

	* app/widgets/gimppreview-utils.[ch]: changed
	gimp_preview_type_from_viewable() to
	gimp_preview_type_from_viewable_type().

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c
	* app/gui/menus.c: register the new dialog type.
2002-08-22 12:49:01 +00:00
Michael Natterer 06aa1afdde Fixed usage of uninitialized memory found by valgrind, plus some cleanup:
2002-08-22  Michael Natterer  <mitch@gimp.org>

	Fixed usage of uninitialized memory found by valgrind,
	plus some cleanup:

	* app/base/pixel-region.[ch]: allocate PixelRegionIterators and
	PixelRegionHolders with g_new0(). Changed return values of
	pixel_regions_register() and pixel_regions_process() from gpointer
	to PixelRegionIterator*

	* app/base/pixel-processor.c: no need to cast the above return values.

	* app/base/temp-buf.[ch]: initialize PixelRegions with { 0 }
	before using them for TempBufs.

	* app/gui/device-status-dialog.c: initialize colors before
	passing them to gimp_color_area_new().
2002-08-22 09:48:56 +00:00
Michael Natterer 728778ca32 don't g_free() static strings (happened if gimprc.last_opened_size > 9,
2002-08-21  Michael Natterer  <mitch@gimp.org>

	* app/gui/menus.c (menus_last_opened_add): don't g_free() static
	strings (happened if gimprc.last_opened_size > 9, fixes #85795).
2002-08-21 15:58:50 +00:00
Michael Natterer 33bba65728 Make sure the selection (gimpimage-mask.c) functionality is really built
2002-08-20  Michael Natterer  <mitch@gimp.org>

	Make sure the selection (gimpimage-mask.c) functionality is really
	built *on top* of the GimpChannel functionality:

	* app/undo.[ch]: renamed undo_push_image_mask() to
	undo_push_mask() and generalized it's API to take a GimpChannel
	param so undos can be pushed for channels which are not the
	image's selection. Simplified the API and added code which copies
	the region of interest instead of leaving this to callers.

	* app/undo_types.h: s/IMAGE_MASK_UNDO/MASK_UNDO/

	* app/undo_history.c: changed accordingly.

	* app/core/gimpchannel.[ch]: don't #include "gimpimage-mask.h".
	Changed gimp_channel_push_undo() to really push a channel undo,
	not a selection undo. Added "gboolean push_undo" params to all
	functions which are called from gimpimage-mask.c. Various cleanups
	and optimizations. Added /*< proxy-foo >*/ stuff to the header so
	we export just the struct itself to libgimpproxy. Added accessors
	gimp_channel_[get|set]_show_masked().

	* app/core/gimpimage-mask.[ch]: renamed gimp_image_mask_undo() to
	gimp_image_mask_push_undo(). Call it before calling GimpChannel
	functions which modify the mask, also call all GimpChannel
	functions with push_undo = FALSE. Emit gimp_image_mask_changed()
	after each operation instead of calling it in
	gimp_image_mask_invalidate(). Removed gimp_image_mask_none()
	because it is the same as gimp_image_mask_clear().
	General cleanup.

	* app/core/gimpimage-mask-select.c
	* app/core/gimpimage-qmask.c: changed accordingly.

	* app/core/gimpedit.c: call gimp_image_mask_clear(), not
	gimp_channel_clear (gimp_image_get_mask()).

	* app/core/gimpimage-crop.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-scale.c: call gimp_image_mask_changed()

	* app/gui/channels-commands.c
	* app/gui/select-commands.c
	* app/tools/gimptexttool.c
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/selection.pdb: follow GimpChannel and
	gimp_image_mask* API changes.

	* app/pdb/channel_cmds.c
	* app/pdb/selection_cmds.c
	* libgimpproxy/gimpchannel.h: regenerated.

	Unrelated:

	* app/core/gimpimage.c: call gimp_drawable_push_undo() instead of
	undo_push_image() directly.
2002-08-20 10:22:23 +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 a3f44d8b0f Separated tool_options creation from tool registration so we don't
2002-06-17  Michael Natterer  <mitch@gimp.org>

	Separated tool_options creation from tool registration so we
	don't implicitly create widgets before gui_init():

	* libgimptool/gimptooltypes.h: removed GimpToolOptionsNewFunc
	typedef here...

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

	* libgimpproxy/gimpproxytypes.h: regenerated.

	* app/core/gimptoolinfo.[ch]: added a GimpToolOptionsNewFunc
	pointer to remember the constructor. Fixed the finalize() method
	(bug was never noticed because we leaked all tool infos)

	* app/tools/tool_manager.[ch]: moved tool_options creation to the
	new function tool_manager_restore(). Unref the tool infos after
	adding them to their container. Added "brush" and "gradient" to
	the context properties which are defined for tool contexts.

	* app/app_procs.c: call tool_manager_restore() after gui_init().

	* app/gui/gui.c: removed the hack introduced recently and call
	render_setup() in gui_init() again, not in gui_themes_init().

	Use the correct contexts now that they are properly initialized
	at the time of tool_options creation:

	* app/tools/gimpblendtool.c: use tool_info->context, not
	gimp_get_user_context() to get/set the tool's gradient.

	* app/paint/gimppaintcore.[ch] (gimp_paint_core_start): added a
	GimpPaintOptions paramater and get the brush to use from
	paint_options->context (instead of gimp_get_current_context()).

	* app/paint/gimppaintcore-stroke.c
	* app/tools/gimppainttool.c: changed accordingly.

	* app/tools/paint_options.c: added a brush preview to the paint
	options.
2002-06-17 10:34:28 +00:00
Michael Natterer b2de161674 register the new "invert" and "layer to imagesize" PNGs as stock icons.
2002-06-16  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpstock.[ch]: register the new "invert" and
	"layer to imagesize" PNGs as stock icons.

	* app/gui/menus.c: use them here.

	* themes/Default/images/Makefile.am: fixed indentation.
2002-06-16 15:22:21 +00:00
Sven Neumann ecff138142 use the new paste icons in the menu.
2002-06-16  Sven Neumann  <sven@gimp.org>

	* app/gui/menus.c: use the new paste icons in the menu.
2002-06-16 11:52:32 +00:00
Michael Natterer 91cfa78384 added a boolean "internal" which indicates that the data object is an
2002-06-12  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdata.[ch]: added a boolean "internal" which
	indicates that the data object is an automatically created
	internal object. Changed the code to refuse saving to deleting
	internal objects.

	* app/core/Makefile.am
	* app/core/gimp-gradients.[ch]: new files implementing internal
	gradients (FG -> BG in RGB and HSV and FG -> transparent).

	* app/core/gimp.c: call gimp_gradients_init().

	* app/core/gimpdatafactory.c (gimp_data_factory_data_free): don't
	free internal objects so they stay there on "Refresh".

	* app/core/gimpdatalist.c: sort internal objects to the beginning
	of the list.

	* app/widgets/gimpdataeditor.c: refuse to change the name of
	internal objects.

	* app/widgets/gimpdatafactoryview.c: set the "Delete" button
	insensitive for internal objects.

	* app/widgets/gimpgradienteditor.c: refuse to edit internal
	gradients, just display them so color picking works.

	* app/gui/brushes-commands.c
	* app/gui/gradients-commands.c
	* app/gui/palettes-commands.c
	* app/gui/patterns-commands.c: set the "Delete" menu item
	insensitive for internal objects.

	* app/gui/gui.c: need to call render_setup() earlier because of
	you-dont-want-to-know-why. Will change it back once the previews
	have their own render buffers.

	* app/tools/gimpblendtool.c: Replaced the "Type" menu by a preview
	showing the active gradient. Clicking the preview pops up the
	gradient selection. Renamed the "Gradient" menu to "Shape". Removed
	"blend_mode" from the BlendOptions struct because we always use
	"custom" mode now.
2002-06-12 13:48:47 +00:00
Michael Natterer f2745d8880 themes/Default/imagerc themes/Default/images/Makefile.am register the new
2002-06-09  Michael Natterer  <mitch@gimp.org>

	* themes/Default/imagerc
	* themes/Default/images/Makefile.am
	* libgimpwidgets/gimpstock.[ch]: register the new "Swap" and
	"Default" icons in "menu" size.

	* app/gui/menus.c: use them here.

	* app/widgets/gimptoolbox-color-area.c: changed accordingly.
2002-06-09 15:29:43 +00:00
Sven Neumann fd21daebdf app/undo.c app/config/gimpconfig-deserialize.c app/core/gimpbrushpipe.c
2002-06-09  Sven Neumann  <sven@gimp.org>

	* app/undo.c
	* app/config/gimpconfig-deserialize.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpcontainer.c
	* app/core/gimpimagefile.c
	* app/gui/paths-dialog.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpgradienteditor.c: unified translatable strings
	and unmarked a few for translation since they should never be seen.

2002-06-09  Sven Neumann  <sven@gimp.org>

	* POTFILES.in: updated.

	* de.po: updated german translation.
2002-06-09 12:53:42 +00:00
Sven Neumann 3aae39405e app/base/Makefile.am automake-1.6 seems to use yet another variable to
2002-06-08  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/paint-funcs/Makefile.am: automake-1.6 seems to use yet another
	variable to pass flags to the assembler (bug #84514). Define
	AM_CCASFLAGS like AM_ASFLAGS to satisfy all versions of automake.

	* configure.in
	* all Makefiles: removed STRIP_BEGIN and STRIP_END since it's a
	GNU make extension that we don't really need and newer versions of
	automake don't seem to like it.
2002-06-07 23:00:46 +00:00
Michael Natterer 110efe528c parse sessionrc using GScanner.
2002-06-02  Michael Natterer  <mitch@gimp.org>

	* app/gui/session.c: parse sessionrc using GScanner.

	* app/config/gimpscanner.[ch]: added utility function
	gimp_scanner_parse_string_list(). Fixed the color parser's parse
	error detection.

	* app/gimprc.c: removed the sessionrc parsing stuff.

	* app/config/gimpconfig-params.c (gimp_param_spec_color): no need
	to set the param_spec's value_type, it already gets set by it's
	base class' instance_init() function.
2002-06-02 19:48:01 +00:00
Sven Neumann 0633d0c09b do some sanity checks on the values returned by GDK.
2002-05-30  Sven Neumann  <sven@gimp.org>

	* app/gui/gui.c (gui_get_screen_resolution): do some sanity checks
	on the values returned by GDK.
2002-05-30 00:26:27 +00:00
Sven Neumann 4c55933dea renamed gimp_mem_size_entry_new() to gimp_memsize_entry_new() for
2002-05-29  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.[ch]: renamed gimp_mem_size_entry_new()
	to gimp_memsize_entry_new() for consistency. Rewrote using bitshifts.
	Should work correctly for sizeof (gulong) > 32 now. Added new unit
	GigaBytes.

	* app/gui/preferences-dialog.c
	* app/gui/user-install-dialog.c: changed accordingly.

	* app/config/gimpconfig-types.[ch]: added new function
	gimp_memsize_set_from_string() that allows to check if the
	conversion succeeded.

	* app/config/gimpconfig-deserialize.c
	(gimp_config_deserialize_memsize): use gimp_memsize_set_from_string().
2002-05-29 09:20:56 +00:00
Sven Neumann d453d02362 app/base/base-config.[ch] use a gulong for the tile_cache_size.
2002-05-28  Sven Neumann  <sven@gimp.org>

	* app/base/base-config.[ch]
	* app/gui/user-install-dialog.c: use a gulong for the tile_cache_size.

	* app/base/tile-cache.c: cleanup, no changes.

	* app/config/gimpconfig-types.c (string_to_memsize): avoid overflows.
2002-05-28 20:29:27 +00:00
Sven Neumann 89585b4c14 app/config/test-config.c use g_error_free() so we crash if our GimpConfig
2002-05-28  Sven Neumann  <sven@gimp.org>

	* app/config/test-config.c
	* app/gui/test-commands.c: use g_error_free() so we crash if our
	GimpConfig functions return FALSE and don't set an error.

	* app/widgets/gimpdevices.c: don't warn if devicerc was not found.

	* app/gui/preferences-dialog.c: use G_MAXULONG as upper limit for
	the mem_size entries.

	* libgimpwidgets/gimpwidgets.c (gimp_mem_size_entry): use gulong
	and set the range of the spinbutton's adjustment properly.
2002-05-28 18:49:45 +00:00
Michael Natterer b7e3c716c4 override GObjectClass->constructor() and do the setup stuff there, not in
2002-05-28  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.c: override GObjectClass->constructor() and
	do the setup stuff there, not in gimp_context_new(). This way we
	can create properly initialized contexts with g_object_new().

	* app/widgets/gimpdeviceinfo.c: Removed the "gimp" property
	again. Added a constructor() implementation and moved stuff there
	from gimp_device_info_set_property(PROP_GIMP).

	* app/config/gimpconfig-deserialize.c: made deserialization of
	value arrays work by actually using the array any not just leaking
	it ;)

	* app/core/gimpcontainer.c: removed debugging output. Call
	config_iface->deserialize(child, ...) again instead of calling
	gimp_config_deserialize_properties() directly.

	* app/widgets/gimpdevices.c: switch to using the new stuff for
	devicerc.

	* app/widgets/gimpdeviceinfo.[ch]
	* app/widgets/gimpdevices.[ch]
	* app/gimprc.c: removed all old gimprc-style devicerc stuff.

	* app/gui/menus.c
	* app/gui/test-commands.[ch]: removed devicerc testing entries
	and callbacks.
2002-05-28 16:41:56 +00:00
Michael Natterer b10ade1a35 app/config/gimpconfig.[ch] added "gint indent_level" to all serialization
2002-05-24  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig.[ch]
	* app/config/gimpconfig-serialize.[ch]: added "gint indent_level"
	to all serialization functions. Added gimp_config_string_indent()
	which indents a GString.

	* app/config/gimprc.c
	* app/core/gimpdocumentlist.c
	* app/core/gimpparasitelist.c: changed accordingly.

	* app/core/gimpcontext.c: don't crash when serializing NULL object
	properties.

	* app/config/gimpscanner.[ch]: added gimp_scanner_parse_identifier().

	* app/core/gimpcontainer.c: implement GimpConfigInterface.
	Container serialization works, deserialization is not implemented yet.

	* app/widgets/gimpdevices.[ch]: made
	GimpDeviceManager->device_info_list a GimpList, not GList, added
	testing functions for (de)serializing it.

	* app/gui/menus.c
	* app/gui/test-commands.[ch]: call the new test functions from
	the <Toolbox>/File/Debug menu.
2002-05-24 02:53:20 +00:00
Sven Neumann 3553cf90bf need to link test-config against libgimpcolor now.
2002-05-21  Sven Neumann  <sven@gimp.org>

	* app/config/Makefile.am: need to link test-config against
	libgimpcolor now.

	* app/config/gimpconfig.c (gimp_config_serialize): write newlines
	after header and before footer.

	* app/config/test-config.c
	* app/config/gimprc.c
	* app/core/gimp-documents.c
	* app/core/gimp-parasites.c
	* app/gui/test-commands.c: removed the newlines here.

	* app/config/gimpconfig-params.h: define GIMP_PARAM_SERIALZE flag
	which can be used to mark an object property as serializable.
	Make the GIMP_CONFIG_INSTALL_PROP_* macros set it.

	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-serialize.c: check the GIMP_PARAM_SERIALIZE
	flag.

	* app/config/gimpconfig-params.c (gimp_param_color_set_default):
	fixed.

	* app/core/gimpcontext.c: install serializable properties using the
	GIMP_CONFIG_INSTALL_PROP_* macros.
2002-05-21 17:33:04 +00:00
Michael Natterer 292ec087eb added GIMP_TYPE_COLOR as boxed type encapsulating GimpRGB.
2002-05-21  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-types.[ch]: added GIMP_TYPE_COLOR as boxed
	type encapsulating GimpRGB.

	* app/config/gimpconfig-params.[ch]: added GimpParamSpecColor
	which is derived from GParamSpecBoxed and adds a default value.

	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-serialize.c: added generic
	(de)serialization of the new property type.

	* app/core/gimpcontext.c: implement the config interface, changed
	signal parameters and property types to use the new
	GIMP_TYPE_COLOR.

	* app/core/gimpmarshal.list: added a VOID__BOXED marshaller.

	* app/gui/menus.c
	* app/gui/test-commands.[ch]: some test code which (de)serializes
	the user context.
2002-05-21 15:01:57 +00:00
Sven Neumann 9af4c5d6d2 don't allow to close the splash screen. Fixes bug #81962.
2002-05-16  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: don't allow to close the splash screen. Fixes
	bug #81962.

	* plug-ins/gimpressionist/gimpressionist.c: changed button order.
	As mentioned in bug #81963 the UI of this plug-in needs some more
	work.

	* plug-ins/gimpressionist/brush.c
	* plug-ins/gimpressionist/paper.c
	* plug-ins/gimpressionist/presets.c: fixed handling of scrolled
	windows.
2002-05-16 14:13:20 +00:00
Michael Natterer 8d37831a94 <shift>+click toggles the active layer's "linked" property now.
2002-05-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmovetool.c: <shift>+click toggles the active
	layer's "linked" property now.

	* themes/Default/images/stock-tool-options-16.png: new icon.

	* themes/Default/images/Makefile.am
	* themes/Default/imagerc
	* libgimpwidgets/gimpstock.[ch]: added it to the stock system.

	* app/gui/menus.c: use it for the tool_options dialog's menu
	entries.
2002-05-15 19:15:23 +00:00
Michael Natterer 821961b8f9 app/gui/splash.c reverted stuff someone accidentially checked in...
2002-05-15  Michael Natterer  <mitch@gimp.org>

	* app/gui/splash.c
	* libgimpproxy/gimpobject.h: reverted stuff someone
	accidentially checked in...
2002-05-15 15:55:10 +00:00
Jakub Steiner 08ce93e959 new preference icons 2002-05-15 15:32:37 +00:00
Sven Neumann 9b6ef26100 added a return value to indicate success of
2002-05-15  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig.[ch]: added a return value to indicate
	success of GimpConfigInterface::serialize. Added a GimpConfigError
	value for write errors and check the return value of all write()
	calls. Allow to specify file header and footer when calling
	gimp_config_serialize().

	* app/config/gimpconfig-serialize.[ch]
	* app/config/gimprc.c: changed accordingly.

	* app/core/gimp-documents.[ch]: new files with functions to handle
	gimp->documents.

	* app/core/gimpdocuments.[ch]: removed ...

	* app/core/gimpdocumentlist.[ch]: ... and added under this name.
	Implements a generic document list.

	* app/core/gimp-parasites.[ch]: new files with functions to handle
	gimp->parasites.

	* app/core/gimpparasite.[ch]: removed.

	* app/core/gimpparasitelist.[ch]: nothing more than a generic
	parasite list.

	* app/undo.c
	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimp.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage.c
	* app/core/gimpitem.c
	* app/file/file-open.c
	* app/file/file-save.c
	* app/gui/file-open-dialog.c
	* app/pdb/parasite_cmds.c
	* tools/pdbgen/pdb/parasite.pdb: changed accordingly.
2002-05-15 11:05:32 +00:00
Sven Neumann a663c855ce added _with_range variants for all enum menu widgets that limit the range
2002-05-13  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpenummenu.[ch]: added _with_range variants for all
	enum menu widgets that limit the range of choices.

	* app/gui/file-new-dialog.c
	* app/gui/layers-commands.c
	* app/gui/preferences-dialog.c: use GimpEnumMenus with ranges.
2002-05-13 17:15:17 +00:00
Sven Neumann 16e8b1bec8 registered GimpFillType enum and added translatable names to
2002-05-13  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch]: registered GimpFillType enum and added
	translatable names to GimpImageBaseType.

	* app/core/gimp.[ch]
	* app/core/gimpedit.c
	* app/core/gimpimage-new.[ch]: removed gimp_image_new_[init|exit]()
	where we used to create names for the enums mentioned above. Dropped
	gimp_image_new_set_have_current_cut_buffer() in favor of accessing
	the value directly.

	* app/gui/file-new-dialog.c (file_new_dialog_create)
	* app/gui/layers-commands.c (layers_new_layer_query): use
	GimpEnumMenus to choose the base_type and fill_type.
2002-05-13 15:35:27 +00:00
Michael Natterer 474a4ec430 set the view's display to NULL in "destroy". Fixes crash on closing the
2002-05-13  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpnavigationview.c: set the view's display to NULL
	in "destroy". Fixes crash on closing the navigation dialog.

	* app/gui/dialogs-constructors.c
	* app/gui/menus.c: use GIMP_STOCK_NAVIGATION instead of
	GIMP_STOCK_TOOL_MOVE. Use the new GIMP_STOCK_WARNING (see below)
	for the error console.

	* themes/Default/images/*.png
	* themes/Default/images/tools/*.png: renamed all stock icons to
	have the pixel size instead of "button" or "menu" in the name.
	(e.g. stock-menu-scale.png -> stock-scale-16.png).

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/gtkrc
	* themes/Default/imagerc
	* themes/Default/images/Makefile.am: changed accordingly.
2002-05-12 23:20:21 +00:00
Sven Neumann 0938e33e5b removed LOCALEDIR definition ...
2002-05-11  Sven Neumann  <sven@gimp.org>

	* app/gui/Makefile.am: removed LOCALEDIR definition ...

	* libgimpbase/Makefile.am: ... and added it here.

	* app/widgets/gimpdnd.c: corrected pointer arithmetic.
2002-05-11 10:18:58 +00:00
Hans Breuer 8522a8470d add appconfig.lib. Statically link libgimptool/gimptool.lib.
2001-05-11  Hans Breuer  <hans@breuer.org>

	* app/makefile.msc : add appconfig.lib. Statically
	link libgimptool/gimptool.lib.

	* app/main.c : use gimp_locale_directory()

	* app/config/gimpconfig-utils.c : <string.h>

	* app/config/makefile.msc : add gimpscanner

	* app/core/gimpimagefile.c : some G_OS_WIN32 mess to get
	mkdir() and chmod()

	* app/display/gimpdisplayshell.c
	  app/plug-in/plug-in-progrss.c
	  app/tool/gimpcolorpickertool.c
	  app/tool/gimpcroptool.c
	  app/tool/gimpmeasuretool.c
	  app/tool/gimpperspectivetool.c
	  app/tool/gimprotatetool.c
	  app/tool/gimpscaletool.c
	  app/tool/gimpsheartool.c
	  app/tool/gimptransformtool.c
	  app/widgets/gimpcolormapeditor.c
	  app/widgets/gimpcolorpanel.c
	  app/widgets/gimptoolbox-color-area.c
	add #ifdef __GNUC__ to avoid breaking on non standard
	pragma #warning

	* app/tools/makefile.msc : add gimptoolcontrol remove
	tools-enum

	* app/tools/tool_manager.c : need to include
	libgimptool/gimptoolcontrol.h after core includes
	otherwise we would compile without prototypes or
	break miserably

	* app/gui/plug-in-menus.c : replace LOCALEDIR with
	gimp_locale_directory ()

	* app/gui/preferences-dialog.c (prefs_notebook_append_page) :
	only try to gdk_pixbuf_new_from_file() with a valid filename.
	It should simply return NULL otherwise, but fails if the
	filename is an empty string.

	* app/paint-funcs/makefile.msc : add -FImsvc_recommended_pragmas.h

	* app/widgets/gimpcolormapeditor.c : the 'row'
	allocated needs to be 'xn * cellsize * 2' (to avoid
	accessing unowned memory) not only width, which has
	become allocation.width by someone commenting out
	the correct size calculation

	* app/widgets/gimpdialogfactory.c : varargs to macros
	are GCCism or at least non standard. #define DEBUG
	to g_print or nothing - without arguments - does fix
	it somewhat dirty as the compiler needs to tolerate
	the '(blah, foo, bar);' statement than

	* app/widgets/makefile.msc : updated

	* app/xcf/makefile.msc : add -FImsvc_recommended_pragmas.h

	* etc/gimprc.win32 : use ';' to separate theme-path

	* libgimpbase/gimpenv.c : #include <stdio.h>
	for sprintf()

	* app/widgets/gimpdnd.c (gimp_dnd_set_file_data) :
	the passed in vals chunk is not always null-terminated
	(at least not on win32). Use the length parameter too
	to avoid reading junk filenames.

	* libgimp/gimp.def : export gimp_image_get_name()

	* libgimpbase/gimpbase.def : export gimp_locale_directory()
	* libgimpbase/gimpenv.[ch] : added gimp_locale_directory ()

	* libgimpbase/makefile.msc : define DATADIR and SYSCONFDIR
	to empty string to let gimp find its files in the common
	place (win32: relative to the top level gimp dir)

	* plug-ins/common/pixelize.c : <string.h>

	* plug-ins/flame/cmap.c : #include <glib.h> for g_random_int()

	* plug-ins/makefile.msc : -FImsvc_recommended_pragams.h
	and a little hack to give imagemap the prototypes it
	desires without changing the lexed source

	* themes/Default/images/makefile.msc : now added (see below)

	* themes/Default/images/stock-button-reset.png : made it binary
2002-05-10 23:30:09 +00:00
Michael Natterer b521746d29 We can always create GimpPreviews for any GtkIconSize, but not vice versa.
2002-05-10  Michael Natterer  <mitch@gimp.org>

	We can always create GimpPreviews for any GtkIconSize, but
	not vice versa. therefore:

	* app/widgets/gimpdockable.[ch]: changed the "gint size" parameter
	used for tab sizes to "GtkIconSize size" all over the place. Added
	"stock_id" in addition to "name" and "short_name".

	* app/widgets/gimpdockbook.c
	* app/widgets/gimpimagedock.c: use GtkIconSize instead of integer
	preview sizes for all widget style properties. Renamed them from
	"blah_height" to "blah_size" because "height" is an implementation
	detail.

	* app/gui/dialogs-constructors.c: changed calls to
	gimp_dockable_new() and all *_tab_func()s accordingly. Removed
	the hack for the navigation tab and added a general tab_func
	which returns a hbox with an icon & label.

	* app/gui/menus.c: made the dialog menus found under <Toolbox>,
	<Image> and <Dialogs> more consistent and added more stock icons.

	* etc/gtkrc_user
	* themes/Default/gtkrc: changed accordingly.
2002-05-10 14:50:27 +00:00
Sven Neumann dd7f30161c app/gui/user-install-dialog.c use stock pixbufs instead of xpm pixmaps.
2002-05-10  Sven Neumann  <sven@gimp.org>

	* app/gui/user-install-dialog.c
	* plug-ins/common/gtm.c: use stock pixbufs instead of xpm pixmaps.

	* pixmaps/Makefile.am
	* pixmaps/eek.xpm
	* pixmaps/folder.xpm
	* pixmaps/wilber.xpm: removed now unused pixmaps.
2002-05-10 14:02:28 +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
Sven Neumann f8de6fe33f removed (wrong) definition of LOCALEDIR.
2002-05-07  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpintl.h: removed (wrong) definition of LOCALEDIR.

	* libgimp/stdplugins-intl.h: fixed typo in domainname that broke i18n
	of plug-ins.

	* app/gui/Makefile.am: define LOCALEDIR.

	* app/gui/plug-in-menus.c
	* app/plug-in/plug-in.h
	* app/plug-in/plug-ins.[ch]: declared translation domain and help path
	as const strings.

	* plug-ins/print/print.c
	* plug-ins/print/print_gimp.h: minor cleanups.
2002-05-07 11:33:58 +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
Sven Neumann 9b6cde9da0 added new enum GimpThumbnailSize.
2002-04-29  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch]: added new enum GimpThumbnailSize.

	* app/gimprc.c
	* app/config/gimpcoreconfig.[ch]
	* app/core/gimpcoreconfig.[ch]: replaced old gimprc value
	write_thumbnails with thumbnail_size.

	* app/core/gimpimagefile.[ch]: allow to specify a thumbnail size.

	* app/core/gimpdocuments.c
	* app/file/file-open.c
	* app/file/file-save.c
	* app/gui/preferences-dialog.c
	* app/widgets/gimpdocumentview.c: changed accordingly.

	* app/gui/file-open-dialog.c: create the preview according to the
	users choice of thumbnail size. Doesn't update on changes yet.
2002-04-29 19:41:45 +00:00
Sven Neumann 927a100584 save empty thumbnails to ~/.thumbnails/fail/gimp-1.3 if we cannot create a
2002-04-29  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagefile.[ch]: save empty thumbnails to
	~/.thumbnails/fail/gimp-1.3 if we cannot create a thumbnail. Added
	new state GIMP_IMAGEFILE_STATE_THUMBNAIL_EXISTS to indicate that a
	thumbnail was found but is not yet loaded. Removed unused thumb_mtime
	from GimpImagefile struct and simplified some parts of the code.

	* app/gui/file-open-dialog.c: cosmetic changes.
2002-04-29 17:20:26 +00:00
Michael Natterer 63ca433dce added "gchar *name_changed_signal" to GimpViewableClass which defaults to
2002-04-29  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.[ch]: added "gchar *name_changed_signal"
	to GimpViewableClass which defaults to "name_changed".

	* app/widgets/gimplistitem.c
	* app/widgets/gimpmenuitem.c: connect to
	viewable_class->name_changed_signal instead of just
	"name_changed". Fixed possible UI inconsistency where the previous
	viewable's tooltip would have been displayed.

	* app/core/gimpimagefile.[ch]: set name_changed_signal to
	"info_changed" so views can update their tooltips correctly.
	Merged the separate image_state and thumb_state states into one
	state variable and extended the state enum. Added description
	strings for all states. Show the file size for all files, not only
	for those with a thumbnail. Enabled display of outdated
	thumbnails.

	* app/gui/file-open-dialog.c: some changes because
	gimp_imagefile_get_description() returns 3 instead of 2 lines of
	text now.

	* app/widgets/gimpcontainerview-utils.c: show the imagefile's
	description in the tooltip.

	* app/gui/menus.c
	* app/gui/documents-commands.[ch]
	* app/widgets/gimpdocumentview.c: added functions to remove
	"dangling" document history entries. Updated the context menu so
	all functions can be accessed through it.
2002-04-28 23:10:42 +00:00
Michael Natterer 84ee76d5ee all functions return the opened image and the pdb status plus a GError
2002-04-19  Michael Natterer  <mitch@gimp.org>

	* app/file/file-open.[ch]: all functions return the opened image
	and the pdb status plus a GError now. Removed all g_message()
	calls from file_open_image(). Instead, display all error messages
	in file_open_with_proc_and_display() if it got no error return
	location passed.

	* app/app_procs.c
	* app/core/gimpimagefile.c
	* app/gui/file-commands.c
	* app/gui/file-open-dialog.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdocumentview.c: changed accordingly.

	* app/gui/file-open-dialog.c: only treat the "entered_filename" as
	URI if it contains "://".
2002-04-19 14:09:53 +00:00
Michael Natterer 7e53bff1d0 added a progress bar to the preview frame to show the progress when
2002-04-18  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-open-dialog.c: added a progress bar to the preview
	frame to show the progress when creating many previews. Also added
	some more ugly static variables...
2002-04-18 18:55:31 +00:00
Michael Natterer 9c400c406e create the thumbnail subdir strings only once in class_init, minor stuff.
2002-04-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimagefile.[ch]: create the thumbnail subdir strings
	only once in class_init, minor stuff.

	* app/widgets/gimppreview.c: set widget_class->activate_signal to
	the preview's "clicked" id so we can create mnemonics for it.

	* app/gui/file-open-dialog.c: make the whole preview area clickable,
	block some signals of the "Preview" button so it behaves like
	the tree view headers.
2002-04-18 14:14:50 +00:00
Michael Natterer 31c19e8d1f save the number of layers in the thumbnail and show it in the description.
2002-04-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimagefile.[ch]: save the number of layers in the
	thumbnail and show it in the description.

	* app/gui/file-dialog-utils.[ch]: added file_dialog_new() which
	contains a lot of factored out code from file-open and file-save.

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: use file_dialog_new(), reduce use of
	global variables, added utility functions to reduce code
	duplication, cleanup.

	* app/gui/file-open-dialog.c: use a temporary imagefile to create
	previews so the dialog's preview can show the progress when
	creating many thumbnails.

2002-04-18  Michael Natterer  <mitch@gimp.org>

	* POTFILES.in: added app/gui/file-dialog-utils.c
2002-04-18 01:18:24 +00:00
Michael Natterer c811d2bb94 shouldn't free the filename before using it :)
2002-04-17  Michael Natterer  <mitch@gimp.org>

	* app/file/file-save.c: shouldn't free the filename before using it :)

	* app/core/gimpimagefile.c: emit the "info_changed" signal more
	often, assemble the description string differently.

	* app/gui/file-open-dialog.c: moved the preview into a frame right
	of the file selection box, lots of gui and other cleanup...
2002-04-17 13:48:22 +00:00
Sven Neumann 48fb6b37ed app/core/gimpimagefile.[ch] moved code to generate a literate description
2002-04-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagefile.[ch]
	* app/gui/file-open-dialog.c: moved code to generate a literate
	description of the image to the GimpImagefile object.
2002-04-16 23:59:53 +00:00
Michael Natterer 4aa4803dd0 register GimpImageType.
2002-04-17  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.[ch]: register GimpImageType.

	* app/core/gimpimagefile.[ch]: read and write more image properties
	in thumbnails.

	* app/gui/file-open-dialog.c: changed accordingly.

	* app/widgets/gimpdialogfactory.c: disabled debugging output.

	* app/widgets/gimpdocumentview.c: changed the "Refresh" button to
	regenerate the preview on click and reload all previews on
	shift+click.

	* tools/pdbgen/enums.pl: regenerated.
2002-04-16 23:03:23 +00:00
Michael Natterer 99e575d17d fixed temp_buf_copy() and temp_buf_to_[color|gray]() to (1) not crash and
2002-04-16  Michael Natterer  <mitch@gimp.org>

	* app/base/temp-buf.c: fixed temp_buf_copy() and
	temp_buf_to_[color|gray]() to (1) not crash and (2) to assume the
	correct pixelformat. Bugs were never noticed because the code was
	never used until today...

	* app/core/gimpviewable.c (gimp_viewable_get_new_preview_pixbuf):
	use temp_buf_copy() to convert GRAY* TempBufs to RGB* before
	creating the pixbuf.

	* app/app_procs.c: don't try to open command line images if the
	filename could not be converted to an URI.

	* app/file/file-open.c
	* app/file/file-save.c: use g_file_test() instead of stat().

	* app/file/file-utils.[ch]: cleanup, changed
	file_utils_filename_to_uri() to take a list of procs, not a Gimp
	pointer.

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

	* app/core/gimpimagefile.[ch]: implemented thumbnail saving
	following the thumbnail standard v0.5 (the implementation is not
	yet fully standard compliant).

	* app/gui/file-open-dialog.c: use the new thubmnail functions and
	removed all .xvpics code. Not finished yet...

	* app/core/gimpdocuments.c
	* app/widgets/gimpdocumentview.c: changed accordingly.

	* tools/pdbgen/pdb/fileops.pdb (file_save_thumbnail): set "success"
	correctly.

	* app/pdb/fileops_cmds.c: regenerated.
2002-04-16 20:25:27 +00:00
Michael Natterer 65cfa8db19 added utility functions file_utils_uri_to_utf8_basename() and
2002-04-14  Michael Natterer  <mitch@gimp.org>

	* app/file/file-utils.[ch]: added utility functions
	file_utils_uri_to_utf8_basename() and
	file_utils_uri_to_utf8_filename().

	* app/nav_window.c
	* app/undo_history.c
	* app/display/gimpdisplayshell.c
	* app/gui/info-window.c
	* app/gui/menus.c
	* app/gui/palette-import-dialog.c
	* app/tools/gimpbycolorselecttool.c
	* app/widgets/gimpcontainerview-utils.c: use the new functions.
2002-04-14 17:28:58 +00:00
Michael Natterer 5e51cebc15 Use UTF-8 encoded escaped URIs for GimpImage and GimpImageFile.
2002-04-14  Michael Natterer  <mitch@gimp.org>

	Use UTF-8 encoded escaped URIs for GimpImage and GimpImageFile.

	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/file/file-utils.[ch]: port everything to using URIs, removed
	file_open_absolute_filename() and added file_utils_filename_to_uri()
	instead.

	* app/core/gimpimage.[ch]: added gimp_image_[get|set]_uri() which
	works like the old gimp_image_[get|set]_filename().
	Changed gimp_image_[get|set]_filename() to call uri conversion
	functions.

	* app/app_procs.c: removed lots of code and use the new uri
	functions to open images passed on the command line.

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: changed accordingly.

	* app/nav_window.c
	* app/undo_history.c
	* app/display/gimpdisplayshell.c
	* app/gui/info-window.c
	* app/gui/palette-import-dialog.c
	* app/tools/gimpbycolorselecttool.c
	* app/widgets/gimpcontainerview-utils.c:
	s/gimp_image_get_filename()/gimp_image_get_uri()/g. Need to add
	a utility function which returns the basename in unescaped UTF-8.

	* app/gui/file-commands.c
	* app/widgets/gimpdocumentview.c: use "uri", not "filename" as
	variable name where appropriate.

	* app/gui/menus.c: some broken code for the "Open Recent" items,
	will be fixed soon...

	* app/widgets/gimpdnd.c: evil (!!!) hackery to convert dropped
	filenames to uris.

	* tools/pdbgen/pdb/fileops.pdb: changed accordingly. Clarified
	the meaning of the "raw_filename" parameter.

	* tools/pdbgen/pdb/message.pdb: use g_message("%s", message),
	*not* g_message(message).

	* app/pdb/fileops_cmds.c
	* app/pdb/message_cmds.c
	* libgimp/gimpfileops_pdb.c: regenerated.
2002-04-14 14:38:55 +00:00
Michael Natterer 6d215cae8d removed some #if 0'ed stuff.
2002-04-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.c: removed some #if 0'ed stuff.

	* app/gui/edit-commands.c (edit_copy_cmd_callback): call
	gdisplays_flush() so the menus are updated correctly.

	* app/widgets/gimpitemfactory.c (gimp_item_factory_set_color):
	pack the original menu item label with TRUE, TRUE into the created
	hbox so it's accel. label is visible.
2002-04-14 12:02:29 +00:00
Michael Natterer b46ab216e6 removed usage of "the_gimp" by passing around more "Gimp" pointers.
2002-04-12  Michael Natterer  <mitch@gimp.org>

	* app/gimphelp.[ch]: removed usage of "the_gimp" by passing around
	more "Gimp" pointers. Renamed gimp_standard_help_func() to
	_gimp_standard_help_func() and declare it in the header.  Don't
	include "app_procs.h".

	* app/libgimp_glue.[ch]: added gimp_standard_help_func() here.
	Call _gimp_standard_help_func (the_gimp, ...) like all other
	wrappers in this file do. I know this is ugly but better let's
	have all uglyness in one place (here) :-)

	* app/widgets/gimpitemfactory.[ch]: added a "Gimp" member to the
	GimpItemFactory struct. Pass it to gimp_help(),

	* app/gui/menus.c: pass a Gimp to gimp_item_factory_new(), removed
	useless inclusion of "gimphelp.h".

	* tools/pdbgen/pdb/help.pdb: pass a Gimp to gimp_help()

	* app/pdb/help_cmds.c: regenerated.

	* app/gui/tips-dialog.c: removed gtk_quit_add_destroy() here too
	because the tips dialog is created by a dialog factory which takes
	care of dialog destruction.
2002-04-12 18:14:13 +00:00
Sven Neumann d0429f270a app/gui/file-open-dialog.c merged fix for bug #51781 from stable branch:
2002-04-12  Sven Neumann  <sven@gimp.org>

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: merged fix for bug #51781 from stable
	branch: don't gtk_quit_add_destroy() the fileload and filesave widgets.
2002-04-12 17:49:39 +00:00
Michael Natterer 1a259d681a reordered some lines, no logic changed.
2002-04-12  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-crop.c: reordered some lines, no logic
	changed.

	* app/core/gimplayer.[ch]: made gimp_layer_pick_correlate()
	return a gboolean, not gint.

	* app/display/gimpdisplayshell.c
	* app/gui/layers-commands.[ch]
	* app/gui/menus.c: added "<Image>/Layers/Crop Layer" which resizes
	the active layer to the current selection's bounds, just as
	"<Image>/Image/Crop Image"
2002-04-12 12:29:51 +00:00
Zbigniew Chyla d108860d3a Marked some strings for translation.
2002-04-12  Zbigniew Chyla  <cyba@gnome.pl>

	* app/gui/dialogs-constructors.c: Marked some strings for translation.
2002-04-12 11:54:36 +00:00
Nate Summers 69ccb4d370 massive tool plugin changes 2002-03-29 03:50:29 +00:00
Manish Singh 814fd469b0 Treeviewized
2001-03-28  Manish Singh  <yosh@gimp.org>

        * app/gui/user-install-dialog.c: Treeviewized
2002-03-28 02:05:10 +00:00
Hans Breuer de5f8b5f43 #define GETTEXT_PACKAGE
2001-03-28  Hans Breuer  <hans@breuer.org>

	* config.h.win32 : #define GETTEXT_PACKAGE

	* makefile.msc : add theme rule

	* app/makefile.msc : gimp.exe depends on all the libs
	and general update

	* app/base/makefile.msc : updated

	* app/config/gimpconfig-serialize.c : #include <io.h> for win32
	* app/config/gimpconfig-types.c : #include <string.h>

	* app/core/gimpcontext.c app/core/gimpcontainer.c
	  app/core/gimptoolinfo.c : #include <string.h>

	* app/core/gimpdocuments.c (gimp_documents_save_func) :
	need to g_strescape() the filename to not make
	backslashes vanish during de-serialization

	* app/core/gimpimagefile.c : #define S_ISREG for G_OS_WIN32

	* app/core/makefile.msc : add -DGIMP_COMPILATION
	required for cpercep.c build

	* app/display/gimpdisplayshell.c : #include <string.h>

	* app/display/makefile.msc : -FImsvc_recommended_pragmas.h,
	G_LOG_DOMAIN definition and object file update

	* app/file/makefile.msc : -FImsvc_recommended_pragmas.h,
	G_LOG_DOMAIN definition

	* app/file/file-open.c (file_open_with_proc_and_display) :
	use absolute filename for gimp_documents_add()

	* app/gui/channel-commands.c app/gui/colormap-editor-commands.c
	  app/gui/edit-commands.c app/gui/vectors-commands.c :
	#include <string.h>

	* app/gui/makefile.msc : updated

	* app/gui/menus.c : use g_file_test() instead of access()
	to avoid inclusion <unistd.h>

	* app/paint/makefile.msc : updated

	* app/plug-in/plug-in-params.c : #include <string.h>

	* app/plug-in/makefile.msc : updated

	* app/plug-in/plug-in-def.h : #include <time.h> for time_t

	* app/plug-in/plug-in.c : remove definition of S_IFREG

	* app/plug-in/gap/gap_arr_dialog.c : include <config.h>
	before including libgimp/libgimp-intl.h

	* app/tools/makefile.msc : updated

	* app/vectors/makefile.msc : new file

	* app/widgets/makefile.msc : updated

	* libgimp/gimp.def : updated externals

	* libgimpwidgets/gimpwidgets.def : updated externals

	* modules/makefile.msc : updated and disabled colorsel_gtk.

	* plug-in/makefile.msc : don't define GETTEXT_PACKAGE

	* themes/Default/images/makefile.msc : moved makefile.msc from ..
	and adapted pathes to images
2002-03-28 00:10:56 +00:00
Michael Natterer 75c63ee334 app/config/Makefile.am new files containing a convenience constructor for
2002-03-28  Michael Natterer  <mitch@gimp.org>

	* app/config/Makefile.am
	* app/config/gimpscanner.[ch]: new files containing a convenience
	constructor for GScanner and some parse utility functions, mostly
	cut out of app/plug-in/plug-in-rc.c

	* app/plug-in/plug-in-rc.c: removed the stuff here, added scopes
	to the scanner symbols.

	* app/core/Makefile.am
	* app/core/gimpunits.[ch]: moved the user_unit list handling and
	unitrc stuff to this file. Parse unitrc here, using the new
	utility functions instead of using gimprc.

	* app/core/gimpunit.[ch]: removed here.

	* app/core/gimpdocuments.c: same here: added a scanner for the
	document history instead of using gimprc.

	* app/gimprc.c: removed unitrc and document history parsing stuff
	along with some old unused cruft.

	* app/app_procs.c
	* app/core/gimp.c
	* app/gui/user-install-dialog.c: #include "core/gimpunits.h".

	* app/core/gimpdrawable-bucket-fill.c: don't include "gimprc.h".
2002-03-27 23:15:00 +00:00
Michael Natterer ffcb0bfa3f ./mitch --sanitize-identifier-namespace
2002-03-20  Michael Natterer  <mitch@gimp.org>

	./mitch --sanitize-identifier-namespace

	* app/core/gimpcontext.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c
	* app/gui/edit-commands.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/vectors-commands.c
	* app/gui/view-commands.c
	* 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/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/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppaintbrushtool.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/gimpsheartool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptoolbox.c: s/gimp:/gimp-/g and s/_/-/g for all
	identifier strings (e.g. gimp:eraser_tool -> gimp-eraser-tool,
	gimp:layer-list -> gimp-layer-list, ...)

	* plug-ins/tools/common/gimpbrushselecttool.c:
	s/gimp:brush_select_tool/gimp-brush-select-tool-module/

	Don't quite remember why I introduced the "gimp:" prefix in the
	first place, but we can always add it back if we need it (for
	whatever reason)

	You may want to edit your ~/.gimp-1.3/sessionrc and devicerc or
	all session settings will be lost due to parse errors.
2002-03-21 12:17:17 +00:00
Michael Natterer 6ce08f3ce7 app/gui/Makefile.am removed...
2002-03-20  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/commands.[ch]: removed...

	* app/gui/help-commands.[ch]: ...and added here.

	* app/gui/menus.c: changed accordingly and added the mem_profile
	debug callback so all debug stuff is in one place.
2002-03-20 20:08:19 +00:00
Michael Natterer 47c5473e46 badly chopped into the new files below. Pass around much more "PlugIn" and
2002-03-20  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in.[ch]: badly chopped into the new files below.
	Pass around much more "PlugIn" and "Gimp" pointers instead of
	using "current_plug_in" and "the_gimp". Needs much more hacking
	though... :(

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-def.[ch]
	* app/plug-in/plug-in-params.[ch]
	* app/plug-in/plug-in-progress.[ch]
	* app/plug-in/plug-ins.[ch]: new files.

	* app/gui/Makefile.am
	* app/gui/plug-in-commands.[ch]
	* app/gui/plug-in-menus.[ch]: ditto.

	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-in-types.h: changed accordingly.

	* app/pdb/procedural_db.c: changed procedural_db_destroy_args()
	so it can be used from plug_in_args_destroy(). Fixed a parasite
	memory leak (or introduced a new SEGV, we'll see...).

	* app/display/Makefile.am: another "truly ugly hack" until the
	plug-in menu stuff is chopped even more...

	* app/gui/commands.[ch]: removed filters_repeat_cmd_callback() here,
	it is now in plug-in-commands.[ch].

	* app/widgets/gimpitemfactory.[ch]: removed all gimp_menu_item_*()
	hacks. We have a GimpItemFactory available in most cases we used
	to call this functions, and can use gimp_item_factors_from_path()
	in all other cases. The item factory stuff needs more work
	anyway...

	* app/app_procs.c
	* app/gimphelp.c
	* app/display/gimpdisplayshell.c
	* app/gui/file-dialog-utils.c
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/paths-dialog.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly (includes,
	renamed functions and gimp_menu_item_*() removal).

	* app/pdb/fileops_cmds.c
	* app/pdb/help_cmds.c
	* app/pdb/plug_in_cmds.c: regenerated.
2002-03-20 17:46:13 +00:00
Michael Natterer e302aeb17d pass an additional "Gimp" pointer to
2002-03-20  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.[ch]: pass an additional "Gimp"
	pointer to gimp_display_shell_set_menu_sensitivity() so we can
	correctly set the state of some items even without a display.
	Set the sensitivity of much more items. Never set submenus
	insensitive so the user can always browse the whole menu
	(according to the GNOME HIG).

	* app/image_map.c
	* app/display/gimpdisplay.c
	* app/gui/gui.c: changed accordingly.

	* app/gui/view-commands.[ch]: added a callback for the display
	filters dialog because display releted dialogs are going to
	be handled different soon.

	* app/gui/menus.c: use the new callback.
2002-03-20 15:32:35 +00:00
Sven Neumann 77a0b74727 registered GimpConvertDitherType.
2002-03-20  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch]: registered GimpConvertDitherType.

	* app/gui/convert-dialog.c: simplified a lot by using enums.

	* app/tools/paint_options.c: include gimpenummenu.h.
2002-03-20 14:10:45 +00:00
Michael Natterer 13b0321770 themes/Default/images/Makefile.am one more icon from Jimmac.
2002-03-20  Michael Natterer  <mitch@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-menu-selection-to-channel.png: one
	more icon from Jimmac.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/imagerc: add it.

	* app/gui/menus.c: use it.
2002-03-20 14:02:12 +00:00
Michael Natterer 04263ccb75 Oops, GimpContainer's "removed" signal has more parameters than "add" and
2002-03-19  Michael Natterer  <mitch@gimp.org>

	* app/gui/menus.c: Oops, GimpContainer's "removed" signal has more
	parameters than "add" and "remove", which is quite relevant now
	that we use the data pointer passed to the callback :)
	Pointed out by Dave Neary on #gimp.
2002-03-19 14:43:20 +00:00
Manish Singh 81f91377a5 slight cosmetic fix to make the treeview look nicer.
2002-03-18  Manish Singh  <yosh@gimp.org>

        * app/gui/preferences-dialog.c: slight cosmetic fix to make the
        treeview look nicer.
2002-03-18 21:25:17 +00:00
Sven Neumann fe96c95524 app/core/core-enums.h more enum cleanup (GimpOffsetType, MergeType).
2002-03-18  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.h
	* app/core/core-types.h: more enum cleanup (GimpOffsetType, MergeType).

	* app/core/gimpdrawable-offset.c
	* app/core/gimpimage-merge.[ch]
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* tools/pdbgen/pdb/image.pdb: changed accordingly.

	* app/pdb/drawable_cmds.c
	* app/pdb/image_cmds.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.
2002-03-18 17:24:52 +00:00
Sven Neumann d68b730a82 app/core/core-enums.h more enum cleanup (ChannelOps this time).
2002-03-18  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.h
	* app/core/core-types.h: more enum cleanup (ChannelOps this time).

	* app/core/gimpchannel.[ch]
	* app/core/gimpimage-mask-select.[ch]
	* app/gui/channels-commands.c
	* app/gui/vectors-commands.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/tools-types.h
	* app/widgets/gimpchannellistview.[ch]
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/selection_tools.pdb: changed accordingly.

	* app/pdb/channel_cmds.c
	* app/pdb/selection_cmds.c
	* app/pdb/selection_tools_cmds.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.
2002-03-18 16:22:14 +00:00
Sven Neumann f85c711c55 app/core/core-enums.h more enum cleanup (ConvertPaletteType and
2002-03-18  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.h
	* app/core/core-types.h: more enum cleanup (ConvertPaletteType and
	ConvertDitherType this time).

	* app/core/gimpimage-convert.[ch]
	* app/gui/convert-dialog.c
	* tools/pdbgen/pdb/convert.pdb: changed accordingly.

	* app/pdb/convert_cmds.c
	* libgimp/gimpconvert_pdb.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.
2002-03-18 13:55:19 +00:00
Sven Neumann bba46560ba app/core/core-enums.h moved some more enums into the right place and
2002-03-18  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.h
	* app/core/core-types.h: moved some more enums into the right place
	and namespacified them.

	* app/undo.c
	* app/core/gimpdrawable-bucket-fill.[ch]
	* app/core/gimpdrawable.c
	* app/core/gimpedit.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage-qmask.c
	* app/core/gimplayer.[ch]
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/channels-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/layers-commands.c
	* app/gui/menus.c
	* app/paint-funcs/paint-funcs.c
	* app/tools/gimpbucketfilltool.c
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/misc_tools.pdb: changed accordingly.

	* libgimp/gimpcompat.h
	* plug-ins/script-fu/siod-wrapper.c: added compat defines for changed
	GimpMaskApplyMode enum.

	* tools/pdbgen/enums.pl
	* app/pdb/drawable_cmds.c
	* app/pdb/edit_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/misc_tools_cmds.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c: regenerated.
2002-03-18 11:07:34 +00:00
Manish Singh 96f78088b0 tools/pdbgen/app.pl tools/pdbgen/enumcode-py.pl tools/pdbgen/enumcode.pl
2002-03-17  Manish Singh  <yosh@gimp.org>

        * tools/pdbgen/app.pl
        * tools/pdbgen/enumcode-py.pl
        * tools/pdbgen/enumcode.pl
        * tools/pdbgen/enumgen.pl: removed enum nick support, best to keep
        internal and external names consistent

        * app/core/core-enums.h: remove chops from enums. Change TRANS to
        TRANSPARENT in GimpBlendMode

        * app/core/core-types.h: remove chops and nicks from enums. Change INV
        to INVERSE and SUB to SUBTRACT to make things more clear

        * app/core/gimpchannel.c
        * app/gui/channels-commands.c
        * app/gui/vectors-commands.c
        * app/tools/gimpbezierselecttool.c
        * app/tools/gimpbycolorselecttool.c
        * app/tools/gimprectselecttool.c
        * app/tools/gimpselectiontool.c
        * app/tools/selection_options.c
        * app/tools/tools-types.h
        * app/widgets/gimpchannellistview.c
        * app/widgets/gimpvectorslistview.c: reflect SUB -> SUBTRACT change

        * app/core/gimpdrawable-blend.c: reflect TRANS -> TRANSPARENT change

        * app/core/gimplayer.c
        * app/gui/layers-commands.c: reflect INV -> INVERSE change

        * app/paint/paint-types.h: remove nick from PaintApplicationMode

        * app/tools/gimperasertool.c: fix tooltip

        * app/widgets/gimpenummenu.c: #include "libgimp/gimpintl.h" for
        gettext

        * libgimp/gimpcompat.h: compatibility enums here, since we removed
        the nicks

        * tools/pdbgen/enums.pl
        * libgimp/gimpenums.h
        * plug-ins/script-fu/script-fu-constants.c
        * app/core/core-enums.c
        * app/pdb/channel_cmds.c
        * app/pdb/drawable_cmds.c
        * app/pdb/edit_cmds.c
        * app/pdb/layer_cmds.c
        * app/pdb/misc_tools_cmds.c
        * app/pdb/paint_tools_cmds.c
        * app/pdb/selection_cmds.c
        * app/pdb/selection_tools_cmds.c: regenerated, enum changes

        * plug-ins/common/hot.c: GIMP_TRANS_IMAGE_FILL -> GIMP_TRANSPARENT_FILL

        * plug-ins/common/warp.c: GIMP_BG_IMAGE_FILL -> GIMP_BACKGROUND_FILL

        * plug-ins/script-fu/siod-wrapper.c: compat constant definitions
2002-03-17 22:54:26 +00:00
Sven Neumann 7aaa80ef06 new function to set the sensitivity of an option_menu.
2002-03-17  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.[ch]: new function to set the sensitivity
	of an option_menu.

	* app/base/base-enums.[ch]: register and describe GimpHistogramChannel.

	* app/core/Makefile.am
	* app/core/core-enums.[ch]: build with gimp-mkenums, added core-enums.c
	to CVS, added descriptions for GimpPreviewSize.

	* app/display/Makefile.am
	* app/display/display-enums.[ch]: build with gimp-mkenums, added
	display-enums.c to CVS, added descriptions for GimpCursorMode.

	* app/gui/preferences-dialog.c: more GimpEnumMenus.

	* app/tools/gimpcurvestool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimplevelstool.c: use a GimpEnumMenu for the Channel menu.
	Allow alpha channel in HistogramView. These tools needs more work...
2002-03-17 16:35:05 +00:00
Sven Neumann 26578e757c define GIMP_MKENUMS for use in Makefile.am.
2002-03-17  Sven Neumann  <sven@gimp.org>

	* configure.in: define GIMP_MKENUMS for use in Makefile.am.

	* tools/Makefile.am
	* tools/gimp-mkenums: a modified version of glib-mkenums that parses
	literal descriptions for enum values out of the header file.

	* app/base/Makefile.am
	* app/base/base-enums.h: added descriptions for the InterpolationType.

	* app/base/base-enums.c: added to CVS although it is generated since
	translatable messages are extracted from this file and translators
	shouldn't need to build stuff.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenummenu.[ch]: new widget to create a GtkMenu or a
	GtkOptionMenu directly from a registered enum.

	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/transform_options.c: use gimp_enum_option_menu_new() for
	the Interpolation menus.
2002-03-17 14:07:54 +00:00
Michael Natterer f8b4fbd477 namespaceified and cleaned up a lot. Removed the menu code.
2002-03-17  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcolormapeditor.[ch]: namespaceified and cleaned
	up a lot. Removed the menu code.

	* app/gui/menus.c: added a "<ColormapEditor>" item factory...

	* app/gui/Makefile.am
	* app/gui/colormap-editor-commands.[ch]: ...and callbacks for the
	new factory.

	* app/gui/menus.c: Cleaned up a lot. Removed most static variables.
	Enabled the menu debugging code again. Moved all debug and test
	entries to <Toolbox>/File/Debug. Added an "Open Recent" submenu
	to <Image>/File because it was a one-liner after the cleanup...

	* app/widgets/gimpeditor.c: create the icons in GTK_ICON_SIZE_MENU.
	Need to make this configurable using a style property...
2002-03-17 13:52:25 +00:00
Michael Natterer ef6c0e6b67 app/gui/Makefile.am removed...
2002-03-16  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/colormap-dialog.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcolormapeditor.[ch]: ...and added here.

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

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-menu-convert-grayscale.png
	* themes/Default/images/stock-menu-convert-indexed.png
	* themes/Default/images/stock-menu-convert-rgb.png
	* themes/Default/images/stock-menu-merge-down.png
	* themes/Default/images/stock-menu-reshow-filter.png
	* themes/Default/images/stock-menu-rotate-180.png
	* themes/Default/images/stock-menu-rotate-270.png
	* themes/Default/images/stock-menu-rotate-90.png
	* themes/Default/images/stock-menu-scale.png: new icons from Jimmac.

	* themes/Default/images/stock-menu-resize.png: my own doing. Someone
	needs to look at it :)

	* themes/Default/imagerc
	* libgimpwidgets/gimpstock.[ch]: added them.

	* app/gui/menus.c: use them.
2002-03-16 17:58:19 +00:00
Michael Natterer 1b2008567a renamed shell->cd_list to shell->filters and shell->cd_ui to
2002-03-15  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.[ch]: renamed shell->cd_list to
	shell->filters and shell->cd_ui to shell->filters_dialog.

	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-filter.c
	* app/display/gimpdisplayshell-render.c
	* app/gui/dialogs-constructors.c: changed accordingly.

	* app/display/gimpdisplayshell-filter-dialog.c: cleaned up the GUI.
	Still deprecated GtkCLists around...

	* app/widgets/gimpeditor.[ch]: added gimp_editor_new().

	* app/gui/image-commands.[ch]
	* app/gui/menus.c: added "<Image>/Image/Crop Image" because i was
	sick of clicking 20 times just to crop to the current selection.

	* themes/Default/gtkrc: removed "gimp-dock-style" and changed
	"gimp-gtk-icons" to "gimp-default-style". Set our widget class
	style property defaults there.
2002-03-15 15:09:58 +00:00
Michael Natterer 5e17408c84 Re-enabled the display filters. They work exactly the same way as before
2002-03-14  Michael Natterer  <mitch@gimp.org>

	Re-enabled the display filters. They work exactly the same way
	as before except for the color_area pseudo-display. More stuff
	to come...

	* app/display/Makefile.am: build them again.

	* app/display/gimpdisplayshell-filter-dialog.[ch]
	* app/display/gimpdisplayshell-filter.[ch]: changed to the new
	namespace, work on GimpDisplayShell instead of GimpDisplay.

	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell.[ch]: changed accordingly.

	* app/gui/dialogs-constructors.c: enabled the dialog constructor.

	* app/gui/gui.c: call the init() function.

	* app/gui/menus.c: enabled the menu entry, but moved it to
	<Image>/View. Moved "Undo History..." to <Image>/Image.

	* modules/Makefile.am: build and install the modules.

	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c: made them compile with minimal
	changes.

	Unrelated:

	* app/undo_history.c: connect to the image's "disconnect", not
	"destroy" signal.

	* app/tools/gimpselectiontool.c: mask out the irrelevant parts of
	the "state" passed to the modifier_key() func, so tool_options
	button toggling works with other modifiers (e.g. num_lock)
	pressed.
2002-03-14 22:42:50 +00:00
Michael Natterer b879840890 g_strdup() the stock_id passed to gimp_tool_info_new() because the
2002-03-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.c: g_strdup() the stock_id passed to
	gimp_tool_info_new() because the caller's memory may disappear
	after registering the tool (tool modules).

	Made a GimpDock out of the toolbox:

	* app/gui/Makefile.am
	* app/gui/color-area.[ch]
	* app/gui/indicator-area.[ch]
	* app/gui/toolbox.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolbox-color-area.[ch]
	* app/widgets/gimptoolbox-indicator-area.[ch]
	* app/widgets/gimptoolbox.[ch]: ...and added here.

	* app/widgets/gimpdock.[ch]: don't set a minimal width. Added a
	"destroy_if_empty" boolean so we can prevent destruction of the
	toolbox if it's last dockable is removed. Added gimp_dock_construct()
	which is called from GimpImageDock and GimpToolbox.

	* app/widgets/gimpimagedock.[ch]: Default to not showing the image
	menu, set a minimal width here, misc. minor cleanup.

	* app/widgets/gimpdockbook.c: some more GIMP_IS_IMAGE_DOCK()
	checks, fixed dnd widget creation.

	* app/widgets/gimpdialogfactory.[ch]: changed
	gimp_dialog_factories_toggle() to take just the toolbox_factory as
	parameter. When restoring the session use the created dock's
	dialog factory to create dockables, not the the factory we
	created the dock from (for the toolbox).

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

	* app/gui/dialogs.[ch]: create an own dialog factory for the toolbox
	and set dialogs_toolbox_new() as it's new_dock_func.

	* app/gui/dialogs-constructors.[ch]: changed dialogs_toolbox_get()
	accordingly.

	* app/gui/dialogs-commands.[ch]: added dialogs_show_toolbox(), ckeck
	if a dock is really a GimpImageDock before casting.

	* app/gui/gui.c
	* app/gui/menus.c
	* app/widgets/gimppaletteeditor.c: changed accordingly.

	* app/gui/color-notebook.c
	* app/gui/color-select.c
	* app/gui/colormap-dialog.c
	* app/gui/palette-editor-commands.c: removed useless inclusion of
	"gui/color-area.h".

	* themes/Default/gtkrc: set "gimp-dock-style" for GimpToolbox widgets.
2002-03-14 17:07:02 +00:00
Michael Natterer 4fc885d4f0 renamed parameters to be consistent with the other foo-select.* files.
2002-03-13  Michael Natterer  <mitch@gimp.org>

	* app/gui/brush-select.[ch]: renamed parameters to be consistent
	with the other foo-select.* files.

	* app/gui/tool-options-dialog.c: removed unused function.

	* app/plug-in/plug-in-types.h: PlugInImageType was accidentially
	exported to the PDB.

	* tools/pdbgen/enums.pl
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c: regenerated.

	More brush, pattern, ... PDB wrapper cleanup:

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/pattern_select.pdb: even more cleanup, guard
	all functions with if(!gimp->no_interface).

	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/palettes.pdb
	* tools/pdbgen/pdb/patterns.pdb: reordered functions to be
	consistent across all files. Generate libgimp wrappers for *all*
	functions because of API symmetry.

	* tools/pdbgen/pdb/gradients.pdb: renamed gradients_[get|set]_active
	to gradients_[get|set]_gradient because of API symmetry.

	* libgimp/gimpcompat.h: added the old function names here, guard
	the whole file with GIMP_ENABLE_COMPAT_CRUFT (it's back, yeah).

	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/gflare/gflare.c: use the new function names.

	* libgimp/gimpbrushes_pdb.[ch]
	* libgimp/gimpgradients_pdb.[ch]
	* libgimp/gimppalettes_pdb.[ch]
	* libgimp/gimppatterns_pdb.[ch]
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/palette_select_cmds.c
	* app/pdb/palettes_cmds.c
	* app/pdb/pattern_select_cmds.c
	* app/pdb/patterns_cmds.c: regenerated.
2002-03-13 15:29:59 +00:00
Michael Natterer 17d655c1c3 app/gimprc.[ch] app/gui/preferences-dialog.c
2002-03-12  Michael Natterer  <mitch@gimp.org>

	* app/gimprc.[ch]
	* app/gui/preferences-dialog.c
	* app/paint/gimppaintoptions.[ch]
	* app/tools/paint_options.[ch]
	* app/tools/tool_manager.[ch]: removed the "global_paint_options"
	gimprc option because it doesn't quite fit the new dockable dialog
	architecture.

	* app/gui/brush-select.[ch]
	* app/gui/gradient-select.[ch]
	* app/gui/palette-select.[ch]
	* app/gui/pattern-select.[ch]: removed the "Global Brush/Pattern/...
	Selection" part of them. They are now only used for temp popup
	selections and the PDB. *Lots* of cleanup.

	* app/gui/convert-dialog.c
	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/palette-import-dialog.c
	* app/plug-in/plug-in.c: changed accordingly.

	Cleaned up the palette and other data PDB stuff:

	* tools/pdbgen/Makefile.am
	* tools/pdbgen/groups.pl: added "palette_select" and "palettes".

	* tools/pdbgen/pdb/palette_select.pdb: new file. Makes the palette
	selection PDB controllable.

	* tools/pdbgen/pdb/palettes.pdb: new file cut out of palette.pdb
	because of API symmetry with brushes, patterns, ...

	* tools/pdbgen/pdb/palette.pdb: removed from here.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/palette.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb: lots of cleanup.

	Autogenerated stuff:

	* app/pdb/Makefile.am
	* app/pdb/palette_select_cmds.c
	* app/pdb/palettes_cmds.c: new files.

	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/internal_procs.c
	* app/pdb/palette_cmds.c
	* app/pdb/pattern_select_cmds.c
	* app/pdb/patterns_cmds.c: regenerated.

	* libgimp/Makefile.am
	* libgimp/gimp_pdb.h
	* libgimp/gimppalettes_pdb.[ch]
	* libgimp/gimppaletteselect_pdb.[ch]: new files.

	* libgimp/gimpgradientselect_pdb.[ch]
	* libgimp/gimppalette_pdb.[ch]
	* libgimp/gimppatterns_pdb.c: regenerated.

	* devel-docs/libgimp/tmpl/gimpgradients.sgml
	* devel-docs/libgimp/tmpl/gimppalette.sgml: regenerated.
2002-03-12 21:02:10 +00:00
Sven Neumann 672212e291 use a PangoAttributeList instead of PangoMarkup for the frame header. Also
2002-03-11  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: use a PangoAttributeList instead of
	PangoMarkup for the frame header. Also removed bold attribute and
	hardcoded size_request.
2002-03-11 20:23:26 +00:00
Michael Natterer a0e47ad8f1 app/gui/pattern-select.c proofreading by bex.
2002-03-11  Michael Natterer  <mitch@gimp.org>

	* app/gui/pattern-select.c
	* app/gui/preferences-dialog.c: proofreading by bex.

	* app/gui/brush-select.c
	* app/gui/gradient-select.c
	* app/gui/pattern-select.c: cleaned up the
	foo_select_change_callbacks() functions a bit.
2002-03-11 18:49:24 +00:00
Sven Neumann f2949a9262 *** empty log message *** 2002-03-11 16:56:36 +00:00