1. 11 Mar, 2003 3 commits
    • Michael Natterer's avatar
      app/display/Makefile.am new files implementing canvas padding, fullscreen · b36590e6
      Michael Natterer authored
      2003-03-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/display/Makefile.am
      	* app/display/gimpdisplayshell-appearance.[ch]: new files
      	implementing canvas padding, fullscreen toggling and utility
      	functions to show/hide GimpDisplayShell components (menubar,
      	statusbar, ...) Added the possibility to show/hide the scrollbars.
      
      	* app/display/gimpdisplayshell.[ch]: added struct
      	GimpDisplayShellVisibility which stores the GUI components'
      	visibility. Added two such structs to the GimpDisplayShell struct:
      	one for normal mode and one for fullscreen mode. Default to
      	"everything invisible" for fullscreen.  Fixes bug #74383.
      
      	* app/display/gimpdisplayshell-callbacks.c: fiddle with the
      	two visibility structs when toggling fullscreen.
      
      	* app/display/gimpdisplayshell-handlers.c: #include
      	"gimpdisplayshell-appearance.h"
      
      	* app/gui/image-menu.c
      	* app/gui/view-commands.[ch]: added a "Show Scrollbars" menu entry,
      	use the new widget show/hide utility functions.
      b36590e6
    • Sven Neumann's avatar
      app/display/gimpdisplayshell-callbacks.c app/display/gimpdisplayshell.[ch] · 2553b3ca
      Sven Neumann authored
      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.
      2553b3ca
    • Sven Neumann's avatar
      app/display/gimpdisplayshell-callbacks.c app/display/gimpdisplayshell.[ch] · 632b7f8a
      Sven Neumann authored
      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.
      632b7f8a
  2. 10 Mar, 2003 1 commit
    • Michael Natterer's avatar
      added "gboolean data_editable" which gets set in · 1522b841
      Michael Natterer authored
      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.
      1522b841
  3. 06 Mar, 2003 2 commits
    • Michael Natterer's avatar
      themes/Default/images/stock-delete-16.png · 3c33140f
      Michael Natterer authored
      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...
      3c33140f
    • Sven Neumann's avatar
      fixed parasite serialization that I broke yesterday. · 5e11bae6
      Sven Neumann authored
      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.
      5e11bae6
  4. 05 Mar, 2003 1 commit
    • Michael Natterer's avatar
      added GError reporting, removed g_message() stuff. · d404068c
      Michael Natterer authored
      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.
      d404068c
  5. 04 Mar, 2003 1 commit
    • Michael Natterer's avatar
      added new function file_save_as() which always uses the uri and file_proc · a53f1ba4
      Michael Natterer authored
      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".
      a53f1ba4
  6. 25 Feb, 2003 1 commit
    • Sven Neumann's avatar
      app/display/gimpdisplayshell-callbacks.[ch] override · 3d526e74
      Sven Neumann authored
      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.
      3d526e74
  7. 24 Feb, 2003 1 commit
  8. 21 Feb, 2003 2 commits
    • Michael Natterer's avatar
      Started migration from GtkList to GtkTreeView: · 9ee632a6
      Michael Natterer authored
      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.
      9ee632a6
    • Michael Natterer's avatar
      Refactored the GimpDisplayShell update/draw code: · 5f5e0bf5
      Michael Natterer authored
      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().
      5f5e0bf5
  9. 20 Feb, 2003 1 commit
    • Michael Natterer's avatar
      app/widgets/Makefile.am app/widgets/widgets-types.h new GimpEditor · 94bdcbcc
      Michael Natterer authored
      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.
      94bdcbcc
  10. 17 Feb, 2003 1 commit
    • Michael Natterer's avatar
      added "undo_desc" parameters. · fefaa309
      Michael Natterer authored
      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.
      fefaa309
  11. 14 Feb, 2003 1 commit
    • Michael Natterer's avatar
      Moved the undo step implementations to the core and pass around lots of · 7a6a8d9d
      Michael Natterer authored
      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.
      7a6a8d9d
  12. 13 Feb, 2003 1 commit
    • Michael Natterer's avatar
      changed FOO_UNDO enum values to GIMP_UNDO_FOO. · b600fd86
      Michael Natterer authored
      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.
      b600fd86
  13. 12 Feb, 2003 1 commit
    • Michael Natterer's avatar
      Moved the undo system to the core: Keep GimpUndoStack objects as undo and · be70105d
      Michael Natterer authored
      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.
      be70105d
  14. 11 Feb, 2003 2 commits
    • Michael Natterer's avatar
      added new virtual function duplicate() as replacement for all · 436ed648
      Michael Natterer authored
      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.
      436ed648
    • Michael Natterer's avatar
      added lots of members for the complete state of the plug-ins. · af330e96
      Michael Natterer authored
      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.
      af330e96
  15. 31 Jan, 2003 1 commit
    • Michael Natterer's avatar
      added gimp_item_configure() and gimp_item_copy(). · 794885e2
      Michael Natterer authored
      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().
      794885e2
  16. 30 Jan, 2003 1 commit
    • Michael Natterer's avatar
      renamed plug_in->busy to plug_in->in_temp_proc. Added a stack of · a3c38814
      Michael Natterer authored
      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.
      a3c38814
  17. 13 Jan, 2003 1 commit
    • Michael Natterer's avatar
      app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] · 6f29b766
      Michael Natterer authored
      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.
      6f29b766
  18. 12 Jan, 2003 1 commit
    • Michael Natterer's avatar
      pass the GimpItemListView as "data" to the item_factory callbacks, not · f44500aa
      Michael Natterer authored
      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).
      f44500aa
  19. 10 Jan, 2003 2 commits
    • Michael Natterer's avatar
      app/widgets/gimpcolormapeditor.c app/widgets/gimpcontainereditor.[ch] pass · dd27eb1e
      Michael Natterer authored
      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".
      dd27eb1e
    • Michael Natterer's avatar
      Move away from creating all item_factories statically in menus_init() but · 8d86ec25
      Michael Natterer authored
      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.
      8d86ec25
  20. 06 Jan, 2003 1 commit
  21. 05 Jan, 2003 2 commits
  22. 02 Jan, 2003 1 commit
    • Michael Natterer's avatar
      Replaced Garry's fix for bug #98843 by a more general solution which stops · ea95a322
      Michael Natterer authored
      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.
      ea95a322
  23. 14 Dec, 2002 3 commits
    • Michael Natterer's avatar
      use gdisp->gimage->gimp instead of the_gimp. · 1d1be9f0
      Michael Natterer authored
      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().
      1d1be9f0
    • Sven Neumann's avatar
      data is not a Gimp pointer if this function is called from an image · b9b40c45
      Sven Neumann authored
      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.
      b9b40c45
    • Michael Natterer's avatar
      Changed menubar showing/hiding to work like rulers and statusbar: · f03b6b6d
      Michael Natterer authored
      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.
      f03b6b6d
  24. 10 Dec, 2002 1 commit
    • Michael Natterer's avatar
      The unbelievable happened: a menu bar per display (optionally) · b1ebd9cd
      Michael Natterer authored
      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.
      b1ebd9cd
  25. 05 Dec, 2002 1 commit
    • Michael Natterer's avatar
      Cleaned up the exit process: · b2c3f018
      Michael Natterer authored
      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.
      b2c3f018
  26. 03 Dec, 2002 2 commits
    • Michael Natterer's avatar
      renamed gdisplays_reconnect() to gimp_displays_reconnect() and added a · 9775e144
      Michael Natterer authored
      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.
      9775e144
    • Michael Natterer's avatar
      named the menu separator "/fg-bg-separator", not just "/---". · 9eb748ad
      Michael Natterer authored
      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.
      9eb748ad
  27. 02 Dec, 2002 1 commit
    • Michael Natterer's avatar
      use GError for reporting load/save errors. Added gimp_data_error_quark() · 4ccd0f0a
      Michael Natterer authored
      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().
      4ccd0f0a
  28. 30 Nov, 2002 1 commit
    • Michael Natterer's avatar
      removed the global "base_config" variable. · 5c86e639
      Michael Natterer authored
      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.
      5c86e639
  29. 18 Nov, 2002 1 commit
    • Sven Neumann's avatar
      Finally landed the new GimpConfig based gimprc parser. It's not finished · 073e533a
      Sven Neumann authored
      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.
      073e533a
  30. 14 Nov, 2002 1 commit
    • Michael Natterer's avatar
      removed the old hack which sets tool->gdisp. Fixes bug #98056. · 1f3bd288
      Michael Natterer authored
      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().
      1f3bd288