Commit Graph

136 Commits

Author SHA1 Message Date
Martin Nordholts 3c1366a0c1 app: Merge almost identical higher level file_save() wrappers
Merge file_savefile_write_with_uri_and_proc() and
file_save_dialog_save_image() which contains the same logic. Call the
result file_save_dialog_save_image() in lack of a better name, and
keep it in file-save-dialog.[ch] for now in lack of a better place.
2009-05-02 15:58:32 +02:00
Martin Nordholts a93346d0a0 app: Gather save dialog uri defaults in one place
Gather save dialog uri defaults in one place. Move the small bits of
it from file_save_dialog_new() to gimp_file_dialog_set_save_image()
where the rest is.
2009-05-01 12:23:46 +02:00
Sven Neumann b0af6524b4 app/file: Rename gimpfile.h to gimp-file.h and fix include guards
The source filename convention would indicate that gimpfile.h
	holds code for the GimpFile object. Rename it to gimp-file.h
	to make clear that it doesn't.
2009-05-01 09:03:13 +02:00
Martin Nordholts e622dc3cad app: Introduce gimpfile.h
Introduce gimpfile.h which for now contains defines for GObject data
keys used when managing save and open dialog URI defaults. More are to
be added.
2009-04-30 20:00:18 +02:00
Martin Nordholts 9e7edcd6f4 app: Introduce file_write_with_uri_and_proc()
Introduce file_write_with_uri_and_proc() so that the
file_save_cmd_callback() switch case becomes more managable and so
that we can reuse that logic later.
2009-04-26 17:22:56 +02:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
Martin Nordholts 5aeb568650 s/gimp_container_children_type/gimp_container_get_children_type/
s/gimp_container_policy/gimp_container_get_policy/
s/gimp_container_num_children/gimp_container_get_n_children/

* app/actions/actions.c
* app/actions/file-actions.c
* app/actions/file-commands.c
* app/actions/tool-options-actions.c
* app/actions/tools-actions.c
* app/actions/tools-commands.c
* app/actions/vectors-actions.c
* app/core/gimpcontainer-filter.c
* app/core/gimpcontainer.c
* app/core/gimpcontainer.h
* app/core/gimpimage-convert.c
* app/core/gimpimage-flip.c
* app/core/gimpimage-merge.c
* app/core/gimpimage-resize.c
* app/core/gimpimage-rotate.c
* app/core/gimpimage-scale.c
* app/core/gimpimage-undo.c
* app/core/gimpimage.c
* app/core/gimpimagefile.c
* app/core/gimplist.c
* app/core/gimpundostack.c
* app/dialogs/palette-import-dialog.c
* app/dialogs/quit-dialog.c
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell-layer-select.c
* app/display/gimpdisplayshell-title.c
* app/gui/gui-vtable.c
* app/menus/tool-options-menu.c
* app/tools/gimp-tools.c
* app/widgets/gimpcontrollerlist.c
* app/widgets/gimpimagepropview.c
* app/widgets/gimpsettingsbox.c
* app/widgets/gimpviewablebutton.c
* app/xcf/xcf-load.c
* app/xcf/xcf-save.c

svn path=/trunk/; revision=27692
2008-11-20 22:45:19 +00:00
Sven Neumann 4762b73403 bumped minimum required version of GLib to 2.18.0.
2008-11-04  Sven Neumann  <sven@sven>

	* configure.in: bumped minimum required version of GLib to 
2.18.0.

	* INSTALL: document the updated dependency.

	* app/core/gimp.[ch]: introduced gimp_message_literal(), a 
variant
	of gimp_message() that takes a literal string.

	* app/errors.[ch]: removed format arguments from 
gimp_fatal_error()
	and gimp_terminate() and let them take a literal string instead.

	* app/tools/gimptool.[ch]: introduced 
