Commit graph

1318 commits

Author SHA1 Message Date
Sven Neumann e86e003224 Add Desaturate as an image-map tool with live preview (bug #533808):
2008-05-21  Sven Neumann  <sven@gimp.org>

	Add Desaturate as an image-map tool with live preview (bug #533808):

	* app/gegl/Makefile.am
	* app/gegl/gegl-types.h
	* app/gegl/gimpdesaturateconfig.[ch]: added config object for the
	desaturate point filter.
	
	* app/gegl/gimpoperationdesaturate.[ch]: derive from
	GimpOperationPointFilter. Unrolled the inner loop.

	* app/core/gimpdrawable-desaturate.c: changed accordingly.

	* app/tools/Makefile.am
	* app/tools/gimpdesaturatetool.[ch]: added desaturate as an
	imagemap tool. So far only the GEGL code path is implemented.

	* app/tools/gimp-tools.c: register the new tool.

	* app/dialogs/dialogs.c: register the new tool dialog.

	* app/dialogs/Makefile.am
	* app/dialogs/desaturate-dialog.[ch]: removed the desaturate dialog.

	* app/actions/drawable-actions.c
	* app/actions/drawable-commands.[ch]: removed action
	"drawable-desaturate".

	* app/widgets/gimphelp-ids.h: changed help IDs accordingly.

	* menus/image-menu.xml.in: replaced "drawable-desaturate" with
	"tools-desaturate".

	* libgimpwidgets/gimpstock.h: added a define for
	GIMP_STOCK_TOOL_DESATURATE.

svn path=/trunk/; revision=25726
2008-05-21 13:11:06 +00:00
Sven Neumann 9a63a43566 app/widgets/Makefile.am app/widgets/gimptoggleaction.[ch] added new action
2008-05-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimptoggleaction.[ch]
	* app/widgets/gimpradioaction.[ch]: added new action types derived
	from GtkToggleAction and GtkRadioAction. These types override the
	"connect_proxy" method to enable tooltips in menus.

	* app/widgets/gimpactiongroup.c: use the new action types.

	* app/actions/dockable-actions.c: added a tooltip for the
	"dockable-lock-tab" action.

svn path=/trunk/; revision=25717
2008-05-20 09:51:04 +00:00
Sven Neumann 33b5a890cc app/widgets/gimpdockable.[ch] added a "locked" propery to GimpDockable. A
2008-05-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdockbook.[ch]: added a "locked" propery to
	GimpDockable. A locked dockable cannot be moved by drag-n-drop.
	Allows users to protect their dockables from accidental changes,
	mainly when working with a tablet.

	* app/widgets/gimpsessioninfo-dockable.[ch]: store the "locked"
	property in the session info.

	* app/actions/dockable-actions.c
	* app/actions/dockable-commands.[ch]: added an action for 
toggling
	the "locked" state.

	* app/widgets/gimphelp-ids.h: new help-id "gimp-dock-tab-lock".

	* menus/dockable-menu.xml.in: show the new menu item.

	* app/actions/plug-in-actions.c: formatting.


svn path=/trunk/; revision=25715
2008-05-19 21:11:03 +00:00
Michael Natterer a3bde5d64c add help IDs for the stuff in the Windows menu.
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimphelp-ids.h: add help IDs for the stuff in the
	Windows menu.

	* app/actions/windows-actions.c: use them.


svn path=/trunk/; revision=25687
2008-05-17 14:08:19 +00:00
Michael Natterer fe395446aa add tooltips to the menu items of open and recently closed docks.
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* app/actions/windows-actions.c: add tooltips to the menu items of
	open and recently closed docks.

	* app/widgets/gimpaction.c: connect to "notify::tooltip" and make
	sure gimp_help_set_help_data() gets called when the action's
	tooltip changes.


svn path=/trunk/; revision=25684
2008-05-17 12:53:07 +00:00
Michael Natterer ff5310a4ea Implement the presistent menu of recently closed docks, still somewhat
2008-05-16  Michael Natterer  <mitch@gimp.org>

	Implement the presistent menu of recently closed docks, still
	somewhat hackish but fully functional. Fixes bug #132744.

	* app/actions/dialogs-actions.c
	* app/actions/dialogs-commands.[ch]
	* menus/image-menu.xml.in: remove the menu items that were
	creating the hardcoded preconfigured docks.

	* app/dialogs/dialogs.[ch]: add GimpContainer of recently closed
	docks and API to load and save it.

	* app/gui/session.c: call the recent dock load and save functions.

	* app/widgets/gimpsessioninfo.[ch]: implement the GimpConfig interface
	and (de)serialize via proper interface methods.

	* app/gui/session.c
	* app/widgets/gimpdialogfactory.c: use the GimpConfig API
	to (de)serialize session infos and added the code that was
	formerly in the info's (de)serialize functions but didn't belong
	there.

	* app/widgets/gimpaction.[ch]: add "max-width-chars" property and
	set it on proxy menu item labels.

	* app/actions/windows-actions.[ch]
	* app/actions/windows-commands.[ch]
	* app/menus/windows-menu.c: add actions and menu of recently
	closed docks and code to restore the dock when the menu items are
	selected. Use above new action property to ensure a minimum
	width of the menu.

	* app/widgets/gimpmenudock.c: use '-' instead of '|' for
	separating notebooks in the window title. Menu items don't like	'|'.

	* app/widgets/gimpdock.c: removed the confirmation dialog when
	closing docks and simply add them to the recent docks container.
	This code is totally misplaced and will move to another file soon.


svn path=/trunk/; revision=25671
2008-05-16 16:06:42 +00:00
Sven Neumann 80f2a1b1ab relabeled submenu to "Recently Closed Docks".
2008-05-14  Sven Neumann  <sven@gimp.org>

	* app/actions/windows-actions.c (windows_actions): relabeled
	submenu to "Recently Closed Docks".

svn path=/trunk/; revision=25667
2008-05-14 14:52:03 +00:00
Michael Natterer 6d708832fd app/menus/windows-menu.c app/actions/windows-actions.c move the list of
2008-05-14  Michael Natterer  <mitch@gimp.org>

	* app/menus/windows-menu.c
	* app/actions/windows-actions.c
	* menus/image-menu.xml.in: move the list of dockable dialogs and
	the list of recent docks to submenus and keep the list of open
	image windows and docks at the "Windows" menu toplevel. The list
	of recent docks doesn't exist yet, its contents are fake.


svn path=/trunk/; revision=25666
2008-05-14 13:39:24 +00:00
Michael Natterer 1e50d79b17 add an "ellipsize" property that is applied to all proxy menu items'
2008-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpaction.[ch]: add an "ellipsize" property that is
	applied to all proxy menu items' labels.

	* app/actions/windows-actions.c: set the dock actions to
	PANGO_ELLIPSIZE_END because their labels can be insanely long.


svn path=/trunk/; revision=25635
2008-05-11 09:26:17 +00:00
Michael Natterer 7d25d6e6bc app/actions/windows-commands.[ch] app/actions/windows-actions.c add
2008-05-11  Michael Natterer  <mitch@gimp.org>

	* app/actions/windows-commands.[ch]
	* app/actions/windows-actions.c
	* app/menus/windows-menu.c: add dynamic actions and menu items for
	all open docks. Present the dock when the menu item is selected.


svn path=/trunk/; revision=25633
2008-05-11 08:15:00 +00:00
Michael Natterer 88d8cf3c09 renamed the "Create New Dock" submenu to simply "Docks". Its contents are
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/actions/windows-actions.c: renamed the "Create New Dock"
	submenu to simply "Docks". Its contents are about ti change soon.

	* menus/image-menu.xml.in: changed accordingly. Added a "Docks"
	placeholder inside and add the "show toolbox" menu item there.


svn path=/trunk/; revision=25628
2008-05-10 19:02:50 +00:00
Michael Natterer 6b0a5d8e5d don't hide the empty images menu, use gimp_image_get_uri() instead of the
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/actions/windows-actions.c: don't hide the empty images menu,
	use gimp_image_get_uri() instead of the object's name.


svn path=/trunk/; revision=25626
2008-05-10 18:39:35 +00:00
Michael Natterer b1a1da88c5 Start changing the "Dialogs" menu to "Windows", still incomplete.
2008-05-10  Michael Natterer  <mitch@gimp.org>

	Start changing the "Dialogs" menu to "Windows", still incomplete.
	Addresses bug #309707.

	* app/actions/Makefile.am
	* app/actions/windows-actions.[ch]
	* app/actions/windows-commands.[ch]: new files which currently
	hold the "show toolbox" action and callback and new code which
	maintains automatically generated actions for accessing (raising)
	all open images.

	* app/actions/actions.c: register the new "windows" action group.

	* app/actions/dialogs-actions.c
	* app/actions/dialogs-commands.[ch]: remove "show toolbox"
	action and callback and also the action for the "Disalogs" menu.

	* app/menus/Makefile.am
	* app/menus/windows-menu.[ch]: new files which create and destroy
	the menu items for the image window actions.

	* app/menus/menus.c: register the "windows" action group with
	all UI managers that have the "dialogs" action group.

	* app/menus/image-menu.c (image_menu_setup): call
	windows_menu_setup().

	* app/gui/gui.c: s/dialogs_show_toolbox/windows_show_toolbox/g

	* menus/image-menu.xml.in: some minor s/dialogs/windows/
	and add the "Images" submenu.


svn path=/trunk/; revision=25623
2008-05-10 16:21:37 +00:00
Michael Natterer 7ba66f8ee3 the second parameter of gimp_drawable_levels_stretch() is now a
2008-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/drawable-commands.c
	(drawable_levels_stretch_cmd_callback): the second parameter of
	gimp_drawable_levels_stretch() is now a GimpProgress.


svn path=/trunk/; revision=25570
2008-05-05 19:13:55 +00:00
Sven Neumann c42698d65d removed default keyboard shortcut for "dock-close".
2008-04-25  Sven Neumann  <sven@gimp.org>

	* app/actions/dock-actions.c (dock_actions): removed default
	keyboard shortcut for "dock-close".


svn path=/trunk/; revision=25520
2008-04-25 06:08:39 +00:00
Michael Natterer c6cdd13af6 simplify call to window_actions_update() (we already have a local "shell"
2008-04-22  Michael Natterer  <mitch@gimp.org>

	* app/actions/view-actions.c (view_actions_update): simplify call
	to window_actions_update() (we already have a local "shell"
	variable that is NULL when there is no display).


svn path=/trunk/; revision=25514
2008-04-22 16:53:42 +00:00
Sven Neumann 1bf5911cfa added mnemnic for "edit-paste-as-new" menu item.
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/actions/edit-actions.c (edit_actions): added mnemnic for
	"edit-paste-as-new" menu item.

svn path=/trunk/; revision=25429
2008-04-09 11:10:12 +00:00
Michael Natterer e173c6facb add "File/New" submenu and an "Acquire" placeholder inside it. Removed
2008-04-09  Michael Natterer  <mitch@gimp.org>

	* menus/image-menu.xml.in: add "File/New" submenu and an "Acquire"
	placeholder inside it. Removed "File/Acquire". Removed the "Xtns"
	menu.

	* app/plug-in/plug-in-menu-path.[ch] (plug_in_menu_path_map):
	add "menu_label" parameter and add support for mapping around
	individual menu items while preserving their translation and
	mnemonics. Add mappings for the known menus from "Xtns" and map
	them to "File/New".

	Map everything else in "Xtns" to "Filters/Extensions".

	* app/plug-in/gimppluginmanager-menu-branch.c
	(gimp_plug_in_manager_add_menu_branch): pass the menu_label so
	menu branches can be mapped with their translation.

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_add_menu_path): pass NULL because mapping
	menu items which have no submenu makes no sense and is redundant.

	* app/actions/image-actions.c: remove the "Xtns" menu action.

	* app/actions/file-actions.c: add action for the "File/New" menu
	and removed the "File/Acquire" action.

	* app/actions/edit-actions.c: rename "Paste as New" to
	"From Clipboard".

	* menus/image-menu.xml.in: add the "From Clipboard" action to the
	"File/New" menu.


svn path=/trunk/; revision=25427
2008-04-09 10:48:01 +00:00
Sven Neumann 3f2385dcc2 added new methods gimp_container_get_{first,last}_child().
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcontainer.[ch]: added new methods
	gimp_container_get_{first,last}_child().

	* app/actions/file-actions.c (file_actions_close_all_update)
	* app/dialogs/layer-add-mask-dialog.c (layer_add_mask_dialog_new)
	* app/dialogs/palette-import-dialog.c (palette_import_image_callback)
	* app/gui/gui-vtable.c (gui_get_empty_display): 
	* app/widgets/gimpmenudock.c (gimp_menu_dock_image_changed): use
	the new GimpContainer methods.

	* app/core/gimpundostack.c: use the new GimpContainer methods and
	cleaned up the code.

svn path=/trunk/; revision=25426
2008-04-09 09:50:29 +00:00
Sven Neumann 32d31eeb73 moved Languages to the bottom. Removed separator from the Filters list as
2008-04-09  Sven Neumann  <sven@gimp.org>

	* menus/image-menu.xml.in: moved Languages to the bottom.  Removed
	separator from the Filters list as there was really no rule as to
	what goes above and what goes below.

	* app/actions/plug-in-actions.c: added Filters->Decor submenu.

	* plug-ins/script-fu/script-fu.c (script_fu_extension_init):
	removed registration of redundant menu branches.

svn path=/trunk/; revision=25422
2008-04-09 08:39:24 +00:00
Michael Natterer 3aa63a431f Start getting rid of the "Xtns" menu:
2008-04-08  Michael Natterer  <mitch@gimp.org>

	Start getting rid of the "Xtns" menu:

	* app/actions/dialogs-actions.c (dialogs_toplevel_actions):
	renamed "Module Manager" to "Modules".

	* menus/image-menu.xml.in: move it to "Edit/Preferences" for the
	time being so it doesn't block the removal of the "Xtns" menu.

	Move "Languages" placeholder from "Xtns" to "Filters".

	* app/plug-in/plug-in-menu-path.c (menu_path_mappings): map
	"Xtns/Languages" to "Filters/Languages".


svn path=/trunk/; revision=25414
2008-04-08 18:18:59 +00:00
Sven Neumann f434da8d7b app/actions/templates-actions.c when creating an image from a template,
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/actions/templates-actions.c 
	* app/actions/templates-commands.c: when creating an image from a
        template, skip the New Image dialog as suggested in bug #480802.

svn path=/trunk/; revision=25391
2008-04-07 13:38:52 +00:00
Sven Neumann fe11741319 added new function gimp_display_close() which decides if
2008-04-05  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.[ch]: added new function
	gimp_display_close() which decides if gimp_display_delete() or
	gimp_display_empty() needs to be called.

	* app/display/gimpdisplay-foreach.[ch]: added new function
	gimp_displays_close() and removed the 'do_quit' parameter from
	gimp_displays_delete().

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

	* app/display/gimpdisplayshell-close.c: removed
	gimp_display_shell_really_close() and call gimp_display_close()
	instead.

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty): 
moved
	code to update the ui managers here.

	* app/actions/file-commands.c (file_save_cmd_callback)
	(file_close_cmd_callback)
	* app/dialogs/file-save-dialog.c (file_save_dialog_response)
	* app/dialogs/quit-dialog.c (quit_close_all_dialog_response):
	close displays instead of deleting them.

	* app/gui/gui-vtable.c (gui_display_delete): call
	gimp_display_close().


svn path=/trunk/; revision=25377
2008-04-05 20:32:24 +00:00
Sven Neumann 32640a6c07 don't set a help-id on items in the Open Recent menu.
2008-04-02  Sven Neumann  <sven@gimp.org>

	* app/actions/file-actions.c: don't set a help-id on items in the
	Open Recent menu.

	* app/menus/file-menu.c (file_menu_setup): show a larger thumbnail
	in the tooltips for recently used images.

svn path=/trunk/; revision=25332
2008-04-02 14:11:32 +00:00
Sven Neumann fc93cc19ce deprecate gimp_memsize_to_string() in favor of
2008-03-28  Sven Neumann  <sven@gimp.org>

	* libgimpbase/gimpmemsize.[ch]: deprecate gimp_memsize_to_string()
	in favor of g_format_size_for_display().

	* app/actions/edit-commands.c
	* app/core/gimpimagefile.c
	* app/dialogs/image-new-dialog.c
	* app/dialogs/image-scale-dialog.c
	* app/display/gimpdisplayshell-title.c
	* app/widgets/gimpimagepropview.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimpthumbbox.c
	* plug-ins/uri/uri-backend-gnomevfs.c
	* plug-ins/uri/uri-backend-gvfs.c
	* plug-ins/uri/uri-backend-libcurl.c
	* plug-ins/uri/uri-backend-wget.c: use g_format_size_for_display()
	instead of gimp_memsize_to_string().

svn path=/trunk/; revision=25285
2008-03-28 16:33:24 +00:00
Michael Natterer c7bf68d2c7 remove "image-new-from-image" action.
2008-03-25  Michael Natterer  <mitch@gimp.org>

	* app/actions/image-actions.c: remove "image-new-from-image"
	action.

	* app/actions/image-commands.[ch]: remove its callback and made
	the "image-new" callback use the current image's dimensions
	instead.

	* menus/image-menu.xml.in: use the "image-new" action.


svn path=/trunk/; revision=25218
2008-03-25 10:31:47 +00:00
Sven Neumann bc8086dfa8 app/actions/file-actions.c renamed file_last_opened_cmd_callaback() to
2008-03-25  Sven Neumann  <sven@gimp.org>

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]: renamed
	file_last_opened_cmd_callaback() to file_open_recent_cmd_callback().
	Use the empty display as progress object.

