Commit graph

172 commits

Author SHA1 Message Date
Michael Natterer cd0c301a3f app/widgets/Makefile.am new widget featuring a proof-of-concept palette
2006-11-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimpcolorselectorpalette.[ch]: new widget featuring
	a proof-of-concept palette color selector. It always shows the
	current palette and doesn't bother to have any features yet. If I
	don't get around finishing this I will disable it for the 2.4
	release, but it's better kept in CVS than on my disk...
	Addresses bug #132146.

	* app/widgets/gimpcolordialog.c (gimp_color_dialog_new): attach
	the passed context to the dialog so the palette selector can find
	it (puke).

	* app/gui/gui.c (gui_restore_callback): register the new object
	with the GType system.
2006-11-03 17:28:52 +00:00
Michael Natterer 1419751614 changed all message setting functions to use printf-style argument lists.
2006-09-22  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.[ch]: changed all message setting
	functions to use printf-style argument lists. Added new API to
	show a temporary message that stays on top regardless of any other
	message activity and disappears after 3 seconds.

	* app/actions/edit-commands.c: show a statusbar message when
	pasting fails because the clipboard contains no image data. Pop a
	dialog when "Paste as New" fails. Addresses bug #357059 for
	internal functions.

	* app/display/gimpdisplayshell-title.c
	* app/gui/gui.c
	* app/tools/gimptool.c: changed accordingly.
2006-09-22 16:44:47 +00:00
Sven Neumann 03392a62fd INSTALL configure.in relaxed required version for gtk+ to 2.8.17 and pango
2006-07-07  Sven Neumann  <sven@gimp.org>

	* INSTALL
	* configure.in
	* app/gui/gui.c: relaxed required version for gtk+ to 2.8.17 and
	pango to 1.12.2 so that it compiles on Ubuntu (Dapper Drake).
2006-07-07 17:54:23 +00:00
Michael Natterer 6feb7bb82c depend on glib >= 2.10.2, gtk+ >= 2.8.18 and pango >= 1.12.3. Define
2006-07-05  Michael Natterer  <mitch@gimp.org>

	* configure.in: depend on glib >= 2.10.2, gtk+ >= 2.8.18
	and pango >= 1.12.3. Define FOO_DISABLE_DEPRECATED also for
	glib 2.12, gtk+ 2.10 and pango 2.14

	* app/sanity.c
	* app/gui/gui.c: adjusted sanity checks accordingly.

	* app/dialogs/stroke-dialog.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpuimanager.c
	* libgimpwidgets/gimphelpui.c
	* libgimpwidgets/gimpmemsizeentry.c
	* plug-ins/helpbrowser/gimpthrobber.c: replace gtk_object_sink()
	by combinations of g_object_ref_sink() and g_object_unref().
2006-07-05 13:40:47 +00:00
Michael Natterer 48a6fbea39 added "be_verbose" parameters and be verbose about which splash image is
2006-07-03  Michael Natterer  <mitch@gimp.org>

	* app/gui/splash.[ch]: added "be_verbose" parameters and be
	verbose about which splash image is actually loaded.

	* app/gui/gui.c (gui_init): pass gimp->be_verbose to
	splash_create().
2006-07-03 11:03:53 +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
Sven Neumann 049872b361 app/*.[ch] converted tabs to spaces.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* app/*.[ch]
	* app/*/*.[ch]: converted tabs to spaces.
2006-04-12 12:49:29 +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 872d9506e5 factored out some code to a utility function.
2006-03-10  Sven Neumann  <ven@gimp.org>

	* app/widgets/gimpaction.c: factored out some code to a utility
	function.

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/dialogs/preferences-dialog.c
	* app/gui/gui.c
	* app/plug-in/plug-in-run.c
	* libgimp/gimp.c
	* libgimpbase/gimpprotocol.[ch]: renamed tool_tips to tooltips in
	variables and in the gimprc.

	* app/config/gimpbaseconfig.[ch]: removed stingy_memory_use from
	the GimpBaseConfig struct.
