gimp/app/gui
Michael Natterer 25b81b1570 Fixed lots of QuickMask brokenness by letting the image adjust its
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.
2004-02-14 15:37:23 +00:00
..
.cvsignore configure.in app/Makefile.am new directory which will contain all gui code 2001-04-14 15:21:45 +00:00
about-dialog.c Fix gccism. 2004-01-19 20:38:23 +00:00
about-dialog.h app/devices.[ch] app/gui/about-dialog.[ch] app/gui/preferences-dialog.[ch] 2001-04-18 16:39:34 +00:00
authors.h Fixed/Added some UTF-8 encoded names. Please speak up if I did mess up 2003-10-25 23:39:51 +00:00
brush-select.c add gimp_int_option_menu_set_history as a wrapper for 2003-11-14 19:02:24 +00:00
brush-select.h removed the "feature" of creating dialogs without action area by passing 2002-11-18 00:04:16 +00:00
brushes-menu.c Disallow editing of data objects which have no save functionality. Also 2004-02-05 22:17:14 +00:00
brushes-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
buffers-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
buffers-commands.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
buffers-menu.c app/gui/brushes-menu.c app/gui/buffers-menu.c app/gui/channels-menu.c 2003-09-11 16:43:07 +00:00
buffers-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
channels-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
channels-commands.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
channels-menu.c app/gui/brushes-menu.c app/gui/channels-menu.c 2003-10-01 22:31:29 +00:00
channels-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
color-history.c app/gui/color-history.[ch] app/gui/gui.c moved the color history out of 2003-11-13 15:25:38 +00:00
color-history.h app/gui/color-history.[ch] app/gui/gui.c moved the color history out of 2003-11-13 15:25:38 +00:00
color-notebook.c Makefile.am app/composite/Makefile.am comestics. 2003-12-13 03:59:41 +00:00
color-notebook.h removed color_notebook_new() and renamed color_notebook_viewable_new() to 2003-11-10 17:55:44 +00:00
colormap-editor-commands.c Cleaned up all places which pick colors to work consistently: the concept 2003-09-26 13:33:54 +00:00
colormap-editor-commands.h Fix for bug #122695: 2003-09-19 11:40:12 +00:00
colormap-editor-menu.c app/gui/brushes-menu.c app/gui/channels-menu.c 2003-10-01 22:31:29 +00:00
colormap-editor-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
convert-dialog.c use gboolean instead of gint for "alpha_dither" and "remove_dups" in all 2004-01-31 16:23:25 +00:00
convert-dialog.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
data-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
data-commands.h the active_tool may change in the middle of gdisplay_canvas_events(), so 2001-07-08 21:44:52 +00:00
debug-commands.c removed trailing whitespace. 2004-02-05 12:52:35 +00:00
debug-commands.h removed trailing whitespace. 2004-02-05 12:52:35 +00:00
dialogs-commands.c replaced the indexed palette in the default "Layers, Channels, Paths"-Dock 2004-01-21 23:48:38 +00:00
dialogs-commands.h removed the "Move to Screen" hack. 2003-11-10 00:24:33 +00:00
dialogs-constructors.c Allow invoking the text tool by double clicking a text layer in the layers 2004-01-13 19:08:16 +00:00
dialogs-constructors.h forgot to declare gimp_color_display_stack_clone(). 2003-11-21 22:52:36 +00:00
dialogs-menu.c libgimpwidgets/gimpstock.[ch] themes/Default/images/Makefile.am added new 2003-11-11 17:49:30 +00:00
dialogs-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
dialogs.c added some g_return_if_fail(). 2004-01-31 19:00:26 +00:00
dialogs.h g_strdup() the stock_id passed to gimp_tool_info_new() because the 2002-03-14 17:07:02 +00:00
documents-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
documents-commands.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
documents-menu.c app/gui/brushes-menu.c app/gui/channels-menu.c 2003-10-01 20:46:48 +00:00
documents-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
drawable-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
drawable-commands.h added new enum GimpRotationType. 2003-05-20 10:36:29 +00:00
edit-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
edit-commands.h converted tabs to spaces. 2004-01-16 10:06:19 +00:00
error-console-commands.c Cleaned up and improved the message system: 2003-06-13 14:37:00 +00:00
error-console-commands.h Cleaned up and improved the message system: 2003-06-13 14:37:00 +00:00
error-console-menu.c app/display/gimpdisplayshell-filter-dialog.c 2003-08-24 13:52:51 +00:00
error-console-menu.h Cleaned up and improved the message system: 2003-06-13 14:37:00 +00:00
file-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
file-commands.h app/gui/file-commands.[ch] app/gui/file-dialog-utils.[ch] 2003-11-09 22:05:37 +00:00
file-dialog-utils.c Fixed intra-session position management for file dialogs and newly created 2003-11-24 12:07:29 +00:00
file-dialog-utils.h app/gui/file-dialog-utils.[ch] app/gui/file-open-dialog.c 2003-11-17 18:29:59 +00:00
file-new-dialog.c libgimpwidgets/gimpquerybox.c configure the labels in the message dialog 2003-11-14 15:33:40 +00:00
file-new-dialog.h added new function gimp_dialog_factory_add_foreign() which adds a dialog 2003-05-02 18:43:15 +00:00
file-open-dialog.c redone to make it work again. 2004-01-18 00:54:53 +00:00
file-open-dialog.h app/gui/file-commands.[ch] app/gui/file-dialog-utils.[ch] 2003-11-09 22:05:37 +00:00
file-open-menu.c app/gui/file-open-menu.c app/gui/file-save-menu.c app/gui/image-menu.c 2004-01-20 02:37:28 +00:00
file-open-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
file-save-dialog.c app/gui/file-dialog-utils.[ch] app/gui/file-open-dialog.c 2003-11-17 18:29:59 +00:00
file-save-dialog.h app/gui/file-commands.[ch] app/gui/file-dialog-utils.[ch] 2003-11-09 22:05:37 +00:00
file-save-menu.c app/gui/file-open-menu.c app/gui/file-save-menu.c app/gui/image-menu.c 2004-01-20 02:37:28 +00:00
file-save-menu.h removed. 2003-01-31 11:54:16 +00:00
font-select.c libgimpwidgets/gimpquerybox.c configure the labels in the message dialog 2003-11-14 15:33:40 +00:00
font-select.h app/gui/Makefile.am added font selection GUI to be used through the PDB. 2003-03-28 14:13:54 +00:00
fonts-commands.c added gimp_container_freeze() / _thaw() around font list reloading. 2003-10-18 16:23:15 +00:00
fonts-commands.h added gimp_container_freeze() / _thaw() around font list reloading. 2003-10-18 16:23:15 +00:00
fonts-menu.c added gimp_container_freeze() / _thaw() around font list reloading. 2003-10-18 16:23:15 +00:00
fonts-menu.h added gimp_container_freeze() / _thaw() around font list reloading. 2003-10-18 16:23:15 +00:00
gradient-editor-commands.c applied patch from Shlomi Fish that fixes an obvious cut'n'paste bug in 2003-12-20 17:49:50 +00:00
gradient-editor-commands.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
gradient-editor-menu.c app/widgets/widgets-types.h added new struct GimpSessionInfoAux which 2003-10-11 16:50:35 +00:00
gradient-editor-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
gradient-select.c libgimpwidgets/gimpquerybox.c configure the labels in the message dialog 2003-11-14 15:33:40 +00:00
gradient-select.h removed the "feature" of creating dialogs without action area by passing 2002-11-18 00:04:16 +00:00
gradients-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
gradients-commands.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
gradients-menu.c Disallow editing of data objects which have no save functionality. Also 2004-02-05 22:17:14 +00:00
gradients-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
grid-dialog.c To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
grid-dialog.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
gui-types.h app/Makefile.am removed... 2002-05-05 19:17:41 +00:00
gui-vtable.c Store the zoom factor as float, not as a ratio. 2004-01-29 22:22:29 +00:00
gui-vtable.h Cleaned up the app init and exit stuff even more. Also reduces the number 2003-10-02 11:26:26 +00:00
gui.c added runtime check for fontconfig > 2.2.0 and abort with a dialog box 2004-02-09 15:29:03 +00:00
gui.h Cleaned up the app init and exit stuff even more. Also reduces the number 2003-10-02 11:26:26 +00:00
help-commands.c stop using the deprecated GtkTipsQuery widget for context help and 2003-10-27 10:56:06 +00:00
help-commands.h app/gui/Makefile.am removed... 2002-03-20 20:08:19 +00:00
image-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
image-commands.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
image-menu.c Fixed lots of QuickMask brokenness by letting the image adjust its 2004-02-14 15:37:23 +00:00
image-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
images-commands.c app/gui/dialogs-constructors.c app/gui/images-commands.[ch] implemented 2003-11-16 12:07:03 +00:00
images-commands.h app/gui/dialogs-constructors.c app/gui/images-commands.[ch] implemented 2003-11-16 12:07:03 +00:00
images-menu.c fixed typo. 2003-09-21 19:21:12 +00:00
images-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
info-dialog.c renamed info_dialog_popdown() to info_dialog_hide() and 2004-01-21 11:16:57 +00:00
info-dialog.h renamed info_dialog_popdown() to info_dialog_hide() and 2004-01-21 11:16:57 +00:00
info-window.c Store the zoom factor as float, not as a ratio. 2004-01-29 22:22:29 +00:00
info-window.h Cleanup weekend... 2001-10-29 11:47:11 +00:00
layers-commands.c added progress callback pointers to gimp_item_scale() and its variants. 2004-02-09 00:09:20 +00:00
layers-commands.h Allow invoking the text tool by double clicking a text layer in the layers 2004-01-13 19:08:16 +00:00
layers-menu.c app/gui/image-menu.c (image_menu_entries) use the new 2004-01-27 15:03:27 +00:00
layers-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
Makefile.am added gimp_container_freeze() / _thaw() around font list reloading. 2003-10-18 16:23:15 +00:00
makefile.msc new file to keep common definitions for the msc build use common 2004-02-07 23:01:33 +00:00
menus.c app/gui/file-open-menu.c app/gui/file-save-menu.c app/gui/image-menu.c 2004-01-20 02:37:28 +00:00
menus.h removed redundant "Gimp" parameter, cleanup. 2003-09-09 21:32:00 +00:00
module-browser.c Use the correct GTK+ APIs for setting and changing the theme: 2003-11-12 12:56:31 +00:00
module-browser.h Cleanup weekend... 2001-10-29 11:47:11 +00:00
offset-dialog.c implementedgimp_int_option_menu_new and gimp_int_radio_group_new, which 2003-11-14 18:05:39 +00:00
offset-dialog.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
palette-editor-commands.c Cleaned up all places which pick colors to work consistently: the concept 2003-09-26 13:33:54 +00:00
palette-editor-commands.h Cleaned up all places which pick colors to work consistently: the concept 2003-09-26 13:33:54 +00:00
palette-editor-menu.c Applied patch by David Gowers (neota@softhome.net) improving the mnemonics 2003-12-29 13:09:01 +00:00
palette-editor-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
palette-import-dialog.c To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
palette-import-dialog.h added -DGDK_PIXBUF_DISABLE_DEPRECATED to CPPFLAGS. 2001-12-17 23:41:01 +00:00
palette-select.c libgimpwidgets/gimpquerybox.c configure the labels in the message dialog 2003-11-14 15:33:40 +00:00
palette-select.h removed the "feature" of creating dialogs without action area by passing 2002-11-18 00:04:16 +00:00
palettes-commands.c libgimpwidgets/gimpquerybox.c configure the labels in the message dialog 2003-11-14 15:33:40 +00:00
palettes-commands.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
palettes-menu.c Disallow editing of data objects which have no save functionality. Also 2004-02-05 22:17:14 +00:00
palettes-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
pattern-select.c libgimpwidgets/gimpquerybox.c configure the labels in the message dialog 2003-11-14 15:33:40 +00:00
pattern-select.h removed the "feature" of creating dialogs without action area by passing 2002-11-18 00:04:16 +00:00
patterns-menu.c Disallow editing of data objects which have no save functionality. Also 2004-02-05 22:17:14 +00:00
patterns-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
plug-in-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
plug-in-commands.h badly chopped into the new files below. Pass around much more "PlugIn" and 2002-03-20 17:46:13 +00:00
plug-in-menus.c app/gui/file-open-menu.c app/gui/file-save-menu.c app/gui/image-menu.c 2004-01-20 02:37:28 +00:00
plug-in-menus.h Completed the new help infrastructure. Needs some polishing but basically 2003-08-28 18:49:11 +00:00
preferences-dialog.c removed "Default" prefix from "Navigation Preview Size" label again. 2004-02-10 20:59:34 +00:00
preferences-dialog.h Cleanup weekend... 2001-10-29 11:47:11 +00:00
qmask-commands.c Fixed lots of QuickMask brokenness by letting the image adjust its 2004-02-14 15:37:23 +00:00
qmask-commands.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
qmask-menu.c app/display/gimpdisplayshell.c app/gui/brush-select.c 2003-08-22 01:42:57 +00:00
qmask-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
resize-dialog.c when scaling an indexed image/layer, add a label telling the user that 2004-01-18 22:50:24 +00:00
resize-dialog.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
resolution-calibrate-dialog.c new function which does the same as gtk_dialog_run() except it does not 2003-11-11 18:11:56 +00:00
resolution-calibrate-dialog.h take an optional pixbuf as eye-candy. 2002-02-28 15:11:56 +00:00
select-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
select-commands.h app/gui/menus.c added a menu entry that toggles the QuickMask state and 2002-08-27 13:29:47 +00:00
session.c app/gui/color-history.[ch] app/gui/gui.c moved the color history out of 2003-11-13 15:25:38 +00:00
session.h app/config/gimpguiconfig.[ch] added "gboolean save_accels" and "gboolean 2003-04-08 10:02:42 +00:00
splash.c added "wm_name", "wm_class", "display_name" and "monitor_number" to the 2003-11-07 17:29:02 +00:00
splash.h bumped version number to 1.3.1. Require Glib/GTK+-1.3.11 and Pango-0.22. 2001-11-22 23:46:13 +00:00
stroke-dialog.c added "gboolean use_default_values" to GimpItem::stroke(). 2004-01-22 00:16:49 +00:00
stroke-dialog.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
templates-commands.c To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
templates-commands.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
templates-menu.c app/gui/brushes-menu.c app/gui/channels-menu.c 2003-10-01 22:31:29 +00:00
templates-menu.h added gimp_list_uniquefy_name() utility function. 2003-04-06 11:21:56 +00:00
themes.c Fix undefined behaviour. Fixes crash in bringing up the Preferences dialog 2004-01-21 12:03:26 +00:00
themes.h new utility function which takes a filename relative to the theme's root 2003-11-15 17:53:18 +00:00
tips-dialog.c don't free the filename too early. 2004-01-09 22:10:04 +00:00
tips-dialog.h Finally landed the new GimpConfig based gimprc parser. It's not finished 2002-11-18 20:50:31 +00:00
tips-parser.c app/config/Makefile.am app/config/config-types.h new files that hold a 2003-09-15 15:24:52 +00:00
tips-parser.h updated 2002-02-25 18:36:03 +00:00
tool-options-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
tool-options-commands.h added a "Rename Saved Options" submenu and factored on-the-fly submenu 2003-09-30 18:33:46 +00:00
tool-options-menu.c app/gui/layers-menu.c app/gui/patterns-menu.c app/gui/tool-options-menu.c 2004-01-08 20:00:09 +00:00
tool-options-menu.h new function for stuff which needs to be done once, not on every 2003-09-29 22:23:44 +00:00
toolbox-menu.c removed trailing whitespace. 2004-02-05 12:52:35 +00:00
toolbox-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
tools-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
tools-commands.h app/display/gimpdisplayshell-callbacks.[ch] override 2003-02-25 19:12:11 +00:00
user-install-dialog.c app/app_procs.c app/errors.c app/main.c app/config/gimpconfigwriter.c 2004-01-23 17:24:44 +00:00
user-install-dialog.h Cleaned up the app init and exit stuff even more. Also reduces the number 2003-10-02 11:26:26 +00:00
vectors-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
vectors-commands.h To be multihead safe, each new window or menu needs to be associated with 2003-11-08 15:29:47 +00:00
vectors-menu.c New function that appends a duplicate of the source vectors strokes to the 2003-11-07 13:20:52 +00:00
vectors-menu.h app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] 2003-01-13 14:08:10 +00:00
view-commands.c Use the global <Image> accel_group in all docks except the toolbox (the 2004-01-31 20:23:53 +00:00
view-commands.h Store the zoom factor as float, not as a ratio. 2004-01-29 22:22:29 +00:00