svn path=/trunk/; revision=25215
2008-03-25 09:33:28 +00:00
Sven Neumann cf1e3e4525 only fiddle with GtkRecentManager when "save-document-history" is enabled.
2008-03-25  Sven Neumann  <sven@gimp.org>

	* app/actions/documents-commands.c: only fiddle with
	GtkRecentManager when "save-document-history" is enabled.

	* app/config/gimprc-blurbs.h
	* app/dialogs/preferences-dialog.c: changed description and 
label
	for the "save-document-history" option.


svn path=/trunk/; revision=25212
2008-03-24 23:03:23 +00:00
Sven Neumann 4cc03a88be don't migrate "documents".
2008-03-24  Sven Neumann  <sven@gimp.org>

	* app/core/gimp-user-install.c (user_install_migrate_files): 
don't
	migrate "documents".

	* app/actions/documents-commands.c 
(documents_remove_cmd_callback)
	(documents_remove_dangling_foreach): remove from 
GtkRecentManager
	before removing the item from the documents list.


svn path=/trunk/; revision=25196
2008-03-24 17:56:27 +00:00
Sven Neumann d2168e1820 also remove the dangling item from GtkRecentManager.
2008-03-24  Sven Neumann  <sven@gimp.org>

	* app/actions/documents-commands.c
	(documents_remove_dangling_foreach): also remove the dangling 
