Commit Graph

93 Commits

Author SHA1 Message Date
Michael Natterer 71cf9ee2c6 Applied (slightly modified) patch from Sylvain Foret which adds "Close
2005-09-24  Michael Natterer  <mitch@gimp.org>

	Applied (slightly modified) patch from Sylvain Foret which adds
	"Close All" menu entries and dialog. Fixes bug #163532.

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]: added "file-close-all" action
	and callback.

	* app/dialogs/dialogs-constructors.[ch]
	* app/dialogs/dialogs.c
	* app/dialogs/quit-dialog.[ch]: added close all dialog which is a
	modified quit dialog.

	* app/widgets/gimphelp-ids.h: added help ID.

	* menus/image-menu.xml.in
	* menus/toolbox-menu.xml.in: add close all next to quit.
2005-09-24 19:30:08 +00:00
Sven Neumann e75b1809dd set the file dialogs transient for the parent window (display or toolbox).
2005-05-18  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_open_dialog_show): set the
	file dialogs transient for the parent window (display or toolbox).
2005-05-18 21:01:51 +00:00
Sven Neumann 9c1c0081b4 preselect the image just as in file_open_from_image_cmd_callback().
2005-02-24  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_open_as_layer_cmd_callback):
	preselect the image just as in file_open_from_image_cmd_callback().
2005-02-24 17:18:11 +00:00
Michael Natterer 1c7e7a165a removed file_save() and renamed file_save_as() to file_save() which always
2005-02-13  Michael Natterer  <mitch@gimp.org>

	* app/file/file-save.[ch]: removed file_save() and renamed
	file_save_as() to file_save() which always requires "uri" and
	"file_proc" to be passed. This functions does no more file_proc by
	extension finding and stuff.

	* app/actions/file-commands.c (file_save_cmd_callback): only call
	file_save() if the image has both uri and save_proc, fall back to
	file_save_as_cmd_callback() otherwise.

	* app/dialogs/file-save-dialog.c: completely chopped and
	reconstructed. Added tons of checks for extension vs. save_proc
	consistency and ask the user if she really wants to save weird
	stuff. Added masive debugging output because I'm far from certain
	that everything is correct.
2005-02-13 18:05:43 +00:00
Sven Neumann 3fef851411 app/actions/data-commands.c app/actions/edit-commands.c
2005-02-10  Sven Neumann  <sven@gimp.org>

	* app/actions/data-commands.c
	* app/actions/edit-commands.c
	* app/actions/error-console-commands.c
	* app/actions/file-commands.c
	* app/actions/gradient-editor-commands.c
	* app/actions/gradients-commands.c
	* app/actions/plug-in-commands.c
	* app/actions/templates-commands.c
	* app/actions/text-editor-commands.c
	* app/actions/tool-options-commands.c
	* app/dialogs/image-new-dialog.c
	* app/dialogs/resize-dialog.c
	* app/display/gimpdisplayshell-close.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-scale.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimptexttool.c
	* libgimp/gimpexport.c
	* libgimpwidgets/gimpcolorbutton.c
	* libgimpwidgets/gimpfileentry.c
	* libgimpwidgets/gimpquerybox.c
	* libgimpwidgets/gimpunitmenu.c: applied another patch by Patrice
	Tremblay to make more dialogs obey the alternative button order
	setting (bug #166678).
2005-02-10 11:00:46 +00:00
Michael Natterer 4f97f7a5f9 Made the file open and save dialogs use the last used folder instead of
2005-01-13  Michael Natterer  <mitch@gimp.org>

	Made the file open and save dialogs use the last used folder
	instead of defaulting to current directory. Fixes bug #162385.

	* app/widgets/gimpfiledialog.[ch] (gimp_file_dialog_set_uri):
	removed this function because it had no functionality except
	creating usability problems.

	* app/actions/file-commands.c: use gtk_file_chooser_set_uri()
	instead but *only* if we already have an uri from an alread open
	image or the document hinstory.

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_image): set
	the file chooser's uri only if we have an uri from the image
	itself. Leave the current folder untouched otherwise and just set
	the current name (e.g. "Untitled").

	* app/dialogs/file-save-dialog.c (file_save_dialog_save_image): on
	successful save, remember the used uri by attaching it to the
	"gimp" instance.

	(file_save_dialog_new): set the last saved uri's folder on the
	newly created file save dialog.
2005-01-13 17:41:48 +00:00
William Skaggs b13aded024 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c: undo changes of 12-24,
	in favor of a better fix.

	* app/widgets/gimperrordialog.c: fix bug #162147 properly,
	as suggested by mitch.
2004-12-26 17:11:31 +00:00
William Skaggs 59e86d02fb Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c: replace % with space
	in file name before showing error message,
	fixes bug #162147.

	* app/core/gimp-gui.c
	* app/widgets/gimpmessagebox.c: be a bit more paranoid
	about validating utf8 for messages.
2004-12-24 19:11:30 +00:00
Sven Neumann d4bf381c20 app/actions/file-commands.c app/dialogs/file-save-dialog.c
2004-11-16  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c
	* app/dialogs/file-save-dialog.c
	* app/file/file-save.[ch]
	* app/widgets/gimpfiledialog.[ch]: combined "set_uri_and_proc" and
	"set_image_clean" parameters into a single "save_a_copy"
	parameter.  When saving a copy, attach the used URI to the image and
	let the "Save a Copy" file chooser default to the last used value.
2004-11-16 13:37:36 +00:00
Michael Natterer fa79ae2844 don't g_return_if_fail() if there is no active drawable, just silently
2004-10-23  Michael Natterer  <mitch@gimp.org>

	* app/actions/file-commands.c (file_save_cmd_callback): don't
	g_return_if_fail() if there is no active drawable, just silently
	return.

	* app/actions/image-commands.c: remember the last merge_type of
	the "Merge Visible Layers" dialog.

	* app/actions/layers-commands.c: remeber the last values of the
	"Add Layer Mask" dialog.

	* app/actions/select-commands.c: renamed a bunch of static
	variables to be consistent with other variables used to remember
	dialog values.

	* app/actions/view-commands.c (view_fullscreen_cmd_callback): it's
	useless to update the "view-fullscreen" actions here because the
	"fullscreen" state of the shell changes asynchronously