gimp_tool_message_literal(),
	a variant of gimp_tool_message() that takes a literal string.

	* app/actions/documents-commands.c
	* app/actions/drawable-commands.c
	* app/actions/edit-commands.c
	* app/actions/error-console-commands.c
	* app/actions/file-commands.c
	* app/actions/gradients-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palettes-commands.c
	* app/actions/plug-in-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/config/gimprc.c
	* app/core/gimp-modules.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp-units.c
	* app/core/gimpchannel.c
	* app/core/gimpcontainer-filter.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/dialogs.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/dialogs/quit-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/file/file-open.c
	* app/file/file-procedure.c
	* app/file/file-save.c
	* app/file/file-utils.c
	* app/gegl/gimpcurvesconfig.c
	* app/gegl/gimplevelsconfig.c
	* app/gui/gui-message.c
	* app/gui/gui.c
	* app/gui/session.c
	* app/paint/gimpbrushcore.c
	* app/paint/gimpclone.c
	* app/paint/gimpheal.c
	* app/paint/gimpperspectiveclone.c
	* app/paint/gimpsourcecore.c
	* app/pdb/gimppdb-utils.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-restore.c
	* app/plug-in/gimppluginprocedure.c
	* app/text/gimptextlayer.c
	* app/tools/gimp-tools.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdesaturatetool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpgegltool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool-settings.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsourcetool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpactionview.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimpcontrollers.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimperrordialog.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppdbdialog.c
	* app/widgets/gimpsettingsbox.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-load.c
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/floating_sel.pdb
	* tools/pdbgen/pdb/image.pdb: use the _literal variants for
	g_set_error(), gimp_message() and gimp_tool_message().

	* app/pdb/convert-cmds.c
	* app/pdb/edit-cmds.c
	* app/pdb/floating-sel-cmds.c
	* app/pdb/image-cmds.c: regenerated.


svn path=/trunk/; revision=27548
2008-11-04 12:33:09 +00:00
Sven Neumann be7fb50cbb ref the GimpDisplay and GimpImageFile objects while holding a reference to
2008-10-21  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_open_recent_cmd_callback): 
ref
	the GimpDisplay and GimpImageFile objects while holding a
	reference to them. Fixes a potential crash if GIMP is closed 
while
	the image is being loaded.