item
	from GtkRecentManager.


svn path=/trunk/; revision=25191
2008-03-24 11:53:05 +00:00
Sven Neumann 3344c1b3bc Do not any longer keep the document history in two places. We only use
2008-03-24  Sven Neumann  <sven@gimp.org>

	Do not any longer keep the document history in two places. We 
only
	use GtkRecentManager now:

	* app/core/Makefile.am
	* app/core/gimp-documents.[ch]: removed these files.

	* app/core/gimpdocumentlist.c: removed code to load and save the
	"documents" file.
	(gimp_document_list_add_uri): call gimp_recent_list_add_uri() 
here.

	* app/core/gimpimagefile.[ch]: added function to set the 
mime-type.

	* app/core/gimp.c (gimp_restore): removed code to load the
	document history.
	(gimp_real_exit): removed code to save it.
	
	* app/core/gimp-gui.[ch]: extended the vtable with a method to
	populate the document list.

	* app/gui/gui-vtable.c: added code to populate the document 
history
	from the list of recently used files kept by GtkRecentManager.

	* app/gui/gui.c (gui_restore_callback): load the recent files 
here.

	* app/file/file-open.c
	* app/file/file-save.c: no need to call 
gimp_recent_list_add_uri()
	any longer as gimp_document_list_add_uri() does that for us now.

	* app/actions/documents-commands.c 