2006-03-10 16:40:09 +00:00
Michael Natterer 23b99dfab6 show tooltps from the global image popup menu too.
2006-03-09  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c: show tooltps from the global image popup menu too.
2006-03-09 16:06:32 +00:00
Michael Natterer d8fbc7d2df depend on gtk+ >= 2.8.8 also at runtime. We don't want to debug
2006-01-05  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c (gui_sanity_check): depend on gtk+ >= 2.8.8 also
	at runtime. We don't want to debug everybody's gtk problems...
2006-01-05 17:05:33 +00:00
Michael Natterer bbdfa25de9 bump version to 2.3.7, require GTK+ >= 2.8.0 and pango >= 2.10.0.
2005-12-28  Michael Natterer  <mitch@gimp.org>

	* configure.in: bump version to 2.3.7,
	require GTK+ >= 2.8.0 and pango >= 2.10.0.

	* app/gui/gui.c (gui_sanity_check): changed accordingly.
2005-12-28 19:47:07 +00:00
Michael Natterer aa80506d6d app/core/gimp-contexts.c app/core/gimp-documents.c
2005-11-06  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-contexts.c
	* app/core/gimp-documents.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp-units.c
	* app/core/gimpdatafactory.c
	* app/core/gimptooloptions.c
	* app/gui/color-history.[ch]
	* app/gui/gui.c
	* app/gui/session.c
	* app/plug-in/plug-ins.c
	* app/text/gimp-fonts.c
	* app/tools/gimp-tools.c
	* app/widgets/gimpcontrollers.c
	* app/widgets/gimpdevices.c: when running --verbose, print the
	name of each config file parsed or written.
2005-11-06 22:01:25 +00:00
Michael Natterer ae4d65ac04 Separated the global buffer logic from the clipboard implementation:
2005-09-21  Michael Natterer  <mitch@gimp.org>

	Separated the global buffer logic from the clipboard
	implementation:

	* app/widgets/gimpclipboard.[ch]: removed all knowledge about
	gimp->global_buffer. Removed the Gimp::buffer-changed callback.
	Made gimp_clipboard_set_buffer() public and remember the set
	buffer in the GimpClipboard struct. Fixed the has_buffer() and
	has_svg() functions.

	* app/gui/gui.c: connect to Gimp::buffer-changed here and call
	gimp_clipboard_set_buffer() from the callback.
2005-09-21 14:35:51 +00:00
Michael Natterer 32d875d070 app/dialogs/module-dialog.c app/dialogs/palette-import-dialog.c
2005-08-03  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/module-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/gui/gui.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpcursorview.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockbook.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpenumaction.c
	* app/widgets/gimperrordialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpmenudock.c
	* app/widgets/gimpmessagebox.c
	* app/widgets/gimpmessagedialog.c
	* app/widgets/gimppluginaction.c
	* app/widgets/gimpprogressdialog.c
	* app/widgets/gimpsamplepointeditor.c
	* app/widgets/gimpstringaction.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptoolbox-image-area.c
	* app/widgets/gimptoolbox.c: use canonical names for signals and
	properties.
2005-08-03 09:34:55 +00:00
Michael Natterer 19ea2a9db4 app/widgets/Makefile.am new files keeping the render acceleration check
2005-07-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimprender.[ch]: new files keeping the render
	acceleration check buffers.

	* app/display/gimpdisplayshell-render.[ch]: removed them here.

	* app/gui/gui.c: initialize/shutdown the new buffers.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpviewrenderer.c
	* app/widgets/gimpviewrenderergradient.c
	* app/actions/view-actions.c
	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell.c: use the new stuff. Removes
	lots of broken widgets -> display dependencies.
2005-07-19 20:42:14 +00:00
Sven Neumann 93eab43eef Use the canonical form for signal names.
2005-05-27  Sven Neumann  <sven@gimp.org>

	* (lots of files): Use the canonical form for signal names.