2004-10-23 19:13:17 +00:00
Michael Natterer 00401dcfe7 app/dialogs/Makefile.am one more dialog split out of actions/.
2004-10-19  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/Makefile.am
	* app/dialogs/vectors-options-dialog.[ch]: one more dialog split
	out of actions/.

	* app/actions/vectors-commands.c: removed it here. Merged more
	utility functions into their only callers.

	* app/actions/dockable-commands.c
	* app/actions/edit-commands.c
	* app/actions/file-commands.c
	* app/actions/palettes-commands.c
	* app/actions/tool-options-commands.c
	* app/actions/view-commands.c: renamed "qbox" and "query_box"
	variables to "dialog".
2004-10-19 14:08:44 +00:00
Sven Neumann 11ad04b292 creata an UTF-8 filename from the image URI and display that instead of
2004-10-14  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_revert_cmd_callback): creata
	an UTF-8 filename from the image URI and display that instead of
	the URI.

	* app/dialogs/convert-dialog.c (convert_dialog_new): removed the
	palette size warning for transparent images. The number of colors
	is already adjusted to 255. This text was IMO more frightening
	than helpful.
2004-10-13 23:03:12 +00:00
Sven Neumann 2b2737f2ad handle parent widget not being a GtkWindow by calling
2004-10-13  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpmessagedialog.c: handle parent widget not being
	a GtkWindow by calling gtk_widget_get_toplevel().

	* app/actions/data-commands.c
	* app/actions/edit-commands.c
	* app/actions/file-commands.c: ported more boolean queries to
	GimpMessageDialog.
2004-10-13 15:27:00 +00:00
Michael Natterer a1ff75dedb removed the code which sets the new image on all contexts where the old
2004-10-06  Michael Natterer  <mitch@gimp.org>

	* app/actions/file-commands.c (file_revert_confirm_callback):
	removed the code which sets the new image on all contexts where
	the old image was set...

	* app/display/gimpdisplay-foreach.c (gimp_displays_reconnect):
	...and added it here so it happens for all calls of this function,
	also from the PDB. Fixes bug #154638.