(documents_clear_cmd_callback):
	purge the items from GtkRecentManager. Also changed the dialog 
to
	emphasize that this operation now affects the document history 
in
	all applications.

	* docs/gimp.1.in: removed reference to "documents" file.


svn path=/trunk/; revision=25190
2008-03-24 11:11:15 +00:00
Michael Natterer f8e5aa31bd Never shrink the empty display when filling it, only grow:
2008-03-23  Michael Natterer  <mitch@gimp.org>

	Never shrink the empty display when filling it, only grow:

	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpdisplayshell-scale.[ch]: add "gboolean
	grow_only" parameters to shrink_wrap() APIs which restricts
	resizing of the window to growing.

	* app/display/gimpdisplayshell-scale.[ch]
	(gimp_displaY_shell_scale_resize): remove boolean "redisplay"
	parameter because is was always passed as TRUE. Add boolean
	"grow_only" instead and pass it on to shrink_wrap()

	* app/actions/view-commands.c
	* app/display/gimpdisplayshell-handlers.c: pass grow_only = FALSE.

	* app/display/gimpdisplayshell.c (gimp_display_shell_idle_fill):
	pass grow_only = TRUE.


svn path=/trunk/; revision=25178
2008-03-23 15:16:44 +00:00
Michael Natterer f63a7153ef Remove the toolbox menu:
2008-03-21  Michael Natterer  <mitch@gimp.org>

	Remove the toolbox menu:

	* configure.in: remove --enable-toolbox-menu option.

	* menus/Makefile.am
	* menus/toolbox-menu.xml.in: removed.

	* menus/image-menu.xml.in: add the debug menu here.

	* menus/menus.xsl: remove transformations depending on whether
	there is a toolbox menu or not.

	* app/menus/Makefile.am
	* app/menus/toolbox-menu.[ch]: removed.

	* app/menus/menus.c: remove the toolbox menu but keep the
	<Toolbox> UI manager around so we can configure its actions
	separate from normal docks.

	* app/actions/image-actions.c (image_actions): remove the action
	for the toolbox menubar.

	* app/widgets/gimptoolbox.c: remove all menu code.

	* app/plug-in/plug-in-menu-path.c: map plug-in registered toolbox
	menu items to their new location in the image menu
	unconditionally.

	* plug-ins/common/screenshot.c
	* plug-ins/common/uniteditor.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/script-fu/scripts/web-browser.scm
	* plug-ins/twain/twain.c
	* plug-ins/winsnap/winsnap.c: remove menu registrations under
	<Toolbox>/File and change <Toolbox>/Help to <Image>/Help. Leave
	<Toolbox>/Xtns untouched until its final location and name are
	decided.