2005-05-27 16:51:39 +00:00
Michael Natterer e6063f61a2 Let the user decide whether tool options are persistant or not as
2005-04-11  Michael Natterer  <mitch@gimp.org>

	Let the user decide whether tool options are persistant or not as
	suggested in bug #165078:

	* app/config/gimprc-blurbs.h
	* app/config/gimpguiconfig.[ch]: added "gboolean save_tool_options".

	* app/tools/gimp-tools.[ch]: implement the same logic as for
	devicerc and essionrc: added gimp_tools_clear() which deletes the
	stored tool options and added "save_tool_options" and
	"always_save" parameters to gimp_tools_save(). Everything affects
	just the primary tool options, *not* the separately saved presets
	for each tool.

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

	* app/dialogs/preferences-dialog.c: added GUI for the stuff above
	in the style of the devicerc and seccionrc prefs GUIs.
2005-04-11 21:17:59 +00:00
Sven Neumann ebb343fa91 app/app_procs.[ch] app/gui/gui.[ch] simplified initialization by passing
2005-02-08  Sven Neumann  <sven@gimp.org>

	* app/app_procs.[ch]
	* app/gui/gui.[ch]
	* app/main.c: simplified initialization by passing GOptionContext
	to app_libs_init() and gui_libs_init().
2005-02-08 22:57:24 +00:00
Michael Natterer d23ada7057 depend on GTK+ >= 2.6.0 and pango >= 1.8.0.
2005-02-08  Michael Natterer  <mitch@gimp.org>

	* configure.in: depend on GTK+ >= 2.6.0 and pango >= 1.8.0.

	* app/gui/gui.c (gui_sanity_check): changed accordingly.
2005-02-08 19:59:00 +00:00
Michael Natterer 0212d65047 if display became NULL (e.g. by closing a view) and we decide to activate
2005-02-08  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c (gui_display_changed): if display became NULL
	(e.g. by closing a view) and we decide to activate another view
	of the same image, stop the emission of the original
	"display-changed" signal so it doesn't affect the toolbox'
	UI manager. Fixes bug #159304.
