1. 11 May, 2005 1 commit
    • Michael Natterer's avatar
      Some dock refactoring which separates the docking logic from active image · 1f1305c3
      Michael Natterer authored
      2005-05-11  Michael Natterer  <mitch@gimp.org>
      
      	Some dock refactoring which separates the docking logic from
      	active image and UI manager stuff:
      
      	* app/widgets/gimpmenudock.[ch]: new widget renamed from
      	GimpImageDock, zero changes except the name change.
      
      	* app/widgets/gimpimagedock.[ch]: new widget derived from
      	GimpDock. Keeps the UI manager.
      
      	* app/widgets/gimpdock.[ch]: removed the UI manager. GimpDock only
      	contains the basic docking logic again.
      
      	* app/widgets/gimpmenudock.[ch]
      	* app/widgets/gimptoolbox.[ch]: derive them from GimpImageDock.
      
      	* app/widgets/Makefile.am
      	* app/widgets/widgets-types.h
      	* app/actions/dialogs-commands.c
      	* app/actions/dock-actions.c
      	* app/actions/dock-commands.c
      	* app/actions/dockable-commands.c
      	* app/dialogs/dialogs-constructors.c: changed accordingly.
      1f1305c3
  2. 12 Apr, 2005 2 commits
    • Michael Natterer's avatar
      don't use the image container as display container. · bf1b9651
      Michael Natterer authored
      2005-04-13  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpimagedock.c (gimp_image_dock_image_changed):
      	don't use the image container as display container.
      bf1b9651
    • Sven Neumann's avatar
      n2005-04-12 Sven Neumann <sven@gimp.org> · 0c91d7d6
      Sven Neumann authored
      	* app/core/gimpcontainer.[ch]: added gimp_container_is_empty().
      
      	* app/core/gimpcontext.c
      	* app/core/gimpimage.c
      	* app/dialogs/palette-import-dialog.c
      	* app/text/gimptextlayer.c
      	* app/widgets/gimpimagedock.c: use the new function.
      0c91d7d6
  3. 09 Mar, 2005 1 commit
    • Sven Neumann's avatar
      app/widgets/gimpcontainerview.c app/widgets/gimpimagedock.c · 73bfd572
      Sven Neumann authored
      2005-03-09  Sven Neumann  <sven@gimp.org>
      
      	* app/widgets/gimpcontainerview.c
      	* app/widgets/gimpimagedock.c
      	* app/widgets/gimptoolbox.c
      	* app/widgets/gtkwrapbox.c
      	* libgimpwidgets/gimpcellrenderercolor.c
      	* libgimpwidgets/gimpcellrenderertoggle.c
      	* libgimpwidgets/gimpframe.c: use canonical names when registering
      	param specs.
      73bfd572
  4. 31 Jan, 2005 1 commit
    • Michael Natterer's avatar
      Some cleanup to make plug-in menu creation less hackish and finally enable · f3e0792d
      Michael Natterer authored
      2005-01-31  Michael Natterer  <mitch@gimp.org>
      
      	Some cleanup to make plug-in menu creation less hackish and
      	finally enable registering plug-in menu entries in much more UI
      	managers (not only in the image and toolbox menus):
      
      	* app/menus/menus.c: added a <Toolbox> UI manager instead of
      	creating the toolbox menu from the <Image> UI manager.
      
      	* app/widgets/gimpimagedock.[ch]: removed the ui_manager and the
      	signal connections to update it...
      
      	* app/widgets/gimpdock.[ch]: ...and added them here so all docks
      	have their own UI manager. Determine which manager to create from
      	looking at GimpDockClass::ui_manager_name (defaults to <Dock>).
      
      	* app/widgets/gimptoolbox.c: set ui_manager_name to <Toolbox> and
      	use the UI manager created by our parent class instead of using
      	the <Image> one.
      
      	(toolbox_create_tools): use gimp_action_get_accel_closure()
      	instead of doing evil hacks.
      
      	* app/gui/gui-vtable.c
      	* app/menus/plug-in-menus.c: removed lots of special casing of the
      	<Image> UI manager. The code is almost ready for allowing plug-in
      	menus under <Layers>, <Channels>, <Brushes> etc.
      f3e0792d
  5. 12 Aug, 2004 1 commit
    • Michael Natterer's avatar
      make sure that all actions, even if they have no menu proxy, can be · 1437f52d
      Michael Natterer authored
      2004-08-12  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpmenufactory.c (gimp_menu_factory_manager_new):
      	make sure that all actions, even if they have no menu proxy, can
      	be invoked by their accelerators. Fixes bug #149938.
      
      	* app/widgets/gimpimagedock.c (gimp_image_dock_constructor):
      	removed the same code here.
      
      	* app/widgets/gimpactionview.[ch] (gimp_action_view_dispose): new
      	function which disconnects from "accel_changed" of the accel_group
      	before upchaining (== before emitting "destroy").
      
      	The above changes make this one redundant, but since the crash in
      	bug #149938 was triggered by "accel_changed" emitted in the middle
      	of g_object_unref(tree_model), it feels better to be paranoic here
      	(fiddling with objects in destruction is no fun).
      
      	(gimp_action_view_accel_edited): don't warn if assigning the same
      	accel to the same action again.
      
      	(gimp_action_view_new): don't leak all accel_closures.
      1437f52d
  6. 11 May, 2004 1 commit
    • Michael Natterer's avatar
      correctly get the default GimpContainerViewInterface implementation and · e53a7cb4
      Michael Natterer authored
      2004-05-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpcontainercombobox.c: correctly get the default
      	GimpContainerViewInterface implementation and chain up to it for
      	clear_items(). Update the preview renderers on "update", enable
      	deselecting everything.
      
      	* app/widgets/gimpimagedock.[ch]
      	* app/gui/file-new-dialog.c
      	* app/gui/palette-import-dialog.c
      	* app/gui/preferences-dialog.c
      	* app/gui/stroke-dialog.c: use GimpContainerComboBox instead of
      	GimpContainerMenuImpl.
      
      	* app/gui/palette-import-dialog.c: cleanup.
      e53a7cb4
  7. 05 May, 2004 1 commit
    • Michael Natterer's avatar
      Finally enable global accelerators in all docks: · cd8243e1
      Michael Natterer authored
      2004-05-05  Michael Natterer  <mitch@gimp.org>
      
      	Finally enable global accelerators in all docks:
      
      	* app/widgets/gimpimagedock.c (gimp_image_dock_constructor):
      	iterate all of the UI manager's actions and enable their
      	accelerators manually. Fixes bug #119878.
      cd8243e1
  8. 04 May, 2004 1 commit
    • Michael Natterer's avatar
      register a <Dock> UI manager which has all action groups <Image> has · d8962eca
      Michael Natterer authored
      2004-05-04  Michael Natterer  <mitch@gimp.org>
      
      	* app/gui/menus.c: register a <Dock> UI manager which has all
      	action groups <Image> has except "view".
      
      	* app/widgets/gimpimagedock.[ch]: re-enabled the global shortcuts,
      	using UI manager instead of item factory. Unfortunately actions
      	without proxy widgets can't be activated so this change is pretty
      	useless. Oh well, will find a hack to work around this later...
      d8962eca
  9. 02 May, 2004 1 commit
    • Michael Natterer's avatar
      added help IDs to all actions representing the toplevel popups and menus · 9377b26e
      Michael Natterer authored
      2004-05-02  Michael Natterer  <mitch@gimp.org>
      
      	* app/actions/*-actions.c: added help IDs to all actions
      	representing the toplevel popups and menus (as fallbacks for the
      	still-to-be-written help system intrgration of GimpUIManager).
      
      	* app/display/gimpdisplayshell.c (gimp_display_shell_new): removed
      	call to gtk_ui_manager_ensure_update() because that's done by
      	gimp_ui_manager_ui_get() now.
      
      	* app/widgets/gimpmenufactory.[ch]: removed API to register and
      	create item factories.
      
      	* app/gui/menus.c: changed accordingly.
      
      	* app/gui/dialogs.c
      	* app/actions/plug-in-commands.c
      	* app/gui/file-dialog-utils.c
      	* app/gui/file-save-dialog.c
      	* app/widgets/gimpdataeditor.c
      	* app/widgets/gimpdockable.c
      	* app/widgets/gimpdockbook.[ch]
      	* app/widgets/gimpimagedock.c
      	* app/widgets/gimpitemtreeview.c: removed leftover item factory
      	cruft.
      
      	* app/widgets/widgets-types.h: removed item factory typedefs...
      
      	* app/widgets/gimpitemfactory.h: ...and added them here.
      
      	* app/widgets/gimpactiongroup.[ch]: added new function
      	gimp_action_group_add_plug_in_actions().
      
      	* app/actions/plug-in-actions.c: use it here instead of adding
      	the actions manually.
      
      	* app/widgets/gimptoolbox.c: ported the code which dynamically
      	updates the tool button tooltips on accelerator changes to
      	GtkAction. Disabled the whole stuff because GTK+ lacks
      	gtk_action_get_accel_closure().
      9377b26e
  10. 03 Mar, 2004 1 commit
  11. 14 Feb, 2004 1 commit
    • Michael Natterer's avatar
      Fixed lots of QuickMask brokenness by letting the image adjust its · 25b81b15
      Michael Natterer authored
      2004-02-14  Michael Natterer  <mitch@gimp.org>
      
      	Fixed lots of QuickMask brokenness by letting the image adjust
      	its qmask_state automatically:
      
      	* app/core/gimpimage-qmask.h: #define GIMP_IMAGE_QMASK_NAME "Qmask".
      	Use the define in all files below.
      
      	* app/core/gimpimage.[ch]: split gimp_image_drawable_add,_remove()
      	into separate handlers for layers and channels. Added a
      	"name_changed" handler for all channels. In the channel "add",
      	"remove" and "name_changed" handlers, check if it was a channel
      	named "Qmask" that was added, removed or renamed and call
      	gimp_image_set_qmask_state() accordingly.
      
      	* app/core/core-enums.[ch]
      	* app/core/gimpimage-undo-push.[ch]
      	* app/core/gimpundo.c: removed all Qmask undo code because the image
      	does the right thing without undo interaction now.
      
      	* app/core/gimpimage-qmask.c (gimp_image_set_qmask_state): set
      	gimage->qmask_state early so we can return early when called
      	recursively. Removed calls to gimp_image_undo_push_image_qmask().
      	Returned "removed" callback (it was utterly broken the way it was
      	implemented).
      
      	* app/display/gimpdisplayshell-callbacks.c
      	(gimp_display_shell_qmask_toggled): check if the image's
      	qmask state needs to be changed before changing it.
      
      	* app/xcf/xcf-load.c (xcf_load_channel): removed code which
      	recognized the qmask. GimpImage does this automatically now.
      
      	* app/gui/qmask-commands.c: cleanup.
      
      	* app/widgets/gimpimagedock.c (gimp_image_dock_constructor):
      	destroy the "/Select/By Color" and "/Select/Toggle QuickMask" menu
      	items.
      
      	* app/widgets/image-menu.c (image_menu_update): changed accordingly.
      25b81b15
  12. 02 Feb, 2004 1 commit
    • Michael Natterer's avatar
      also destroy the <Image> factory's "Tools" submenu because menu shortcuts · 528bb75c
      Michael Natterer authored
      2004-02-02  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpimagedock.c (gimp_image_dock_constructor):
      	also destroy the <Image> factory's "Tools" submenu because menu
      	shortcuts with no or <shift> modifier prevent this key to be
      	entered in text entries. This really badly baldy cries for
      	GTK+ 2.4's GtkActions...
      528bb75c
  13. 31 Jan, 2004 1 commit
    • Michael Natterer's avatar
      Use the global <Image> accel_group in all docks except the toolbox (the · 3781c7fb
      Michael Natterer authored
      2004-01-31  Michael Natterer  <mitch@gimp.org>
      
      	Use the global <Image> accel_group in all docks except the
      	toolbox (the latter needs GTK+ 2.4's new menu features).
      	Addresses bug #119878:
      
      	* app/gui/buffers-commands.c
      	* app/gui/channels-commands.c
      	* app/gui/data-commands.c
      	* app/gui/documents-commands.c
      	* app/gui/drawable-commands.c
      	* app/gui/edit-commands.c
      	* app/gui/file-commands.c
      	* app/gui/gradients-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/tool-options-commands.c
      	* app/gui/tools-commands.c
      	* app/gui/vectors-commands.c
      	* app/gui/view-commands.c: changed the various return_if_no_foo()
      	macros to also accept a GimpDock as user_data.
      
      	* app/gui/image-menu.c (image_menu_update): don't update the
      	display related menu items if they don't exist (see below).
      
      	* app/gui/gui.c (gui_display_changed): simplified.
      
      	* app/widgets/gimpimagedock.[ch]: create an "<Image>" item_factory
      	and attach its accel_group to the dock. Destroy all display
      	related menu items. Destroy the layer stack navigation items
      	because their default shortcuts interfere with tree and grid view
      	keybindings. Connect to "image_changed" of the dock's private
      	context and to "flush" of the image container to update the
      	item_factory's state.
      3781c7fb
  14. 20 Nov, 2003 1 commit
    • Sven Neumann's avatar
      added GimpWindowTypeHint enum. · 5a43e55c
      Sven Neumann authored
      2003-11-20  Sven Neumann  <sven@gimp.org>
      
      	* app/widgets/widgets-enums.[ch]: added GimpWindowTypeHint enum.
      
      	* app/widgets/gimpwidgets-utils.{ch]: added a utility function
      	that translates GimpWindowTypeHint to GdkWindowTypeHint.
      
      	* app/config/gimpguiconfig.[ch]
      	* app/config/gimprc-blurbs.h: added two new gimprc options that
      	allow to configure which window type hint to set on the toolbox
      	and on dock windows.
      
      	* app/widgets/gimpdock.[ch}: use the window type hint from gimprc.
      	Introduced construct properties and got rid of gimp_dock_construct().
      
      	* app/widgets/gimpimagedock.c
      	* app/widgets/gimptoolbox.c: changed accordingly.
      
      	* app/gui/preferences-dialog.c (prefs_dialog_new): let the Themes
      	frame expand.
      5a43e55c
  15. 01 Nov, 2003 1 commit
    • Manish Singh's avatar
      Only add FOO_DISABLE_DEPRECATED flags with GTK+ 2.2.x. Add · 3b6318bf
      Manish Singh authored
      2003-11-01  Manish Singh  <yosh@gimp.org>
      
              * configure.in: Only add FOO_DISABLE_DEPRECATED flags with GTK+ 2.2.x.
              Add -DGDK_MULTIHEAD_SAFE.
      
              * app/config/test-config.c: use guints for strlen()
      
              * app/gui/gui.c
              * app/gui/info-window.c
              * app/gui/menus.c
              * app/widgets/gimpcontainerview.c
              * app/widgets/gimpcursor.c
              * app/widgets/gimpdevices.c
              * app/widgets/gimpdevicestatus.c
              * app/widgets/gimpimagedock.c
              * app/widgets/gimpitemfactory.c
              * app/widgets/gimpnavigationpreview.c
              * app/widgets/gimptoolbox.c
              * app/widgets/gimptooloptionseditor.c
              * app/widgets/gimpwidgets-utils.c
              * libgimp/gimpbrushmenu.c
              * libgimp/gimppatternmenu.c
              * libgimp/gimpui.c
              * plug-ins/FractalExplorer/Dialogs.c
              * plug-ins/FractalExplorer/FractalExplorer.c
              * plug-ins/common/screenshot.c
              * plug-ins/gimpressionist/gimpressionist.c: more GDK_MULTIHEAD_SAFE
              fixes.
      
              * plug-ins/common/wmf.c: #undef GDK_MULTIHEAD_SAFE.. this plug-in
              is going away anyway.
      
              * app/widgets/gimpcursor.h: add #warning about needing a proper
              multihead safe API.
      
              * app/gui/vectors-commands.c: s/clipoard/clipboard/
      3b6318bf
  16. 23 Oct, 2003 1 commit
  17. 18 Oct, 2003 1 commit
    • Michael Natterer's avatar
      need to set docked_iface->get_preview to NULL explicitly now that the · 2e9f3fb9
      Michael Natterer authored
      2003-10-18  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpitemtreeview.c
      	(gimp_item_tree_view_docked_iface_init): need to set
      	docked_iface->get_preview to NULL explicitly now that the
      	interface vtable inheriting is fixed (the layers, channels and
      	paths dialogs can't show preview tabs because they don't always
      	have a container).
      
      	* app/widgets/gimpimagedock.c (gimp_image_dock_get_aux_info):
      	fixed typo: s/auctive/active/. Added #defines for the magic
      	aux-info identifiers to avoid bugs like that.
      
      	* app/widgets/gimpcoloreditor.c
      	* app/widgets/gimpdataeditor.c
      	* app/widgets/gimppaletteeditor.c. addef #defines for aux-info
      	identifiers here, too.
      2e9f3fb9
  18. 11 Oct, 2003 2 commits
    • Michael Natterer's avatar
      added utility function gimp_session_info_aux_new(). · 158aa7f2
      Michael Natterer authored
      2003-10-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpsessioninfo.[ch]: added utility function
      	gimp_session_info_aux_new().
      
      	* app/widgets/gimpcoloreditor.c
      	* app/widgets/gimpdataeditor.c
      	* app/widgets/gimpimagedock.c (get_aux_info): use it.
      158aa7f2
    • Michael Natterer's avatar
      app/widgets/widgets-types.h added new struct GimpSessionInfoAux which · b136228d
      Michael Natterer authored
      2003-10-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/widgets-types.h
      	* app/widgets/gimpsessioninfo.[ch]: added new struct
      	GimpSessionInfoAux which contains "gchar *name" and "gchar *value".
      	Changed sessionrc "aux-info" format again to be really extendable
      	this time. Also breaks everybody's sessionrc again.
      
      	* app/widgets/gimpimagedock.c
      	* etc/sessionrc: changed accordingly.
      
      	Implemented the stuff suggested in bug #122964. Fixes bug #122964
      	and bug #52206:
      
      	* app/widgets/gimpdataeditor.[ch]: replaced the "Gimp" member by a
      	"GimpDataFactory" and changed gimp_data_editor_construct()
      	accordingly. Implement GimpDockedInterface::set_aux_info() and
      	get_aux_info() and remember the currently edited data across
      	sessions.
      
      	* app/gui/gradient-editor-commands.c
      	* app/gui/gradient-editor-menu.c
      	* app/widgets/gimpbrusheditor.c
      	* app/widgets/gimpgradienteditor.c
      	* app/widgets/gimppaletteeditor.c: changed accordingly.
      
      	* app/widgets/gimpcoloreditor.c: remember the active color
      	selector across sessions.
      b136228d
  19. 10 Oct, 2003 1 commit
    • Michael Natterer's avatar
      app/widgets/Makefile.am app/widgets/widgets-types.h new files implementing · 99746e1d
      Michael Natterer authored
      2003-10-10  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/Makefile.am
      	* app/widgets/widgets-types.h
      	* app/widgets/gimpdocked.[ch]: new files implementing
      	GimpDockedInterface, a GTypeInterface which must be implemented by
      	all widgets which want to be packed into a GimpDockable. Has
      	virtual functions similar to the ones GimpDockable had.
      
      	* app/widgets/gimpdockable.[ch]: removed all virtual functions and
      	all function pointers from the instance struct (also the ones just
      	added in the commit below). Make sure only widgets implementing
      	the GimpDockedIface are added and simply call the child's
      	GimpDocked functions where we used to call our own virtual
      	functions and function pointers.
      
      	* app/widgets/gimpcoloreditor.c
      	* app/widgets/gimpcontainereditor.c
      	* app/widgets/gimpcontainergridview.c
      	* app/widgets/gimpcontainerview.c
      	* app/widgets/gimpeditor.c
      	* app/widgets/gimpimageeditor.c
      	* app/widgets/gimpitemtreeview.c
      	* app/widgets/gimpsessioninfo.c
      	* app/widgets/gimptooloptionseditor.c
      	* app/display/gimpnavigationview.c: implement GimpDockedIface.
      
      	* app/gui/dialogs-constructors.c: removed all that get_preview_func(),
      	set_context_func() etc. cruft since that's done by GimpDockedIface.
      	It's really a file of constructors now.
      
      	* app/gui/dialogs-menu.c: changed accordingly.
      
      	* app/widgets/gimpimagedock.c: forgotten in the commit below.
      99746e1d
  20. 08 Oct, 2003 1 commit
    • Michael Natterer's avatar
      added new pure virtual function GimpDock::setup() which configures a dock · 181a2c48
      Michael Natterer authored
      2003-10-08  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpdock.[ch]: added new pure virtual function
      	GimpDock::setup() which configures a dock like a passed template
      	dock.
      
      	* app/widgets/gimpimagedock.c: implement it and set
      	"show_image_menu" and "auto_follow_active" accordingly.
      
      	* app/widgets/gimpdockable.c (gimp_dockable_detach): call
      	gimp_dock_setup() to configure the new dock like the old one.
      	Removed inclusion if "gimpimagedock.h".
      
      	* app/gui/dialogs-commands.c: minor code cleanups.
      181a2c48
  21. 26 Aug, 2003 1 commit
    • Michael Natterer's avatar
      added some toolbox and dock related help IDs. · 576057b1
      Michael Natterer authored
      2003-08-26  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimphelp-ids.h: added some toolbox and dock related
      	help IDs.
      
      	* app/gui/dialogs-menu.c
      	* app/widgets/gimpimagedock.c
      	* app/widgets/gimptoolbox.c: use them.
      576057b1
  22. 08 Jul, 2003 1 commit
    • Michael Natterer's avatar
      Added configurable styles for dockable tabs (fixes bug #87376): · 6fabca2e
      Michael Natterer authored
      2003-07-08  Michael Natterer  <mitch@gimp.org>
      
      	Added configurable styles for dockable tabs (fixes bug #87376):
      
      	* app/widgets/widgets-enums.[ch]: added new enum GimpTabStyle
      	which can be one on { ICON, NAME, ICON_NAME, ICON_BLURB }.
      
      	* app/widgets/gimpdockable.[ch]: added a GimpTabStyle member to
      	the GimpDockable struct which defaults to GIMP_TAB_STYLE_ICON.
      	Renamed "short_name" to "name" and "name" to "blurb". Renamed
      	GimpDockableGetTabFunc to GimpDockableGetIconFunc. Implemented all
      	tab styles in gimp_dockable_real_get_tab_widget() and use the
      	"get_icon_func" only for creating the tab's icon, not the entire
      	tab widget.
      
      	* app/widgets/gimpdockbook.[ch]: changed accordingly. Create the
      	menu widgets and the DND icon using gimp_dockable_get_tab_widget()
      	with tab_style == GIMP_TAB_STYLE_ICON_BLURB instead of duplicating
      	tons of code. Made gimp_dockbook_get_tab_widget() public because
      	it's needed for exchanging tabs on-the-fly.
      
      	* app/widgets/gimpimagedock.c: changed accordingly.
      
      	* app/widgets/gimpdialogfactory.c: remember the dockables' tab
      	style in sessionrc.
      
      	* app/gui/dialogs-menu.c: added a submenu to select the tab style
      	for each dockable.
      
      	* app/gui/dialogs-commands.[ch]: new callback
      	dialogs_tab_style_cmd_callback().
      
      	* app/gui/dialogs-constructors.[ch]: added stock_ids to all
      	dockables, swapped the "name" and "blurb" parameters, reordered
      	functions, cleanup.
      
      	* app/gui/dialogs-menu.c
      	* app/gui/image-menu.c
      	* app/gui/toolbox-menu.c: use GIMP_STOCK_DEFAULT_COLORS for the
      	color editor dockable and renamed it to "FG/BG Color".
      6fabca2e
  23. 17 May, 2003 1 commit
    • Michael Natterer's avatar
      Fixed File->Revert, which was completely broken before: · 9252db58
      Michael Natterer authored
      2003-05-17  Michael Natterer  <mitch@gimp.org>
      
      	Fixed File->Revert, which was completely broken before:
      
      	* app/gui/file-commands.c (file_revert_confirm_callback): set the
      	new image on all GimpContexts which had the old image set.  Unref
      	the new image after the displays are reconnected.
      
      	Added some paranoia code for similar future situations (the
      	functions below were not broken, but affected by the above bug):
      
      	* app/display/gimpdisplay-handlers.c (gimp_display_disconnect):
      	set gdisp->gimage to NULL before unrefing the image.
      
      	* app/widgets/gimpimagedock.c (gimp_image_dock_image_changed):
      	unref the gimage pointer returned by g_object_get() only if it is
      	non-NULL. Cleanup.
      9252db58
  24. 14 May, 2003 1 commit
  25. 03 May, 2003 1 commit
    • Michael Natterer's avatar
      added "dockable_added", "dockable_removed" and "dockable_reordered" · a51bff58
      Michael Natterer authored
      2003-05-03  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpdockbook.[ch]: added "dockable_added",
      	"dockable_removed" and "dockable_reordered" signals and emit them.
      
      	* app/widgets/gimpimagedock.[ch]: implement GimpDock::book_added()
      	and GimpDock::book_removed(). Connect to the above signals and
      	update the window title as proposed in bug #111971. Idle-update
      	the title so subsequent changes are compressed. Fixes bug #111971.
      
      	* app/widgets/gimpdock.c: cleanup.
      a51bff58
  26. 08 Apr, 2003 1 commit
    • Michael Natterer's avatar
      added vitrual function GimpViewable::get_description() which returns the · 99d93b92
      Michael Natterer authored
      2003-04-08  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpviewable.[ch]: added vitrual function
      	GimpViewable::get_description() which returns the string that
      	should be presented to the user plus an optional tooltip with more
      	information. The default implementation just returns the object's
      	name and no tooltip.
      
      	* app/core/gimpbrush.c
      	* app/core/gimpbuffer.c
      	* app/core/gimpimage.c
      	* app/core/gimppalette.c
      	* app/core/gimppattern.c
      	* app/core/gimptoolinfo.c: implement get_description().
      
      	* app/core/gimpimagefile.[ch]: ditto. Renamed
      	gimp_imagefile_get_description() to
      	gimp_imagefile_get_desc_string(). Well, um, gimme a better name...
      
      	* app/gui/file-open-dialog.c: changed accordingly.
      
      	* app/file/file-utils.[ch]: renamed readXVThumb() to
      	file_utils_readXVThumb().
      
      	* tools/pdbgen/pdb/fileops.pdb: changed accordingly.
      
      	* app/widgets/widgets-types.h: removed GimpItemGetNameFunc typedef.
      
      	* app/widgets/gimpcontainerview-utils.[ch]: removed the the actual
      	get_name_funcs. They now live in the core as
      	GimpViewable::get_description() implementations.
      
      	* app/widgets/gimpcontainermenu.[ch]
      	* app/widgets/gimpcontainergridview.c
      	* app/widgets/gimpcontainermenuimpl.c
      	* app/widgets/gimpcontainertreeview.c
      	* app/widgets/gimpcontainerview.[ch]
      	* app/widgets/gimpmenuitem.[ch]
      	* app/widgets/gimpviewabledialog.c: removed get_name_func stuff
      	and use gimp_viewable_get_description().
      
      	* app/widgets/gimpcontainermenu.[ch]: added "preview_border_width"
      	to gimp_container_menu_set_preview_size().
      
      	* app/widgets/gimpimagedock.c: changed accordingly.
      
      	* app/pdb/fileops_cmds.c: regenerated.
      99d93b92
  27. 04 Apr, 2003 1 commit
    • Michael Natterer's avatar
      removed tree_view->preview_border_width. · ff0ce48c
      Michael Natterer authored
      2003-04-04  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpcontainertreeview.[ch]: removed
      	tree_view->preview_border_width.
      
      	* app/widgets/gimpcontainermenu.[ch]
      	* app/widgets/gimpcontainerview.[ch]: and added it here so it is
      	configurable in all views. Synced the changes in both classes.
      
      	* app/widgets/gimpcontainermenuimpl.[ch]
      	* app/widgets/gimpmenuitem.[ch]: made preview_border_size
      	configurable here, too.
      
      	* app/widgets/gimplayertreeview.c
      	* app/widgets/gimpimagedock.c
      	* app/gui/palette-import-dialog.c: changed accordingly.
      
      	* app/gui/file-new-dialog.c: Removed the border from the template
      	menu previews.
      ff0ce48c
  28. 25 Mar, 2003 1 commit
    • Sven Neumann's avatar
      Makefile.am removed this header file. · 28fddfd5
      Sven Neumann authored
      2003-03-25  Sven Neumann  <sven@gimp.org>
      
      	* Makefile.am
      	* gimpintl.h: removed this header file.
      
      	* gimpmiscui.c: include libgimp-intl.h.
      
      	* gimp.c (gimp_main): call setlocale() and bind to the libgimp
      	textdomain so that plug-ins don't need to do that explicitely.
      
      	* libgimp/stdplugins-intl.h: added the functionality that used to
      	live in gimpintl.h and removed the libgimp related stuff. Got rid
      	of the INIT_I18N_UI() macro.
      
      	* plug-ins/*/*.c: removed all occurances of INIT_I18N_UI().
      	Plug-ins simply call INIT_I18N() once in their run() function.
      
      	* plug-ins/script-fu/script-fu-intl.h: added the functionality
      	that used to live in gimpintl.h and removed the libgimp related
      	stuff.
      
      	* app/Makefile.am
      	* app/gimp-intl.h: new file that defines the gettext macros for
      	the GIMP core.
      
      	* app/*/*.c: include gimp-intl.h instead of libgimp/gimpintl.h.
      
      	* plug-ins/script-fu/scripts/test-sphere.scm: fixed typos.
      28fddfd5
  29. 21 Mar, 2003 1 commit
    • Michael Natterer's avatar
      show the popup preview again. · 87cfd54e
      Michael Natterer authored
      2003-03-21  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpcellrendererviewable.c
      	(gimp_cell_renderer_viewable_clicked): show the popup preview
      	again.
      
      	* app/widgets/gimpcontainertreeview.c
      	* app/widgets/gimpimagedock.c
      	* app/widgets/gimptoolbox.c: removed useless #includes.
      87cfd54e
  30. 05 Jan, 2003 1 commit
  31. 25 Oct, 2002 1 commit
    • Michael Natterer's avatar
      added "book_added" and "book_removed" signals. Removed the · d34647e3
      Michael Natterer authored
      2002-10-25  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpdock.[ch]: added "book_added" and "book_removed"
      	signals. Removed the "destroy_if_empty" flag and destroy empty
      	docks in book_removed's default implementation.
      
      	* app/widgets/gimptoolbox.c: implement "dock_added" and
      	"dock_removed" and set the window to freely resizable vertically
      	if it contains dockbooks, and to the current behaviour of snapping
      	to multiples of tool_button height otherwise. Fixes bug #93309.
      
      	* app/widgets/gimpimagedock.c: changed accordingly.
      d34647e3
  32. 24 Oct, 2002 1 commit
  33. 06 Sep, 2002 1 commit
    • Hans Breuer's avatar
      updated · e17baf71
      Hans Breuer authored
      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()
      e17baf71
  34. 10 May, 2002 2 commits
    • Michael Natterer's avatar
      We can always create GimpPreviews for any GtkIconSize, but not vice versa. · b521746d
      Michael Natterer authored
      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.
      b521746d
    • Michael Natterer's avatar
      added a read-only property for the display's image, so it can be retreived · 359990db
      Michael Natterer authored
      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.
      359990db
  35. 08 May, 2002 1 commit
    • Michael Natterer's avatar
      removed unused commented out prototype. · ff722d0c
      Michael Natterer authored
      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.
      ff722d0c
  36. 07 May, 2002 1 commit
    • Michael Natterer's avatar
      app/Makefile.am removed. · b6c56ff9
      Michael Natterer authored
      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".
      b6c56ff9
  37. 18 Mar, 2002 1 commit
    • Michael Natterer's avatar
      app/paint/gimppaintoptions.h put the "Fade Out" and "Gradient" stuff into · 09050a72
      Michael Natterer authored
      2002-03-18  Michael Natterer  <mitch@gimp.org>
      
      	* app/paint/gimppaintoptions.h
      	* app/tools/paint_options.c: put the "Fade Out" and "Gradient" stuff
      	into separate frames with togglebutton titles.
      
      	* app/widgets/gimpchannellistview.c: use
      	gimp_image_mask_select_channel() instead of reinventing the wheel.
      
      	* app/widgets/gimpvectorslistview.c: removed unneeded inclusion
      	of "core/gimpimage-mask.h".
      
      	* app/widgets/gimpcolormapeditor.c: set the hex entry to 7 digits,
      	some cleanup.
      
      	* app/widgets/gimppaletteeditor.c: set the vertical scrollbar
      	to GTK_POLICY_AUTOMATIC.
      
      	Added support for configuring some more GUI dimensions using
      	widget class style properties:
      
      	* app/widgets/gimpdock.c: made "separator_height" work correctly.
      	* app/widgets/gimpdockbook.c: added "tab_height".
      	* app/widgets/gimpeditor.c: added "button_icon_size".
      	* app/widgets/gimpimagedock.c: added "minimal_width".
      	* app/widgets/gimptoolbox.c: added "tool_icon_size".
      
      	* themes/Default/gtkrc: set the properties to their default values
      	for documentation.
      
      	* etc/gtkrc_user: added a (commented out) example style which makes
      	lots of things a smaller.
      09050a72