svn path=/trunk/; revision=25156
2008-03-21 17:55:32 +00:00
Michael Natterer bc03eded44 add boolean "quit" parameter and leave the empty display open when it is
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay-foreach.[ch] (gimp_displays_delete): add
	boolean "quit" parameter and leave the empty display open when it
	is FALSE.

	* app/dialogs/quit-dialog.c
	* app/actions/file-commands.c: pass quit = FALSE for "close all".

	* app/gui/gui.c: pass quit = TRUE when quitting.

	* app/actions/file-actions.c: fix sensitivity of "Close all".

	* app/actions/view-actions.c: fix sensitivity of "Close".


svn path=/trunk/; revision=25131
2008-03-19 20:29:30 +00:00
Michael Natterer ca0fa8964c remove useless include.
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/actions/view-commands.c: remove useless include.


svn path=/trunk/; revision=25129
2008-03-19 19:24:52 +00:00
Michael Natterer bd636468e8 add new options object for the "no image" display appearance.
2008-03-18  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayoptions.[ch]: add new options object
	for the "no image" display appearance.

	* app/display/gimpdisplayshell.[ch]: keep one of them around.

	* app/display/gimpdisplayshell-appearance.[ch]: use the options
	object when the display is empty. Add guards against no image
	to some functions. Add gimp_display_shell_appearance_update()
	which sets all options according to the current display state
	(normal, fullscreen, no image).

	* app/actions/view-actions.c: don't allow to configure the GUI
	of the empty display.

	* app/display/gimpdisplayshell-callbacks.c: use the new appearance
	update function instead of doing it all here.

	* app/display/gimpdisplayshell-close.c
	* app/gui/gui-vtable.c: update the appearance when clearing or
	filling the display.

	* app/display/gimpdisplayshell-selection.c: forgot some guards
	against empty displays.