2005-02-08 17:58:28 +00:00
Michael Natterer cdb165874f if the active display becomes NULL (e.g. by closing a view), don't leave
2004-11-24  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c (gui_display_changed): if the active display
	becomes NULL (e.g. by closing a view), don't leave the user
	context with an image but no display. Instead, try to find another
	display of the same image instead and if that fails set the image
	to NULL.

	Prevents the various foo_actions_update() functions from being
	called with a NULL display while there is still an active image in
	the context.

	Fixes bug #159304.

	(Removed #warning about being misplaced from that function because
	it's a typical piece of ugly glue code that belongs exactly here).
2004-11-24 16:41:52 +00:00
Sven Neumann 62b5c77c76 app/config/gimpguiconfig.[ch] added gimprc option "show-help-button".
2004-10-04  Sven Neumann  <sven@gimp.org>

        * app/config/gimpguiconfig.[ch]
        * app/config/gimprc-blurbs.h: added gimprc option "show-help-button".

        * app/dialogs/preferences-dialog.c: added a GUI for it.

        * app/dialogs/file-save-dialog.c
        * app/dialogs/image-new-dialog.c
        * app/dialogs/quit-dialog.c
        * app/display/gimpdisplayshell-close.c
        * app/widgets/gimphelp-ids.h: don't set help-ids on confirmation
        dialogs.

        * libgimpbase/gimpprotocol.[ch]
        * libgimp/gimp.[ch]: added boolean "show_help_button" to the
        config message.

        * app/plug-in/plug-in-run.c: pass the new preference to the plug-in.

        * libgimpwidgets/gimpdialog.[ch]: added new function that allows to
        set whether new dialogs should get a help button added.

        * app/gui/gui.c
        * libgimp/gimpui.c: call gimp_dialogs_show_help_button() according
        to the gimprc settings.
2004-10-04 16:21:52 +00:00
Michael Natterer c448cf9d94 added GimpMenuFactory parameter and removed inclusion on "menus/menus.h".
2004-09-20  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/dialogs.[ch] (dialogs_init): added GimpMenuFactory
	parameter and removed inclusion on "menus/menus.h".

	* app/menus/menus.[ch] (menus_init): added GimpActionFactory
	parameter and removed inclusion of "actions/actions.h".

	* app/gui/gui.c (gui_restore_callback): pass the factories to the
	above functions.
2004-09-20 14:41:54 +00:00
Michael Natterer 357dc2d777 depend on GLib >= 2.4.5 and GTK+ >= 2.4.4.
2004-09-16  Michael Natterer  <mitch@gimp.org>

	* configure.in: depend on GLib >= 2.4.5 and GTK+ >= 2.4.4.

	* app/gui/gui.c: changed accordingly.

	* app/sanity.c: ditto. Added check for GLib and put each check
	into its own utility function. Enabled #if 0'ed check for
	FreeType >= 6.2.7.

	* app/widgets/gimpactiongroup.c
	* app/widgets/gimpcursor.c
	* app/widgets/gimpselectiondata.c
	* app/widgets/gimpuimanager.c
	* app/widgets/gimpwidgets-utils.c: removed workarounds for library
	versions we refuse to start with.
2004-09-16 14:31:39 +00:00
Sven Neumann d6c4830027 app/dialogs/dialogs-constructors.[ch] app/dialogs/dialogs.c let the dialog
2004-09-14  Sven Neumann  <sven@gimp.org>

	* app/dialogs/dialogs-constructors.[ch]
	* app/dialogs/dialogs.c
	* app/gui/gui.c: let the dialog factory handle the quit dialog
	as singleton. Fixes bug #151914.

	* app/dialogs/quit-dialog.c: added a warning here. We need a
	container of dirty images for the above change to work correctly.
2004-09-13 23:09:10 +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
Sven Neumann ce1370bb2e added a boolean parameter to gimp_dialog_factory_dialog_new() to let the
2004-09-01  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdialogfactory.[ch]: added a boolean parameter to
	gimp_dialog_factory_dialog_new() to let the caller decide whether
	the window should be presented or not.

	* app/actions/dialogs-commands.c
	* app/actions/image-commands.c
	* app/actions/templates-commands.c
	* app/gui/gui-vtable.c
	* app/gui/gui.c
	* app/widgets/gimpsessioninfo.c: changed accordingly. Do not let
	gimp_dialog_factory_dialog_new() present the dialog if we need to
	change it after creation. This avoids annoying resizes, noticeable
	especially with the error dialog.
2004-08-31 22:41:15 +00:00
Sven Neumann 80531ec936 added gimp_message_box_repeat().
2004-08-25  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpmessagebox.[ch]: added gimp_message_box_repeat().

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimperrordialog.[ch]: added new dialog that adds a new
	GimpMessageBox for each message added. Fixes bug #92604.

	* app/widgets/gimpwidgets-utils.[ch]: removed old gimp_message_box()
	functionality.

	* app/gui/gui.c (gui_abort): use a GimpMessageBox in a GimpDialog.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: manage GimpErrorDialog as singleton.

	* app/gui/gui-vtable.c (gui_message): use the new error dialog.

	* app/core/gimp-gui.c (gimp_message): substitue "GIMP" for a NULL
	domain.

	* app/widgets/gimperrorconsole.c (gimp_error_console_add): fail
	when being called with a NULL domain.
2004-08-25 17:58:52 +00:00
Michael Natterer fd1a0e142c Allow URI drops from apps linked against GLib < 2.4.4 to GIMP linked
2004-08-04  Michael Natterer  <mitch@gimp.org>

	Allow URI drops from apps linked against GLib < 2.4.4 to GIMP
	linked against GLib >= 2.4.5. Fixes bug #148140.

	* app/core/gimp-utils.[ch]: added gimp_check_glib_version().

	* app/widgets/gimpselectiondata.c: added runtime check for GLib
	versions that encode file:// URIs correctly (>= 2.4.5). For older
	(broken) GLibs, leave the code path as is, for newer (fixed) ones,
	perform an additional check if the dropped URI is in the (broken)
	escaped-UTF-8 format and convert it to local filename encoding.

	* app/gui/gui.c: warn the user that non-ASCII filenames can't
	be used when linked against GLib 2.4.4.
2004-08-04 17:11:39 +00:00
Michael Natterer cc6288a4fb Enabled the various "Clear saved foobar now" buttons in prefs:
2004-07-21  Michael Natterer  <mitch@gimp.org>

	Enabled the various "Clear saved foobar now" buttons in prefs:

	* app/gui/session.[ch]
	* app/menus/menus.[ch]
	* app/widgets/gimpdevices.[ch]: implemented the _clear()
	functions: unlink() the rc file and set an internal flag that it
	has been deleted. Added "gboolean always_save" parameter to the
	_save() functions and don't save anything if it is FALSE and the
	internal deletion flag has been set.

	* app/gui/gui.c
	* app/widgets/gimpdevicestatus.c: changed accordingly.

	* app/gui/preferences-dialog.c: added callbacks for all "Save now"
	and "Clear now" buttons and show error messages if clearing fails.
	Inform the user that she has to restart GIMP to see the effect of
	the clearing.
2004-07-21 16:11:31 +00:00
Michael Natterer 84c29b4861 Made the gimp-console binary compile. Finishes core/GUI separation and
2004-07-12  Michael Natterer  <mitch@gimp.org>

	Made the gimp-console binary compile.
	Finishes core/GUI separation and fixes bug #71514:

	* configure.in: removed the crazy-hacker warning for
	--enable-gimp-console.

	* app/Makefile.am: for gimp-console, copy app_procs.c to
	app_procs_console.c and compile it instead of app_procs.c with
	-DGIMP_CONSOLE_COMPILATION

	* app/app_procs.[ch]: added some #ifndef GIMP_CONSOLE_COMPILATION
	to skip GUI stuff for the gimp-console case.
	Renamed app_gui_libs_init() to app_libs_init(), renamed
	app_gui_abort() to app_abort() and added app_exit() so everything
	that needs #ifdefs lives here now.

	* app/main.c: changed accordingly.

	* app/gui/gui.c (gui_abort): really abort (call exit()).
2004-07-12 14:32:31 +00:00
Sven Neumann 1abeb90523 removed the gtk+ sanity check here ...
2004-07-12  Sven Neumann  <sven@gimp.org>

	* app/sanity.[ch]: removed the gtk+ sanity check here ...

	* app/gui/gui.c: ... and do it here from gui_libs_init().

	* app/main.c: changed accordingly.
2004-07-12 13:22:28 +00:00
Sven Neumann 9000f4a9d8 removed the quit dialog code here.
2004-07-09  Sven Neumann  <sven@gimp.org>

	* app/gui/gui.c: removed the quit dialog code here.

	* app/gui/Makefile.am
	* app/gui/quit-dialog.[ch]: added new files that hold the old code
	for now.

2004-07-09  Sven Neumann  <sven@gimp.org>

	* POTFILES.in: updated.
2004-07-09 20:38:35 +00:00
Michael Natterer 8fc8cb487c app/gui/Makefile.am removed...
2004-07-07  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/clipboard.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/gimpclipboard.[ch]: ...and added here.

	* app/actions/edit-commands.c
	* app/gui/gui.c: changed accordingly.
2004-07-07 14:38:23 +00:00
Sven Neumann 6423529b86 app/gui/Makefile.am new files implementing a clipboard for image data
2004-07-02  Sven Neumann  <sven@gimp.org>

	* app/gui/Makefile.am
	* app/gui/clipboard.[ch]: new files implementing a clipboard for
	image data based on GDK_SELECTION_CLIPBOARD (bug #133247).

	* app/actions/edit-actions.c
	* app/actions/edit-commands.c: use the new clipboard API.

	* app/gui/gui.c: initialize and shutdown the clipboard.

	* app/core/gimpbuffer.c: cosmetics.

	* app/actions/actions.c
	* app/menus/menus.c: added sanity checks to exit functions.

	* app/display/gimpdisplayshell-dnd.[ch]: let
	gimp_display_shell_drop_svg() take a guchar * buffer.

	* app/widgets/gimpselectiondata.c (gimp_selection_data_get_pixbuf):
	fixed the implementation.
2004-07-02 14:08:15 +00:00
Sven Neumann b9c23cac5d select the standard tool.
2004-06-28  Sven Neumann  <sven@gimp.org>

	* app/gui/gui.c (gui_initialize_after_callback): select the
	standard tool.

	* app/tools/tool_manager.c: cosmetics.
2004-06-28 13:18:00 +00:00
Sven Neumann 57ce8c61be improved message in quit dialog just in case that we don't manage to redo
2004-06-21  Sven Neumann  <sven@gimp.org>

	* app/gui/gui.c (gui_exit_callback): improved message in quit
	dialog just in case that we don't manage to redo this dialog
	before 2.2.
2004-06-21 13:35:09 +00:00
Michael Natterer d0117ef5b9 Started to fix bug #106920 in a more genreral way:
2004-06-16  Michael Natterer  <mitch@gimp.org>

	Started to fix bug #106920 in a more genreral way:

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpwidgetsmarshal.list
	* libgimpwidgets/gimpcontroller.[ch]: new abstract base class
	which provides an API for pluggable input controller modules
	(mouse wheel, usb/midi stuff etc.).

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontrollerwheel.[ch]: subclass of the above
	which maps wheel mouse scroll events to controller events.

	* app/widgets/gimpcontrollers.[ch]: manager for controllers.
	reads $(gimpdir)/controllerrc and keeps a mapping of controller
	events to GtkActions.

	* app/gui/gui.c: initialize and shut down the controller stuff.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): if a wheel controller
	exists, dispatch GdkEventScroll to it first and return if it was
	handled.
2004-06-15 22:59:26 +00:00
Michael Natterer cf3533ba9c put the image popup menu into a dummy menubar to work around the silly
2004-05-17  Michael Natterer  <mitch@gimp.org>

	* menus/menus.xsl: put the image popup menu into a dummy menubar
	to work around the silly GtkUIManager restriction that popup menus
	can't have tearoff items.

	* app/menus/menus.c
	* app/menus/image-menu.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/gui-vtable.c
	* app/menus/plug-in-menus.c: changed accordingly.

	* app/gui/gui.c (gui_restore_after_callback): connect to
	"notify::tearoff-menus" of GimpGuiConfig and reconfigure the
	global image UI manager accordingly.

	* app/config/gimpguiconfig.c: removed GIMP_PARAM_RESTART from the
	"tearoff-menus" property because GtkUIManager can change this on
	the fly.

	* app/display/gimpdisplayshell.[ch]: added the menubar to the
	GimpDisplayShell struct. Some cleanup in gimp_display_shell_new().

	* app/display/gimpdisplayshell-appearance.c
	(gimp_display_shell_set_show_menubar): use shell->menubar instead
	of asking the UI manager.

	* app/widgets/gimpuimanager.[ch]: changed gimp_ui_manager_ui_get()
	to transparently load the XML files even if a sub-widget was
	requested. Reordered parameters of gimp_ui_manager_ui_popup().
	Lots of internal cleanups.

	* app/widgets/gimpdockable.c
	* app/widgets/gimptooloptionseditor.c: simplified accordingly.

	* app/widgets/gimpeditor.[ch]: added new function
	gimp_editor_popup_menu() which takes a GimpMenuPositionFunc and
	updates/shows the editor's menu.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c: use gimp_editor_popup_menu().

	* app/widgets/gimptoolbox.c: moved all code from
	gimp_toolbox_new() to GObject::constructor().
2004-05-17 13:38:03 +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 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 11309f8e5e call actions_init() (gui_exit_after_callback): call actions_exit().
2004-04-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c (gui_restore_callback): call actions_init()
	(gui_exit_after_callback): call actions_exit().

	* app/gui/menus.c (menus_init)
	(menu_exit): don't call them here.
2004-04-27 10:23:35 +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 afe0eb359e app/Makefile.am new files implementing sanity_check() for run-time
2004-03-30  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/sanity.[ch]: new files implementing sanity_check() for
	run-time checking library versions. Added a check for FreeType but
	disabled it until we figured if and how freetype causes some of
	the DLL hell bugs.

	* app/main.c (main): call it and abort if it fails.

	* app/app_procs.[ch]: added app_gui_abort() so main.c doesn't
	need to #include "gui/gui.h"

	* app/gui/gui.[ch] (gui_libs_init): removed library sanity checking.

	(gui_abort): new function which shows the abort message.
2004-03-30 11:32:21 +00:00
Sven Neumann 1951ad2146 splash image for GIMP 2.0 by Jimmac.
2004-03-15  Sven Neumann  <sven@gimp.org>

	* data/images/gimp_splash.png: splash image for GIMP 2.0 by Jimmac.

	* app/gui/splash.[ch]: draw the text on the splash image, not
	below it.

	* app/app_procs.[ch]
	* app/gui/gui.[ch]
	* app/main.c
	* docs/gimp.1.in: dropped support for the --no-splash-image
	command-line option (not to be confused with --no-splash). It was
	never very useful and makes even less sense in times where startup
	notification is available.
2004-03-15 00:17:21 +00:00
Michael Natterer 4d24bdbf81 Some code review:
2004-02-18  Michael Natterer  <mitch@gimp.org>

	Some code review:

	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-serialize.c: removed obsolete code which
	made sure serialize_property()/deserialize_property() are only
	called for properties of the correct class. We do it the right way
	for quite a while now and clear the inherited function pointers in
	gimp_config_iface_base_init().

	* app/config/gimprc.c (gimp_rc_dispose): don't forget to chain up.

	* app/base/gimplut.c
	* app/base/lut-funcs.c
	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-serialize.c
	* app/config/gimpconfig-types.c
	* app/config/gimprc.c
	* app/core/gimp-modules.c
	* app/core/gimpbrush.c
	* app/core/gimpcontainer.c
	* app/core/gimpdocumentlist.c
	* app/core/gimpitem.c
	* app/gui/about-dialog.c
	* app/gui/color-notebook.c
	* app/gui/gui.c
	* app/gui/tips-dialog.c
	* app/paint/gimppaintcore.c
	* app/paint-funcs/paint-funcs.c
	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimpselectioneditor.c: removed I/O includes from
	files which don't use lowlevel APIs any more. Also removes
	a whole bunch of G_OS_WIN32 special casing. Removed trailing
	whitespace. Misc tiny cleanups.
2004-02-18 13:43:50 +00:00
Michael Natterer 8b6812805d added runtime check for fontconfig > 2.2.0 and abort with a dialog box
2004-02-09  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c (gui_libs_init): added runtime check for
	fontconfig > 2.2.0 and abort with a dialog box telling the
	user to upgrade fontconfig if the requirement is not met.
	Fixes all bugs like #133818.
2004-02-09 15:29:03 +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
Sven Neumann 6bffe5ad51 removed the hack that used to call gimp_exit() when the batch command
2003-11-30  Sven Neumann  <sven@gimp.org>

	* app/batch.c: removed the hack that used to call gimp_exit() when
	the batch command matches "(gimp-quit 0)". It shouldn't be needed.

	* tools/pdbgen/pdb/misc.pdb
	* app/core/gimp.[ch]
	* app/gui/gui.c: renamed "kill_it" parameter to "force". We don't
	kill the application any longer; this option is just about whether
	to ask the user for confirmation or not.

	* app/pdb/misc_cmds.c: regenerated.

	* app/app_procs.c: cosmetics.
2003-11-30 16:05:56 +00:00