svn path=/trunk/; revision=27346
2008-10-21 07:51:08 +00:00
Michael Natterer 5503e6a055 Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h had a
2008-10-09  Michael Natterer  <mitch@gimp.org>

	Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h
	had a GEGL dependency (they will have in the next commit, but I
	wanted to keep the commit separate).

	* app/dialogs/Makefile.am
	* app/file/Makefile.am
	* app/gui/Makefile.am
	* app/menus/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* app/text/Makefile.am
	* app/vectors/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am: add GEGL_CFLAGS.

	* app/actions/*.c
	* app/core/*.c
	* app/dialogs/*.c
	* app/display/*.c
	* app/file/*.c
	* app/gui/*.c
	* app/menus/*.c
	* app/paint/*.c
	* app/pdb/gimppdb-utils.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/*.c
	* app/text/*.c
	* app/tools/*.c
	* app/vectors/*.c
	* app/widgets/*.c
	* app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h>
	to all files which include a drawable subclass or gimpimage.h

	* tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h>
	in all generated files.

	* app/pdb/*-cmds.c: regenerated.

	* data/images/gimp-splash.png: the goat is still sleeping.
	By Aurore Derriennic.


svn path=/trunk/; revision=27202
2008-10-09 20:24:04 +00:00
Michael Natterer 321913dd6d Allow to "Open as Layers" in the empty display:
2008-10-05  Michael Natterer  <mitch@gimp.org>

	Allow to "Open as Layers" in the empty display:

	* app/widgets/gimpfiledialog.[ch]: add member
	"gboolean open_as_layers". Rename gimp_file_dialog_set_image() to
	gimp_file_dialog_set_save_image() and add
	gimp_file_dialog_set_open_image() which sets both the image to
	load layers into and the "open_as_layers" boolean.

	* app/dialogs/file-open-dialog.c (file_open_dialog_response): look
	at dialog->open_as_layers instead of dialog->image to decide whether
	to open as layers (that's much more obvious). Enable open as layers
	without existing image by creating the image if it doesn't exist.

	* app/actions/file-commands.c (file_open_dialog_show): add "title"
	parameter and take the uri from the image if none was passed. Use the
	new gimp_file_dialog_set_open_image() instead of poking into the
	dialog struct. Change callers to pass the title and not get the
	uri from the image; instead always pass the image.

	* app/actions/file-actions.c (file_actions_update): keep
	"Open as Layers" sensitive even without image.


svn path=/trunk/; revision=27135
2008-10-05 15:21:02 +00:00
Sven Neumann 8977c477ad save new images, even if they are not marked dirty.
2008-08-15  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_save_cmd_callback): save new
	images, even if they are not marked dirty.


svn path=/trunk/; revision=26571
2008-08-15 07:38:32 +00:00
Sven Neumann 47509e33a1 when we trust the dirty flag and don't save because there are no changes,
2008-08-14  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_save_cmd_callback): when we
	trust the dirty flag and don't save because there are no 
changes,
	display a message in the status-bar telling the user so.

	* app/config/gimpguiconfig.c: changed the default value for 
	"trust-dirty-flag" to TRUE.


svn path=/trunk/; revision=26565
2008-08-14 20:12:54 +00:00
Sven Neumann f4090ee7a2 attach the URI of the last opened image to the Gimp object.
2008-07-30  Sven Neumann  <sven@gimp.org>

	* app/dialogs/file-open-dialog.c (file_open_dialog_response):
	attach the URI of the last opened image to the Gimp object.

	* app/actions/file-commands.c (file_open_dialog_show): use the
	last opened URI as a fallback for initializing the dialog.


svn path=/trunk/; revision=26339
2008-07-30 14:53:09 +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 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
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
Sven Neumann 5297f9bd3e left-align the image.
2007-09-25  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpmessagebox.c (gimp_message_box_constructor):
	left-align the image.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/actions/templates-commands.c: use more meaningful stock
	icons for message dialogs.

svn path=/trunk/; revision=23651
2007-09-25 14:03:33 +00:00
Nils Philippsen 0691f94df6 app/file/file-save.[ch] (file_save) app/dialogs/file-save-dialog.c
* app/file/file-save.[ch] (file_save)
* app/dialogs/file-save-dialog.c (file_save_dialog_save_image)
* app/actions/file-commands.c (file_save_cmd_callback)
* app/widgets/gimpdnd-xds.c (gimp_dnd_xds_save_image): don't pass
Gimp instance to file_save() calls as it's not needed

svn path=/trunk/; revision=23528
2007-09-13 14:48:32 +00:00
Nils Philippsen 8ff9c4c84c drop own recently used files code in favour of GtkRecentManager:
* app/core/gimp-gui.c (gimp_recent_list_add_uri), app/core/gimp-gui.h,
app/gui/gui-vtable.c (gui_recent_list_add_uri): add
{gimp,gui}_recent_list_add_uri(), gui_recent_list_add_uri() dispatches to
GtkRecentManager

* app/dialogs/file-save-dialog.c (file_save_dialog_save_image),
app/actions/file-commands.c (file_save_cmd_callback),
app/widgets/gimpdnd-xds.c (gimp_dnd_xds_save_image): pass Gimp instance to
file_save() calls

* app/file/file-open.c (file_open_with_proc_and_display,
file_open_layers), app/file/file-save.c (file_save), app/file/file-save.h:
pass Gimp instance to gimp_recent_list_add_uri() calls

* app/file/gimprecentitem.c, app/file/gimprecentitem.h,
app/file/gimprecentlist.c, app/file/gimprecentlist.h: removed

* app/file/Makefile.am: drop reference to removed files

svn path=/trunk/; revision=23526
2007-09-13 14:19:30 +00:00
Sven Neumann a5d10b2ff0 renamed gimp_image_active_drawable() to gimp_image_get_active_drawable().
2007-07-19  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.[ch]: renamed gimp_image_active_drawable() to
	gimp_image_get_active_drawable().

	* app/[lots of files]
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/image.pdb: changed accordingly.

svn path=/trunk/; revision=22958
2007-07-19 14:59:51 +00:00
Sven Neumann cc2a076df5 app/file/Makefile.am app/file/file-procedure.[ch] split functions dealing
2007-05-11  Sven Neumann  <sven@gimp.org>

        * app/file/Makefile.am
        * app/file/file-procedure.[ch]
        * app/file/file-utils.[ch]: split functions dealing with file
        procedures into their own file and renamed them.

        * app/file/file-open.c
        * app/dialogs/file-save-dialog.c
        * app/actions/file-commands.c
        * app/widgets/gimpthumbbox.c
        * app/widgets/gimpdnd-xds.c
        * app/widgets/gimpimagepropview.c
        * tools/pdbgen/pdb/fileops.pdb: changed accordingly

        * app/pdb/fileops_cmds.c: regenerated.


svn path=/trunk/; revision=22474
2007-05-11 18:50:35 +00:00
Sven Neumann 49b8176aa5 Allow other applications to open images in GIMP as if they were new images
2007-04-17  Sven Neumann  <sven@gimp.org>

	Allow other applications to open images in GIMP as if they were
	new images (without associating a filename). Fixes bug #423118.

	* app/file/file-open.[ch]: added parameter 'as_new' to
	file_open_image() and its variants.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/core/gimpimagefile.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptoolbox-dnd.c: changed accordingly.

	* app/app.[ch]
	* app/main.c: added new command-line option '--as-new'.

	* app/widgets/gimpdbusservice.[ch]
	* app/widgets/dbus-service.xml: added new method "OpenAsNew" to the
	D-Bus interface.

	* docs/gimp.1.in: document the new command-line option.


svn path=/trunk/; revision=22264
2007-04-17 15:54:01 +00:00
Michael Natterer a4863593ec Close the display after "Save as" when invoked via the "Close Without
2007-01-20  Michael Natterer  <mitch@gimp.org>

	Close the display after "Save as" when invoked via the "Close
	Without Saving" dialog. Fixes bug #383700.

	* app/actions/actions-types.h: added enum GimpSaveMode { SAVE,
	SAVE_AS, SAVE_A_COPY, SAVE_AND_CLOSE }.

	* app/actions/file-actions.c: changed the 4 save actions into
	GimpEnumActions with above enum as values.

	* app/actions/file-commands.[ch]: merged the save callbacks into
	one and pass a "close_after_saving" boolean to
	file_save_dialog_show().

	* app/widgets/gimpfiledialog.[ch]: added "gboolean
	close_after_saving" parameter to gimp_file_dialog_set_image() and
	to the GimpFileDialog struct.

	* app/dialogs/file-save-dialog.c: if the file was saved
	successfully and close_after_saving is TRUE, close the display if
	the image has not become dirty again in the meantime.


svn path=/trunk/; revision=21743
2007-01-20 19:38:09 +00:00
Sven Neumann 2702869799 use the toplevel widget as transient parent.
2007-01-16  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_open_dialog_show): use the
	toplevel widget as transient parent.


svn path=/trunk/; revision=21724
2007-01-16 12:55:00 +00:00
Sven Neumann 00268bb37a app/actions/file-commands.[ch] app/actions/file-actions.c removed
2007-01-15  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.[ch]
	* app/actions/file-actions.c
	* menus/image-menu.xml.in: removed "file-open-from-image" action
	and simply use "file-open-image" from both File menus. Makes the
	behavior more predictable and removes unneeded complexity.


svn path=/trunk/; revision=21716
2007-01-15 19:48:36 +00:00
Sven Neumann 50fabff948 added new function gimp_ui_manager_activate_action() as a shortcut for
2006-12-15  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpuimanager.[ch]: added new function
	gimp_ui_manager_activate_action() as a shortcut for looking up the
	action and activating it.

	* app/actions/dialogs-actions.c
	* app/display/gimpdisplayshell-close.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptooloptionseditor.c: use the new function.

	* app/actions/file-commands.c
	* app/dialogs/file-save-dialog.c: minor code cleanup.
2006-12-15 12:03:47 +00:00
Sven Neumann 5ef1749496 don't message "Image saved" from here.
2006-12-11  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c: don't message "Image saved" from
here.

	* app/core/gimpimage.[ch]: introduced new signal "saved".

	* app/file/file-save.c (file_save): call gimp_image_saved() from
here.

	* app/display/gimpdisplay-handlers.c: connect to
GimpImage::saved
	and show the "Image saved" message. Makes it show up on all
displays
	and regardless of how the file was saved.

	* app/display/gimpdisplay.c: fixed typo in comment.
2006-12-11 20:57:44 +00:00
Sven Neumann 7f6033fe72 app/actions/file-actions.c app/actions/file-commands.[ch] introduced new
2006-12-11  Sven Neumann  <sven@gimp.org>

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]
	* app/display/gimpdisplayshell-close.c: introduced new action
	'file-save-and-close' and moved display deletion there.
2006-12-11 20:33:01 +00:00
Sven Neumann 41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Sven Neumann e2a0604174 app/actions/file-actions.c app/actions/file-commands.[ch] renamed
2006-11-05  Sven Neumann  <sven@gimp.org>

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]
	* menus/image-menu.xml.in: renamed file-open-as-layer to
	file-open-as-layers to complete the changes done to fix bug
#358082.
2006-11-05 11:35:57 +00:00
Michael Natterer f5afb754a5 Added message severities and make sure all messages are routed through a
2006-10-09  Michael Natterer  <mitch@gimp.org>

	Added message severities and make sure all messages are routed
	through a central function, so redirecting to the error console or
	stderr work again:

	* app/core/core-enums.[ch]: added enum GimpMessageSeverity { INFO,
	WARNING, ERROR }.

	* app/core/gimp.[ch] (gimp_message)
	(gimp_message_valist): added severity parameter. Changed
	"GimpProgress *progress" parameter to "GObject *handler", where
	"handler" can be either a GimpProgress, a GtkWidget or NULL.

	* app/core/gimp-gui.[ch] (gimp_show_message): ditto. Honor
	--console-messages again. Always dispatch to the GUI message
	handler first if it exists.

	* app/gui/gui-message.[ch]: pass severity parameters around.

	(gui_message_error_dialog): if "handler" is a progress, dispatch
	the message to it first. If it is a widget (and *not* a progress),
	use a GtkMessageDialog on top of that widget's toplevel. Fall
	back to the usual GimpErrorDialog otherwise.

	* app/core/gimpprogress.[ch] (gimp_progress_message): added
	severity parameter. Also added boolean return value to the virtual
	function so it can decide to fail if it can't handle the message.

	* app/display/gimpdisplay.c: implement GimpProgress::message() and
	redirect the message to GimpDisplayShell.

	* app/display/gimpdisplayshell-progress.c: implement
	GimpProgress::message() and redirect the message to GimpStatusbar
	if it is not an error and if the status bar is visible.

	* app/display/gimpstatusbar.[ch]: implement GimpProgress::message(),
	but fail on messages that contain a newline. Show the right icons
	for the message severities (work in progress).

	* app/display/gimpdisplayshell.[ch]: removed
	gimp_display_shell_message() and its _valist() variant.

	* app/widgets/gimperrorconsole.[ch]: show the right icons for the
	message severities.

	* app/widgets/gimpthumbbox.c (gimp_thumb_box_progress_message):
	return TRUE to swallow all messages.

	* app/widgets/gimpwidgets-utils.[ch]: removed
	gimp_show_message_dialog(). Added gimp_get_message_stock_id().

	* app/errors.c
	* app/actions/edit-commands.c
	* app/actions/error-console-commands.c
	* app/actions/file-commands.c
	* app/actions/select-commands.c
	* app/actions/text-editor-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimagefile.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/pdb/gimppdb.c
	* app/plug-in/gimpplugin.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimptool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpactionview.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimppdbdialog.c
	* app/widgets/gimpvectorstreeview.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/message.pdb
	* tools/pdbgen/pdb/palette.pdb: added severity parameter to
	gimp_message() calls. Convert all calls to
	gimp_show_message_dialog() and gimp_display_shell_message() to
	gimp_message(). Also converted some more g_message() calls.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/message_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-10-09 08:17:22 +00:00
Sven Neumann 3fbf7436c9 added a GError parameter to file_utils_find_proc().
2006-08-10  Sven Neumann  <sven@gimp.org>

	* app/file/file-utils.[ch]: added a GError parameter to
	file_utils_find_proc().

	* app/actions/file-commands.c
	* app/dialogs/file-save-dialog.c
	* app/file/file-open.c
	* app/widgets/gimpdnd-xds.c
	* tools/pdbgen/pdb/fileops.pdb: changed accordingly.

	* app/pdb/fileops_cmds.c: regenerated.
2006-08-10 21:22:05 +00:00
Sven Neumann 48d054e8d4 added new function gimp_message() as a replacement for g_message(). Part
2006-08-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added new function gimp_message() as a
	replacement for g_message(). Part of the fix for bug #347214.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/actions/layers-commands.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimagefile.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/pdb/gimppdb.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-private.h
	* app/xcf/xcf-save.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/palette.pdb: use gimp_message() instead of
	gimp_message() whenever we have a GimpProgress.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-08-08 21:06:36 +00:00
Sven Neumann e5603c965c app/actions/file-commands.c formatting.
2006-07-12  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c
	* app/pdb/gimppluginprocedure.c: formatting.
2006-07-12 06:10:52 +00:00
Michael Natterer f1c3e79a4b app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps
2006-04-29  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-types.h
	* app/plug-in/gimppluginmanager.[ch]: new object which keeps all
	plug-in related stuff that was kept in the Gimp instance. Has
	"menu-branch-added" and "last-plug-in-changed" signals.

	* app/plug-in/plug-ins.[ch]: removed, all its functions are in
	GimpPlugInManager now.

	* app/core/gimpmarshal.list: new marshaller for the new object.

	* app/core/gimp.[ch]: removed all plug-in related stuff and keep a
	GimpPlugInManager around.

	* app/plug-in/plug-in-data.[ch]
	* app/plug-in/plug-in-file.[ch]
	* app/plug-in/plug-in-help-domain.[ch]
	* app/plug-in/plug-in-locale-domain.[ch]
	* app/plug-in/plug-in-menu-branch.[ch]
	* app/plug-in/plug-ins-query.[ch]: removed...

	* app/plug-in/gimppluginmanager-data.[ch]
	* app/plug-in/gimppluginmanager-file.[ch]
	* app/plug-in/gimppluginmanager-help-domain.[ch]
	* app/plug-in/gimppluginmanager-locale-domain.[ch]
	* app/plug-in/gimppluginmanager-menu-branch.[ch]
	* app/plug-in/gimppluginmanager-query.[ch]: ...and added as
	methods of GimpPlugInManager.

	* app/plug-in/plug-in-debug.[ch]
	* app/plug-in/plug-in-shm.[ch]: removed...

	* app/plug-in/gimpplugindebug.[ch]
	* app/plug-in/gimppluginshm.[ch]: ...and added as properly
	namespeced structs with constructors and destructors.

	* app/core/Makefile.am
	* app/core/gimpenvirontable.[ch]
	* app/core/gimpinterpreterdb.[ch]: removed...

	* app/plug-in/gimpenvirontable.[ch]
	* app/plug-in/gimpinterpreterdb.[ch]: ...and added here unchanged.

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: remove gimp_menus_create_branch() and all
	related stuff.

	* app/actions/plug-in-actions.[ch]: connect to the
	plug-in-manager's "menu-path-added" signal and create menu branch
	actions accordingly.

	* app/plug-in/plug-in-context.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-progress.c
	* app/plug-in/plug-in-run.[ch]
	* app/plug-in/plug-in.[ch]
	* app/app_procs.c
	* app/actions/file-commands.c
	* app/actions/plug-in-commands.c
	* app/core/gimpimage.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/file/file-open.c
	* app/gui/gui.c
	* app/menus/plug-in-menus.c
	* app/pdb/gimppluginprocedure.c
	* app/pdb/gimptemporaryprocedure.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpthumbbox.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/context.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/message.pdb
	* tools/pdbgen/pdb/plug_in.pdb
	* tools/pdbgen/pdb/procedural_db.pdb
	* tools/pdbgen/pdb/progress.pdb
	* tools/pdbgen/pdb/undo.pdb: follow above refactoring.

	* app/pdb/context_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/fileops_cmds.c
	* app/pdb/help_cmds.c
	* app/pdb/message_cmds.c
	* app/pdb/plug_in_cmds.c
	* app/pdb/procedural_db_cmds.c
	* app/pdb/progress_cmds.c
	* app/pdb/undo_cmds.c: regenerated.
2006-04-28 22:26:51 +00:00
Michael Natterer 086d0b6371 app/plug-in/plug-in-types.h renamed to GimpPlugInProcedure and made a
2006-04-05  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-types.h
	* app/plug-in/plug-in-proc-def.[ch]: renamed to GimpPlugInProcedure
	and made a GObject derived from GimpProcedure (instead of having
	a pointer to a GimpProcedure). Added image_types and file_magic
	utility functions taken from plug-ins.[ch]. Still lives in the
	same crappy files because I am undecided where to put it...

	* app/pdb/gimpprocedure.c (gimp_procedure_real_execute): removed
	switch() statement and always call the internal marshaller because
	GimpProcedure::execute() is properly overridden by
	GimpPlugInProcedure now.

	* app/plug-in/plug-ins.[ch]: removed the mime_type and file_magic
	utilities added to GimpPlugInProcedure.

	* app/actions/file-commands.c
	* app/actions/plug-in-actions.[ch]
	* app/actions/plug-in-commands.[ch]
	* app/core/gimp-gui.[ch]
	* app/core/gimp.[ch]
	* app/core/gimpimage.[ch]
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/dialogs/print-size-dialog.c
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/file/file-utils.[ch]
	* app/gui/gui-vtable.c
	* app/menus/plug-in-menus.[ch]
	* app/plug-in/plug-in-def.[ch]
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-in-run.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins-query.c
	* app/widgets/gimpactiongroup.[ch]
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimpfiledialog.[ch]
	* app/widgets/gimpfileprocview.[ch]
	* app/widgets/gimppluginaction.[ch]
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/plug_in.pdb: changed addordingly.

	* app/pdb/fileops_cmds.c
	* app/pdb/plug_in_cmds.c: regenerated.
2006-04-05 08:38:33 +00:00
Sven Neumann 5439aa4995 did a global gdisp -> display substitution.
2006-03-28  Sven Neumann  <sven@gimp.org>

	* app/*: did a global gdisp -> display substitution.
2006-03-28 17:55:52 +00:00
Sven Neumann 905fdfcbed did a global gimage -> image substitution.
2006-03-28  Sven Neumann  <sven@gimp.org>

	* app/*: did a global gimage -> image substitution.
2006-03-28 17:08:36 +00:00
Sven Neumann 2a0378acb5 keep a reference on the old image until the display is connected to the
2006-03-06  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.c (gimp_display_reconnect): keep a
	reference on the old image until the display is connected to the
	new one. Fixes bug #333568.

	* app/display/gimpdisplay-handlers.c: fixed typo in comment.

	* app/actions/file-commands.c: cosmetics.
2006-03-06 17:35:40 +00:00
Michael Natterer dea7c48254 Fix bug #145492:
2005-10-29  Michael Natterer  <mitch@gimp.org>

	 Fix bug #145492:

	* app/actions/file-commands.c (file_save_cmd_callback)
	* app/dialogs/file-save-dialog.c (file_save_dialog_save_image):
	set the "file-quit" action insensitive while the image is being
	saved to prevent data loss.

	* app/widgets/gimptoolbox.c (gimp_toolbox_delete_event): activate
	the "file-quit" action instead of calling gimp_exit() directly so
	trying to close the toolbox while saving is impossible too.
2005-10-29 01:43:14 +00:00
Sven Neumann ee64ca3c90 introduced variants of file_utils_uri_to_utf8_filename() and
2005-10-02  Sven Neumann  <sven@gimp.org>

	* app/file/file-utils.[ch]: introduced variants of
	file_utils_uri_to_utf8_filename() and
	file_utils_uri_to_utf8_basename() that use g_filename_display_name()
	and g_filename_display_basename().

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-actions.c
	* app/actions/file-commands.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/display/gimpdisplayshell-close.c
	* app/display/gimpdisplayshell-dnd.c
	* app/display/gimpdisplayshell-title.c
	* app/file/file-open.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpthumbbox.c
	* app/widgets/gimptoolbox-dnd.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimpviewabledialog.c: use the new functions.

	* plug-ins/help/domain.c: use g_filename_display_name().
2005-10-01 22:43:22 +00:00
Michael Natterer 9412ca8e23 app/actions/data-commands.c app/actions/file-commands.c
2005-09-27  Michael Natterer  <mitch@gimp.org>

	* app/actions/data-commands.c
	* app/actions/file-commands.c
	* app/actions/templates-commands.c
	* app/dialogs/image-scale-dialog.c
	* app/dialogs/resize-dialog.c
	* app/dialogs/vectors-options-dialog.c
	* app/tools/gimptexttool.c
	* libgimpwidgets/gimpcolorbutton.c
	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/common/AlienMap2.c
	* plug-ins/common/aa.c
	* plug-ins/gimpressionist/orientmap.c
	* plug-ins/script-fu/script-fu-interface.c
	* plug-ins/xjt/xjt.c: fixed indentation in calls to
	gtk_dialog_set_alternative_button_order().
2005-09-27 18:51:44 +00:00
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