svn path=/trunk/; revision=25114
2008-03-18 22:21:47 +00:00
Michael Natterer cee3baea0f First draft of the "no image open" window, which is implemented as a
2008-03-18  Michael Natterer  <mitch@gimp.org>

	First draft of the "no image open" window, which is implemented as
	a display without image (a view with NULL model). Didn't change
	the display's appearance yet so I can first make sure the display
	without image works properly in all details before hiding these
	details.

	* app/core/gimp-gui.[ch]: add "gimp" parameter to display_create()
	and allow "image" to be NULL.

	* app/core/gimpcontext.c (gimp_context_real_set_display): a
	display's image can be NULL now.

	* app/display/gimpdisplay.[ch]: add Gimp and GimpDisplayConfig
	members.  Add Gimp parameter to gimp_display_shell_new(). Changed
	gimp_display_reconnect() to gimp_display_set_image() and allow to
	set a NULL image.

	* app/gui/gui-vtable.c (gui_display_create): if there is a single
	display without an image, call gimp_display_set_image() on that
	display instead of creating a new one.

	* app/display/gimpdisplayshell-close.c: if the last display is
	closed, don't close it but make it empty. Factored out that code
	to gimp_display_shell_really_close().

	* app/display/gimpdisplayshell-dnd.c: when dropping uris on an
	empty display, open the first one into that display and the other
	ones as layers of the newly opened image. This is consistent with
	dropping on an existing image but maybe needs some discussion.

	* app/display/gimpdisplayshell-callbacks.c: bail out early in the
	tool event callback so tools never have to deal with empty
	displays. In expose(), draw the drop zone on the empty display.

	* app/display/gimpdisplayshell-title.c: set the empty display's
	title to "Gimp - Drop Files".

	* app/display/gimpdisplay-foreach.c
	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-autoscroll.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-cursor.c
	* app/display/gimpdisplayshell-dnd.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell-preview.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpnavigationeditor.c
	* app/display/gimpstatusbar.c: use display->gimp and
	display->config instead of going via the image. Guard against
	empty displays in some few places (most places can't be
	called). Where needed, use the canvas' dimensions instead of the
	image's dimensions so scroll offsets and scrollbars still have
	sane values instead of the last image's ones.

	* app/actions/actions.c (action_data_get_gimp)
	(action_data_get_context): use display->gimp instead of
	display->image->gimp.

	* app/actions/edit-commands.c (edit_paste_cmd_callback): redirect
	to "paste as new" if there is an empty display.

	* app/actions/tools-commands.c (tools_select_cmd_callback): don't
	initialize the new tool on an empty display.

	* app/actions/view-actions.c (view_actions_update): changed lots
	of sensitivity settings to be insensitive when there is no image
	(instead of no display).

	* app/actions/view-commands.c: use the display's config object
	instead of gimp's.