2004-10-06 09:28:35 +00:00
Michael Natterer 37912655f2 For the sake of completeness, added a GUI for the hidden "Open as Layer"
2004-09-21  Michael Natterer  <mitch@gimp.org>

	For the sake of completeness, added a GUI for the hidden
	"Open as Layer" feature:

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]: added "file-open-as-layer"
	action and callback. Abuse the "gimage" field of GimpFileDialog to
	indicate layer opening (it's otherwise unused for file-open).

	* app/dialogs/file-open-dialog.c: if dialog->gimage is non-NULL,
	open the selected files as layers for that image.

	* app/widgets/gimphelp-ids.h: added GIMP_HELP_FILE_OPEN_AS_LAYER.

	* menus/image-menu.xml.in: added it to the menu.
2004-09-21 12:08:30 +00:00
Michael Natterer 49b9c1d80e app/actions/buffers-commands.c app/actions/file-commands.c
2004-09-20  Michael Natterer  <mitch@gimp.org>

	* app/actions/buffers-commands.c
	* app/actions/file-commands.c
	* app/actions/layers-commands.c
	* app/actions/plug-in-actions.c
	* app/actions/tools-actions.c: removed useless #includes, cleanup.
2004-09-20 14:43:46 +00:00
Michael Natterer e93af81c53 resurrected file_open_dialog_show() and file_save_dialog_show() as private
2004-09-13  Michael Natterer  <mitch@gimp.org>

	* app/actions/file-commands.c: resurrected file_open_dialog_show()
	and file_save_dialog_show() as private utility functions to get
	rid of code duplication.
2004-09-13 19:33:07 +00:00
Michael Natterer 582a096604 app/dialogs/Makefile.am removed these files.
2004-09-13  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/Makefile.am
	* app/dialogs/file-dialog-utils.[ch]: removed these files.

	* app/dialogs/file-save-dialog.[ch]: removed functions
	file_save_dialog_show() and file_save_a_copy_dialog_show() and
	changed internal function file_save_dialog_create() to
	file_save_dialog_new().

	* app/dialogs/dialogs.c
	* app/dialogs/dialogs-constructors.[ch]: made it completely
	managed by the dialog factory.

	* app/actions/file-commands.c: create it using the dialog
	factory. Attach it to the image so we open only one save
	dialog per image.

	* app/dialogs/file-open-dialog.c: added precondition checks
	to file_open_dialog_new().
2004-09-13 16:37:01 +00:00
Michael Natterer 593e98c6de removed function file_open_dialog_show() and changed internal function
2004-09-13  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/file-open-dialog.[ch]: removed function
	file_open_dialog_show() and changed internal function
	file_open_dialog_create() to file_open_dialog_new().

	* app/dialogs/dialogs.c
	* app/dialogs/dialogs-constructors.[ch]: made it completely
	managed by the dialog factory.

	* app/actions/file-commands.c: create it using the dialog factory.
2004-09-13 16:01:52 +00:00
Michael Natterer 7d065360c7 configure.in added new directory app/dialogs and link libappdialogs.c into
2004-09-13  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* app/Makefile.am: added new directory app/dialogs and link
	libappdialogs.c into the gimp binary.

	* app/gui/Makefile.am
	* app/gui/gui-types.h
	* app/gui/gui-vtable.c
	* app/gui/gui.c

	* app/gui/about-dialog.[ch]
	* app/gui/authors.h
	* app/gui/color-notebook.[ch]
	* app/gui/convert-dialog.[ch]
	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.[ch]
	* app/gui/file-dialog-utils.[ch]
	* app/gui/file-new-dialog.[ch]
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-open-location-dialog.[ch]
	* app/gui/file-save-dialog.[ch]
	* app/gui/grid-dialog.[ch]
	* app/gui/info-dialog.[ch]
	* app/gui/info-window.[ch]
	* app/gui/module-browser.[ch]
	* app/gui/offset-dialog.[ch]
	* app/gui/palette-import-dialog.[ch]
	* app/gui/preferences-dialog.[ch]
	* app/gui/quit-dialog.[ch]
	* app/gui/resize-dialog.[ch]
	* app/gui/resolution-calibrate-dialog.[ch]
	* app/gui/stroke-dialog.[ch]
	* app/gui/tips-dialog.[ch]
	* app/gui/tips-parser.[ch]
	* app/gui/user-install-dialog.[ch]: removed these files...

	* app/dialogs/Makefile.am
	* app/dialogs/dialogs-types.h

	* app/dialogs/*.[ch]: ...and added them here. Changed some
	filenames like module-browser -> module-dialog.

	* app/app_procs.c
	* app/actions/actions-types.h
	* app/actions/actions.c
	* app/actions/dialogs-actions.c
	* app/actions/dialogs-commands.c
	* app/actions/dockable-commands.c
	* app/actions/drawable-commands.c
	* app/actions/edit-commands.c
	* app/actions/file-commands.c
	* app/actions/gradient-editor-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palettes-commands.c
	* app/actions/select-commands.c
	* app/actions/templates-commands.c
	* app/actions/templates-commands.h
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c
	* app/display/gimpdisplayshell-cursor.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell.[ch]
	* app/tools/gimpcroptool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimptransformtool.[ch]
	* app/tools/gimpvectortool.c
	* app/widgets/gimpcolormapeditor.[ch]
	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimptoolbox-color-area.c
	* menus/toolbox-menu.xml.in
	* tools/authorsgen/authorsgen.pl: changed accordingly.
2004-09-13 15:15:23 +00:00
Michael Natterer ff6ee61780 changed file_open_location_dialog_show() to
2004-09-09  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-open-location-dialog.[ch]: changed
	file_open_location_dialog_show() to
	file_open_location_dialog_new() and return the dialog.

	* app/gui/dialogs.c
	* app/gui/dialogs-constructors.[ch]: added a constructor for it
	and let the dialog factory manage it entirely.

	* app/actions/file-commands.c
	(file_open_location_dialog_cmd_callback): use the dialog factory
	to create it.
2004-09-09 09:47:33 +00:00
Sven Neumann 509b48a48b unset the filename if gtk_file_chooser_set_uri() failed.
2004-08-23  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_image): unset
	the filename if gtk_file_chooser_set_uri() failed.

	* app/actions/file-commands.c
	* app/gui/file-save-dialog.c: trivial cleanups.

	* app/widgets/gimpwidgets-utils.c: removed an unused extern
	variable declaration.
2004-08-23 09:32:06 +00:00
Michael Natterer 02d2b990f5 Redid the whole internal progress stuff: don't pass around
2004-08-10  Michael Natterer  <mitch@gimp.org>

	Redid the whole internal progress stuff: don't pass around
	progress_callback and progress_data; instead, provide a
	pointer to a GimpProgressInterface which can be implemented
	by a variety of backends.

	Addresses (but not yet fixes) bugs #6010, #97266 and #135185.

	* app/display/Makefile.am
	* app/display/gimpprogress.[ch]: removed the old progress hack.

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpprogress.[ch]: implement GimpProgressInterface.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpprogressdialog.[ch]: the standalone progress
	dialog as widget implementing GimpProgressInterface.

	* app/display/gimpdisplay.c
	* app/display/gimpstatusbar.[ch]
	* app/widgets/gimpfiledialog.[ch]
	* app/widgets/gimpthumbbox.[ch]: added GimpProgressInterface
	implementation to these classes.

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: replaced the old progress vtable entries
	by two new to create and destroy a GimpProgressDialog in case
	no other progress is available.

	* app/pdb/procedural_db.[ch]
	* app/plug-in/plug-in-run.[ch]
	* tools/pdbgen/app.pl: pass a GimpProgress to all PDB wrappers and
	all plug-ins.

	* app/plug-in/plug-in.[ch]
	* app/plug-in/plug-ins.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-progress.c: handle the case there the
	plug-in was crated with a progress as well as the case where it
	wasn't.

	* app/app_procs.c
	* app/batch.c
	* app/xcf/xcf.c
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/widgets/gimphelp.c
	* app/widgets/gimpbrushselect.c
	* app/widgets/gimpfontselect.c
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimppaletteselect.c
	* app/widgets/gimppatternselect.c: changed accordingly.

	* app/core/gimpimagefile.[ch]
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/file-open-dialog.c
	* app/gui/file-open-location-dialog.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c: pass a GimpProgress to all file
	related functions. Embed the progress in the file dialog where
	possible.

	* app/core/gimpdrawable-blend.[ch]
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpimage-convert.[ch]
	* app/core/gimpimage-flip.[ch]
	* app/core/gimpimage-resize.[ch]
	* app/core/gimpimage-rotate.[ch]
	* app/core/gimpimage-scale.[ch]
	* app/core/gimpitem-linked.[ch]
	* app/core/gimpitem.[ch]
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/vectors/gimpvectors.c: replaced callback/data by GimpProgress.

	* app/tools/gimpblendtool.c
	* app/tools/gimptransformtool.c
	* app/gui/convert-dialog.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/plug-in-commands.c
	* app/actions/vectors-commands.c
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb: changed callers accordingly.

	* app/pdb/*_cmds.c: regenerated.
2004-08-10 18:47:21 +00:00
Sven Neumann ccf8ed69e7 app/widgets/Makefile.am app/widgets/widgets-types.h added new widget that
2004-07-16  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfileprocview.[ch]: added new widget that offers
	a treeview on file procedures.

	* app/widgets/gimpfiledialog.[ch]: replaced the file type option
	menu with the new GimpFileProcView widget.
	(gimp_file_dialog_set_image): reset the file type to Automatic
	(fixes bug #141535).

	* app/actions/file-commands.c
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]: changed accordingly.

	* plug-ins/common/bz2.c
	* plug-ins/common/gz.c: don't register "xcf.gz" and "xcf.bz2"
	extension. It's redundant and breaks the code that sets the
	extension from the selected file-type.

	* plug-ins/common/dicom.c: register a shorter menu label.

	* plug-ins/common/gbr.c
	* plug-ins/common/gih.c
	* plug-ins/common/pat.c
	* plug-ins/common/url.c: register stock icons.
2004-07-16 21:24:39 +00:00
William Skaggs 571f8b561d Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/actions/file-commands.c: revert previous change that was
	intended to fix bug #141971.
2004-06-30 16:01:05 +00:00
William Skaggs 4ac084a6f9 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/actions/file-commands.c: make "Revert" only ask for
	confirmation if image is dirty.  Fixes bug #141971.
2004-06-24 00:15:06 +00:00
Sven Neumann a03ad36ca1 app/Makefile.am app/actions/file-actions.c app/actions/file-commands.[ch]
2004-05-31  Sven Neumann  <sven@gimp.org>

	* app/Makefile.am
	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]
	* app/gui/Makefile.am
	* app/gui/file-open-location-dialog.[ch]
	* app/widgets/gimphelp-ids.h
	* menus/image-menu.xml.in
	* menus/toolbox-menu.xml.in: added a rudimentary "Open Location"
	dialog.
2004-05-31 14:40:10 +00:00
Michael Natterer 18d2d499b5 added GimpContext parameters to GimpActivateItemFunc, GimpNewItemFunc and
2004-05-25  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpitemtreeview.h: added GimpContext parameters
	to GimpActivateItemFunc, GimpNewItemFunc and GimpEditItemFunc.

	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpitemtreeview.c: pass the view's context to
	the functions.

	* app/actions/actions.c (action_data_get_context): return
	gimp_get_user_context() if "data" is a Gimp.

	* app/actions/channels-commands.[ch]
	* app/actions/layers-commands.[ch]
	* app/actions/vectors-commands.[ch]: added GimpContext parameters
	to the resp. activate, new and edit functions and use the passed
	context instead of gimp_get_user_context().

	* app/actions/layers-commands.[ch]: removed the merge and flatten
	callbacks.

	* app/actions/image-commands.[ch]: made public layer merge utility
	function private and cleaned the whole file up a lot.

	* app/actions/layers-actions.c: use the callbacks from
	image-commands.c for merge and flatten.

	* app/actions/edit-commands.c
	* app/actions/file-commands.c
	* app/actions/select-commands.c: use action_data_get_context()
	instead of gimp_get_user_context().

	* app/actions/edit-actions.c: some cleanup.
2004-05-25 14:37:02 +00:00
Michael Natterer fe03c38457 app/actions/file-actions.c removed action "file-new", added action
2004-05-25  Michael Natterer  <mitch@gimp.org>

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]: removed action "file-new", added
	action "file-open-from-image".

	* app/actions/image-actions.c
	* app/actions/image-commands.[ch]: added actions "image-new" and
	"image-new-from-image".

	* menus/image-menu.xml.in: use the "-from-image" variants of
	the "new" and "open" actions so the dialogs are preconfigured
	from the image they were invoked from (regression fix).

	* menus/toolbox-menu.xml.in: s/file-new/image-new/.
2004-05-25 12:02:54 +00:00
Michael Natterer 1c62ddef4d Long overdue core container cleanup:
2004-05-24  Michael Natterer  <mitch@gimp.org>

	Long overdue core container cleanup:

	* app/core/gimplist.[ch]: added "unique-names" and "sort-func"
	properties and merged the resp. code from GimpDataList into
	GimpList. Removed "policy" parameters from gimp_list_new() and
	added "unique_names". Added new constructor gimp_list_new_weak().
	Made public function gimp_list_uniquefy_name() private.

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpdatalist.[ch]: removed. Its functionality is
	entirely in GimpList now.

	* app/core/gimpdata.[ch]: added gimp_data_name_compare() which
	used to live in GimpDataList.

	* app/core/gimp.c
	* app/core/gimpdatafactory.c
	* app/core/gimpimage.c
	* app/core/gimptoolinfo.c
	* app/core/gimpundostack.c
	* app/paint/gimp-paint.c
	* app/tools/gimp-tools.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimpundoeditor.c: changed list creation accordingly.

	Made gimp->templates, gimp->named_buffers, tool_info->presets and
	the image's lists of layers, channels and vectors automatically
	ensure unique names.

	* app/widgets/gimptemplateview.c
	* app/actions/file-commands.c
	* app/actions/templates-commands.c
	* app/actions/tool-options-commands.c: removed calls to
	gimp_list_uniquefy_name().

	* app/core/gimpitem.c: removed major insanity where the items
	themselves where ensuring their unique names. Bah!

	* app/core/gimplayer.c (gimp_layer_name_changed): chain up
	conditionally.

	* app/core/gimplayermask.c (gimp_layer_mask_name_changed): removed
	because there is no need any more to keep the parent
	implementation from being invoked.
2004-05-24 10:49:34 +00:00
Sven Neumann 97fe81b401 added new PDB function gimp_register_file_handler_mime() that allows to
2004-05-14  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/fileops.pdb: added new PDB function
	gimp_register_file_handler_mime() that allows to associate a MIME
	type with a file procecdurre.

	* app/pdb/fileops_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpfileops_pdb.[ch]: regenerated.

	* app/plug-in/plug-in-proc.[ch]
	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-ins.[ch]: store a mimetype with file procedures.

	* app/actions/file-commands.c
	* app/core/gimpdocumentlist.[ch]
	* app/core/gimpimagefile.[ch]
	* app/file/file-open.[ch]
	* app/file/file-save.c: set the thumbnail's mimetype from the file
	procedure used to load/save the image.

	* app/xcf/xcf.c
	* plug-ins/bmp/bmp.c
	* plug-ins/common/csource.c
	* plug-ins/common/dicom.c
	* plug-ins/common/gif.c
	* plug-ins/common/gifload.c
	* plug-ins/common/jpeg.c
	* plug-ins/common/mng.c
	* plug-ins/common/png.c
	* plug-ins/common/postscript.c
	* plug-ins/common/psd.c
	* plug-ins/common/psd_save.c
	* plug-ins/common/sunras.c
	* plug-ins/common/svg.c
	* plug-ins/common/tga.c
	* plug-ins/common/tiff.c
	* plug-ins/common/wmf.c
	* plug-ins/common/xbm.c
	* plug-ins/common/xpm.c
	* plug-ins/common/xwd.c
	* plug-ins/faxg3/faxg3.c
	* plug-ins/winicon/main.c: register a mimetype, set a translatable
	action name (taken from shared-mime-info) and register to the <Load>
	and <Save> menus using gimp_plugin_menu_register().
2004-05-14 00:01:11 +00:00
Michael Natterer d3439fc3af configure.in app/Makefile.am app/menus/.cvsignore app/menus/Makefile.am
2004-05-06  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* app/Makefile.am
	* app/menus/.cvsignore
	* app/menus/Makefile.am
	* app/menus/menus-types.h
	* app/menus/menus.[ch]
	* app/menus/file-open-menu.[ch]
	* app/menus/file-save-menu.[ch]
	* app/menus/image-menu.[ch]
	* app/menus/plug-in-menus.[ch]
	* app/menus/tool-options-menu.[ch]
	* app/menus/toolbox-menu.[ch]: moved all menus files to their
	own directory.

	* app/gui/Makefile.am
	* app/gui/menus.[ch]
	* app/gui/file-open-menu.[ch]
	* app/gui/file-save-menu.[ch]
	* app/gui/image-menu.[ch]
	* app/gui/plug-in-menus.[ch]
	* app/gui/tool-options-menu.[ch]
	* app/gui/toolbox-menu.[ch]: removed them here.

	* app/actions/debug-commands.c
	* app/actions/file-commands.c
	* app/gui/brush-select.c
	* app/gui/dialogs.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/gui-vtable.c
	* app/gui/gui.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/gui/preferences-dialog.c: changed #includes accordingly.
2004-05-06 07:41:53 +00:00
Michael Natterer 96ba0235ed app/actions/file-actions.c remove "file-close" action and callback...
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]: remove "file-close" action and
	callback...

	* app/actions/view-actions.c
	* app/actions/view-commands.[ch]: ...and added it here as
	"view-close" because that's what it does.

	* app/actions/qmask-actions.c
	* app/actions/qmask-commands.c: s/QMask/QuickMask/g

	* app/gui/menus.c: add the "channels" action group to the <Image>
	and <Dock> UI managers, renamed UI manager <Dialogs> to
	<Dockable>.

	* app/widgets/gimpdockbook.c: s/<Dialogs>/<Dockable>/.

	* menus/image-menu.xml.in: s/file-close/view-close/, added
	separators at the end of most menus, moved the bottom group of the
	"View" menu after the zoom group.
2004-05-05 11:40:20 +00:00
Michael Natterer 3590757d2a app/actions/actions.h. added the various return_if_no_foo() macros here.
2004-05-03  Michael Natterer  <mitch@gimp.org>

	* app/actions/actions.h. added the various return_if_no_foo()
	macros here.

	* app/actions/channels-commands.c
	* app/actions/dialogs-commands.c
	* app/actions/drawable-commands.c
	* app/actions/edit-commands.c
	* app/actions/file-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/qmask-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c: removed them here. Some cleanup.
2004-05-03 14:46:29 +00:00
Michael Natterer d745841e4d added some utility functions to get a Gimp, GimpImage, GimpDisplay and
2004-05-03  Michael Natterer  <mitch@gimp.org>

	* app/actions/actions.[ch]: added some utility functions to get a
	Gimp, GimpImage, GimpDisplay and GtkWidget from the "data" pointer
	passed to action callbacks.

	* app/actions/channels-actions.c
	* app/actions/channels-commands.c
	* app/actions/drawable-actions.c
	* app/actions/drawable-commands.c
	* app/actions/edit-actions.c
	* app/actions/edit-commands.c
	* app/actions/file-actions.c
	* app/actions/file-commands.c
	* app/actions/help-commands.c
	* app/actions/image-actions.c
	* app/actions/image-commands.c
	* app/actions/layers-actions.c
	* app/actions/layers-commands.c
	* app/actions/plug-in-actions.c
	* app/actions/plug-in-commands.c
	* app/actions/qmask-actions.c
	* app/actions/qmask-commands.c
	* app/actions/select-actions.c
	* app/actions/select-commands.c
	* app/actions/tools-commands.c
	* app/actions/vectors-actions.c
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c: use the new functions instead of
	duplicating insane macros and if() constructs over and over again.
2004-05-03 14:03:51 +00:00
Michael Natterer bdec5cc5da app/actions/Makefile.am new files containing factored out code to set up
2004-05-02  Michael Natterer  <mitch@convergence.de>

	* app/actions/Makefile.am
	* app/actions/file-dialog-actions.[ch]: new files containing
	factored out code to set up the <Load> and <Save> actions.
	Use GimpPlugInActions instead of just GtkActions.

	* app/actions/file-dialog-commands.[ch]: new files containing
	file_dialog_type_cmd_callback() which is a
	GimpPlugInAction::selected() callback now.

	* app/actions/file-commands.[ch]: removed the callback here.

	* app/actions/file-open-actions.c
	* app/actions/file-save-actions.c: removed code duplication and
	use file_dialog_actions_setup() instead.
2004-05-02 10:34:04 +00:00
Michael Natterer 4654280114 Switch from GtkItemFactory to GtkUIManager. The migration is almost
2004-04-29  Michael Natterer  <mitch@gimp.org>

	Switch from GtkItemFactory to GtkUIManager. The migration is
	almost complete, still stuff missing/incomplete, definitely added
	a bunch of new bugs...

	* app/actions/*-commands.[ch]: converted all callback from
	GtkItemFactory callbacks to GtkAction callbacks.

	* app/actions/debug-actions.c
	* app/actions/gradient-editor-actions.c
	* app/actions/help-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/qmask-actions.c
	* app/actions/tool-options-actions.c: various fixes.

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell-appearance.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: move everything from
	GtkItemFactory to GtkUIManager.

	* app/gui/dialogs.[ch]: added new function dialogs_get_toolbox().
	Needed because the action callbacks don't have a widget parameter
	and sometimes we need a parent window for showing dialogs.

	* app/gui/Makefile.am
	* app/gui/brushes-menu.[ch]
	* app/gui/buffers-menu.[ch]
	* app/gui/channels-menu.[ch]
	* app/gui/colormap-editor-menu.[ch]
	* app/gui/dialogs-menu.[ch]
	* app/gui/documents-menu.[ch]
	* app/gui/error-console-menu.[ch]
	* app/gui/fonts-menu.[ch]
	* app/gui/gradient-editor-menu.[ch]
	* app/gui/gradients-menu.[ch]
	* app/gui/images-menu.[ch]
	* app/gui/layers-menu.[ch]
	* app/gui/palette-editor-menu.[ch]
	* app/gui/palettes-menu.[ch]
	* app/gui/patterns-menu.[ch]
	* app/gui/qmask-menu.[ch]
	* app/gui/templates-menu.[ch]
	* app/gui/vectors-menu.[ch]: removed these files.

	* app/gui/gui.c: create a global UI manager for the image popup
	menu and the toolbox menubar.

	* app/gui/menus.[ch]: removed all GtkItemFactory code.

	* app/gui/image-menu.[ch]
	* app/gui/toolbox-menu.[ch]: removed everything except the trivial
	setup_funcs.

	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/tool-options-menu.c: don't use the macros from menus.h
	any more, they are gone.

	* app/gui/gui-vtable.c
	* app/gui/plug-in-menus.[ch]: create/destroy the dynamic plug-in
	menu entries.

	* app/tools/gimpimagemaptool.c: s/gimp_item_factory_update/
	gimp_ui_manager_update/g

	* app/widgets/gimpuimanager.[ch]: added API to get an action
	group by name.

	* app/widgets/gimpmenufactory.c: don't choke on the item_factory
	entries being NULL.

	* app/widgets/gimpactiongroup.c: make sure booleans set using
	g_object_set() only have TRUE or FALSE values.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdocked.[ch]
	* app/widgets/gimpeditor.[ch]
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptooloptionseditor.c: removed all GtkItemFactory
	code and enable the #if 0'ed UI manager stuff.

	* menus/gradient-editor-menu.xml: fixed typos.

	* menus/image-menu.xml: duplicate everything so we have both
	an image menubar and an image popup menu. Badly cries for an
	XSL processor.

	* menus/toolbox-menu.xml: added an "Extensions" placeholder.
2004-04-29 12:52:29 +00:00
Michael Natterer 661f6ddeb8 removed...
2004-04-20  Michael Natterer  <mitch@gimp.org>

	* app/gui/*-commands.[ch]: removed...

	* app/actions/*-commands.[ch]: ...and added here.

	* app/gui/Makefile.am
	* app/gui/*-menu.c
	* app/gui/dialogs-constructors.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/actions/Makefile.am
	* app/actions/*-actions.c: changed accordingly.

	* app/actions/plug-in-actions.[ch]
	* app/actions/tools-actions.[ch]: new files.

	* app/Makefile.am: had to add more -u evilness because gui/
	and actions/ have cyclic dependencies.

	* menus/image-menu.xml: added some more items.
2004-04-20 13:25:55 +00:00
Michael Natterer a7ffe94b93 app/gui/colormap-editor-commands.[ch] app/gui/debug-commands.[ch]
2004-04-19  Michael Natterer  <mitch@gimp.org>

	* app/gui/colormap-editor-commands.[ch]
	* app/gui/debug-commands.[ch]
	* app/gui/dockable-commands.[ch]
	* app/gui/error-console-commands.[ch]
	* app/gui/file-commands.[ch]
	* app/gui/gradient-editor-commands.[ch]
	* app/gui/help-commands.[ch]
	* app/gui/qmask-commands.[ch]
	* app/gui/tool-options-commands.[ch]: removed "guint action"
	parameter from all callbacks which don't need it.
2004-04-19 16:00:54 +00:00
Michael Natterer 18d9161eea Get rid of the "current_context" which was in fact just a bunch of global
2004-04-15  Michael Natterer  <mitch@gimp.org>

	Get rid of the "current_context" which was in fact just a bunch of
	global variables. Instead, pass the needed context all the way
	from the GUI and the PDB to the core. This is a prerequisite for
	macro recording and generally helps separating the various
	subsystems from each other. Work in progress...

	* app/core/gimp.[ch]: removed member "current_context" and
	gimp_[get|set]_current_context().

	* app/core/gimp-edit.[ch]
	* app/core/gimpdrawable-blend.[ch]
	* app/core/gimpdrawable-bucket-fill.[ch]
	* app/core/gimpdrawable-offset.[ch]
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpimage-crop.[ch]
	* app/core/gimpimage-flip.[ch]
	* app/core/gimpimage-merge.[ch]
	* app/core/gimpimage-resize.[ch]
	* app/core/gimpimage-rotate.[ch]
	* app/core/gimpimage.[ch]
	* app/core/gimpimagefile.[ch]
	* app/core/gimpitem-linked.[ch]
	* app/core/gimpitem.[ch]
	* app/core/gimplayer.[ch]
	* app/core/gimpselection.[ch]
	* app/core/gimptemplate.[ch]
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/pdb/procedural_db.[ch]
	* app/text/gimptext-compat.[ch]
	* app/text/gimptextlayer-transform.[ch]
	* app/gui/brush-select.[ch]
	* app/gui/font-select.[ch]
	* app/gui/gradient-select.[ch]
	* app/gui/palette-select.[ch]
	* app/gui/pattern-select.[ch]: added tons of "GimpContext *context"
	parameters and use the passed context instead of
	gimp_get_current_context().

	* app/app_procs.c
	* app/batch.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/paint/gimperaser.c
	* app/paint/gimppaintbrush.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-ins.c
	* app/text/gimptextlayer.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpinktool.c
	* app/tools/gimptransformtool.c
	* app/vectors/gimpvectors.c
	* app/gui/convert-dialog.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpthumbbox.c: pass gimp_get_user_context() or
	GIMP_CONTEXT(tool_options) or whatever is the right context
	to the changed core functions.

	* tools/pdbgen/app.pl: pass "GimpContext *context" to all
	generated PDB invokers.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/paint_tools.pdb
	* tools/pdbgen/pdb/palette.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/palettes.pdb
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/text_tool.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: pass the new context
	parameter to the changed core functions.

	* app/pdb/*_cmds.c: regenerated.
2004-04-14 23:37:34 +00:00
Michael Natterer bbc73e63bc removed the undo clearing/sanitizing code...
2004-03-22  Michael Natterer  <mitch@gimp.org>

	* app/file/file-open.c (file_open_with_proc_and_display): removed
	the undo clearing/sanitizing code...

	(file_open_image): ...and added it here so *all* newly opened
	images start with a clean and sane undo state.

	* app/gui/file-commands.c (file_revert_confirm_callback): removed
	(incomplete) undo sanitizing here too.
2004-03-22 13:46:14 +00:00
Michael Natterer 527aa849cb app/widgets/Makefile.am app/widgets/widgets-types.h new widget swallowing
2004-02-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfiledialog.[ch]: new widget swallowing most
	of file-dialog-utils.[ch]'s functionality.

	* app/widgets/widgets-types.h: added "gpointer callback_data" to
	GimpItemFactorySetupFunc so the setup_funcs can create items in
	the same context as the item factory's default items.

	* app/widgets/gimpmenufactory.c (gimp_menu_factory_menu_new):
	pass "callback_data" to setup_func().

	* app/gui/file-open-menu.[ch]
	* app/gui/file-save-menu.[ch]: use the passed callback_data
	when creating the menus and attach the file_proc to the
	menu items using g_object_set_data().

	* app/gui/file-commands.[ch]: merged separate file type callbacks
	for open and save dialogs into one callback which simply
	calls gimp_file_dialog_set_file_proc().

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

	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]: use the new widget and removed
	global variables except the dialog pointer itself.

	* app/gui/image-menu.[ch]
	* app/gui/tool-options-menu.[ch]
	* app/gui/toolbox-menu.[ch]: changed accordingly.
2004-02-27 14:20:19 +00:00
Michael Natterer 3781c7fb51 Use the global <Image> accel_group in all docks except the toolbox (the
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.
2004-01-31 20:23:53 +00:00
Michael Natterer 6eb772946b libgimpwidgets/gimpquerybox.c configure the labels in the message dialog
2003-11-14  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpquerybox.c
	* app/widgets/gimpwidgets-utils.c: configure the labels in the
	message dialog and the query boxes to do automatic word wrapping
	to be HIG compliant.

	* app/app_procs.c
	* app/batch.c
	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-path.c
	* app/config/gimpconfig-utils.c
	* app/config/gimpconfigwriter.c
	* app/config/gimpscanner.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpdatafactory.c
	* app/core/gimpgradient.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpselection.c
	* app/display/gimpdisplayshell.c
	* app/file/file-utils.c
	* app/gui/brush-select.c
	* app/gui/dialogs-commands.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/gui.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/palette-select.c
	* app/gui/palettes-commands.c
	* app/gui/pattern-select.c
	* app/gui/preferences-dialog.c
	* app/gui/select-commands.c
	* app/gui/stroke-dialog.c
	* app/gui/tool-options-menu.c
	* app/gui/vectors-commands.c
	* app/gui/view-commands.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c
	* app/text/gimptextlayer-xcf.c
	* app/text/gimptextlayer.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimptransformtool.c
	* app/vectors/gimpvectors-export.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimphelp.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptooloptionseditor.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/image.pdb: removed explicit newlines from
	messages. Reduced number of translatable strings by making many
	file error messages the same. Quote single words and filenames
	with 'foo', not "foo". Replaced some more "drawable" by "layer".
	General message cleanup and consistency check.

	* app/pdb/image_cmds.c: regenerated.
2003-11-14 15:33:40 +00:00
Michael Natterer 9b6f0cd324 app/gui/file-commands.[ch] app/gui/file-dialog-utils.[ch]
2003-11-09  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-commands.[ch]
	* app/gui/file-dialog-utils.[ch]
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]
	* app/gui/gradients-commands.c
	* app/gui/vectors-commands.c
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimperrorconsole.c
	* libgimpwidgets/gimpfileselection.c: show file selections on
	their parent widget's screen.
2003-11-09 22:05:37 +00:00
Michael Natterer bcd9794a99 To be multihead safe, each new window or menu needs to be associated with
2003-11-08  Michael Natterer  <mitch@gimp.org>

	To be multihead safe, each new window or menu needs to be
	associated with a GdkScreen or it will pop up on the default
	screen.

	* libgimpwidgets/gimpquerybox.[ch]
	* app/display/gimpdisplayshell-layer-select.[ch]
	* app/widgets/widgets-types.h
	* app/widgets/gimpitemfactory.[ch]
	* app/widgets/gimpitemtreeview.[ch]
	* app/widgets/gimptemplateview.[ch]
	* app/widgets/gimptooldialog.[ch]
	* app/widgets/gimpviewabledialog.[ch]
	* app/gui/channels-commands.[ch]
	* app/gui/color-notebook.[ch]
	* app/gui/convert-dialog.[ch]
	* app/gui/edit-commands.[ch]
	* app/gui/grid-dialog.[ch]
	* app/gui/image-commands.[ch]
	* app/gui/info-dialog.[ch]
	* app/gui/layers-commands.[ch]
	* app/gui/offset-dialog.[ch]
	* app/gui/resize-dialog.[ch]
	* app/gui/stroke-dialog.[ch]
	* app/gui/templates-commands.[ch]
	* app/gui/vectors-commands.[ch]: added "GtkWidget *parent"
	paramaters to all functions which create menus, popups or windows
	and pass "parent" to gimp_dialog_new() or one of the various
	wrappers around it. As a side effect, this fixes bug #61092.

	* app/widgets/gimpdialogfactory.[ch]: added "GdkScreen *screen"
	instead of "parent" here since there are no possible parent
	windows on startup.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_origin_button_press): added a quick hack to
	send a display to another screen: click the origin button with the
	middle mouse button.

	* app/display/gimpdisplayshell.c
	(gimp_display_shell_screen_changed): don't chain up
	undonditionally (don't crash).

	* libgimpwidgets/gimpdialog.c (gimp_dialog_new_valist): set the
	dialog's screen from a non-GtkWidget parent widget. The rest of
	non-window parent widget handling is still unimplemented.

	* libgimpwidgets/gimpcolorbutton.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimphelp.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimppreview-popup.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpsessioninfo.c
	* app/widgets/gimptoolbox-color-area.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptooloptionseditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpwidgets-utils.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpnavigationview.c
	* app/gui/module-browser.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/drawable-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gradient-editor-commands.c
	* app/gui/gui-vtable.c
	* app/gui/gui.c
	* app/gui/info-window.c
	* app/gui/palette-import-dialog.c
	* app/gui/palettes-commands.c
	* app/gui/qmask-commands.c
	* app/gui/select-commands.c
	* app/gui/tool-options-commands.c
	* app/gui/view-commands.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptransformtool.c
	* plug-ins/FractalExplorer/FractalExplorer.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gflare/gflare.c: changed addordingly. Changed all
	menu_position funcs to place the menu on the right screen.
2003-11-08 15:29:47 +00:00
Sven Neumann 8e38f70b96 free the memory allocated for the GimpLut structure. Removed trailing
2003-09-05  Sven Neumann  <sven@gimp.org>

	* app/base/gimplut.[ch] (gimp_lut_free): free the memory allocated
	for the GimpLut structure. Removed trailing whitespace.

	* app/core/gimpbuffer.c: cosmetics.

	* app/core/gimpedit.[ch]: let gimp_edit_cut() and gimp_edit_copy()
	return a pointer to the global cut buffer instead of creating a
	GimpBuffer which was leaked by most callers.

	* app/gui/edit-commands.c: changed accordingly.

	* libgimpwidgets/gimpquerybox.[ch] (string_query_box_ok_callback):
	removed a superfluous g_strdup(); made GimpQueryStringCallback take
	a const gchar* pointer.

	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/palettes-commands.c: changed accordingly.
2003-09-05 01:40:29 +00:00
Michael Natterer a319c455d9 app/widgets/Makefile.am new file defining the available help topics. Work
2003-08-21  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimphelp-ids.h: new file defining the available help
	topics. Work in progress and totally unusable for matching to the
	help system. Stay tuned...

	* app/gui/about-dialog.c
	* app/gui/brushes-menu.c
	* app/gui/buffers-menu.c
	* app/gui/channels-commands.[ch]
	* app/gui/channels-menu.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gradients-commands.c
	* app/gui/gradients-menu.c
	* app/gui/image-menu.c
	* app/gui/layers-commands.[ch]
	* app/gui/layers-menu.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palettes-menu.c
	* app/gui/patterns-menu.c
	* app/gui/resize-dialog.c
	* app/gui/select-commands.c
	* app/gui/templates-menu.c
	* app/gui/tips-dialog.c
	* app/gui/toolbox-menu.c
	* app/gui/vectors-commands.[ch]
	* app/gui/vectors-menu.c: replaced literal HTML file paths by help
	IDs from gimphelp-ids.h. Renamed some menu callbacks to be
	consistent with similar ones. This is just an intermediate commit
	and not finished.

	While browsing all the menus, I noticed that our "x to selection"
	functions are not consistent at all. They should all offer the
	REPLACE,ADD,SUBTRACT,INTERSECT options:

	* app/core/gimpchannel.[ch]: added new function
	gimp_channel_new_from_alpha(). Removed gimp_channel_layer_alpha()
	and gimp_channel_layer_mask().

	* app/core/gimpimage-mask.[ch]: added
	gimp_image_mask_select_alpha() and
	gimp_image_mask_select_component() which offer the full set of
	operation, feather and feather_radius parameters as the other
	selection functions.

	* app/core/gimpimage-mask-select.[ch]: removed
	gimp_image_mask_layer_alpha() and gimp_image_mask_layer_mask().

	* app/gui/channels-commands.c (channels_channel_to_selection): use
	gimp_image_mask_select_component() instead of implementing it
	here.

	* app/gui/image-menu.c
	* app/gui/layers-commands.[ch]: offer the full choice of
	REPLACE,ADD,SUBTRACT,INTERSECT with "Alpha to Selection" and "Mask
	to Selection".

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

	* app/pdb/selection_cmds.c: regenerated.
2003-08-21 15:54:47 +00:00
Sven Neumann 16e0b4fa6e warn if the image has no active drawable instead of silently returning.
2003-07-08  Sven Neumann  <sven@gimp.org>

	* app/gui/file-commands.c (file_save_cmd_callback): warn if the
	image has no active drawable instead of silently returning. Not
	sure if this is correct, but it could help to resolve #116936.
2003-07-08 08:34:18 +00:00
Michael Natterer 9252db5865 Fixed File->Revert, which was completely broken before:
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.
2003-05-17 16:34:30 +00:00