svn path=/trunk/; revision=25113
2008-03-18 21:22:21 +00:00
Michael Natterer bc9424a2b5 app/actions/data-commands.c app/actions/debug-commands.c
2008-03-12  Michael Natterer  <mitch@gimp.org>

	* app/actions/data-commands.c
	* app/actions/debug-commands.c
	* app/actions/dockable-commands.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-handlers.c
	* app/gui/gui-message.c
	* app/gui/gui.c
	* app/tools/gimpforegroundselectoptions.c
	* app/tools/gimpinkoptions-gui.c
	* app/widgets/gimpcolordialog.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpcontainerview-utils.c
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpsessioninfo-book.c
	* app/widgets/gimpsessioninfo-dock.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimpunitcombobox.c
	* app/widgets/gimpviewablebox.c
	* libgimp/gimpexport.c
	* libgimpmodule/gimpmodule.h
	* libgimpwidgets/gimpenumwidgets.c
	* libgimpwidgets/gimpframe.c
	* libgimpwidgets/gimpoldwidgets.c
	* libgimpwidgets/gimpwidgets.c
	* plug-ins/MapObject/mapobject_ui.c
	* plug-ins/common/papertile.c
	* plug-ins/common/sinus.c
	* plug-ins/flame/flame.c
	* plug-ins/helpbrowser/gimpthrobber.c
	* plug-ins/script-fu/scheme-wrapper.c
	* plug-ins/script-fu/script-fu-console.c: use accessors instead of
	accessing GtkBin.child and GtkPaned.child1,2 directly.


svn path=/trunk/; revision=25095
2008-03-12 16:58:28 +00:00
Sven Neumann 32d8cb9a4e app/actions/tools-actions.c app/actions/tools-commands.[ch] allow to
2008-03-06  Sven Neumann  <sven@gimp.org>

	* app/actions/tools-actions.c 
	* app/actions/tools-commands.[ch]
	* app/tools/gimptransformtool.c: allow to control the preview
	opacity by actions (defaults to < to > keys).

svn path=/trunk/; revision=25050
2008-03-06 17:13:59 +00:00
Sven Neumann d6f7184655 added statusbar messages informing the user that pixels have been
2008-03-04  Sven Neumann  <sven@gimp.org>

	* app/actions/edit-commands.c (edit_copy_visible_cmd_callback)
	(edit_cut_cmd_callback): added statusbar messages informing the
	user that pixels have been transferred to the clipboard.


svn path=/trunk/; revision=25035
2008-03-04 21:37:52 +00:00
Sven Neumann 3aa5feb324 removed default keyboard shortcuts from actions that work with named
2008-02-24  Sven Neumann  <sven@gimp.org>

	* app/actions/edit-actions.c: removed default keyboard shortcuts
	from actions that work with named buffers. Use Ctrl-Shift-V as 
the
	default keyboard shortcut for "Paste As New Image" and
	Ctrl-Shift-C for "Copy Visible".


svn path=/trunk/; revision=24954
2008-02-24 14:23:24 +00:00
Michael Natterer 4d8e0023f0 don't call plug_in_actions_update() because that updated the sensitivity
2008-02-21  Michael Natterer  <mitch@gimp.org>

	* app/actions/plug-in-actions.c (plug_in_actions_history_changed):
	don't call plug_in_actions_update() because that updated the
	sensitivity of *all* plug-in actions according to the properties
	of the *current* image. Instead, look up the original GtkAction of
	the history items of *this* action group and copy the sensitivity
	from that action. Fixes bug #517683.


svn path=/trunk/; revision=24934
2008-02-21 16:39:49 +00:00
Michael Natterer ca5ffa5b3f don't #include <gegl.h>
2008-01-23  Michael Natterer  <mitch@gimp.org>

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

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


svn path=/trunk/; revision=24685
2008-01-23 09:51:43 +00:00
Sven Neumann 4aa7e67c67 removed "add_alpha" parameter from gimp_item_duplicate() and
2008-01-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimpitem.[ch]: removed "add_alpha" parameter from
	gimp_item_duplicate() and gimp_item_convert(). This is a relict
	from the time when only the bottom layer was allowed to have no
	alpha channel.

	* app/actions/channels-commands.c
	* app/actions/layers-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-quick-mask.c
	* app/core/gimplayer.c
	* app/core/gimplayermask.c
	* app/core/gimpselection.c
	* app/display/gimpdisplayshell-dnd.c
	* app/file/file-open.c
	* app/pdb/channel_cmds.c
	* app/pdb/layer_cmds.c
	* app/text/gimptextlayer.c
	* app/vectors/gimpvectors.c
	* app/vectors/gimpvectorsmodundo.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

svn path=/trunk/; revision=24570
2008-01-08 11:46:15 +00:00
Sven Neumann ff768c5261 let gimp_drawable_invert() take a GimpProgress parameter.
2007-12-30  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-invert.[ch]: let gimp_drawable_invert()
	take a GimpProgress parameter.

	* tools/pdbgen/pdb/color.pdb
	* app/pdb/color_cmds.c
	* app/actions/drawable-commands.c: changed accordingly.


svn path=/trunk/; revision=24473
2007-12-29 23:04:37 +00:00
Michael Natterer 529fd5e629 app/actions/Makefile.am app/core/Makefile.am app/display/Makefile.am use
2007-12-29  Michael Natterer  <mitch@gimp.org>

	* app/actions/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/tools/Makefile.am: use GEGL_CFLAGS.


svn path=/trunk/; revision=24472
2007-12-29 19:18:57 +00:00
Sven Neumann b194e6fb62 addec const qualifiers to GimpRGB parameters.
2007-12-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpcairo-utils.[ch]: addec const qualifiers to
	GimpRGB parameters.

	* app/widgets/gimprender.[ch]: removed global variables for
	checkerboard colors and introduced functions to get the
	checkerboard colors as pointers to GimpRGB structs.

	* app/actions/view-actions.c
	* app/display/gimpdisplayshell-appearance.c
	* app/widgets/gimpviewrenderer.c
	* app/widgets/gimpcolormapeditor.c: changed accordingly.


svn path=/trunk/; revision=24451
2007-12-28 19:14:36 +00:00
Michael Natterer 1e8371361e app/actions/image-commands.c app/actions/select-commands.c
2007-12-26  Michael Natterer  <mitch@gimp.org>

	* app/actions/image-commands.c
	* app/actions/select-commands.c
	* app/core/gimp-edit.c
	* app/core/gimpdrawable-stroke.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimageundo.c
	* app/core/gimpitem-preview.c
	* app/dialogs/grid-dialog.c
	* app/dialogs/layer-options-dialog.c
	* app/dialogs/offset-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpstatusbar.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimptexttool.c
	* app/vectors/gimpvectors-export.c
	* app/vectors/gimpvectors-import.c
	* app/widgets/gimpcursorview.c
	* app/widgets/gimpimagepropview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrendererimage.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c: use gimp_image_get/set_resolution() instead
	of accessing the GimpImage members directly.


svn path=/trunk/; revision=24436
2007-12-26 17:33:41 +00:00
Michael Natterer 75061fccfd app/actions/channels-commands.c app/actions/colormap-actions.c
2007-12-25  Michael Natterer  <mitch@gimp.org>

	* app/actions/channels-commands.c
	* app/actions/colormap-actions.c
	* app/actions/colormap-commands.c
	* app/actions/image-commands.c
	* app/core/gimp-edit.c
	* app/core/gimpdrawable-preview.c
	* app/core/gimpimage-colorhash.c
	* app/core/gimpimage-colormap.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-guides.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-quick-mask.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-sample-points.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-snap.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimpimageundo.c
	* app/core/gimpitem-preview.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/core/gimppalette-import.c
	* app/core/gimpprojection-construct.c
	* app/core/gimpprojection.c
	* app/core/gimpselection.c
	* app/core/gimpundo.c
	* app/dialogs/layer-options-dialog.c
	* app/dialogs/print-size-dialog.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpstatusbar.c
	* app/file/file-open.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimprotatetool.c
	* app/vectors/gimpvectors-export.c
	* app/vectors/gimpvectors-import.c
	* app/vectors/gimpvectors.c
	* app/widgets/gimpimagepropview.c
	* app/widgets/gimpnavigationview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrendererimage.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/guides.pdb
	* tools/pdbgen/pdb/image.pdb: use accessors for many image properties.

	* app/pdb/guides_cmds.c
	* app/pdb/image_cmds.c: regenerated.


svn path=/trunk/; revision=24432
2007-12-25 16:21:40 +00:00
Michael Natterer ecb2c46dc8 app/actions/layers-commands.c app/core/gimpchannel-combine.c
2007-12-23  Michael Natterer  <mitch@gimp.org>

	* app/actions/layers-commands.c
	* app/core/gimpchannel-combine.c
	* app/core/gimpchannel-select.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable-convert.c
	* app/core/gimpdrawable.c
	* app/core/gimpdrawablemodundo.c
	* app/core/gimpfloatingselundo.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage.c
	* app/core/gimpitem-preview.c
	* app/core/gimpitem.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/core/gimplayermask.c
	* app/core/gimplayerundo.c
	* app/core/gimpmaskundo.c
	* app/core/gimppalette-import.c
	* app/core/gimpprojection-construct.c
	* app/core/gimpselection.c
	* app/dialogs/offset-dialog.c
	* app/text/gimptextlayer-xcf.c
	* app/text/gimptextlayer.c
	* app/vectors/gimpvectors-compat.c
	* app/vectors/gimpvectors.c
	* app/vectors/gimpvectorsmodundo.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrenderervectors.c: use accessors for item,
	layer, channel and mask attributes.


svn path=/trunk/; revision=24429
2007-12-23 16:58:41 +00:00