Commit graph

2583 commits

Author SHA1 Message Date
Sven Neumann
648cccde5e app/base/base.c app/base/temp-buf.c app/base/tile-swap.c
2005-02-07  Sven Neumann  <sven@gimp.org>

	* app/base/base.c
	* app/base/temp-buf.c
	* app/base/tile-swap.c
	* app/config/gimpconfig-file.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpdata.c
	* app/core/gimpenvirontable.c
	* app/core/gimpgradient-load.c
	* app/core/gimpgradient-save.c
	* app/core/gimppalette-import.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/dialogs/user-install-dialog.c
	* app/gui/session.c
	* app/menus/menus.c
	* app/widgets/gimpdevices.c: use gstdio wrappers.
2005-02-07 01:24:22 +00:00
Michael Natterer
f3e0792dcf Some cleanup to make plug-in menu creation less hackish and finally enable
2005-01-31  Michael Natterer  <mitch@gimp.org>

	Some cleanup to make plug-in menu creation less hackish and
	finally enable registering plug-in menu entries in much more UI
	managers (not only in the image and toolbox menus):

	* app/menus/menus.c: added a <Toolbox> UI manager instead of
	creating the toolbox menu from the <Image> UI manager.

	* app/widgets/gimpimagedock.[ch]: removed the ui_manager and the
	signal connections to update it...

	* app/widgets/gimpdock.[ch]: ...and added them here so all docks
	have their own UI manager. Determine which manager to create from
	looking at GimpDockClass::ui_manager_name (defaults to <Dock>).

	* app/widgets/gimptoolbox.c: set ui_manager_name to <Toolbox> and
	use the UI manager created by our parent class instead of using
	the <Image> one.

	(toolbox_create_tools): use gimp_action_get_accel_closure()
	instead of doing evil hacks.

	* app/gui/gui-vtable.c
	* app/menus/plug-in-menus.c: removed lots of special casing of the
	<Image> UI manager. The code is almost ready for allowing plug-in
	menus under <Layers>, <Channels>, <Brushes> etc.
2005-01-31 16:09:52 +00:00
William Skaggs
1cee9b7298 continuing commit after broken pipe 2005-01-25 19:11:26 +00:00
Sven Neumann
73c055bb52 app/config/Makefile.am app/config/gimpconfig-file.[ch] more new files,
2005-01-24  Sven Neumann  <sven@gimp.org>

	* app/config/Makefile.am
	* app/config/gimpconfig-file.[ch]
	* app/config/gimprc-utils.[ch]: more new files, code factored out
	of gimpconfig-utils.[ch].

	* app/config/gimpconfig-path.[ch]
	* app/config/gimpconfig-utils.[ch]
	* app/config/gimpcoreconfig.c
	* app/config/gimpguiconfig.c
	* app/config/gimppluginconfig.c
	* app/config/gimprc.c
	* app/core/gimp-units.c
	* app/dialogs/user-install-dialog.c
	* app/gui/session.c: changed accordingly.
2005-01-24 22:41:24 +00:00
Sven Neumann
9dc239a433 fixed display of progress labels in RTL environment.
2005-01-02  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c (splash_update): fixed display of progress
	labels in RTL environment.
2005-01-02 03:32:10 +00:00
Sven Neumann
4f76089e26 restrict splash image to screen size to guard us from insanely large
2004-12-13  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: restrict splash image to screen size to guard us
	from insanely large splash images.
2004-12-12 23:20:09 +00:00
Sven Neumann
9af2a5d2b1 only expose the area of the window that actually changed.
2004-12-09  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c (splash_update): only expose the area of the
	window that actually changed.

	* app/plug-in/plug-in-rc.c (plug_in_rc_write): changed the header
	and footer to be more in line with the other rc files.
2004-12-09 10:11:43 +00:00
Øyvind Kolås
67725268da fnord 2004-12-08 16:32:56 +00:00
Michael Natterer
1bf6606ec0 An absolutely useless santa-claus-egg for those who are bored
of seeing the same splash on each startup.
2004-12-01 12:06:42 +00:00
Michael Natterer
ee9b4b83c1 use gtk_rc_parse() instead of gtk_rc_add_default_file() to add
2004-11-30  Michael Natterer  <mitch@gimp.org>

	* app/gui/themes.c (themes_init): use gtk_rc_parse() instead of
	gtk_rc_add_default_file() to add ~/.gimp-2.2/themerc to the list
	of files parsed by GTK+ because the latter works only before
	gtk_init(). Fixes bug #155963.
2004-11-30 16:10:16 +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
Hans Breuer
696663a611 [new file] app/dialogs/Makefile.am : added to EXTRA_DIST
2004-09-21  Hans Breuer  <hans@breuer.org>

	* app/dialogs/makefile.msc : [new file]
	  app/dialogs/Makefile.am : added to EXTRA_DIST

	* **/makefile.msc app/gimpcore.def : updated

	* app/gimp.rc : let wilber be first

	* app/widgets/gimppropwidgets.c : msvc6 can't cast uint64 either

	* libgimpbase/gimpwin32-io.h : make up recent loss of ftruncate in GLib

	* libgimpthumbnail/gimpthumbnail.c : <process.h> for getpid() on win32

	* plug-ins/helpbrowser/dialog.c : include gimpwin32-io.h

	* plug-ins/script-fu/siodwrapper.c plug-ins/script-fu/scrip-fu.c : there
	is no script-fu-server on win32
2004-11-21 14:22:45 +00:00
Michael Natterer
b8344d519c The following fixes have no visible effect because nobody uses
2004-11-18  Michael Natterer  <mitch@gimp.org>

	The following fixes have no visible effect because nobody
	uses gimp_plugin_menu_register() on temp_procs yet:

	* app/actions/plug-in-actions.[ch]: added
	plug_in_actions_add_path() which just adds the actions needed for
	a given menu math, but not the procedure action itself.

	* app/gui/gui-vtable.c (gui_menus_create_entry): create the
	menu_path's actions using above function so adding of submenus to
	existing ui managers works.

	* tools/pdbgen/pdb/plug_in.pdb (plugin_menu_register_invoker):
	don't add a menu if "no_interface" is TRUE.

	* app/pdb/plug_in_cmds.c: regenerated.

	* plug-ins/script-fu/script-fu-scripts.c: pass untranslated
	menu_paths to the core, not translated ones. Don't store the
	scripts directly in the "script_list" tree but use a list of
	scripts per key because there can be identical keys for different
	scripts now. Fixed sorting of menu entries and menus.
2004-11-18 01:57:13 +00:00
Michael Natterer
d871be74bf Made plug-in menu registration work the same way for ordinary and
2004-11-17  Michael Natterer  <mitch@gimp.org>

	Made plug-in menu registration work the same way for ordinary and
	temporary procedures. Addresses bug #158117.

	* app/core/gimp-gui.[ch]: added "const gchar *menu_path" to
	gimp_menus_create_entry().

	* app/gui/gui-vtable.c (gui_menus_create_entry): if menu_path is
	NULL, behave as before and create an action and its menu entries
	for all the procedure's menu_paths. If it is non-NULL, skip action
	creation and create a menu entry just for that path.

	* app/plug-in/plug-ins.c (plug_ins_temp_proc_def_add): call
	gimp_menus_create_entry() with a NULL menu path and call it if
	proc_def->menu_paths *or* proc_def->menu_label is non-NULL, so
	it creates at least the procedure's action, even if it has
	no menu_path (yet).

	* tools/pdbgen/pdb/plug_in.pdb (plugin_menu_register): check both
	the list of procs and temp_procs when trying to register the
	entry.  Allow ordinary procedures and extensions to install stuff
	at query() and init() time and allow temp_procs to install stuff
	at any time.

	* app/pdb/plug_in_cmds.c: regenerated.
2004-11-17 14:51:50 +00:00
Sven Neumann
d29f9f7b23 Don't necessarily use black and white but a reasonably contrasted gray value. 2004-11-11 22:23:31 +00:00
Sven Neumann
8ce560f436 Choose black or white for the splash text color, based on the average
intensity of the lower 60 rows of the splash image.
2004-11-11 22:01:07 +00:00
Sven Neumann
4b292e6d33 lowered labels a few pixels.
2004-11-11  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: lowered labels a few pixels.
2004-11-11 20:05:20 +00:00
Michael Natterer
fb315d6ca7 app/display/gimpdisplayshell.c (gimp_display_shell_real_scaled)
2004-10-08  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_real_scaled)
	(gimp_display_shell_flush)
	* app/gui/gui-vtable.c (gui_display_create): always pass a
	GimpDisplay, not a GimpDisplayShell as "data" to
	gimp_ui_manager_update().

	* app/actions/actions.c (action_data_get_*): removed checks if the
	passed data is a GimpDisplayShell and temporarily added g_assert()
	to be sure. The assertions will be removed before 2.2.
2004-10-08 09:16:04 +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
96a27b59cf app/actions/brushes-actions.c app/actions/gradients-actions.c
2004-09-27  Michael Natterer  <mitch@gimp.org>

	* app/actions/brushes-actions.c
	* app/actions/gradients-actions.c
	* app/actions/palettes-actions.c
	* app/actions/patterns-actions.c: made the "foo-edit" actions
	GimpStringActions and pass the identifier of the editor dialog
	to the callback.

	* app/actions/data-commands.[ch] (data_edit_data_cmd_callback):
	show the editor dialog here instead of calling view->edit_func().

	* app/dialogs/dialogs-constructors.[ch]: removed the brush,
	gradient and palette edit_funcs.

	* app/widgets/widgets-types.h: removed typedef GimpDataEditFunc.

	* app/widgets/gimpdatafactoryview.[ch]: removed the edit_func
	member and parameters and create the edit button unconditionally.

	* app/widgets/gimpbrushfactoryview.[ch]
	* app/widgets/gimppatternfactoryview.[ch]: changed accordingly.

	* app/widgets/Makefile.am
	* app/widgets/gimpdataselect.[ch]: removed this class, it's not
	needed any longer.

	* app/widgets/gimpbrushselect.[ch]
	* app/widgets/gimpgradientselect.[ch]
	* app/widgets/gimppaletteselect.[ch]
	* app/widgets/gimppatternselect.[ch]: derive them from GimpPdbDialog
	and follow the edit_func removal.

	* app/gui/gui-vtable.c (gui_pdb_dialog_new): removed edit_func
	stuff.

	* app/widgets/gimpcontainereditor.c: minor unrelated cleanup.
2004-09-27 10:45:49 +00:00
Michael Natterer
9ffc00be80 app/plug-in/Makefile.am removed... ...and added with a new name.
2004-09-22  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-proc.[ch]: removed...
	* app/plug-in/plug-in-proc-def.[ch]: ...and added with a new name.

	* app/plug-in/plug-in-def.[ch]
	* app/plug-in/plug-in-message.[ch]
	* app/plug-in/plug-in-progress.[ch]
	* app/plug-in/plug-in-rc.[ch]
	* app/plug-in/plug-in-run.[ch]
	* app/plug-in/plug-in.[ch]
	* app/plug-in/plug-ins.[ch]
	* app/actions/plug-in-actions.c
	* app/actions/plug-in-commands.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.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimppluginaction.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly plus some
	minor cosmetic cleanups.

	* app/pdb/fileops_cmds.c
	* app/pdb/plug_in_cmds.c: regenerated.
2004-09-22 15:12:24 +00:00
Sven Neumann
93f3623cc7 renamed gimp_splash.png to gimp-splash.png.
2004-09-21  Sven Neumann  <sven@gimp.org>

	* data/images/Makefile.am (imagedata_DATA): renamed gimp_splash.png
	to gimp-splash.png.

	* data/images/gimp-splash.png: new splash, courtesy of Dave Neary.

	* app/gui/splash.c: look for gimp-splash.png in the users
	directory, then in the systemwide images directory.
2004-09-21 20:49:29 +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
Michael Natterer
04b784ec43 fixed #include i broke with last commit. 2004-09-09 11:46:57 +00:00
Michael Natterer
09536dbf37 changed GimpDisplay* parameter to GimpProgress* because that's what it's
2004-09-09  Michael Natterer  <mitch@gimp.org>

	* app/gui/convert-dialog.[ch] (convert_dialog_new): changed
	GimpDisplay* parameter to GimpProgress* because that's what it's
	used for.

	* app/actions/image-commands.c (image_convert_cmd_callback):
	changed accordingly.

	* app/gui/convert-dialog.c: massively cleaned up internals. Use a
	GimpViewableButton + GimpContainerEntry combo as in text options
	for selecting the custom palette. Use a filtered container which
	contains only palettes with a maximum of 256 colors.
	Fixes bug #136574
2004-09-09 11:42:39 +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
Michael Natterer
19d523f6c7 added a foreign entry "gimp-file-open-loaction-dialog".
2004-09-07  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs.c (toplevel_entries): added a foreign entry
	"gimp-file-open-loaction-dialog".

	* app/gui/file-open-location-dialog.c: register the dialog
	with the toplevel dialog factory so it remembers its position.
2004-09-07 17:37:35 +00:00
Simon Budig
fc8e7632bb Applied modified patch by Kevin Cozens that implements a "Comments" tab in
2004-09-03  Simon Budig  <simon@gimp.org>

	* app/gui/info-window.c: Applied modified patch by Kevin Cozens
	that implements a "Comments" tab in the image info dialog.

	Fixes bug #151719.
2004-09-03 13:38:09 +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
David Odin
b7f58e163e Renamed GimpPreviewSize to GimpViewSize.
* app/core/core-enums.h: Renamed GimpPreviewSize to GimpViewSize.

* app/core/core-enums.c: Regenerated.

* app/actions/dockable-actions.c

* app/config/gimpcoreconfig.c
* app/config/gimpcoreconfig.h
* app/config/gimpdisplayconfig.c
* app/config/gimpdisplayconfig.h

* app/core/gimpundo.c

* app/display/gimpnavigationeditor.c

* app/gui/dialogs.c
* app/gui/file-open-location-dialog.c

* app/tools/gimppaintoptions-gui.c
* app/tools/gimptextoptions.c

* app/widgets/gimpbrushselect.c
* app/widgets/gimpcontainerpopup.c
* app/widgets/gimpcontainerview.c
* app/widgets/gimpdialogfactory.c
* app/widgets/gimpfontselect.c
* app/widgets/gimpgradientselect.c
* app/widgets/gimppaletteselect.c
* app/widgets/gimppatternselect.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimpsessioninfo.c
* app/widgets/gimptemplateeditor.c
* app/widgets/gimpundoeditor.c
* app/widgets/gimpundoeditor.h
* app/widgets/gimpviewablebutton.c: Changed accordingly.
2004-08-29 11:58:05 +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
David Odin
f168881c18 app/display/gimpnavigationview.c renamed these files to...
* app/display/gimpnavigationview.c
* app/display/gimpnavigationview.h: renamed these files to...

* app/display/gimpnavigationeditor.c
* app/display/gimpnavigationeditor.h: ... these files, and of course
  changed GimpNavigationView to GimpNavigationEditor since it is really
  inherited from GimpEditor anyway.

This will leave the gimp_navigation_view namespace for the renaming
from gimp_navigation_preview.

* app/display/Makefile.am
* app/display/display-types.h
* app/display/gimpdisplayshell-callbacks.c
* app/gui/dialogs-constructors.c: Changed accordlingly.
2004-08-25 16:02:10 +00:00
Sven Neumann
d52d54fe9d put the icon to the right for RTL layouts.
2004-08-24  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpmessagebox.c: put the icon to the right for RTL
	layouts.

	* app/display/gimpdisplayshell-close.c
	* app/gui/quit-dialog.c: use a GimpMessageBox.
2004-08-24 21:42:29 +00:00
David Odin
cddf61a3e6 app/widgets/gimppreview.c renamed these two files to...
* app/widgets/gimppreview.c
* app/widgets/gimppreview.h: renamed these two files to...

* app/widgets/gimpview.c
* app/widgets/gimpview.h: ... these files.

Also renamed GimpPreview to GimpView.
This is the first step of the great Preview->View renaming process.

* app/actions/palettes-commands.c

* app/display/gimpdisplayshell-layer-select.c
* app/display/gimpnavigationview.c

* app/gui/palette-import-dialog.c

* app/tools/gimppaintoptions-gui.c

* app/widgets/Makefile.am
* app/widgets/gimpaction.c
* app/widgets/gimpactiongroup.c
* app/widgets/gimpbrusheditor.c
* app/widgets/gimpbufferview.c
* app/widgets/gimpcontainerbox.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainergridview.h
* app/widgets/gimpdevicestatus.c
* app/widgets/gimpdnd.c
* app/widgets/gimpdockbook.c
* app/widgets/gimpfiledialog.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpnavigationpreview.c
* app/widgets/gimpnavigationpreview.h
* app/widgets/gimppaletteeditor.c
* app/widgets/gimppreview-popup.c
* app/widgets/gimppropwidgets.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimpthumbbox.c
* app/widgets/gimptoolbox-image-area.c
* app/widgets/gimptoolbox-indicator-area.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimpviewabledialog.c
* app/widgets/widgets-types.h: changed accordingly.
2004-08-24 17:16:46 +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
Sven Neumann
0620ee069e no need to set a size_request here.
2004-08-18  Sven Neumann  <sven@gimp.org>

	* app/gui/color-notebook.c: no need to set a size_request here.

	* libgimpwidgets/gimpcolorselection.c: HIG-ified spacings.

	* libgimpwidgets/gimpcolorscales.c
	* modules/colorsel_cmyk.c: don't set a minimum width on the color
	scales. Improves behaviour for narrow color dockables.
2004-08-18 21:50:26 +00:00
Michael Natterer
ca30f73817 added "display_ID" to gimp_new_progress().
2004-08-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-gui.[ch]: added "display_ID" to gimp_new_progress().

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

	* app/plug-in/plug-in-progress.[ch]: reenabled showing the
	progress in a particular display.
2004-08-11 09:36:51 +00:00
Sven Neumann
846bacd905 app/gui/file-open-location-dialog.c increased horizontal size request to
2004-08-11  Sven Neumann  <sven@gimp.org>

	* app/gui/file-open-location-dialog.c
	* app/widgets/gimpprogressbox.c: increased horizontal size request
	to reduce resizing.
2004-08-10 23:37:06 +00:00
Michael Natterer
06ea7dbd96 app/widgets/Makefile.am app/widgets/widgets-types.h new GtkVBox subclass
2004-08-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpprogressbox.[ch]: new GtkVBox subclass featuring
	a label and a progressbar. Implements GimpProgressIterface.

	* app/widgets/gimpprogressdialog.[ch]: replaced label and progress
	by a GimpProgressBox. Delegate most progress functionality to it.

	* app/widgets/gimpwidgets-utils.[ch]: factored out utility
	function gimp_dialog_set_sensitive().

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_sensitive):
	use it.

	* app/gui/file-open-location-dialog.c (file_open_location_response):
	embed the called file procedure's progress using a GimpProgressBox.
2004-08-10 22:21:56 +00:00
Michael Natterer
95607cce19 new function which works on all widgets in the dialog except the cancel
2004-08-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.[ch]
	(gimp_file_dialog_set_sensitive): new function which works on all
	widgets in the dialog except the cancel button.

	Remember if the active progress is cancelable and added two
	booleans "busy" and "canceled". Added GtkDialog::response()
	implementation which, if the dialog is busy, cancels the active
	progress and sets the dialog's "canceled" state.

	Moved the progress bar right above the action area so it is next
	to the cancel button and in the same place for both open and save
	dialogs.

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: use the new API to make image loading
	and saving cancelable again.

	* app/widgets/gimpthumbbox.c: use the same stuff to make
	thumbnailing cancelable. Increased the minimum height a bit so it
	doesn't resize when the progress bars are shown.
2004-08-10 21:20:38 +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
Michael Natterer
88768c66f8 Applied (slightly modified) patch from Shlomi Fish which adds a progress
2004-08-09  Michael Natterer  <mitch@gimp.org>

	Applied (slightly modified) patch from Shlomi Fish which adds a
	progress bar to the RGB -> INDEXED conversion. Fixes bug #145274

	(and shows that we really really need a GimpProgressInterface in
	the core to give progress users full access to the progress API)

	* app/core/gimpimage-convert.[ch]: added special
	GimpImageConvertProgress function typedef to cope with the
	different stages of converting.  Support passing such a callback &
	data to gimp_image_convert() and update the progress accordingly.

	* app/gui/convert-dialog.[ch]: added a convert progress callback
	and pass it to gimp_image_convert().

	* app/actions/image-commands.c
	* tools/pdbgen/pdb/convert.pdb: changed accordingly.

	* app/pdb/convert_cmds.c: regenerated.
2004-08-09 16:08:36 +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
Sven Neumann
c6cbd6d335 Applied a bunch of AIX portability fixes (bug #148813):
2004-07-30  Sven Neumann  <sven@gimp.org>

	Applied a bunch of AIX portability fixes (bug #148813):

	* configure.in: when testing for Xmu library, link with -lXt -lX11.

	* app/gui/tips-parser.c
	* app/gui/user-install-dialog.c
	* app/tools/tools-enums.h
	* app/widgets/gimpdasheditor.c
	* app/widgets/widgets-enums.h
	* libgimpthumb/gimpthumb-error.h
	* libgimpwidgets/gimpcolorbutton.c
	* plug-ins/common/edge.c: removed trailing commas from enums.

	* plug-ins/common/snoise.c

	* plug-ins/imagemap/imap_cmd_move.c: no C++ style comments.

	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c: use integers for bit fields.
2004-07-30 00:57:22 +00:00
Michael Natterer
6d4ae2ee72 renamed "Cleared saved foobar now" buttons to "Reset saves foobar to
2004-07-29  Michael Natterer  <mitch@gimp.org>

	* app/gui/preferences-dialog.c: renamed "Cleared saved foobar now"
	buttons to "Reset saves foobar to default values". Fixes bug #5673.
	Added mnemonics for all the configure/save/reset buttons.
2004-07-29 01:19:12 +00:00
Michael Natterer
f972e6aeb2 reordered buttons in the Interface -> Keyboard Shortcuts section to be
2004-07-28  Michael Natterer  <mitch@gimp.org>

	* app/gui/preferences-dialog.c (prefs_dialog_new): reordered
	buttons in the Interface -> Keyboard Shortcuts section to be
	consistent with other sections which provide configure/save/clear
	buttons.
2004-07-28 16:24:51 +00:00
Michael Natterer
210ef45abb Enabled disabling all menu mnemonics. Addresses bug #120034:
2004-07-28  Michael Natterer  <mitch@gimp.org>

	Enabled disabling all menu mnemonics. Addresses bug #120034:

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: added boolean RESTART property
	"menu-menonics".

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

	* app/widgets/gimpactiongroup.[ch]: added boolean CONSTRUCT_ONLY
	property "mnemonics".

	(gimp_action_group_add_*_actions): call gimp_strip_uline() on
	the actions' labels if mnemonics is FALSE.

	* app/widgets/gimpactionfactory.[ch]
	* app/actions/actions.c: pass gui_config->menu_menmonics to
	all action groups.
2004-07-27 22:17:30 +00:00
Sven Neumann
bd427b2e4d libgimpbase/Makefile.am libgimpbase/gimpbase.h libgimpbase/gimpbase.def
2004-07-27  Sven Neumann  <sven@gimp.org>

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbase.h
	* libgimpbase/gimpbase.def
	* libgimpbase/gimpmemsize.[ch]: added new files with memsize
	related functions (moved here from gimputil.c) and
	GIMP_TYPE_MEMSIZE (moved here from app/config/gimpconfig-types.[ch]).

	* libgimpbase/gimputils.[ch]: removed gimp_memsize_to_string() here.

	* libgimpbase/gimpunit.[ch]: added GIMP_TYPE_UNIT (moved here from
	app/config/gimpconfig-types.[ch]).

	* libgimpbase/gimpbase-private.c
	* libgimp/gimptile.c
	* libgimp/gimpunitcache.c
	* plug-ins/help/domain.c
	* app/xcf/xcf-read.c: need to include glib-object.h.

	* plug-ins/common/uniteditor.c: use GIMP_TYPE_UNIT.

	* app/config/gimpconfig-types.[ch]: removed code that lives in
	libgimpbase now.

	* app/config/gimpconfig-deserialize.c: changed accordingly.

	* app/config/gimpbaseconfig.c
	* app/config/gimpdisplayconfig.c
	* app/core/gimpcontext.c
	* app/gui/grid-dialog.c
	* app/tools/gimpcolortool.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpunitstore.c: no need to include gimpconfig-types.h
	any longer.
2004-07-27 16:39:00 +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
b241a40b43 remember the keyboard shortcut dialog and show it only once.
2004-07-21  Michael Natterer  <mitch@gimp.org>

	* app/gui/preferences-dialog.c: remember the keyboard shortcut
	dialog and show it only once.

	* app/widgets/gimpactionview.c
	* app/widgets/gimpcellrendereraccel.c: minor cleanups.

	Seems to work pretty well now and thus fixes bug #142922.
2004-07-21 11:28:31 +00:00
Michael Natterer
62bf62a151 app/core/gimpmarshal.list app/widgets/Makefile.am
2004-07-21  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpmarshal.list
	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcellrendereraccel.[ch]: new cell renderer
	which displays an accelerator and allows to edit it (ripped
	out of libegg and modified).

	* app/widgets/gimpactionview.c: use the new renderer and connect
	to its "accel-edited" signal (its callback is one huge mess that
	needs to be cleaned up). Added ugly hack to work around GTK+ API
	limitation that seems to prevent implementing a shortcut editor in
	a sane way.

	* app/actions/file-actions.c
	* app/actions/image-actions.c
	* app/actions/tools-actions.c: added ugly hacks here, too.

	* app/gui/preferences-dialog.c: relaced Cancel/Ok in the shortcut
	editor by Close.
2004-07-21 00:39:46 +00:00
Michael Natterer
94fc8f15a1 app/widgets/gimpactionfactory.[ch] added "label" and "stock-id" properties
2004-07-20  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactionfactory.[ch]
	* app/widgets/gimpactiongroup.[ch]: added "label" and "stock-id"
	properties to GtkActionGroup and allow to register them in the
	GimpActionFactory.

	* app/actions/actions.c: register user visible labels and icons
	with all action groups.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpactionview.[ch]: new widget which shows a
	treeview of action groups and their actions & shortcuts.

	* app/widgets/gimpaction.[ch]: added gimp_action_name_compare()
	utility function.

	* app/widgets/gimpwidgets-utils.[ch]: added
	gimp_get_accel_string() utility function.

	* app/widgets/gimpcontrollers.[ch]: added
	gimp_controllers_get_ui_manager() which will be used for setting
	up the controller mapping dialog.

	* app/gui/preferences-dialog.c: added a "Configure Keyboard
	Shortcuts" button which pops up a GimpControllerView. Work in
	progress...
2004-07-20 18:50:20 +00:00
Michael Natterer
2e205e7c1a added the "web" icon left of label & entry.
2004-07-19  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-open-location-dialog.c
	(file_open_location_dialog_show): added the "web" icon left of
	label & entry.
2004-07-19 15:25:44 +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
Michael Natterer
54cc251b08 app/core/Makefile.am app/core/core-types.h new interface which has
2004-07-14  Michael Natterer  <mitch@gimp.org>

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimppickable.[ch]: new interface which has
	get_image_type(), get_tiles() and get_color_at() methods.

	* app/core/gimpdrawable.[ch]
	* app/core/gimpimagemap.[ch]
	* app/core/gimpprojection.[ch]: implement GimpPickableInterface
	and removed public get_colot_at() functions.

	* app/core/gimpimage-pick-color.[ch]: removed typedef
	GimpImagePickColorFunc and gimp_image_pick_color_by_func(). Use
	gimp_pickable_pick_color() instead.

	* app/core/gimpimage-contiguous-region.c
	* app/core/gimpimage-crop.c
	* app/gui/info-window.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpsmudge.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpimagemaptool.c
	* app/widgets/gimpselectioneditor.c: use GimpPickable functions
	instead of the various get_color_at() functions. Simplifies code
	which has a "sample_merged" boolean. Various cleanups.
2004-07-13 23:04:05 +00:00
Michael Natterer
c5ec0d4f70 *** empty log message *** 2004-07-13 16:36:29 +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
Michael Natterer
509a6c57c5 app/core/Makefile.am new files defining a GimpGui vtable struct and
2004-07-12  Michael Natterer  <mitch@gimp.org>

	* app/core/Makefile.am
	* app/core/gimp-gui.[ch]: new files defining a GimpGui vtable
	struct and contianing all the vtable wrapper functions. Reordered
	and renamed some functions for consistency.

	* app/core/gimp.[ch]: removed all the vtable code.

	* app/gui/gui-vtable.c: changed accordingly.
2004-07-12 11:41:19 +00:00
Sven Neumann
95e7d5ee0a removed images from the container when they become clean. Should move to
2004-07-12  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay-foreach.c
	(gimp_displays_get_dirty_images): removed images from the
	container when they become clean. Should move to the Gimp object.

	* app/gui/quit-dialog.c: some cosmetic changes.
2004-07-12 11:12:19 +00:00
Hans Breuer
b56eb39ead updated app/actions/makefile.msc app/menus/makefile.msc : (new files)
2004-07-11  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc : updated
	  app/actions/makefile.msc app/menus/makefile.msc : (new files)
	  app/actions/Makefile.msc app/menus/Makefile.am : added to EXTRA_DIST

	* libgimpbase/gimputils.c libgimpwidgets/gimpmemsizeentry.c
	  app/widgets/gimppropwidgets.c : bumped compiler version check,
	msvc6 still can't cast from unsigned __int64 to double

	* app/actions/debug-actions.c : only use debug_*_callback
	and thus debug_action if ENABLE_DEBUG_MENU

	* app/core/gimpalette-import.c : added gimpwin32-io.h

	* plug-ins/common/convmatrix.c : s/snprintf/g_snprintf/

	* plug-ins/common/screenshot.c : make it compile with msvc,
	but still no win32 specific implementation ...
2004-07-11 21:53:17 +00:00
Michael Natterer
48dfe69959 new utility functions which create and destroy GParameter arrays for
2004-07-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-utils.[ch] (gimp_parameters_append)
	(gimp_parameters_append_valist)
	(gimp_parameters_free): new utility functions which create and
	destroy GParameter arrays for g_object_newv().

	* app/gui/gui-vtable.c (gui_pdb_dialog_new): use them.
2004-07-10 22:25:02 +00:00
Michael Natterer
2176afbbbb Removed any remaining GUI dependency from the PDB wrappers:
2004-07-10  Michael Natterer  <mitch@gimp.org>

	Removed any remaining GUI dependency from the PDB wrappers:

	* app/core/gimp.[ch]: added vtable entries for the display and
	help stuff.

	* app/widgets/gimphelp.[ch]: renamed gimp_help() to
	gimp_help_show().

	* app/gui/gui-vtable.c: implement the new display and help vtable
	entries.

	* tools/pdbgen/pdb.pl
	* tools/pdbgen/pdb/display.pdb
	* tools/pdbgen/pdb/help.pdb: use the new functions of the Gimp
	object instead of using stuff from display/ and widgets/.

	* tools/pdbgen/app.pl: removed bad hacks which enabled including
	stuff from gui/, display/ and widgets/.

	* app/Makefile.am: link widgets-enums.o, display-enums.o and
	gimpdisplayoptions.o into the gimp-console binary because they are
	needed for the config system and don't depend on any GUI stuff.

	* app/pdb/Makefile.am: s/GTK_CFLAGS/GDK_PIXBUF_CFLAGS/

	* app/pdb/display_cmds.c
	* app/pdb/help_cmds.c: regenerated.
2004-07-10 20:29:11 +00:00
Sven Neumann
3a5ed7075c let the labels line-wrap.
2004-07-10  Sven Neumann  <sven@gimp.org>

	* app/gui/quit-dialog.c (quit_dialog_new): let the labels line-wrap.
2004-07-10 10:08:19 +00:00
Sven Neumann
e730bbb1f2 added new function gimp_displays_get_dirty_images().
2004-07-10  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay-foreach.[ch]: added new function
	gimp_displays_get_dirty_images().

	* app/gui/quit-dialog.c: show a container treview of all dirty
	images in the quit dialog. Still work in progress...
2004-07-09 22:28:27 +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
8d9e362249 app/gui/Makefile.am app/gui/brush-select.[ch] app/gui/font-select.[ch]
2004-07-09  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* 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]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppdbdialog.[ch]
	* app/widgets/gimpdataselect.[ch]
	* app/widgets/gimpbrushselect.[ch]
	* app/widgets/gimpgradientselect.[ch]
	* app/widgets/gimppaletteselect.[ch]
	* app/widgets/gimppatternselect.[ch]
	* app/widgets/gimpfontselect.[ch]: ...and added here as a
	hierarchy of widgets.

	* app/widgets/gimpdatafactoryview.h: removed typdef
	GimpDataEditFunc, it's in widgets-types.h now.

	* app/gui/convert-dialog.c: changed accordingly.

	* app/core/gimp.[ch]: added vtable entries for creating, closing
	and setting PDB dialogs.

	* app/gui/gui-vtable.c: implement the vtable entries using the new
	widgets.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/pattern_select.pdb: use the new functions of
	the Gimp object to create / manage the selection dialogs. The
	generated files don't depend on GUI stuff any longer.

	* app/pdb/brush_select_cmds.c
	* app/pdb/font_select_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/palette_select_cmds.c
	* app/pdb/pattern_select_cmds.c: regenerated.
2004-07-09 19:14:59 +00:00
Sven Neumann
ac9e95bb6f improved text of the dialog.
2004-07-09  Sven Neumann  <sven@gimp.org>

	* app/gui/file-save-dialog.c (file_save_overwrite): improved text
	of the dialog.
2004-07-09 18:43:27 +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
Simon Budig
e7af53b0d3 app/actions/dialogs-commands.c app/display/gimpdisplayshell-dnd.c
2004-07-04  Simon Budig  <simon@gimp.org>

	* app/actions/dialogs-commands.c
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/preferences-dialog.c
	* app/tools/gimppainttool.c
	* app/widgets/gimpdeviceinfo.c
	* app/widgets/gimpitemtreeview.c
	* plug-ins/imagemap/imap_selection.c
	* tools/pdbgen/pdb/gradients.pdb: Small changes to make GIMP
	CVS compile with gcc 2.95 again. Mostly double semicolons and
	variable declarations after other stuff. Spotted by Martin
	Renold.

	* app/pdb/gradients_cmds.c: regenerated.

	(there is one issue left, see his patch at
	http://old.homeip.net/martin/gcc-2.95.diff, I did not
	copy the #define va_copy __va_copy, since I don't know
	what happens here.)
2004-07-04 21:27:09 +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
Michael Natterer
397626fc7b work around GTK+ bug #143270 (set the cursor on the selected model path
2004-06-25  Michael Natterer  <mitch@gimp.org>

	* app/gui/preferences-dialog.c (prefs_dialog_new): work around
	GTK+ bug #143270 (set the cursor on the selected model path
	instead of selecting the iter in the selection). Fixes random
	theme switching when selecting the "Theme" page.
2004-06-25 10:24:35 +00:00
Michael Natterer
6d864c4346 more work on the controller page, made integer controller properties
2004-06-25  Michael Natterer  <mitch@gimp.org>

	* app/gui/preferences-dialog.c: more work on the controller page,
	made integer controller properties editable.

	* modules/controller_midi.c: allow to specify the MIDI channel to
	generate events from. Default to -1 (all channels).
2004-06-24 23:44:37 +00:00
Michael Natterer
488ac69d02 added a boolean property "debug-events" and honor it when printing
2004-06-25  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontrollerinfo.[ch]: added a boolean property
	"debug-events" and honor it when printing debugging output.
	Should add an event console window so the user doesn't need to
	have a terminal to inspect input module output.

	* app/gui/prefereces-dialog.c: HIGified some forgotten labels.
	Renamed the "Pointer Movement Feedback" frame to "Mouse Cursors".
	Replaced some forgotten "Dir" with "Folder".
	Made more GimpControllerInfo and GimpController properties
	editable and cleaned up the controller page.
2004-06-24 22:35:00 +00:00
William Skaggs
63a4a72f79 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/gui/*.c:
	* app/widgets/*.c:
	* etc/templaterc: HIGify capitalization.  Should finish bug #123699
	except for everything I missed or got wrong.
2004-06-23 22:44:04 +00:00
Michael Natterer
d88f23ddba removed enum GimpContextSelectType.
2004-06-23  Michael Natterer  <mitch@gimp.org>

	* app/actions/context-commands.h: removed enum GimpContextSelectType.

	* app/actions/actions-types.h: added enum GimpActionSelectType.

	* app/actions/actions.[ch]: added utility functions
	action_select_value() and action_select_object().

	* app/actions/context-actions.c
	* app/actions/context-commands.c: changed accordingly.

	* app/actions/layers-actions.c
	* app/actions/layers-commands.[ch]: merged the layer select
	callbacks into one using the GimpActionSelectType functions. Added
	actions and callbacks for modifying the active layer's opacity.

	* app/menus/menus-types.h: #incude "actions/action-types.h".

	* app/gui/gui-types.h: #incude "menus/menus-types.h".

	* app/gui/preferences-dialog.c: allow to enable/disable input
	controllers.
2004-06-23 00:23:25 +00:00
William Skaggs
146be19c00 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/gui/file-save-dialog.c: to reduce clutter, hide overwrite
	query dialog after user has responded.
2004-06-22 00:12:52 +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
Sven Neumann
2670ce0bf8 libgimpwidgets/gimpwidgets.[ch] added new utility function
2004-06-21  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.[ch]
	* libgimpwidgets/gimpwidgets.def: added new utility function
	gimp_label_set_attributes().

	* app/display/gimpdisplayshell.c
	* app/gui/preferences-dialog.c
	* app/gui/resolution-calibrate-dialog.c
	* app/widgets/gimpviewabledialog.c
	* app/widgets/gimpwidgets-utils.c: use the new function.

	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimphistogrameditor.c: display the name in italic.

	* plug-ins/common/jpeg.c: display the file size in italic.
2004-06-21 13:18:50 +00:00
Michael Natterer
5f4eabdbcb removed "enabled" property. Removed GIMP_CONTROLLER_PARAM_RERIALIZE from
2004-06-17  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcontroller.[ch]: removed "enabled"
	property. Removed GIMP_CONTROLLER_PARAM_RERIALIZE from the "name"
	property because it's the hardware-determined name of this
	controller instance.

	* app/widgets/gimpcontrollerwheel.c
	* modules/controller_linux_input.c: set the name.

	* libgimpwidgets/gimpwidgets.h: #include gimpcontroller.h.

	* app/widgets/gimpcontrollerinfo.[ch]: added "enabled" here
	instead.  Don't dispatch events if the controller is
	disabled. Made everything work (not crash) with info->mapping
	being NULL.

	* etc/controllerrc: updated again with the changed format.

	* app/widgets/gimpcontrollers.[ch]: added
	gimp_controllers_get_list() which returns the container of
	controllers.

	* app/widgets/gimphelp-ids.h
	* app/gui/preferences-dialog.c: added controller configuration
	(can't change anything yet, just view the current settings).
	Resurrected the "Input Devices" page and removed the "Session"
	page by moving its widgets to other pages. Pack the various
	"Save now"/"Clear now" buttons vertically, not horizontally.
	Fixes bug #139069.

	* themes/Default/images/preferences/Makefile.am
	* themes/Default/images/preferences/controllers.png
	* themes/Default/images/preferences/theme.png: new icons for new
	prefs pages. Someone needs to make them nice...
2004-06-17 14:07:05 +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
2498adc5f6 added enum GimpCursorFormat which can be one of { BITMAP, PIXBUF,
2004-06-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-enums.[ch]: added enum GimpCursorFormat
	which can be one of { BITMAP, PIXBUF, PIXBUF-PREMULTIPLY } to
	work around broken X servers.

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: added GimpGuiConfig::cursor-format.

	* app/gui/preferences-dialog.c: added a GUI for the new option.

	* app/widgets/gimpcursor.[ch]: added cursor_format parameter
	to gimp_cursor_new() and _set().

	* app/display/gimpdisplayshell-cursor.c
	* app/tools/gimpcurvestool.c
	* app/widgets/gimpdialogfactory.c: pass an appropriate cursor_mode.
2004-06-13 02:08:54 +00:00
Philip Lafleur
ee5eff3133 restored the 'Show Paint Tool Cursor' option that was removed during
2004-06-10  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/gui/preferences-dialog.c: restored the 'Show Paint Tool
    Cursor' option that was removed during clean-up.
2004-06-10 11:24:36 +00:00
Sven Neumann
309bf0098f removed the monitor calibration from the user installation process. It's
2004-06-10  Sven Neumann  <sven@gimp.org>

	* app/gui/user-install-dialog.c: removed the monitor calibration
	from the user installation process. It's not a vital setting and
	can be done from the Preferences dialog later.

	* app/gui/resolution-calibrate-dialog.[ch]: simplified the
	resolution calibration dialog by removing the hacks that were
	needed for drawing it in the user-installation style.

	* app/gui/preferences-dialog.c: changed accordingly. Also removed
	the separator from the Display page.
2004-06-09 23:51:06 +00:00
Sven Neumann
9169693e78 let the theme selector expand vertically 2004-06-09 22:48:33 +00:00
Sven Neumann
38b78ce9d2 added an API to expand/collapse the "Advanced Options" frame.
2004-06-10  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimptemplateeditor.[ch]: added an API to
	expand/collapse the "Advanced Options" frame.

	* app/gui/preferences-dialog.c
	* app/widgets/gimphelp-ids.h: applied a patch done by William
	Skaggs that cleans up and reorganizes the Preferences dialog
	(bug #144060).
2004-06-09 22:37:49 +00:00
Manish Singh
bbf9e45a69 update call to prefs_spin_button_add for num-processors too.
2004-06-05  Manish Singh  <yosh@gimp.org>

        * app/gui/preferences-dialog.c (prefs_dialog_new): update call
        to prefs_spin_button_add for num-processors too.
2004-06-05 07:22:04 +00:00
Michael Natterer
714d63fcda cursors/Makefile.am cursors/cursor-none.png new empty cursor images.
2004-06-05  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/cursor-none.png
	* cursors/xbm/cursor-none.xbm: new empty cursor images.

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c
	* app/display/gimpdisplayshell-cursor.c
	* app/tools/gimppainttool.[ch]
	* app/tools/gimpinktool.c
	* app/gui/preferences-dialog.c: applied patches from Philip
	Lafleur which implement hiding the cursor completely for paint
	tools. Changed the name of the config option from
	"hide-paint-tool-cursor" to "show-paint-tool-cursor" and default
	to TRUE because this needs the brush outline being visible while
	painting to be really usable. Fixes bug #132163.

	* app/widgets/widgets-enums.h: renamed all GimpCursorType and
	GimpToolCursorType enum values to GIMP_CURSOR_* and
	GIMP_TOOL_CURSOR_*.

	* app/widgets/gimpcursor.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-cursor.c
	* app/tools/gimp*tool.c; changed accordingly.
2004-06-04 23:08:29 +00:00
Sven Neumann
7bfee0413d check for NULL pointer before passing it to g_utf8_normalize(). Just a
2004-06-03  Sven Neumann  <sven@gimp.org>

	* app/gui/file-open-location-dialog.c
	(file_open_location_completion): check for NULL pointer before
	passing it to g_utf8_normalize(). Just a workaround for a problem
	in GimpContainerView.
2004-06-02 22:08:34 +00:00
Sven Neumann
62b59db976 app/display/gimpdisplayshell-scale.c app/gui/info-window.c
2004-06-02  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scale.c
	* app/gui/info-window.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpthresholdtool.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimphistogrambox.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpstrokeeditor.c: tweaked some spacings for
	consistency and better HIG compliance.
2004-06-02 17:56:02 +00:00
Sven Neumann
c509204b7d tools/pdbgen/pdb/image.pdb app/pdb/image_cmds.c reverted changes I did to
2004-06-01  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/image.pdb
	* app/pdb/image_cmds.c
	* app/core/gimpimage.[ch]: reverted changes I did to the image
	unit earlier. As in 2.0, it will continue to not accept pixels.
	This makes the PDB API and the XCF format compatible again and
	fixes bug #142961 (and to some extent bug #137704).

	* app/core/Makefile.am
	* app/core/gimpimage-unit.[ch]: removed these files. The
	convenience accessors defined here aren't commonly used any
	longer.

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell.[ch]: added a unit parameter to
	gimp_display_new(). Made "unit" and "scale" properties of
	GimpDisplayShell.

	* app/actions/image-commands.c
	* app/actions/images-commands.c
	* app/actions/layers-commands.c
	* app/actions/select-commands.c
	* app/actions/view-commands.c
	* app/core/gimp-edit.c
	* app/core/gimp.[ch]
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpstatusbar.c
	* app/file/file-open.c
	* app/gui/gui-vtable.c
	* app/gui/info-window.c
	* app/gui/offset-dialog.c
	* app/gui/resize-dialog.[ch]
	* app/pdb/display_cmds.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/vectors/gimpvectors-export.c
	* app/widgets/gimptoolbox-dnd.c
	* tools/pdbgen/pdb/display.pdb: changed accordingly. Use the
	display unit where the image unit was used before.
2004-06-01 22:04:20 +00:00
Sven Neumann
b2037adcdf export the column enum.
2004-05-31  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcontainerentry.[ch]: export the column enum.

	* app/gui/file-open-location-dialog.c: use a GimpContainerEntry
	on the documents list.
2004-05-31 20:44:18 +00:00
Michael Natterer
dbc49d9a11 app/widgets/Makefile.am new toolbox area which shows the active image.
2004-05-31  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimptoolbox-image-area.[ch]: new toolbox area which
	shows the active image.

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: added config options to control the
	visibility of the toolbox' color, indicator and image areas.

	* app/widgets/gimptoolbox.[ch]: added the image area and honor the
	new config options. Put the various areas into their own wrap box.

	* app/widgets/gimptoolbox-dnd.c: changed accordingly.

	* app/widgets/gimphelp-ids.h: added a help ID for the image area.

	* app/widgets/gimptoolbox-indicator-area.c: made the previews
	a bit larger, cleanup.

	* app/gui/preferences-dialog.c: added a "Toolbox" page as GUI for
	the new config options.

	* themes/Default/images/preferences/Makefile.am
	* themes/Default/images/preferences/toolbox.png: a (wrong) icon
	for the "Toolbox" prefs page. Needs to be replaced.
2004-05-31 20:30:52 +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
a9932fcad8 app/widgets/gimpcontainergridview.[ch] removed "reorderable" from
2004-05-28  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainergridview.[ch]
	* app/widgets/gimpcontainertreeview.[ch]: removed "reorderable"
	from gimp_container_foo_view_new().

	* app/widgets/gimpcontainereditor.[ch]: removed "reorderable" from
	gimp_container_editor_construct(). Automatically set the view to
	reorderable if the viewed container has no sort_func.

	* app/widgets/gimpbufferview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptoolview.c
	* app/widgets/gimpundoeditor.c: removed reoderable stuff because
	GimpContainerEditor does this generically now.

	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpfontview.c: set reorderable to FALSE because
	they should not be reodered even if they don't have a sort_func.

	* app/gui/font-select.c: removed reorderable stuff. Some cleanup.

	* app/gui/brush-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: same cleanups as in font-select.c
2004-05-28 09:52:15 +00:00
Sven Neumann
c0783a91dc app/display/gimpdisplayshell-layer-select.c app/display/gimpprogress.c
2004-05-26  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpprogress.c
	* app/gui/brush-select.c
	* app/gui/color-notebook.c
	* app/gui/convert-dialog.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/info-dialog.c
	* app/gui/offset-dialog.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/gui/stroke-dialog.c
	* app/gui/tips-dialog.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptexttool.c
	* app/widgets/gimpcolordisplayeditor.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpviewabledialog.c: adjusted dialog spacings.
2004-05-26 13:39:23 +00:00
Sven Neumann
073576dbf8 Fixes for bug #142996:
2004-05-23  Sven Neumann  <sven@gimp.org>

	Fixes for bug #142996:

	* app/gui/preferences-dialog.c: added missing gettext call.

	* app/config/gimprc-blurbs.h
	* app/core/gimptemplate.c
	* app/gui/gradient-editor-menu.c: fixed typos.
2004-05-23 21:02:27 +00:00
Sven Neumann
a8becd6b59 added some GtkSizeGroups and changed spacings to improve the dialog
2004-05-21  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: added some GtkSizeGroups and
	changed spacings to improve the dialog layout.

	* app/gui/file-new-dialog.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimptemplateeditor.c: minor changes for consistency.
2004-05-21 14:17:27 +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
68c6e93775 Added GimpViewable infrastructure which enables migrating from TempBuf to
2004-05-13  Michael Natterer  <mitch@gimp.org>

	Added GimpViewable infrastructure which enables migrating from
	TempBuf to GdkPixbuf for both providing and getting previews:

	* app/core/gimpviewable.[ch]: added new virtual functions
	GimpViewable::get_pixbuf() and GimpViewable::get_new_pixbuf()
	which are implemented exactly as get_preview() and
	get_new_preview() except that get_new_pixbuf() has a default
	implementation which creates the pixbuf from a TempBuf.

	Renamed public functions _get_preview_pixbuf() and
	_get_new_preview_pixbuf() to _get_pixbuf() and _get_new_pixbuf().

	Added gimp_viewable_get_dummy_pixbuf() and use it from
	gimp_viewable_get_dummy_preview().

	* app/core/gimpimagefile.c (gimp_imagefile_save_thumb)
	* app/display/gimpdisplayshell.c (gimp_display_shell_update_icon)
	* app/gui/resize-dialog.c (resize_dialog_new): changed accordingly.
2004-05-13 12:15:10 +00:00
Michael Natterer
2632cd8f64 app/actions/documents-actions.c app/actions/documents-commands.c
2004-05-12  Michael Natterer  <mitch@gimp.org>

	* app/actions/documents-actions.c
	* app/actions/documents-commands.c
	* app/actions/edit-actions.c
	* app/actions/edit-commands.[ch]
	* app/actions/layers-actions.c
	* app/actions/layers-commands.c
	* app/actions/select-actions.c
	* app/actions/select-commands.[ch]
	* app/actions/vectors-actions.c
	* app/actions/vectors-commands.[ch]: added tooltips for actions
	which are now used for dialog buttons, added callback
	implementations which formerly lived in various widgets, moved
	some actions around and did some general cleanups.

	* menus/image-menu.xml.in: s/edit-stroke/select-stroke/

	* menus/Makefile.am
	* menus/selection-editor-menu.xml: new popup menu.

	* app/menus/menus.c: register <SelectionEditor> and <UndoEditor>
	UI managers.

	* app/widgets/gimpeditor.[ch]: added construct properties
	"menu-factory", "menu-identifier", "ui-path" and "popup-data".
	Implement GObject::constructor() and create the UI manager
	if all needed properties were set. Enables creating action
	buttons at widget construction time because they need a
	UI manager.

	(gimp_editor_add_action_button): changed to take a va_list of
	"extended" actions which are invoked if the resp. button emits
	"extended_clicked". Store the actions and their modifier masks in
	a list attached to the button.

	* app/widgets/gimpcontainerview.c
	(gimp_container_view_item_selected): if the view has container
	*and* context, simply change the context and return.

	(gimp_container_view_context_changed): don't emit "select_item"
	manually but simply call gimp_container_view_select_item().

	(gimp_container_view_viewable_dropped): use
	gimp_container_view_item_selected() instead of changing the
	context directly.

	* app/widgets/gimpcontainereditor.c
	(gimp_container_editor_select_item): update the UI manager.

	* app/widgets/gimpdockable.c: don't try to fiddle with the
	dialog's menu if it doesn't have a ui_path (happens if the UI
	manager is just a collection of actions for the dialog buttons and
	has no menu registered).

	* app/widgets/gimpimageeditor.c: connect to the image's "flush"
	signal and update the UI manager in the callback.

	* app/widgets/gimpitemtreeview.c: use GimpEditor's construct
	properties to create the UI manager so GimpItemTreeView subclasses
	can have action buttons. Update the UI manager in
	gimp_item_tree_view_select_item().

	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptoolview.c: changed calls to
	gimp_editor_add_action_button() accordingly and removed some
	unneeded select_item() implementations.

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpvectorstreeview.[ch]
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpselectioneditor.[ch]
	* app/widgets/gimpundoeditor.[ch]: use action buttons and removed
	lots of callbacks which went to the resp. action callbacks.

	* app/widgets/widgets-types.h: removed some now unneeded function
	prototypes.

	* app/gui/dialogs-constructors.c: changed (simplified) many dialog
	constructors accordingly.
2004-05-12 18:36:33 +00:00
Sven Neumann
6750667d87 libgimpwidgets/gimpwidgets.c (gimp_scale_entry_new_internal) left-align
2004-05-12  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.c (gimp_scale_entry_new_internal)
	* app/widgets/gimpwidgets-utils.c (gimp_table_attach_stock):
	left-align the label.

	* app/actions/channels-commands.c
	* app/actions/layers-commands.c
	* app/actions/qmask-commands.c
	* app/actions/vectors-commands.c
	* app/display/gimpdisplayshell-scale.c
	* app/gui/brush-select.c
	* app/gui/file-new-dialog.c
	* app/gui/info-dialog.c
	* app/gui/info-window.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimpsheartool.c
	* app/tools/gimptextoptions.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpstrokeeditor.c
	* app/widgets/gimpwidgets-utils.c: left-align labels as suggested
	by the HIG.
2004-05-12 11:37:21 +00:00
Michael Natterer
de7a940501 app/config/gimpconfig-deserialize.c app/config/gimpscanner.c
2004-05-12  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-deserialize.c
	* app/config/gimpscanner.c
	* app/core/gimp-edit.c
	* app/core/gimpchannel-combine.c
	* app/core/gimpcontainer.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-combine.c
	* app/core/gimpdrawable.c
	* app/core/gimpgradient.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage.c
	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpprogress.c
	* app/gui/info-dialog.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/plug-in/plug-in.c
	* app/tools/gimpdrawtool.c
	* app/tools/tool_manager.c
	* app/widgets/gimpactiongroup.c
	* app/widgets/gimpdialogfactory.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemfactory.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-save.c
	* libgimp/gimpexport.c
	* libgimpwidgets/gimphelpui.c
	* libgimpwidgets/gimppixmap.c
	* libgimpwidgets/gimpunitmenu.c: replaced G_GNUC_FUNCTION,
	G_GNUC_PRETTY_FUNCTION, G_STRLOC and hardcoded function names in
	g_warning()s by G_STRFUNC.
2004-05-12 08:13:33 +00:00
Michael Natterer
11fa092588 added action_data_get_context() and macro return_if_no_context().
2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/actions/actions.[ch]: added action_data_get_context() and
	macro return_if_no_context().

	* app/actions/brushes-actions.c
	* app/actions/buffers-actions.c
	* app/actions/buffers-commands.c
	* app/actions/data-commands.c
	* app/actions/fonts-actions.c
	* app/actions/fonts-commands.c
	* app/actions/gradients-actions.c
	* app/actions/images-actions.c
	* app/actions/images-commands.c
	* app/actions/palettes-actions.c
	* app/actions/patterns-actions.c
	* app/actions/templates-actions.c
	* app/actions/templates-commands.[ch]
	* app/actions/tools-actions.c
	* app/actions/tools-commands.c: moved lots of code from widgets/
	to the resp. action callbacks.

	* app/widgets/gimpeditor.[ch]: added gimp_editor_add_action_button()
	which creates a GtkButton connected to the resp. action.

	* app/widgets/gimpdatafactoryview.[ch]: added "action_group"
	parameters so we can distinguish brushes, patterns etc. actions.

	* app/widgets/gimpimageview.[ch]
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimppatternfactoryview.c
	* app/widgets/gimptemplateview.[ch]
	* app/widgets/gimptoolview.c: removed tons of GtkButton::clicked()
	callbacks and use gimp_editor_add_action_button() instead
	of simply _add_button().

	* app/gui/dialogs-constructors.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: changed accordingly.
2004-05-11 16:05:21 +00:00
Michael Natterer
e53a7cb423 correctly get the default GimpContainerViewInterface implementation and
2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainercombobox.c: correctly get the default
	GimpContainerViewInterface implementation and chain up to it for
	clear_items(). Update the preview renderers on "update", enable
	deselecting everything.

	* app/widgets/gimpimagedock.[ch]
	* app/gui/file-new-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/stroke-dialog.c: use GimpContainerComboBox instead of
	GimpContainerMenuImpl.

	* app/gui/palette-import-dialog.c: cleanup.
2004-05-11 16:01:00 +00:00
Sven Neumann
3e4413a7be removed the "Aborting Installation" page. We added it as a nice little
2004-05-11  Sven Neumann  <sven@gimp.org>

	* app/gui/user-install-dialog.c: removed the "Aborting
	Installation" page. We added it as a nice little gimmick but
	obviously people don't understand it's purpose. Fixes bug #142281.
2004-05-11 12:55:12 +00:00
Sven Neumann
5de9756f9a app/widgets/Makefile.am app/widgets/widgets-types.h added new widget,
2004-05-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainercombobox.[ch]: added new widget, almost
	finished.

	* app/widgets/gimpcontainerview.[ch]: added convenience functions
	to get and set the GimpContainerView properties.

	* app/widgets/gimpcontainerbox.c: use the convenience functions.

	* app/gui/file-new-dialog.c: use the new GimpContainerComboBox.

	* etc/templaterc: use "pixels" as the unit for pixel sized templates.
2004-05-11 12:13:31 +00:00
Sven Neumann
5c4b077fd6 added missing newline in error message.
2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/gui/tips-dialog.c: added missing newline in error message.
2004-05-10 17:36:37 +00:00
Sven Neumann
bceb09a8e3 removed the display scale from the default image title because it's now
2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/config/gimpdisplayconfig.c (DEFAULT_IMAGE_TITLE_FORMAT):
	removed the display scale from the default image title because
	it's now displayed in the statusbar. Show the image pixel size
	instead.

	* app/gui/preferences-dialog.c: include a preset for the title
	format string that shows the image size (bug #141720).
2004-05-10 12:04:28 +00:00
Michael Natterer
d8d2c84d39 Prepare for making an interface out of GimpContainerView:
2004-05-10  Michael Natterer  <mitch@gimp.org>

	Prepare for making an interface out of GimpContainerView:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainerbox.[ch]: new GimpContainerView
	subclass which implements GimpDocked interface and contains the
	vbox-with-scrolled-window stuff common to GimpContainerGridView
	and GimpContainerTreeView.

	* app/widgets/gimpcontainerview.[ch]: removed that functionality
	here.

	* app/widgets/gimpcontainergridview.[ch]
	* app/widgets/gimpcontainertreeview.[ch]: derive them from
	GimpContainerBox.

	* app/gui/brush-select.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/widgets/gimpcontainerpopup.c: changed accordingly.
2004-05-10 11:08:51 +00:00
Michael Natterer
da0de0873f Started making the toolbox configurable. Addresses bug #105764. Not
2004-05-10  Michael Natterer  <mitch@gimp.org>

	Started making the toolbox configurable.
	Addresses bug #105764. Not finished yet.

	* app/core/gimptoolinfo.[ch]: renamed "in_toolbox" to "visible"
	and made it a GObject property.

	* app/tools/gimp-tools.[ch]: added new function
	gimp_tools_get_default_order() which returns a GList of tool
	identifiers.

	* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: added actions & callbacks for
	toggling the "visible" boolean and for resetting all tools.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolview.[ch]: new widget which allows to
	toggle a tool's visibility and to reorder the tools.

	* app/widgets/gimptoolbox.[ch]: removed member "GtkWidget *trash"
	and pack all tool buttons into the same wrap box. Connect to
	"reoder" of the tool container and to "notify::visible" of all
	tool infos and update the toolbox accordingly.

	* app/gui/dialogs-constructors.c: create a GimpToolView for the
	tools list/grid.

	* app/menus/menus.c: register a <Tools> menu for the dialog above.

	* menus/Makefile.am
	* menus/tools-menu.xml: added the menu.
2004-05-10 00:41:57 +00:00
Sven Neumann
480d8664a9 fixed the fix 2004-05-06 14:32:43 +00:00
Sven Neumann
eb79e15ea6 center the about dialog on the monitor, not on the screen. Fixes window
2004-05-06  Sven Neumann  <sven@gimp.org>

	* app/gui/about-dialog.c: center the about dialog on the monitor,
	not on the screen. Fixes window position on xinerama setups.
2004-05-06 14:26:31 +00:00
Michael Natterer
7b943b64b0 Enabled multiple menu entries per plug-in procedure:
2004-05-06  Michael Natterer  <mitch@gimp.org>

	Enabled multiple menu entries per plug-in procedure:

	* app/plug-in/plug-in-proc.[ch]: changed "gchar *menu_path" to
	"GList *menu_paths".

	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c
	* app/menus/menus.c
	* app/widgets/gimpfiledialog.c
	* app/xcf/xcf.c: changed accordingly.

	* app/actions/file-dialog-actions.c
	* app/actions/plug-in-actions.c: create an action for the first
	element of proc_def->menu_paths.

	* app/gui/gui-vtable.c
	* app/menus/plug-in-menus.[ch]: create proxy widgets for each
	element of proc_def->menu_paths.

	* tools/pdbgen/pdb/plug_in.pdb: added new function
	gimp_plugin_menu_add() which can be called during query() and adds
	a menu path to a procedure registered by the calling plugin.

	* app/pdb/internal_procs.c
	* app/pdb/plug_in_cmds.c
	* libgimp/gimpplugin_pdb.[ch]: regenerated.

	* menus/image-menu.xml.in
	* menus/toolbox-menu.xml.in: added lots of <placeholder>s for
	logical groups (like Image/Resize, Image/Scale, Image/Crop
	etc.). Added empty placeholder File/Send for stuff like print and
	mail. Added an "Acquire" menu under <Image>/File

	* plug-ins/common/mail.c
	* plug-ins/print/print.c
	* plug-ins/common/winprint.c: register under File/Send.

	* plug-ins/common/screenshot.c
	* plug-ins/winsnap/winsnap.c: also register under
	<Image>/File/Acquire.

	* plug-ins/common/autocrop.c
	* plug-ins/common/ccanalyze.c
	* plug-ins/common/colortoalpha.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/common/zealouscrop.c: register additional menu entries
	under placeholders in the "Image" and "Layer" menus. This is not
	meant to be final but just a hint to keep in mind when
	reorganizing the plug-in menus.
2004-05-06 13:51:56 +00:00
Sven Neumann
8008d532e1 cleaned up variable names and external API. Still quite a mess.
2004-05-06  Sven Neumann  <sven@gimp.org>

	* app/gui/resize-dialog.[ch]: cleaned up variable names and
	external API. Still quite a mess.

	* app/Makefile.am
	* app/actions/image-commands.c
	* app/actions/layers-commands.c: changed accordingly.
2004-05-06 13:17:49 +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
Sven Neumann
98f6cfa9c8 use a normal GimpDialog instead of a GimpViewableDialog that never has a
2004-05-05  Sven Neumann  <sven@gimp.org>

	* app/gui/file-new-dialog.c: use a normal GimpDialog instead of a
	GimpViewableDialog that never has a viewable set.
2004-05-05 21:23:45 +00:00
Michael Natterer
a377cc7cb0 reordered parameters so the first four are the same for all
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/gui/brush-select.[ch] (brush_select_new): reordered parameters
	so the first four are the same for all foo_select_new() functions.

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

	* app/pdb/brush_select_cmds.c: regenerated.

	* app/gui/font-select.c (font_select_new): set the vbox'
	border width to 6 to match the other foo_select dialogs.
2004-05-05 16:22:18 +00:00
Michael Natterer
03d8d8278e fixed bug which would have leaked broken menu translations.
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/plug-in-actions.c (plug_in_actions_add_proc): fixed
	bug which would have leaked broken menu translations.

	* app/gui/plug-in-menus.c: removed useless #includes.
2004-05-05 15:34:11 +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
144e5999d2 added new function gimp_offset_area_set_pixbuf(). Started to clean up the
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpoffsetarea.[ch]: added new function
	gimp_offset_area_set_pixbuf(). Started to clean up the
	code a bit.

	* app/gui/resize-dialog.c (resize_widget_new): use the new feature
	and set a preview of the image. Fixes bug #78733.
2004-05-04 23:12:59 +00:00
Sven Neumann
97dd0a8e65 app/gui/info-dialog.c app/tools/gimpcolorbalancetool.c
2004-05-05  Sven Neumann  <sven@gimp.org>

	* app/gui/info-dialog.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimplevelstool.c: use GimpFrame widgets, changed spacings.

	* app/widgets/gimptexteditor.c: tweaked.
2004-05-04 22:33:52 +00:00
Michael Natterer
d8962eca96 register a <Dock> UI manager which has all action groups <Image> has
2004-05-04  Michael Natterer  <mitch@gimp.org>

	* app/gui/menus.c: register a <Dock> UI manager which has all
	action groups <Image> has except "view".

	* app/widgets/gimpimagedock.[ch]: re-enabled the global shortcuts,
	using UI manager instead of item factory. Unfortunately actions
	without proxy widgets can't be activated so this change is pretty
	useless. Oh well, will find a hack to work around this later...
2004-05-04 21:16:40 +00:00
Sven Neumann
122e2c78db app/actions/channels-commands.c app/actions/gradient-editor-commands.c
2004-05-04  Sven Neumann  <sven@gimp.org>

	* app/actions/channels-commands.c
	* app/actions/gradient-editor-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/qmask-commands.c
	* app/actions/templates-commands.c
	* app/actions/vectors-commands.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/gui/convert-dialog.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/resize-dialog.c
	* app/gui/resolution-calibrate-dialog.c
	* app/gui/tips-dialog.c
	* app/gui/user-install-dialog.c
	* app/widgets/gimpwidgets-utils.c
	* libgimpwidgets/gimpquerybox.c: set dialog border spacing to 12.
2004-05-04 14:21:13 +00:00
Sven Neumann
2c2f46aeca app/gui/preferences-dialog.c app/widgets/widgets-enums.[ch] added new
2004-05-04  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c
	* app/widgets/widgets-enums.[ch]
	* app/widgets/gimpwidgets-utils.c (gimp_window_set_hint): added
	new window hint "keep-above" to force toolbox and/or dock windows
	to be kept above (if the WM supports this hint). Fixes bug #131672.
2004-05-04 13:31:57 +00:00
Sven Neumann
b0207bc3d4 moved line style options into a GtkExpander. Changed dialog spacings.
2004-05-04  Sven Neumann  <sven@gimp.org>

	* app/gui/stroke-dialog.c:
	* app/widgets/gimpstrokeeditor.c: moved line style options into a
	GtkExpander. Changed dialog spacings.
2004-05-04 00:15:49 +00:00
Sven Neumann
311f033d34 if the label_widget is a button, set the button label as bold. Cache the
2004-05-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c: if the label_widget is a button, set
	the button label as bold. Cache the indentation instead of
	calculating it over and over again.

	* themes/Default/gtkrc: set HIG-compliant spacing for the
	action_area.

	* app/widgets/gimppropwidgets.[ch]: added
	gimp_prop_enum_radio_box_new() for a radio group that is no
	embedded in a frame.

	* app/widgets/gimpstrokeeditor.c: use a frame-less radio box for
	the Stroke style.

	* app/gui/file-new-dialog.c
	* app/gui/grid-dialog.c
	* app/gui/stroke-dialog.c: HIG-compliant spacings.
2004-05-03 15:37:56 +00:00
Sven Neumann
2aae5bb850 use a GimpFrame for gimp_radio_group_new() and friends.
2004-05-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.c: use a GimpFrame for
	gimp_radio_group_new() and friends.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: set a smaller label_spacing for GimpFrame
	widgets in GimpDockables. Lame hack to keep the tool options
	compact.

	* app/actions/image-commands.c: changed spacing.

	* app/gui/offset-dialog.c: merged check and radio buttons into a
	single radio button group; changed spacing.
2004-05-03 00:10:24 +00:00
Sven Neumann
96ab019dd9 respect the frame's border width.
2004-05-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c (gimp_frame_size_allocate): respect
	the frame's border width.

	* app/widgets/gimpcolorframe.[ch]: derive from GimpFrame.

	* app/gui/convert-dialog.c
	* app/gui/info-window.c
	* app/gui/palette-import-dialog.c
	* app/gui/resize-dialog.c: use GimpFrames, changed some spacings.
2004-05-02 22:33:33 +00:00
Sven Neumann
06631e959e libgimpwidgets/Makefile.am libgimpwidgets/gimpwidgets.h
2004-05-02  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpframe.[ch]: added new widget GimpFrame, a HIG
	compliant variant of GtkFrame.

	* app/gui/preferences-dialog.c: enable the HIG compliant mode by
	default and use the new GimpFrame widget for it.

	* themes/Small/gtkrc: set a smaller spacing between the GimpFrame
	title label and the frame content.

2004-05-02  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/libgimpwidgets-docs.sgml
	* libgimpwidgets/libgimpwidgets-sections.txt
	* libgimpwidgets/libgimpwidgets.types
	* libgimpwidgets/tmpl/gimpframe.sgml: added docs for GimpFrame.

	* */tmpl/*.sgml: regenerated using gtk-doc-tools version 1.2.
2004-05-02 20:30:41 +00:00
Michael Natterer
9377b26ebc added help IDs to all actions representing the toplevel popups and menus
2004-05-02  Michael Natterer  <mitch@gimp.org>

	* app/actions/*-actions.c: added help IDs to all actions
	representing the toplevel popups and menus (as fallbacks for the
	still-to-be-written help system intrgration of GimpUIManager).

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): removed
	call to gtk_ui_manager_ensure_update() because that's done by
	gimp_ui_manager_ui_get() now.

	* app/widgets/gimpmenufactory.[ch]: removed API to register and
	create item factories.

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

	* app/gui/dialogs.c
	* app/actions/plug-in-commands.c
	* app/gui/file-dialog-utils.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpdockbook.[ch]
	* app/widgets/gimpimagedock.c
	* app/widgets/gimpitemtreeview.c: removed leftover item factory
	cruft.

	* app/widgets/widgets-types.h: removed item factory typedefs...

	* app/widgets/gimpitemfactory.h: ...and added them here.

	* app/widgets/gimpactiongroup.[ch]: added new function
	gimp_action_group_add_plug_in_actions().

	* app/actions/plug-in-actions.c: use it here instead of adding
	the actions manually.

	* app/widgets/gimptoolbox.c: ported the code which dynamically
	updates the tool button tooltips on accelerator changes to
	GtkAction. Disabled the whole stuff because GTK+ lacks
	gtk_action_get_accel_closure().
2004-05-02 08:56:07 +00:00
Sven Neumann
8766f89e02 added casts to please the compiler.
2004-04-30  Sven Neumann  <sven@gimp.org>

	* app/gui/tool-options-menu.c: added casts to please the compiler.
2004-04-30 17:11:07 +00:00
Michael Natterer
7d7ef188fa added signal "update" which is G_SIGNAL_RUN_LAST, so handlers can hook in
2004-04-30  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpuimanager.[ch]: added signal "update" which
	is G_SIGNAL_RUN_LAST, so handlers can hook in before and after
	the default implementation. Update the action groups
	in the default implementations.

	(gimp_ui_manager_ui_get): make sure we always return a widget
	by calling gtk_ui_manager_ensure_update().

	* app/widgets/gimpdockable.c (gimp_dockable_show_menu): make
	sure the dockable menu is loaded before trying to access its
	widgets/actions.

	Resurrected the dynamic tool options menus:

	* app/actions/tool-options-actions.c: dynamically destroy/create
	actions for the tool options' presets.

	* app/actions/tool-options-commands.[ch]: all callbacks are
	GimpEnumAction::selected() callbacks now.

	* app/gui/tool-options-menu.[ch]: connect and connect_after to
	GimpUIManager::update(). Remove the old preset menu items
	in the former callback, create the new ones in the latter.
	Removed the last item factory entries.

	* app/gui/menus.c
	* app/widgets/gimptooloptionseditor.c: changed accordingly.
2004-04-30 15:29:11 +00:00
Michael Natterer
0e1af3ee5a app/actions/Makefile.am app/actions/file-open-actions.[ch] actions for the
2004-04-29  Michael Natterer  <mitch@gimp.org>

	* app/actions/Makefile.am
	* app/actions/file-open-actions.[ch]
	* app/actions/file-save-actions.[ch]: actions for the <Load> and
	<Save> menus...

	* menus/Makefile.am
	* menus/file-open-menu.xml
	* menus/file-save-menu.xml: ...and the menus.

	* app/gui/file-open-menu.[ch]
	* app/gui/file-save-menu.[ch]: ported to UI Manager.

	* app/widgets/gimpfiledialog.[ch]: ditto.

	* app/actions/actions.c
	* app/gui/menus.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: changed accordingly.

	* app/widgets/gimpuimanager.c: removed debugging code which
	automatically loaded all registered menus. They are now loaded on
2004-04-29 17:47: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
aae726ee94 app/widgets/Makefile.am app/widgets/widgets-types.h new GtkAction subclass
2004-04-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppluginaction.[ch]: new GtkAction subclass which
	remembers the PlugInProcDef.

	* app/widgets/gimpactiongroup.[ch]: added "gpointer user_data" to
	the GimpActionGroup struct and to gimp_action_group_new(). Removed
	the user_data parameter from gimp_action_group_add_*_actions().

	* app/widgets/gimpactionfactory.[ch]: changed accordingly.

	* app/actions/*-actions.[ch]: removed user_data from all setup_funcs.

	* app/actions/plug-in-actions.c: use a GimpPlugInAction and
	finally use the right user_data for the callback so plug-in
	callbacks have a proper context.

	* app/gui/plug-in-menus.[ch]: renamed plug_in_menus_create2() to
	plug_in_menus_setup().

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: changed accordingly.
2004-04-27 13:55:26 +00:00
Michael Natterer
a5130581db removed "translation-domain" property and simply use gettext(). Plug-In
2004-04-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactiongroup.[ch]: removed "translation-domain"
	property and simply use gettext(). Plug-In domains are handled
	by plug-in-actions.c

	The following change finally starts breaking the old menu system
	while the new one is not fully in place yet. Have fun:

	* menus/image-menu.xml: added several <placeholder>s for plug-ins
	to register their menu entries in the middle of already existing
	menus.

	* app/gui/menus.c
	* plug-ins/common/mail.c
	* plug-ins/print/print.c
	* plug-ins/script-fu/scripts/copy-visible.scm: use the new
	placeholders to register menu entries.
2004-04-27 12:51:08 +00:00
Michael Natterer
4e8105c12f Correctly translated & sorted plug-in actions & menu entries:
2004-04-27  Michael Natterer  <mitch@gimp.org>

	Correctly translated & sorted plug-in actions & menu entries:

	* app/widgets/gimpuimanager.[ch]: added a "gchar *name" property
	and a hash table which keeps all created UI managers (similar to
	GimpActionGroup's hash table). Added function
	gimp_ui_managers_from_name() which returns a list of all managers
	with the given name.

	* app/widgets/gimpmenufactory.c: register a name per UI manager
	and pass the name to gimp_ui_manager_new().

	* app/actions/plug-in-actions.c: added code which correctly
	translates the created plug-in actions and also creates translated
	menu actions for the plug-in's menu_path elements.

	* app/gui/plug-in-menus.[ch]: sort the plug-ins' menu entries
	using a GTree. For each entry, recursivlely create submenus
	from the dynamic menu actions created above before creating
	the plug-in's menu entry itself.

	* app/gui/image-menu.c (image_menu_setup2)
	* app/gui/toolbox-menu.c (toolbox_menu_setup2): call
	plug_in_menus_create2().

	* app/gui/gui-vtable.c (gui_menus_create_entry)
	(gui_menus_delete_entry): added some uglyness which maps old <Prefix>
	menu identifiers to new-style UI manager plus ui_path tuples and
	call plug_in_menus_add,remove_proc() accordingly.

	* menus/image-menu.xml
	* menus/toolbox-menu.xml: added name="Foo" attributes to all menus
	so plug-in entries find their place.
2004-04-27 12:28:27 +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
bb0f359ac4 added GimpUIManagerSetupFunc typedef.
2004-04-26  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-types.h: added GimpUIManagerSetupFunc typedef.

	* app/widgets/gimpuimanager.[ch]: added the setup_func to the
	GimpUIManagerUIEntry struct and to gimp_ui_manager_ui_register().
	Call the setup_func after creating the UI. Replaced the term
	"identifier" by "ui_path".

	* app/widgets/gimpmenufactory.c: ditto.

	* app/gui/menus.c (menus_init): register the new setup_funcs below.

	* app/gui/menus.[ch] (menus_open_recent_add)
	* app/gui/image-menu.[ch] (image_menu_setup2)
	* app/gui/toolbox-menu.[ch] (toolbox_menu_setup2): new setup_funcs
	which add the "Open Recent" menu items.

	* app/actions/file-actions.c: removed "file-open-recent-empty"
	action because it's not needed.

	* menus/image-menu.xml
	* menus/toolbox-menu.xml: removed "file-open-recent-empty" menu
	items and added <placeholder>s for the "Open Recent" menu items.
2004-04-26 15:51:21 +00:00
Michael Natterer
b69ddb3993 removed "locale_domain" and "help_domain" parameters from
2004-04-26  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.[ch]: removed "locale_domain" and "help_domain"
	parameters from GimpMenusCreateFunc.

	* app/plug-in/plug-ins.c (plug_ins_temp_proc_def_add)
	* app/actions/plug-in-actions.[ch] (plug_in_actions_add_proc_def):
	changed accordingly.

	* app/widgets/gimpactiongroup.[ch]: remember all created action
	groups is a hash table in GimpActionGroupClass.  Added
	gimp_action_groups_from_name() which returns a GList of all groups
	with the given name.

	* app/actions/plug-in-actions.[ch] (plug_in_actions_setup):
	removed the tree sorting code. Actions don't need to be ordered
	alphabetically.

	(plug_in_actions_update): copied & ported plug_in_menus_update().

	* app/gui/gui-vtable.c (gui_menus_create,delete_entry):
	dynamically add/remove plug-in actions in all "plug-in" action
	groups.
2004-04-26 15:01:00 +00:00
Michael Natterer
af517f93aa changed GimpMenusDeleteFunc to take a PlugInProcDef* instead of a const
2004-04-25  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.[ch]: changed GimpMenusDeleteFunc to take
	a PlugInProcDef* instead of a const gchar*.

	* app/plug-in/plug-ins.c
	* app/gui/gui-vtable.c
	* app/gui/plug-in-menus.[ch]: changed accordingly.
2004-04-25 08:22:22 +00:00
Sven Neumann
1afe796075 app/gui/dialogs-constructors.c silent the compiler.
2004-04-22  Sven Neumann  <sven@gimp.org>

	* app/gui/dialogs-constructors.c
	* app/gui/preferences-dialog.c: silent the compiler.

	* plug-ins/winicon/icodialog.c: simplified by using a
	GimpIntComboBox.
2004-04-22 17:38:14 +00:00
Michael Natterer
1071842535 remember and ref the created widgets. Added gimp_ui_manager_ui_popup()
2004-04-22  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpuimanager.[ch]: remember and ref the created
	widgets.  Added gimp_ui_manager_ui_popup() which pops up a GtkMenu
	with a custom GimpMenuPositionFunc and a GtkDestroyNotify which is
	called on popdown.

	* app/widgets/gimpmenufactory.c (gimp_menu_factory_finalize):
	don't forget to free the list of managed UIs.

	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdockbook.[ch]
	* app/widgets/gimpdocked.[ch]
	* app/widgets/gimpeditor.[ch]: added GimpUIManager stuff parallel
	to the to-be-removed GtkItemFactory stuff.

	* 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
	* app/widgets/gimptooloptionseditor.c: changed accordingly and added
	#if 0'ed code which actually uses all the UI managers.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell.c
	* app/gui/gui-vtable.c: disabled some gimp_ui_manager_update()
	calls because they were invoking toggle and radio callbacks
	which still have the wrong signature.
2004-04-22 17:14:22 +00:00
Michael Natterer
1f7a5870cc fixed some typos in the UI Manager registration code.
2004-04-22  Michael Natterer  <mitch@gimp.org>

	* app/gui/menus.c (menus_init): fixed some typos in the UI Manager
	registration code.
2004-04-22 16:18:40 +00:00
Michael Natterer
0b8c4b3ec9 app/widgets/Makefile.am app/widgets/widgets-types.h new GtkUIManager
2004-04-21  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpuimanager.[ch]: new GtkUIManager subclass. Adds
	API to update all action groups and knows which UIs it can create
	from which XML files.

	* app/widgets/gimpmenufactory.[ch]: register the XML file
	basenames along with path of their toplevel menus. Create
	GimpUIManagers instead of GtkUIManagers and register the
	XML files and menu paths with them.

	* app/gui/menus.c: register all XML files and their toplevel
	menu paths.

	* app/widgets/gimpeditor.[ch]: also create a GimpUIManager when
	creating the GtkItemFactory. Added "const gchar *ui_identifier"
	parameter to gimp_editor_create_menu().

	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpitemtreeview.[ch]: added "ui_identifier"
	parameters to all constructors.

	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimppatternfactoryview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptooloptionseditor.c
	* app/gui/dialogs-constructors.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: pass UI identifiers to the changed
	functions above.

	* app/display/gimpdisplayshell.[ch]: added a GimpUIManager for
	the menubar (menubar creating code still commented out).

	* app/display/gimpdisplay.c
	* app/gui/gui-vtable.c: update the ui manager.
2004-04-21 16:33:17 +00:00
Michael Natterer
62dcfaecbf app/actions/qmask-actions.c prepared qmask_actions_update() and the qmask
2004-04-21  Michael Natterer  <mitch@gimp.org>

	* app/actions/qmask-actions.c
	* app/actions/qmask-commands.c: prepared qmask_actions_update()
	and the qmask callbacks to be merged into the image ui manager.

	* app/actions/dialogs-actions.c
	* app/actions/edit-actions.c
	* app/actions/file-actions.c
	* app/actions/image-actions.c
	* app/actions/layers-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/tools-actions.c
	* app/actions/view-actions.c: fixed lots of typos and buglets
	spotted in my first test run.

	* app/gui/menus.c: register the needed action groups with the
	<Image> menu.

	* app/tools/gimp-tools.c
	* app/tools/gimpdodgeburntool.[ch]
	* app/tools/gimppaintoptions-gui.c: s/dodgeburn/dodge_burn/g.

	* app/widgets/gimpactionfactory.c
	* app/widgets/gimpmenufactory.[ch]: s/G_GNUC_FUNCTION/G_STRFUNC/g,
	updated copyright header.

	* menus/image-menu.xml: fixed typos and added the "Filters"
	submenus.
2004-04-21 10:55:45 +00:00
Michael Natterer
27a2c8c0e6 More unused action stuff:
2004-04-21  Michael Natterer  <mitch@gimp.org>

	More unused action stuff:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpactionfactory.[ch]: added a simple factory which
	produces GimpActionGroups.

	* app/widgets/gimpactiongroup.[ch]: added an "update_func" member
	to the GimpActionGroup struct. Added it as parameter to
	gimp_action_group_new(). Added function gimp_action_group_update().

	* app/widgets/gimpmenufactory.[ch]: added an "action_factory"
	member and constructor parameter. Added code to create
	GtkUIManagers from registered action group identifiers.

	* app/actions/Makefile.am
	* app/actions/actions.[ch]: new files: create a
	"global_action_factory" and register all action groups with it.

	* app/actions/edit-actions.c: s/edit_action_update/edit_actions_update/

	* app/actions/plug-in-actions.[ch]: added API to add/remove
	plug-in procedure actions dynamically (unfinished).

	* app/gui/menus.c (menus_init): call actions_init().
	(menus_exit): call actions_exit().
2004-04-20 23:04:50 +00:00
Sven Neumann
5766718d6f libgimpwidgets/Makefile.am libgimpwidgets/gimpwidgets.h
2004-04-20  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpintstore.[ch]: added a GimpIntStore, derived
	from GtkListStore, to be used by GimpIntComboBox and also by the
	image and drawable menus.

	* libgimpwidgets/gimpintcombobox.c: use the new GimpIntStore.

	* app/widgets/gimpenumstore.[ch]: derive from GimpIntStore,
	removed API that is provided by the parent class.

	* app/widgets/gimpenumcombobox.[ch]: derive from GimpIntComboBox,
	removed API that is provided by the parent class.

	* app/gui/resize-dialog.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpstrokeeditor.c: changed accordingly.
2004-04-20 19:06:37 +00:00
Michael Natterer
c8efb90364 renamed convert_to_indexed() to convert_dialog_new() and return the
2004-04-20  Michael Natterer  <mitch@gimp.org>

	* app/gui/convert-dialog.[ch]: renamed convert_to_indexed()
	to convert_dialog_new() and return the dialog. Removed
	convert_to_rgb() and convert_to_grayscale().

	* app/gui/offset-dialog.[ch]: renamed offset_dialog_create()
	to offset_dialog_new() and return the dialog.

	* app/Makefile.am
	* app/actions/drawable-commands.c
	* app/actions/image-commands.c: changed accordingly.
2004-04-20 13:44:19 +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
Sven Neumann
5e3b9ec330 added new function gimp_paint_mode_menu_set_history().
2004-04-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-constructors.[ch]: added new function
	gimp_paint_mode_menu_set_history().

	* app/gui/brush-select.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppropwidgets.c: use the new function instead of
	the deprecated gimp_int_option_menu API.
2004-04-20 13:10:50 +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
8848558f95 More GtkAction stuff (still unused):
2004-04-19  Michael Natterer  <mitch@gimp.org>

	More GtkAction stuff (still unused):

	* configure.in: added new directories menus/ and app/actions/

	* Makefile.am: build menus/

	* menus/.cvsignore
	* menus/Makefile.am
	* menus/*-menu.xml: new files: XML menu descriptions for each menu
	which is now defined in gui/*-menu.c.

	* app/widgets/widgets-types.h: some typedefs for GimpActionGroup.

	* app/widgets/gimpactiongroup.[ch]: added a "Gimp" construct-only
	property. Added APIs to set actions visible/sensitive/active
	and an unimplemented stub for setting the action's color.

	* app/Makefile.am: build actions/ and link libappactions.a

	* app/actions/.cvsignore
	* app/actions/Makefile.am
	* app/actions/*-actions.[ch]: new files: GtkActions for each
	*-commands.c file in gui/. Ported all "update" functions from the
	*-menu.c files.
	(everything completely unused, untested and partly #if 0'ed)

	* app/core/gimpimage.[ch]: for reasons of (action-) symmetry, added
	API to raise/lower channels/vectors to top/bottom.

	* app/gui/channels-commands.[ch]
	* app/gui/vectors-commands.[ch]: added callbacks for the new
	to top/bottom functions.

	* app/gui/Makefile.am
	* app/gui/dockable-commands.[ch]: new files split out of
	dialogs-commands.[ch].

	* app/gui/dialogs-commands.[ch]
	* app/gui/dialogs-menu.c: changed accordingly.

	* app/gui/edit-commands.[ch]: added edit_paste_into_cmd_callback()
	and remove usage of "guint action".

	* app/gui/image-menu.c: changed accordingly.

	* app/gui/palette-editor-commands.[ch]: split
	+palette_editor_new_color_cmd_callback() into separate callbacks
	for adding from FG and BG.

	* app/gui/palette-editor-menu.c: changed accordingly.
2004-04-19 14:54:24 +00:00
Sven Neumann
1d2976f934 app/widgets/gimppropwidgets.[ch] replaced
2004-04-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppropwidgets.[ch]
	* app/gui/preferences-dialog.c: replaced
	gimp_prop_boolean_option_menu_new() with
	gimp_prop_boolean_combo_box_new().
2004-04-18 23:48:30 +00:00
Sven Neumann
89cf45541a app/widgets/Makefile.am app/widgets/widgets-types.h removed GimpEnumMenu.
2004-04-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenummenu.[ch]: removed GimpEnumMenu.

	* app/widgets/gimpenumwidgets.[ch]: moved widget constructors that
	don't use GimpEnumMenu from gimpenummenu.[ch] to these new files.

	* app/widgets/gimpenumcombobox.[ch]: added a GtkComboBox widget
	using GimpEnumStore; replaces GimpEnumMenu.

	* app/widgets/gimpenumstore.[ch]: added new function
	gimp_enum_store_lookup_by_value().

	* app/widgets/gimppropwidgets.[ch]: replaced
	gimp_prop_enum_option_menu_new() with gimp_prop_enum_combo_box_new().

	* app/gui/brush-select.[ch]
	* app/gui/convert-dialog.c
	* app/gui/layers-commands.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimptransformoptions.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimpstrokeeditor.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptexteditor.c: ported to GimpEnumComboBox.
2004-04-18 15:12:42 +00:00
Michael Natterer
2f2301c905 derive it from GtkFileChooser instead of GtkFileSelection.
2004-04-15  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.[ch]: derive it from GtkFileChooser
	instead of GtkFileSelection.

	* app/gui/file-dialog-utils.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimpthumbbox.c: changed accordingly.

	* app/gui/gradients-commands.c
	* app/gui/vectors-commands.c
	* app/tools/gimpimagemaptool.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimptexteditor.c
	* libgimpwidgets/gimpfileentry.c: use file choosers instead of
	file selectors.
2004-04-15 16:28:26 +00:00
Sven Neumann
7e84dd9540 app/core/gimppalette-import.[ch] added palette import from RIFF palette
2004-04-15  Sven Neumann  <sven@gimp.org>

	* app/core/gimppalette-import.[ch]
	* app/gui/palette-import-dialog.c: added palette import from RIFF
	palette files based on a patch from ÉRDI Gergõ (bug #129788).
2004-04-15 15:03:20 +00:00
Michael Natterer
837fa4294d Context cleanup continued:
2004-04-15  Michael Natterer  <mitch@gimp.org>

	Context cleanup continued:

	* app/core/gimpitem.[ch]: added context parameter to
	GimpItem::stroke().

	* app/core/gimpchannel.c (gimp_channel_stroke)
	* app/vectors/gimpvectors.c (gimp_vectors_stroke): use it to get
	default values from instead of gimp_get_user_context().

	* app/core/gimpselection.c
	* app/gui/stroke-dialog.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/paths.pdb: changed accordingly.

	* app/pdb/edit_cmds.c
	* app/pdb/paths_cmds.c: regenerated.

	* app/plug-in/plug-in.[ch]: added GimpContext member to the PlugIn
	struct. Added context parameter to plug_in_new(),
	plug_in_call_query() and plug_in_call_init().

	* app/plug-in/plug-in-run.[ch]: added context parameters to
	plug_in_run() and plug_in_repeat().

	* app/gui/plug-in-commands.c
	* app/gui/vectors-commands.c
	* app/pdb/procedural_db.c
	* app/widgets/gimphelp.c: pass a context to plug_in_run() and
	plug_in_repeat().

	* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): call
	procedures with the plug-in's context.

	* app/plug-in/plug-ins.c: use a temporary context for running the
	plug-ins' query() and init() functions. Use the same context for
	running automatic extensions. This temporarily separates the main
	Script-Fu extension from the user context (i.e. scripts have no
	way of setting/getting the global FG, BG, brush etc.).
2004-04-15 13:10:51 +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
2e61d12ed4 Moved the calls to floating_sel_relax()/rigor() from various places to two
2004-04-13  Michael Natterer  <mitch@gimp.org>

	Moved the calls to floating_sel_relax()/rigor() from various
	places to two single spots in the core where they are actually
	needed. Fixes bug #138356 (which was caused by the projection
	being triggered in the middle of changing the floating selection's
	size or the size of the drawable it is attached to). This commit
	effectively removes floating selection fiddling from the core's
	public API.

	* app/core/gimpdrawable.[ch] (gimp_drawable_has_floating_sel): new
	function which returns TRUE if there is a floating selection
	attached to the drawable.

	* app/core/gimpdrawable.c (gimp_drawable_translate)
	(gimp_drawable_set_tiles_full): if the drawable *has* a floating
	selection, relax/rigor it before/after modifying the drawable.

	* app/core/gimplayer.c (gimp_layer_translate)
	(gimp_layer_set_tiles): if the layer *is* the floating selection,
	relax/rigor it before/after modifying it.

	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-scale.c
	* app/gui/layers-commands.c
	* app/tools/gimpeditselectiontool.c
	* tools/pdbgen/pdb/layer.pdb: removed calls to
	floating_sel_rigor()/relax() all over the place. Also removed
	lots of undo groups which are obsolete now.

	* app/pdb/layer_cmds.c: regenerated.
2004-04-13 13:54:54 +00:00
Michael Natterer
069489fb71 GimpItem undo group cleanup in preparation of fixing bug #138356:
2004-04-13  Michael Natterer  <mitch@gimp.org>

	GimpItem undo group cleanup in preparation of fixing bug #138356:

	* app/core/core-enums.[c]: renamed LAYER_SCALE and LAYER_RESIZE
	undo groups to ITEM_SCALE and ITEM_RESIZE.

	* app/core/gimpitem.[ch]: always push undo groups around
	GimpItem::translate(), scale(), resize(), flip(), rotate() and
	transform(). Added the resp. undo_desc strings to GimpItemClass.

	* app/core/gimpchannel.[ch]
	* app/core/gimpdrawable.[ch]
	* app/core/gimplayer.c: removed all undo groups from
	implementations of the above methods. Removed the undo_desc
	strings which were moved to GimpItemClass.

	* app/core/gimpimage-crop.c
	* app/core/gimpselection.c
	* app/gui/layers-commands.c
	* app/vectors/gimpvectors.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.
2004-04-13 11:43:27 +00:00
Sven Neumann
f87c500007 app/display/gimpdisplayshell-callbacks.c
2004-04-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-draw.[ch] pass the bounding box of
	the exposed area to gimp_display_shell_draw_grid() and draw only
	the relevant part of the grid. Fixes bug #138606.
2004-04-04 17:17:40 +00:00
Sven Neumann
224b14dffe unset the bg_pixmap and tweak style colors for all states. Sort of ugly
2004-04-01  Sven Neumann  <sven@gimp.org>

	* app/gui/user-install-dialog.c: unset the bg_pixmap and tweak
	style colors for all states. Sort of ugly but makes the dialog
	work better with more obscure themes (bug #138379).
2004-04-01 18:43:42 +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
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
Sven Neumann
d321c13075 corrected #define for the debug menu.
2004-03-21  Sven Neumann  <sven@gimp.org>

	* app/gui/debug-commands.h: corrected #define for the debug menu.
2004-03-21 13:39:22 +00:00
Simon Budig
63177de7c4 new callbacks to convert the current vector to the selection.
2004-03-20  Simon Budig  <simon@gimp.org>

	* app/gui/select-commands.[ch]: new callbacks to convert the
	current vector to the selection.

	* app/gui/image-menu.c: hook it into the menu. Default shortcut
	is Shift+V.
2004-03-20 16:14:49 +00:00
Michael Natterer
fddb9ce0e3 app/gui/color-notebook.c (color_notebook_new) app/tools/gimpcroptool.c
2004-03-19  Michael Natterer  <mitch@gimp.org>

	* app/gui/color-notebook.c (color_notebook_new)
	* app/tools/gimpcroptool.c (crop_info_create)
	* app/tools/gimptransformtool.c (gimp_transform_tool_dialog):
	explicitely set a default response for dialog buttons which were
	created using gtk_dialog_add_buttons().
2004-03-19 10:15:56 +00:00
Sven Neumann
2ce9ca7320 app/gui/layers-commands.c (layers_text_tool) treat modified text layers
2004-03-18  Sven Neumann  <sven@gimp.org>

	* app/gui/layers-commands.c (layers_text_tool)
	* app/gui/layers-menu.c (layers_menu_update): treat modified text
	layers like normal layers.

	* app/gui/layers-commands.c (layers_edit_layer_query): added a
	check button that gives access to the "auto-rename" property of a
	text layer.

	* app/text/gimptextlayer.c: typo.

	* app/widgets/gimppreviewrendererlayer.c
	(gimp_preview_renderer_layer_render): show the text layer icon for
	unmodified text layers only.
2004-03-18 18:00:38 +00:00
Simon Budig
def801b3c3 Initialize a new layer unconditionally. Spotted by Roman Joost.
2004-03-18  Simon Budig  <simon@gimp.org>

	* app/gui/layers-commands.c: Initialize a new layer
	unconditionally. Spotted by Roman Joost.
2004-03-18 14:18:56 +00:00
Simon Budig
e2d5ed6244 app/gui/channels-commands.c app/gui/layers-commands.c
2004-03-17  Simon Budig  <simon@gimp.org>

	* app/gui/channels-commands.c
	* app/gui/layers-commands.c
	* app/gui/vectors-commands.c
	* app/widgets/gimpitemtreeview.c: shuffled some
	gimp_image_flush()'es around.
2004-03-17 16:45:18 +00:00
Simon Budig
23711e13d3 app/gui/channels-commands.c app/gui/layers-commands.c Make sure that
2004-03-17  Simon Budig  <simon@gimp.org>

	* app/gui/channels-commands.c
	* app/gui/layers-commands.c
	* app/gui/vectors-commands.c: Make sure that non-dialog creation
	of layer/channels/vectors properly updates the image. Also
	clear the new channel unconditionally.

	Change the name of the newly created item to not include the "Copy".
	It isn't a copy.

	* app/widgets/gimpitemtreeview.c: Don't try to assemble translated
	strings.

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpvectorstreeview.c: properly overwrite the
	tooltip for the "New" button.

	Sorry, some real string changes ahere, but they were necessary.
2004-03-17 16:12:21 +00:00
Simon Budig
bcd96047f8 Sort the plugin menu entries with the mnemonics stripped. Avoids weird
2004-03-17  Simon Budig  <simon@gimp.org>

	* app/gui/plug-in-menus.c: Sort the plugin menu entries with
	the mnemonics stripped. Avoids weird ordering in the "C" and
	"POSIX" locales.

	* app/widgets/gimpitemtreeview.c: make a simple click on the
	"New" Button use defaults and use shift-click for the new-dialog
	invocation.

	Some more useless button cleanup:

	* app/widgets/gimpdatafactoryview.c: only create an Edit button
	when the edit_function is set.

	* app/core/gimp.c: don't set an edit func for the patterns.

	* app/gui/patterns-menu.c: Don't create the "New", "Edit" and
	"Duplicate" Menu entries for the patterns.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppatternfactoryview.[ch]: New widget:
	gimp_pattern_factory_view. Necessary to be able to hide the
	"duplicate" button...

	* app/gui/dialogs-constructors.c: Use it.
2004-03-17 14:14:18 +00:00
Michael Natterer
49238237dc ref new tiles before unrefing the old ones.
2004-03-16  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.c (gimp_drawable_set_tiles): ref new
	tiles before unrefing the old ones.

	* app/core/gimpimage-undo-push.c: keep undo memsize exact by
	adjusting undo->size when the stored data changes.

	* app/core/gimpchannel.[ch] (gimp_channel_new_from_alpha)
	* app/core/gimpchannel-select.[ch] (gimp_channel_select_alpha):
	replaced "layer" parameter by "drawable".

	* app/gui/layers-commands.c
	* tools/pdbgen/pdb/selection.pdb: changed accordingly.

	* app/pdb/selection_cmds.c: regenerated.

	* app/core/gimpchannel.c
	* app/core/gimplayer.c
	* app/core/gimplayermask.[ch]
	* app/core/gimpselection.c: remdom cleanup & code review.
2004-03-16 16:23:06 +00:00
Simon Budig
5ab1807141 Update the Plugin Menu immediately after setting the last invoked plugin.
2004-03-16  Simon Budig  <simon@gimp.org>

	* app/gui/plug-in-commands.c: Update the Plugin Menu immediately
	after setting the last invoked plugin. Fixes inconsistencies
	between name shown and plugin invoked.

	Fixes #136909, #137242 and #81479 (again, the fix in
	lightening_main.c only probably was bogus, since this must not
	rely on correctly written plugins).

	* plug-ins/common/compose.c
	* plug-ins/common/decompose.c
	* plug-ins/common/film.c
	* plug-ins/common/screenshot.c
	* plug-ins/common/smooth_palette.c
	* plug-ins/common/tile.c
	* plug-ins/fits/fits.c: Ensure that each gimp_image_undo_enable()
	had a gimp_image_undo_disable() first...
2004-03-16 01:12:21 +00:00
Sven Neumann
081f96b5a1 moved global variables to a struct and optimized the area exposed from
2004-03-15  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: moved global variables to a struct and
	optimized the area exposed from splash_update().
2004-03-15 16:43:11 +00:00
Sven Neumann
8b2d1f8e1f don't show a web-browser setting on win32, it's not used there (see bug
2004-03-15  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: don't show a web-browser setting
	on win32, it's not used there (see bug #137173).
2004-03-15 13:25: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
Sven Neumann
7ed142c77e don't abuse the SPLASHSCREEN window type hint, instead make the about
2004-03-14  Sven Neumann  <sven@gimp.org>

	* app/gui/about-dialog.c: don't abuse the SPLASHSCREEN window type
	hint, instead make the about dialog a popup window and center it
	explicitely.
2004-03-14 20:55:13 +00:00
Sven Neumann
5e32bf4d67 some code cleanup.
2004-03-14  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: some code cleanup.

	* app/gui/about_dialog.c: typo.
2004-03-14 20:05:33 +00:00
Sven Neumann
07a92fe591 keep a pointer on the active text layer and let the tool follow the active
2004-03-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.[ch]: keep a pointer on the active text
	layer and let the tool follow the active layer. Fixes bug #124970.

	* app/gui/layers-commands.c: changed accordingly.
2004-03-13 00:47:31 +00:00
Sven Neumann
1de5defab0 added explicit menu branches to allow them to be translated (bug #136937).
2004-03-12  Sven Neumann  <sven@gimp.org>

	* app/gui/tool-options-menu.c (tool_options_menu_entries): added
	explicit menu branches to allow them to be translated (bug #136937).
2004-03-11 23:45:08 +00:00
Michael Natterer
1b88601d04 added boolean return value and don't hide the file dialog on success but
2004-03-10  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-save-dialog.c (file_save_dialog_save_image): added
	boolean return value and don't hide the file dialog on success but
	return TRUE.

	(file_save_dialog_response)
	(file_save_overwrite_callback): hide the file dialog here instead.
2004-03-10 10:21:03 +00:00
Simon Budig
87fa536874 Resurrect the "Save"-Button in the input-devices dialog, to avoid to
2004-03-09  Simon Budig  <simon@gimp.org>

	* app/gui/preferences-dialog.c: Resurrect the "Save"-Button
	in the input-devices dialog, to avoid to confuse the users
	as described in bug #128588. This is not a proper fix though,
	since the input device configuration should be independant
	from the tool configuration. However, we can bump this bug
	to 2.2 now.
2004-03-09 10:51:25 +00:00
Sven Neumann
1ba8d152f0 added a message explaining that GIMP cannot convert to a palette with more
2004-03-08  Sven Neumann  <sven@gimp.org>

	* app/gui/convert-dialog.c (indexed_palette_select_palette): added
	a message explaining that GIMP cannot convert to a palette with
	more than 256 colors. Should actually not list palettes that don't
	match this criteria, but we'll leave that change for later (see
	bug #136574).
2004-03-08 19:23:05 +00:00
Hans Breuer
2036638f73 updated
2004-03-07  Hans Breuer  <hans@breuer.org>

	* themes/Default/images/makefile.msc
	  app/*/makefile.msc plug-ins/makefile.msc : updated
2004-03-07 23:13:51 +00:00
Sven Neumann
28bb855aae Made size of undo previews configurable. Not dynamic for now, but at least
2004-03-07  Sven Neumann  <sven@gimp.org>

	Made size of undo previews configurable. Not dynamic for now, but
	at least not hardcoded any longer. Fixes bug #119905:

	* app/config/gimpcoreconfig.[ch]
	* app/config/gimprc-blurbs.h: added "undo-preview-size" property.

	* app/core/gimpundo.[ch]: use the new property instead of a
	hardcoded value.

	* app/widgets/gimpundoeditor.[ch]: added a "preview-size"
	construct property.

	* app/gui/dialogs-constructors.c: changed accordingly.

	* app/gui/preferences-dialog.c: added a widget to control the undo
	preview size.
2004-03-07 15:33:04 +00:00
Sven Neumann
e21dc0ee93 marked new strings for translation.
2004-03-04  Sven Neumann  <sven@gimp.org>

	* app/config/gimprc-blurbs.h: marked new strings for translation.

	* libgimpwidgets/gimpstock.h: added #defines for missing icons.
	This allows us to replace them later without changing the API.

	* app/gui/dialogs-constructors.c
	* app/gui/dialogs-menu.c
	* app/gui/gradient-editor-commands.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimptextoptions.c
	* app/widgets/gimppaletteeditor.c: use the new stock icon names
	instead of abusing GTK+ and GIMP tool stock icons.

	* app/gui/preferences-dialog.c (prefs_dialog_new): added icons
	to the new check buttons.
2004-03-04 16:10:57 +00:00
Simon Budig
7b2b8e1b00 remove the widgets for global-font and global-palette, since these are no
2004-03-04  Simon Budig  <simon@gimp.org>

	* app/gui/preferences-dialog.c: remove the widgets for
	global-font and global-palette, since these are no options
	for multiple tools and have no visible effect for the user.
2004-03-04 14:59:15 +00:00
Michael Natterer
ba265516a1 app/config/gimpcoreconfig.[ch] added boolean properties "global-brush",
2004-03-04  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpcoreconfig.[ch]
	* app/config/gimprc-blurbs.h: added boolean properties
	"global-brush", "global-pattern" etc.

	* app/gui/preferences-dialog.c: added GUI for them to the
	"Tool Options" page.

	* app/tools/tool_manager.c (tool_manager_tool_changed): honor the
	new prefs options when copying the new tool's properties.
	Fixed bug #122519.
2004-03-04 14:04:22 +00:00
Michael Natterer
4a199a3e48 new function which configures the dialog to load an image.
2004-03-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.[ch] (gimp_file_dialog_set_uri):
	new function which configures the dialog to load an image.

	* app/gui/file-open-dialog.c: use it. Don't use file-dialog-utils
	any more and allow setting the uri of an already visible file open
	dialog.

	* app/gui/file-dialog-utils.c: took the file open menu entries out
	of that insane logic that makes the menus insensitive while any
	file dialog is open.
2004-03-01 13:40:46 +00:00
Michael Natterer
ca2f7f88de new function which configures the dialog to save an image.
2004-03-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.[ch] (gimp_file_dialog_set_image):
	new function which configures the dialog to save an image.

	* app/gui/file-save-dialog.c: use it.

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: removed useless #inlcudes.
2004-03-01 12:27:33 +00:00
Michael Natterer
705114f02f added unused "GSList *file_procs" parameter.
2004-03-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.[ch] (gimp_file_dialog_new): added
	unused "GSList *file_procs" parameter.

	* app/gui/file-open-dialog.c: pass gimp->load_procs.
	* app/gui/file-save-dialog.c: pass gimp->save_procs.
2004-03-01 11:57:38 +00:00
Sven Neumann
5f6783a4fa removed the call to gtk_widget_get_toplevel() again. Implement the
2004-02-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpdialog.c: removed the call to
	gtk_widget_get_toplevel() again.
	Implement the GTK_DIALOG_DESTROY_WITH_PARENT behaviour in a way
	that works for GimpDialog.

	* app/gui/resolution-calibrate-dialog.c: pass the toplevel window
	to gimp_dialog_new ().
2004-02-28 21:33:03 +00:00
Sven Neumann
93f580fac7 if the parent widget is not a GtkWindow, use gtk_widget_get_toplevel() to
2004-02-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpdialog.c (gimp_dialog_new_valist): if the
	parent widget is not a GtkWindow, use gtk_widget_get_toplevel()
	to get a pointer to the window the widget lives in.

	* app/gui/resolution-calibrate-dialog.c: don't make the dialog
	modal. It was a bad idea to do that, leading to problems spotted
	by Pedro Gimeno (bug #135630).
2004-02-28 12:37:49 +00:00
Michael Natterer
5bdd1635c8 app/gui/file-dialog-utils.c app/widgets/gimpfiledialog.c some irrelevant
2004-02-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-dialog-utils.c
	* app/widgets/gimpfiledialog.c
	* libgimpwidgets/gimpfileentry.[ch]: some irrelevant micro changes
	to make that patch smaller.
2004-02-27 22:25:37 +00:00
Michael Natterer
babcd868bf app/gui/file-open-dialog.c merged some small fixes/changes from my HEAD
2004-02-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: merged some small fixes/changes
	from my HEAD tree so the file chooser patch becomes smaller.
2004-02-27 16:28:55 +00:00
Michael Natterer
da90ac6bfd removed the thumbnail box.
2004-02-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-open-dialog.c: removed the thumbnail box.

	* app/widgets/gimpfiledialog.c: and added it here.
2004-02-27 15:43:58 +00:00
Michael Natterer
dfca2d79e3 renamed parameters and removed useless #includes.
2004-02-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-dialog-utils.[ch]: renamed parameters and removed
	useless #includes.
2004-02-27 14:51:51 +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
771e1ea330 changed return value from gboolean to void because the function is no
2004-02-26  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-dialog-utils.[ch] (file_dialog_hide): changed
	return value from gboolean to void because the function is no
	longer used as "delete_event" callback.

	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: removed unused #includes.
2004-02-26 20:40:20 +00:00
Michael Natterer
3f9ae43250 app/widgets/Makefile.am app/widgets/widgets-types.h new widget ripped out
2004-02-26  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpthumbbox.[ch]: new widget ripped out of the file
	open dialog.

	* app/gui/file-open-dialog.c: use it.
2004-02-26 13:48:42 +00:00
Michael Natterer
799ea1f107 themes/Default/images/Makefile.am
2004-02-19  Michael Natterer  <mitch@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-display-filter-16.png
	* themes/Default/images/stock-display-filter-24.png
	* libgimpwidgets/gimpstock.[ch]: added Jimmac's glasses.

	* app/display/gimpdisplayshell-filter-dialog.c
	* app/gui/image-menu.c: and use them.
2004-02-19 16:51:44 +00:00
Michael Natterer
bb7a9d9bcc new function which returns the image's QMask.
2004-02-19  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-qmask.c (gimp_image_get_qmask): new function
	which returns the image's QMask.

	* app/core/gimpimage.c (gimp_image_channel_name_changed)
	* app/gui/qmask-commands.c (qmask_query_response): use it.
2004-02-19 13:18:24 +00:00
Michael Natterer
513f5eac36 added new signal "buffer_changed" and new function
2004-02-19  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.[ch]: added new signal "buffer_changed" and new
	function gimp_set_global_buffer() which emits it when the global
	buffer changes.

	* app/core/gimp-edit.c (gimp_edit_extract): use it instead
	of fiddling with gimp->global_buffer manually.

	* app/gui/image-menu.c: connect to "buffer_changed" and set the
	"Paste" menu entries sensitive. Fixes bug #134752.

	(image_menu_update): changed accordingly. Also changed a lot of
	buggy SET_SENSITIVE() lines which made menu items which work fine
	on any drawable insensitive when there were no layers (instead
	of no drawable).

	* app/gui/edit-commands.c: added new macro return_if_new_drawable()
	and use it instead of return_if_no_image() so we don't run
	into assertions if there is no active drawable.

	(cut,copy_named_buffer_callback): unfortunately had to introduce
	two new translated messages about not being able to cut/copy when
	there is no active drawable.
2004-02-19 12:49:15 +00:00
Simon Budig
097801d7a7 app/config/gimpguiconfig.[ch] Added new GUI option: snapping distance
2004-02-18  Simon Budig  <simon@gimp.org>

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: Added new GUI option: snapping distance

	* app/gui/preferences-dialog.c: add a preferences widget

	* app/tools/gimpmovetool.c
	* app/display/gimpdisplayshell.c: use it for snapping.
2004-02-18 20:31:11 +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
d928919200 Make sure each GimpItem emits "removed" when it is removed from the image
2004-02-17  Michael Natterer  <mitch@gimp.org>

	Make sure each GimpItem emits "removed" when it is removed from
	the image so dialogs have a chance to close themselves:

	* app/core/gimplayer.c (gimp_layer_apply_mask): emit "removed"
	from the mask.

	(gimp_layer_removed): new function which emits "removed" from
	the layer's mask when the layer gets removed from the image.

	* app/core/gimpimage.c (gimp_image_dispose): emit "removed"
	from all layers, channels and vectors.

	* app/gui/layers-commands.c (layers_scale_layer_query)
	(layers_resize_layer_query): removed recently added connections to
	"removed" because GimpViewableDialog does this automatically.
2004-02-17 11:45:46 +00:00
Michael Natterer
25b81b1570 Fixed lots of QuickMask brokenness by letting the image adjust its
2004-02-14  Michael Natterer  <mitch@gimp.org>

	Fixed lots of QuickMask brokenness by letting the image adjust
	its qmask_state automatically:

	* app/core/gimpimage-qmask.h: #define GIMP_IMAGE_QMASK_NAME "Qmask".
	Use the define in all files below.

	* app/core/gimpimage.[ch]: split gimp_image_drawable_add,_remove()
	into separate handlers for layers and channels. Added a
	"name_changed" handler for all channels. In the channel "add",
	"remove" and "name_changed" handlers, check if it was a channel
	named "Qmask" that was added, removed or renamed and call
	gimp_image_set_qmask_state() accordingly.

	* app/core/core-enums.[ch]
	* app/core/gimpimage-undo-push.[ch]
	* app/core/gimpundo.c: removed all Qmask undo code because the image
	does the right thing without undo interaction now.

	* app/core/gimpimage-qmask.c (gimp_image_set_qmask_state): set
	gimage->qmask_state early so we can return early when called
	recursively. Removed calls to gimp_image_undo_push_image_qmask().
	Returned "removed" callback (it was utterly broken the way it was
	implemented).

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_qmask_toggled): check if the image's
	qmask state needs to be changed before changing it.

	* app/xcf/xcf-load.c (xcf_load_channel): removed code which
	recognized the qmask. GimpImage does this automatically now.

	* app/gui/qmask-commands.c: cleanup.

	* app/widgets/gimpimagedock.c (gimp_image_dock_constructor):
	destroy the "/Select/By Color" and "/Select/Toggle QuickMask" menu
	items.

	* app/widgets/image-menu.c (image_menu_update): changed accordingly.
2004-02-14 15:37:23 +00:00
Sven Neumann
fd58450810 removed "Default" prefix from "Navigation Preview Size" label again.
2004-02-10  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c (prefs_dialog_new): removed "Default"
	prefix from "Navigation Preview Size" label again.
2004-02-10 20:59:34 +00:00
Henrik Brix Andersen
afd1a451fb prefix preview size labels with "Default" to avoid misunderstandings.
2004-02-10 Henrik Brix Andersen <brix@gimp.org>

* app/gui/preferences-dialog.c (prefs_dialog_new): prefix preview
size labels with "Default" to avoid misunderstandings.
2004-02-10 20:28:41 +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
Sven Neumann
1359960a56 added progress callback pointers to gimp_item_scale() and its variants.
2004-02-09  Sven Neumann  <sven@gimp.org>

	* app/core/gimpitem.[ch]: added progress callback pointers to
	gimp_item_scale() and its variants.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-scale.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/gui/layers-commands.c97999
	* app/paint-funcs/paint-funcs.[ch]
	* app/vectors/gimpvectors.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly. Fixes bug #97999.

	* app/pdb/layer_cmds.c: regenerated.
2004-02-09 00:09:20 +00:00
Hans Breuer
5cbb416a91 new file to keep common definitions for the msc build use common
2004-02-07  Hans Breuer  <hans@breuer.org>

	* gimpdefs.msc : new file to keep common definitions for the msc build
	* **/makefile.msc : use common defintions, e.g. GIMP_VER
	* Makefile.am : add the former to EXTRA_DIST
2004-02-07 23:01:33 +00:00
Michael Natterer
195880cbdc Disallow editing of data objects which have no save functionality. Also
2004-02-05  Michael Natterer  <mitch@gimp.org>

	Disallow editing of data objects which have no save functionality.
	Also fixed the misassumption that "deletable" is always equal to
	"writable". Fixes bug #133456.

	* app/core/gimpdata.[ch]: added a "deletable" property which is
	always equal to "writable" except when the data class does not
	implement GimpData::save() (then deletable may be TRUE but
	writable is always FALSE).

	* app/gui/brushes-menu.c
	* app/gui/gradients-menu.c
	* app/gui/palettes-menu.c
	* app/gui/patterns-menu.c
	* app/widgets/gimpdatafactoryview.c: look at data->deletable when
	setting the sensitivity of the "Delete" buttons and menu items.

	* app/widgets/gimpdatafactoryview.c
	(gimp_data_factory_view_tree_name_edited): rename the data
	only if it's writable and restore the old name otherwise.

	* app/widgets/gimpdataeditor.c: no need to look at data->internal
	for figuring if the data is editable, data->editable is enough.

	All files above: s/writeable/writable/g

	* app/widgets/gimpbrusheditor.c (gimp_brush_editor_set_data):
	simplified.
2004-02-05 22:17:14 +00:00
Michael Natterer
be6b23d68a removed trailing whitespace.
2004-02-05  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-crop.c: removed trailing whitespace.

	* app/gui/debug-commands.[ch]
	* app/gui/toolbox-menu.c: renamed ENABLE_DEBUG_ENTRIES to
	ENABLE_DEBUG_MENU and #define it to be equal to GIMP_UNSTABLE.
2004-02-05 12:52:35 +00:00
Sven Neumann
99c9381011 added percentages to the View->Zoom menu entries as suggested in bug
2004-02-04  Sven Neumann  <sven@gimp.org>

	* app/gui/image-menu.c (image_menu_entries): added percentages to
	the View->Zoom menu entries as suggested in bug #131563.
2004-02-04 01:21:00 +00:00
Sven Neumann
7d4ed423c9 don't mark weird format strings as translatable.
2004-02-03  Sven Neumann  <sven@gimp.org>

	* app/gui/image-menu.c (image_menu_set_zoom): don't mark weird
	format strings as translatable.

	* data/misc/gimp.desktop.in.in (_Name): use "The GIMP" without an
	"(unstable)" suffix. Should give translators the chance to update
	their translations before the final 2.0 release.

	* configure.in: removed now unused GIMP_VISIBLE_NAME variable.
2004-02-03 15:32:20 +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
12f28a4916 added some g_return_if_fail().
2004-01-31  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs.c: added some g_return_if_fail().
2004-01-31 19:00:26 +00:00
Michael Natterer
6f1680ab1c use gboolean instead of gint for "alpha_dither" and "remove_dups" in all
2004-01-31  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-convert.[ch]: use gboolean instead of gint
	for "alpha_dither" and "remove_dups" in all public and private
	functions. Properly prototyped private functions. Minor cleanup.

	* app/gui/convert-dialog.c: pass FALSE instead of 0.

	* tools/pdbgen/pdb/convert.pdb: ditto. Also cleaned up a bit: use
	generated checks and documentation for enums, removed duplicate
	check for enum range (spotted by Kevin Cozens).

	* app/pdb/convert_cmds.c
	* libgimp/gimpconvert_pdb.c: regenerated.
2004-01-31 16:23:25 +00:00
Simon Budig
645a1ab652 Store the zoom factor as float, not as a ratio.
2004-01-29  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell.[ch]: Store the zoom factor as
	float, not as a ratio.

	* app/display/gimpdisplayshell-scale.[ch]: change the API to
	expose the Float instead a weirdly encoded integer. Implement
	functions to get a ratio from the scale factor. Implement a set
	as presets as discussed on the mailinglist. Changed Zoom->Other
	dialog to enable entering a float.

	* app/display/gimpdisplayshell-title.c
	* app/display/gimpnavigationview.c
	* app/gui/image-menu.c
	* app/gui/info-window.c
	* app/tools/gimpmagnifytool.c: changed accordingly.

	* app/core/gimp.[ch]
	* app/display/gimpdisplay.[ch]
	* app/gui/gui-vtable.c
	* app/widgets/widgets-enums.h: Made the various display-creating
	functions accept a float for the scale. Introduce a new
	GimpZoomType: GIMP_ZOOM_TO. Generally adjust the API to use
	floats instead of weird integers.

	* app/core/gimp-edit.c
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/file/file-open.c
	* app/gui/image-commands.c
	* app/gui/view-commands.[ch]
	* tools/pdbgen/pdb/display.pdb
	* app/widgets/gimpimageview.c
	* app/widgets/gimptoolbox-dnd.c: changed accordingly

	* app/pdb/display_cmds.c: regenerated
2004-01-29 22:22:29 +00:00
Michael Natterer
894cf70dd5 Added infrastructure to make sure we don't write to the global brush,
2004-01-28  Michael Natterer  <mitch@gimp.org>

	Added infrastructure to make sure we don't write to the global
	brush, pattern etc. directories. Needed to make this configurable
	because we can't rely on the global directories being read-only,
	having certain names or being otherwise detectable at runtime in a
	sane way. Fixes bug #132214.

	* libgimpbase/gimpdatafiles.[ch]: added "const gchar *dirname" to
	the GimpDataFileData struct so callbacks don't need to call
	g_path_get_dirname() for each file.

	* libgimpwidgets/gimpfileentry.c: made it work with non UTF-8
	encoded filenames.

	* libgimpwidgets/gimppatheditor.[ch]: ditto. Added GUI and API for
	setting/getting a second "writable_path". The widget makes sure
	that the writable_path is always a subset of the path.

	* app/config/gimpconfig-utils.[ch]: added new function
	gimp_config_build_writable_path().

	* app/config/gimpcoreconfig.[ch]: added separate properties for
	the writable brush, pattern, gradient, palette and font paths.

	* app/config/gimprc-blurbs.h: added (still empty) blurbs for the
	new properties.

	* app/core/gimpdata.[ch] (gimp_data_set_filename): added parameter
	"gboolean writable". Set data->writable to FALSE by default. If
	"writable" is passed as TRUE, still check if we can write to the
	file before setting data->writable to TRUE.

	(gimp_data_create_filename): changed "data_path" parameter to
	"dest_dir" and assume dest_dir is writable.

	(gimp_data_duplicate): set data->dirty to TRUE to make sure
	duplicated things will be saved.

	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpgradient.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c: don't set the data's filename and don't
	touch data->dirty in the _load() functions because that's done by
	the data factory now. Don't touch data->dirty in the _duplicate()
	functions because that's done by gimp_data_duplicate() itself now.

	* app/core/gimpdatafactory.[ch] (gimp_data_factory_new): added
	"writable_property_name" and remember it.
	Added utility function gimp_data_factory_get_save_dir() which
	determines the directory to save new datas to.
	Added public function gimp_data_factory_data_save_single() which
	saves a single data object.
	Make sure new things get saved to the first writable directory
	as specified in preferences.

	* app/core/gimp.c (gimp_real_initialize): pass the writable_paths'
	property names to gimp_data_factory_new().

	* app/widgets/gimpdataeditor.c (gimp_data_editor_save_dirty): use
	gimp_data_factory_data_save_single() instead of implementing
	saving here.

	* app/widgets/gimppropwidgets.[ch] (gimp_prop_path_editor_new):
	added "const gchar *writable_property_name" parameter (can be
	NULL).

	Added the needed callbacks to handle the writable_path and made
	the path_editor and file_entry code aware of non UTF-8 filename
	encodings. Some general cleanup.

	* app/gui/preferences-dialog.c: changed accordingly.
2004-01-28 21:53:50 +00:00
Michael Natterer
c07bbf8200 updated help IDs for new/reordered pages in the prefs dialog.
2004-01-28  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimphelp-ids.h: updated help IDs for new/reordered
	pages in the prefs dialog.

	* app/gui/preferences-dialog.c (prefs_dialog_new): changed
	accordingly.
2004-01-28 11:06:34 +00:00
Michael Natterer
402c5533cf use the new GIMP_STOCK_LAYER_MASK icon for "Add Layer Mask" dialog.
2004-01-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/layers-commands.c (layers_add_mask_query): use the
	new GIMP_STOCK_LAYER_MASK icon for "Add Layer Mask" dialog.
2004-01-27 18:39:46 +00:00
Michael Natterer
1d71eaa1c9 app/gui/image-menu.c (image_menu_entries) use the new
2004-01-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/image-menu.c (image_menu_entries)
	* app/gui/layers-menu.c (layers_menu_entries): use the new
	GIMP_STOCK_LAYER_MASK icons for "Add Layer Mask".
2004-01-27 15:03:27 +00:00
Michael Natterer
d0c75eb537 themes/Default/images/Makefile.am
2004-01-27  Michael Natterer  <mitch@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-layer-mask-16.png
	* themes/Default/images/stock-layer-mask-24.png
	* themes/Default/images/stock-layer-mask-32.png
	* themes/Default/images/stock-layer-mask-48.png
	* themes/Default/images/stock-selection-border-16.png
	* libgimpwidgets/gimpstock.[ch]: added forgotten layer mask and
	new "border selection" icons from Jimmac (-32 and -48 ones to be
	updated, they are currently copies of the channel icons).

	* app/core/gimplayermask.c (gimp_layer_mask_class_init)
	* app/gui/image-menu.c (image_menu_entries): use them.
2004-01-27 02:51:19 +00:00
Michael Natterer
4801e3ac44 use GIMP_STOCK_FLOATING_SELECTION for "Select->Float".
2004-01-26  Michael Natterer  <mitch@gimp.org>

	* app/gui/image-menu.c (image_menu_entries): use
	GIMP_STOCK_FLOATING_SELECTION for "Select->Float".

	(image_menu_update): set "Layer->Merge Down" insensitive for the
	bottom layer.
2004-01-26 22:44:59 +00:00
Sven Neumann
8915bbadfc don't update the fields here...
2004-01-25  Sven Neumann  <sven@gimp.org>

	* app/gui/info-window.c (info_window_create): don't update the fields
	here...

	* app/gui/view-commands.c (view_info_window_cmd_callback): ... but
	here when the info window is connected to the display shell. Patch
	from Shlomi Fish; fixes bug #132329.

	* app/gui/info-window.c (info_window_update_extended): fixed update
	of info window in automatic mode. Bug #118084, patch by Shlomi Fish.

	* autogen.sh: check for automake-1.8 also.

	* HACKING: note that automake-1.8 should work as well.
2004-01-25 13:53:23 +00:00
Michael Natterer
57911bbcba app/app_procs.c app/errors.c app/main.c app/config/gimpconfigwriter.c
2004-01-23  Michael Natterer  <mitch@gimp.org>

	* app/app_procs.c
	* app/errors.c
	* app/main.c
	* app/config/gimpconfigwriter.c
	* app/core/gimpdata.c
	* app/core/gimpdatafactory.c
	* app/gui/user-install-dialog.c
	* app/plug-in/plug-ins.c
	* app/vectors/gimpvectors-import.c: some more gimp_filename_to_utf8().

	* libgimp/gimp.c
	* libgimpmodule/gimpmodule.c
	* libgimpmodule/gimpmoduledb.c: use it here, too, now that is in
	libgimpbase.
2004-01-23 17:24:44 +00:00
Michael Natterer
f3c91918de added "gboolean use_default_values" to GimpItem::stroke().
2004-01-22  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added "gboolean use_default_values"
	to GimpItem::stroke().

	* app/core/gimpselection.c: changed accordingly.

	* app/core/gimpchannel.c
	* app/vectors/gimpvectors.c: if use_default_values is TRUE, don't
	use the GimpPaintOptions passed in the GimpPaintInfo, but create a
	new one.

	* app/gui/stroke-dialog.c: pass FALSE so the values as set in the
	tool options are used.

	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/paths.pdb: pass TRUE so tool options settings
	don't affect PDB stroke calls. Fixes part 2 of bug #132145.

	* app/pdb/edit_cmds.c
	* app/pdb/paths_cmds.c: regenerated.
2004-01-22 00:16:49 +00:00
Simon Budig
f1348dc2e6 replaced the indexed palette in the default "Layers, Channels, Paths"-Dock
2004-01-22  Simon Budig  <simon@gimp.org>

	* app/gui/dialogs-commands.c: replaced the indexed palette in
	the default "Layers, Channels, Paths"-Dock (as created by the
	menu in the toolbox) with the Undo History, since the indexed
	palette is pretty useless most of the time and the new setup
	at least matches the upper half of the dockable that comes up
	after a new user starts the Gimp the first time.
2004-01-21 23:48:38 +00:00
Michael Natterer
edff0480e1 show the image menu in newly created layers, channels & paths docks.
2004-01-21  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs-commands.c: show the image menu in newly created
	layers, channels & paths docks.
2004-01-21 22:35:07 +00:00
Tor Lillqvist
d9b2478cca Fix undefined behaviour. Fixes crash in bringing up the Preferences dialog
2004-01-21  Tor Lillqvist  <tml@iki.fi>

	* app/gui/themes.c (themes_list_themes_foreach): Fix undefined
	behaviour. Fixes crash in bringing up the Preferences dialog when
	compiled with Sun's compiler.
2004-01-21 12:03:26 +00:00
Michael Natterer
73d258eb3d renamed info_dialog_popdown() to info_dialog_hide() and
2004-01-21  Michael Natterer  <mitch@gimp.org>

	* app/gui/info-dialog.[ch]: renamed info_dialog_popdown() to
	info_dialog_hide() and info_dialog_popup() to info_dialog_present().
	Added info_dialog_show() which just shows the dialog without
	calling gtk_window_present().

	* app/gui/info-window.c
	* app/gui/view-commands.c
	* app/tools/gimptransformtool.c: changed accordingly.

	* app/tools/gimpcroptool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c: use info_dialog_show() so the dialog
	doesn't grab the focus away from the canvas. Fixes bug #132041.
2004-01-21 11:16:57 +00:00
Michael Natterer
cf13615514 app/gui/file-open-menu.c app/gui/file-save-menu.c app/gui/image-menu.c
2004-01-20  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/image-menu.c
	* app/gui/menus.c
	* app/gui/plug-in-menus.c: when dynamically creating menu entries,
	pass static_entry == FALSE to gimp_item_factory_create_item() so a
	*copy* of the the help_id is attached to the menu item.
	Fixes help for plug-in menu entries.
2004-01-20 02:37:28 +00:00
Tor Lillqvist
c20541524f Fix gccism.
2004-01-19  Tor Lillqvist  <tml@iki.fi>

	* app/gui/about-dialog.c (decorate_text): Fix gccism.
2004-01-19 20:38:23 +00:00
Sven Neumann
6d506d51bb include "libgimpbase/gimpbase.h" where needed; removed now unnecessary
2004-01-19  Sven Neumann  <sven@gimp.org>

	* app/*/*.c: include "libgimpbase/gimpbase.h" where needed; removed
	now unnecessary inclusions of "file/file-utils.h".
2004-01-19 01:54:11 +00:00
Sven Neumann
a70698c4d9 removed file_utils_filename_to_utf8() ...
2004-01-19  Sven Neumann  <sven@gimp.org>

	* app/file/file-utils.[ch]: removed file_utils_filename_to_utf8() ...

	* libgimpbase/gimputils.[ch]: ... and added it here as
	gimp_filename_to_utf8(). Added some docs that promise less than
	the current implementation holds so that we can change the
	implementation later.

	* app/*/*.c: use gimp_filename_to_utf8() where
	file_utils_filenames_to_utf8() has been used before.

	* libgimpbase/gimpbase.def: changed accordingly.

	* configure.in: reset GIMP_INTERFACE_AGE.
2004-01-19 01:08:43 +00:00
Michael Natterer
f9cb4af74e when scaling an indexed image/layer, add a label telling the user that
2004-01-18  Michael Natterer  <mitch@gimp.org>

	* app/gui/resize-dialog.c: when scaling an indexed image/layer,
	add a label telling the user that indexed layers are always scaled
	without interpolation. Can't simply make the option menu
	insensitive because channels and layer masks are still scaled with
	the chosen interpolation type. Fixes bug #131779.
2004-01-18 22:50:24 +00:00
Michael Natterer
d528848f97 in the spirit of the fix for bug #131721 below, don't try to figure
2004-01-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.c (gimp_image_add_layer,remove_layer): in the
	spirit of the fix for bug #131721 below, don't try to figure
	manually if "alpha_changed" needs to be emitted but simply compare
	the old and new values of gimp_image_has_alpha().

	* app/gui/preferences-dialog.c (prefs_dialog_new): follow
	"foo-window-type" -> "foo-window-hint" change.
2004-01-18 13:38:24 +00:00
Simon Budig
b18e38c714 fixed typo.
2004-01-18  Simon Budig  <simon@gimp.org>

        * app/gui/about-dialog.c: fixed typo.
2004-01-18 02:25:39 +00:00
Simon Budig
8cdcee9626 make sure we always properly use the size of the logo image. Place the
2004-01-18  Simon Budig  <simon@gimp.org>

	* app/gui/about-dialog.c: make sure we always properly use
	the size of the logo image. Place the text at the bottom
	of the image when the size changes (position of the version
	string needs to be adjusted manually still...).

	* data/images/gimp_logo.png: slightly tweaked.

	* data/images/gimp1_0_logo.png: added for historical reasons.
2004-01-18 01:29:37 +00:00
Sven Neumann
15d4c9f4e6 redone to make it work again.
2004-01-18  Sven Neumann  <sven@gimp.org>

	* app/gui/file-open-dialog.c (file_open_create_thumbnail): redone
	to make it work again.

	* libgimpthumb/gimpthumbnail.c (gimp_thumbnail_load_thumb): fixed
	stupid mistake that caused thumbnails not to load under certain
	circumstances.
2004-01-18 00:54:53 +00:00
Sven Neumann
ddbc090847 fixed typo (bug #131670).
2004-01-16  Sven Neumann  <sven@gimp.org>

	* app/gui/menus.c (menus_init): fixed typo (bug #131670).
2004-01-16 11:40:10 +00:00
Michael Natterer
b6683376af converted tabs to spaces.
2004-01-16  Michael Natterer  <mitch@gimp.org>

	* app/gui/edit-commands.[ch]: converted tabs to spaces.

	(cut,copy_named_buffer_callback): unref the buffer after adding it
	to gimp->named_buffers. Seems we leaked all named buffers...

	Removed code duplication I have just introduced:

	* app/gui/edit-commands.[ch] removed
	edit_paste_into_cmd_callback(). Instead, pass the "paste_into"
	boolean as "guint action" to gimp_edit_paste_cmd_callback().

	* app/gui/image-menu.c: changed accordingly.

	* app/widgets/gimpbufferview.c: added utility function
	gimp_buffer_view_paste() and call it from the paste and paste_into
	callbacks.
2004-01-16 10:06:19 +00:00
Pedro Gimeno
465e4372f0 Removed the code that disables save formats conditionally, making all of
2004-01-15  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/gui/file-save-menu.c (file_save_menu_update): Removed the
	code that disables save formats conditionally, making all of
	them available. Fixes bug #110610.
2004-01-15 21:14:39 +00:00
Michael Natterer
0af39061b6 Fixed bug #78732 (don't paste off screen):
2004-01-15  Michael Natterer  <mitch@gimp.org>

	Fixed bug #78732 (don't paste off screen):

	* app/display/gimpdisplayshell-transform.[ch]: added new function
	gimp_display_shell_untransform_viewport() which returns the
	visible rectangle of the image in image coordinates.

	* app/core/gimp-edit.[ch] (gimp_edit_paste): added viewport
	parameters and changed positioning of the pasted layer as follows:

	- if there is a selection, center on the selection (just as before).
	- if there is no viewport, center on the active drawable.
	- if the viewport intersects with the active drawable, center
	  on the intersection.
	- if the viewport does *not* intersect with the active drawable,
	  center on the active drawable (off-screen, but better than pasting
	  something that will be invisible due to floating selection clipping).
	- if there is no active drawable, center on the viewport.
	- if there is no active drawable and no viewport, center on the image.

	* app/widgets/gimpbufferview.c (gimp_buffer_view_paste_clicked)
	(gimp_buffer_view_paste_into_clicked)
	* app/display/gimpdisplayshell-dnd.c (gimp_display_shell_drop_buffer)
	* app/gui/edit-commands.c (edit_paste_cmd_callback)
	(edit_paste_into_cmd_callback): ask the shell for the viewport
	and pass it to gimp_edit_paste().

	* app/display/gimpdisplayshell-dnd.c
	(gimp_display_shell_drop_drawable): center the created layer on
	the viewport.

	* app/tools/gimpmovetool.c (gimp_move_tool_button_release): use
	gimp_display_shell_untransform_viewport() (its code was taken from
	here).

	* tools/pdbgen/pdb/edit.pdb: pass "no viewport" to gimp_edit_paste().

	* app/pdb/edit_cmds.c: regenerated.
2004-01-15 14:36:43 +00:00
Tor Lillqvist
18485018b3 Add new function file_utils_filename_to_utf8(), which is to be used when
2004-01-14  Tor Lillqvist  <tml@iki.fi>

	* app/file/file-utils.[ch]: Add new function
	file_utils_filename_to_utf8(), which is to be used when converting
	file names (which are kept in the on-disk encoding) to UTF-8 for
	passing to GTK, or to g_print() etc.

	* app/*/*.c: Call file_utils_filename_to_utf8(). Should fix most
	of the warnings generated by non-UTF8 pathnames. See #130118.

	* libgimpbase/gimpenv.b: Document that gimp_directory() etc return
	strings in the on-disk encoding.

	* libgimpmodule/gimpmodule.c: Convert filenames to UTF-8 (using
	g_filename_to_utf8()) before passing to g_print().
2004-01-14 02:03:37 +00:00
Simon Budig
6c4deef6b0 Fixed small refresh issue.
2004-01-14  Simon Budig  <simon@gimp.org>

	* app/gui/about-dialog.c: Fixed small refresh issue.
2004-01-14 00:04:46 +00:00
Simon Budig
c48c937042 New image for the about dialog by Jakub Steiner.
2004-01-13  Simon Budig  <simon@gimp.org>

	* data/images/gimp_logo.png: New image for the about dialog by
	Jakub Steiner.

	* app/gui/about-dialog.c: Adjusted to new image. Also could not
	resist to add a fancy effect...

	* data/images/gimp1_2_logo.png: Saved the image from 1.2.
2004-01-13 23:19:05 +00:00
Michael Natterer
3bee156b6e Allow invoking the text tool by double clicking a text layer in the layers
2004-01-13  Michael Natterer  <mitch@gimp.org>

	Allow invoking the text tool by double clicking a text layer in
	the layers dialog, just like the path tool is invoked when double
	clicking a path.

	* app/tools/gimptexttool.[ch]: added empty
	gimp_text_tool_set_layer() stub. Sven, your turn...

	* app/gui/layers-commands.[ch]: added layers_text_tool() which
	invokes the text tool on text layers and falls back to
	layers_edit_layer_query() otherwise.
	Added layers_text_tool_cmd_callback() for the layers menu.

	* app/gui/layers-menu.c: added "Text Tool" menu item and hide
	it for layers which are no text layers.

	* app/gui/dialogs-constructors.c (dialogs_layer_list_view_new):
	use layers_text_tool() as "activate" function.
2004-01-13 19:08:16 +00:00
Sven Neumann
9a2173a432 only call bind_textdomain_codeset() when it is available. Spotted by
2004-01-12  Sven Neumann  <sven@gimp.org>

	* app/gui/plug-in-menus.c (plug_in_menus_init): only call
	bind_textdomain_codeset() when it is available. Spotted by
	Reinhard Geissler (bug #131215).
2004-01-12 11:33:28 +00:00
Sven Neumann
cbdb6947af call the callback with the selected image which is not necessarily the
2004-01-12  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpmenu.c (gimp_image_menu_new): call the callback with
	the selected image which is not necessarily the requested one
	(fixes bug #92586).
	Also changed all menu constructors to always call the registered
	callback even when the value is -1 because the menu is empty.

	* app/gui/plug-in-commands.c (plug_in_run_cmd_callback): run the
	procedure even if there's no active GIMP display. The display and
	screen is then taken from the current cursor position.

	* app/gui/gui-vtable.c (gui_get_display_name): don't call
	gimp_display_get_by_ID() unless gdisp_ID is > 0.
2004-01-12 11:00:45 +00:00
Sven Neumann
8c32fa9b6d removed the size parameter and do nothing but invalidating the preview.
2004-01-10  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagefile.[ch] (gimp_imagefile_update): removed the
	size parameter and do nothing but invalidating the preview.

	* app/gui/file-open-dialog.c
	* app/widgets/gimpdocumentview.c: changed accordingly.

	* app/core/gimpdocumentlist.c (gimp_document_list_deserialize):
	no need for calling gimp_imagefile_update() from here.

	* tools/pdbgen/pdb/fileops.pdb
	* app/pdb/fileops_cmds.c (file_load_thumbnail): rewritten using the
	GimpThumbnail API.

	* app/core/gimp.c: cosmetics.
2004-01-10 23:55:28 +00:00
Michael Natterer
15cf8858e0 no need to check if the layer has an alpha channel because
2004-01-10  Michael Natterer  <mitch@gimp.org>

	* app/gui/layers-commands.c (layers_alpha_to_selection_cmd_callback):
	no need to check if the layer has an alpha channel because
	gimp_channel_select_alpha() handles layers without alpha fine: it
	selects everything that is opaque, which is the entire layer.

	* app/gui/image-menu.c (image_menu_update)
	* app/gui/layers-menu.c (layers_menu_update): don't make the
	"Alpha to Selection" items insensitive for layers without alpha.
2004-01-10 15:32:51 +00:00
Sven Neumann
9022cc3a4b don't free the filename too early.
2004-01-09  Sven Neumann  <sven@gimp.org>

	* app/gui/tips-dialog.c (tips_dialog_create): don't free the
	filename too early.
2004-01-09 22:10:04 +00:00
Michael Natterer
ed250afdae removed explicit newlines from all multi-line texts except where
2004-01-08  Michael Natterer  <mitch@gimp.org>

	* app/gui/user-install-dialog.c: removed explicit newlines from
	all multi-line texts except where neccessary to do paragraph
	breaks. Instead, configure the resp. GtkLabels to do automatic
	line wrapping. Tweaked layout slightly to look better with long
	one-line strings. Fixes bug #130916 and prevents similar bugs to
	occur in the future.
2004-01-08 21:39:13 +00:00
Michael Natterer
36c5fb0a25 app/gui/layers-menu.c app/gui/patterns-menu.c app/gui/tool-options-menu.c
2004-01-08  Michael Natterer  <mitch@gimp.org>

	* app/gui/layers-menu.c
	* app/gui/patterns-menu.c
	* app/gui/tool-options-menu.c
	* plug-ins/script-fu/scripts/asc2img.scm: added the last missing
	menu mnemonics. Sorry for the string change but it's IMHO better
	to un-fuzzy these 14 strings now than to carry them around during
	the whole 2.0.x cycle. Finally fixes bug #106991.

	* plug-ins/script-fu/scripts/asc2img.scm: changed "ASCII to Image
	Layer" to "ASCII to Layer". We never use the term "Image Layer".
2004-01-08 20:00:09 +00:00
Manish Singh
79177141c8 Add notes about menu path requirements for Load/Save handlers.
2004-01-08  Manish Singh  <yosh@gimp.org>

        * tools/pdbgen/fileops.pdb: Add notes about menu path requirements
        for Load/Save handlers.

        * plug-ins/common/png.c: Document the behavior here too.

        * app/gui/file-open-menu.c
        * app/gui/file-save-menu.c: Robustify against NULL menu_path.

        * app/pdb/fileops_cmds.c
        * libgimp/gimpfileops_pdb.c: Regenerated.
2004-01-08 19:34:07 +00:00
Henrik Brix Andersen
c2a1de9377 moved Default Image Grid to top level since it also applies to newly
2004-01-08 Henrik Brix Andersen <brix@gimp.org>

* app/gui/preferences-dialog.c (prefs_dialog_new): moved Default
Image Grid to top level since it also applies to newly loaded
images without a grid.
2004-01-08 12:29:12 +00:00
Simon Budig
6d33e7750a Changed the string that is intended to be translated to the translators
2004-01-07  Simon Budig  <simon@gimp.org>

	* app/gui/about-dialog.c: Changed the string that is intended
	to be translated to the translators names, to be the same as
	in Gnome. Sorry for the string change.
2004-01-06 23:09:43 +00:00
Michael Natterer
dec20d8214 Enabled skipping enum values for either the PDB or GType registration
2004-01-06  Michael Natterer  <mitch@gimp.org>

	Enabled skipping enum values for either the PDB or GType
	registration (don't always skip both targets):

	* tools/gimp-mkenums: skip enum values only if there is a literal
	"skip" (don't match "pdb-skip").

	* tools/pdbgen/enumgen.pl: skip only "pdb-skip" values, not "skip"
	ones.

	* app/base/base-enums.h
	* app/core/core-enums.h
	* app/paint/paint-enums.h
	* libgimpbase/gimpbaseenums.h: use the right "pdb-skip"/"skip"
	combination to skip enum values. Changed comments accordingly.

	Cleaned up the fill functions:

	* app/core/core-enums.[ch]: added GIMP_PATTERN_FILL enum value to
	the GimpFillType enum. Don't export GIMP_NO_FILL to the PDB
	because it's completely useless to export a NOP.

	* app/core/gimp-edit.c (gimp_edit_fill, gimp_edit_fill_internal):
	handle pattern fill requests.

	* app/core/gimpdrawable.[ch] (gimp_drawable_fill): added GimpPattern
	parameter and fill with it if it's non-NULL.

	(gimp_drawable_fill_by_type): handle pattern fill and pass the
	current pattern to gimp_drawable_fill().

	* app/text/gimptextlayer.c: changed accordingly.

	* app/gui/edit-commands.c
	* app/gui/image-menu.c: use gimp_edit_fill() instead of
	gimp_drawable_bucket_fill() for FG, BG and pattern filling.

	* libgimp/gimpcompat.h
	* plug-ins/script-fu/siod-wrapper.c: removed NO_IMAGE_FILL compat
	enum value. It should have never been exported to the PDB.

	* app/pdb/drawable_cmds.c
	* app/pdb/edit_cmds.c
	* libgimp/gimpenums.h
	* plug-ins/pygimp/gimpenums.py
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.
2004-01-06 14:02:08 +00:00
Sven Neumann
3451c82f4f added GIMP_UNDO_TEXT_LAYER to GimpUndoType enum.
2004-01-05  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch]: added GIMP_UNDO_TEXT_LAYER to
	GimpUndoType enum.

	* app/core/gimpimage-undo-push.[ch]: added new undo function
	gimp_image_undo_push_text_layer().

	* app/text/gimptextlayer.[ch]: renamed gimp_text_layer_render() to
	gimp_layer_text_layer_flush().
	Added new function gimp_text_layer_discard().

	* app/text/gimptextlayer-transform.c: changed accordingly.

	* app/gui/image-menu.c
	* app/gui/layers-commands.[ch]
	* app/gui/layers-menu.c: added menu entries that allow to discard
	the text information of a text layer (bug #118547).

	* app/widgets/gimppreviewrendererlayer.c
	(gimp_preview_renderer_layer_render): treat text layers without a
	text object like ordinary layers.

	* app/widgets/gimppreviewrenderer-utils.c: include gimplayer.h
	instead of gimptextlayer.h.
2004-01-05 00:28:12 +00:00
Simon Budig
e6b08da721 Made it possible to have multiple lines of translators in the about
2003-12-30  Simon Budig  <simon@gimp.org>

	* app/gui/about-dialog.c: Made it possible to have multiple
	lines of translators in the about dialog. Simply translate
	"<Translators: insert your names here, separated by newline>".

	Fixes bug #58507.
2003-12-30 20:10:36 +00:00
Simon Budig
50d7db9d75 Save the stroking type (libart / paint-tool) so that it can be remembered
2003-12-30  Simon Budig  <simon@gimp.org>

	* app/gui/stroke-dialog.c: Save the stroking type (libart /
	paint-tool) so that it can be remembered when the dialog
	gets opened a second time. Fixes Bug #128156.
2003-12-30 16:32:07 +00:00
Simon Budig
4343af4c10 reshuffle the authors array and restart the animation when the dialog gets
2003-12-29  Simon Budig  <simon@gimp.org>

	* app/gui/about-dialog.c: reshuffle the authors array and
	restart the animation when the dialog gets shown a second
	time. Also render the current version number to the image
	permanently.
2003-12-29 17:52:46 +00:00
Raphaël Quinet
a5c4c459fa Applied patch by David Gowers (neota@softhome.net) improving the mnemonics
2003-12-29  Raphaël Quinet  <quinet@gamers.org>

	* app/gui/palette-editor-menu.c: Applied patch by David Gowers
	(neota@softhome.net) improving the mnemonics of the palette editor
	commands 'New from FG/BG'.  Fixes bug #130121.
2003-12-29 13:09:01 +00:00
Simon Budig
3901945207 Redone to have a fancy graphical effect. Will be tweaked further.
2003-12-29  Simon Budig  <simon@gimp.org>

	* app/gui/about-dialog.c: Redone to have a fancy graphical
	effect. Will be tweaked further.
2003-12-29 02:57:07 +00:00
David Odin
0632251cff added a scrolled window in page 2, since the list of directories is too
* app/gui/user-install-dialog.c (user_install_dialog_run): added a
	scrolled window in page 2, since the list of directories is too long
	to fit in a 1024x768 screen.  The user install dialog should now fit
	into a 800x600 screen.  This should close #122211
2003-12-22 19:47:05 +00:00
Sven Neumann
3e1b93cce0 added gimp_xml_parser_parse_buffer().
2003-12-20  Sven Neumann  <sven@gimp.org>

	* app/config/gimpxmlparser.[ch]: added gimp_xml_parser_parse_buffer().

	* app/vectors/gimpvectors-export.[ch]: renamed gimp_vectors_export()
	to gimp_vectors_export_file() and added a stub called
	gimp_vectors_export_string().

	* app/vectors/gimpvectors-import.[ch]: renamed gimp_vectors_import()
	to gimp_vectors_import_file() and added gimp_vectors_import_buffer().

	* app/gui/vectors-commands.c
	* tools/pdbgen/pdb/paths.pdb: changed accordingly.

	* app/pdb/paths_cmds.c: regenerated.
2003-12-21 00:23:36 +00:00
Sven Neumann
ec056d57a8 applied patch from Shlomi Fish that fixes an obvious cut'n'paste bug in
2003-12-20  Sven Neumann  <sven@gimp.org>

	* app/gui/gradient-editor-commands.c
	(gradient_editor_replicate_response): applied patch from Shlomi Fish
	that fixes an obvious cut'n'paste bug in the code that replicates a
	gradient segment (bug #129738).
2003-12-20 17:49:50 +00:00
Manish Singh
a2bf099117 Makefile.am app/composite/Makefile.am comestics.
2003-12-12  Manish Singh  <yosh@gimp.org>

        * Makefile.am
        * app/composite/Makefile.am
        * themes/Default/images/Makefile.am: comestics.

        * app/gui/color-notebook.c (color_notebook_new): no need to cast to		G_OBJECT for g_signal_connect.

        * plug-ins/common/mkgen.pl
        * plug-ins/common/plugin-defs.pl: properly handle the libgimpoldpreview
        stuff.

        * plug-ins/common/Makefile.am: regenerated.

        * plug-ins/common/decompose.c: cbrt() is in C99, so check for that
        in addition to GNU libc.
2003-12-13 03:59:41 +00:00
Sven Neumann
31ff0cc36c remember the size of the color picker dialog.
2003-12-12  Sven Neumann  <sven@gimp.org>

	* app/gui/dialogs.c: remember the size of the color picker dialog.
2003-12-12 11:34:53 +00:00
Michael Natterer
1cc434fa6e Fixed memory management of layers and channels which were created using
2003-12-09  Michael Natterer  <mitch@gimp.org>

	Fixed memory management of layers and channels which were created
	using the PDB:

	* app/core/gimpitem.[ch]: added "gboolean floating" flag to
	GimpItem. Items are created with floating == TRUE. Added
	gimp_item_sink() which resets the floating flag and unrefs the
	item if it was TRUE.  Added gimp_item_is_floating() accessor.

	* app/core/gimpimage.c (gimp_image_add_layer,channel,vectors):
	g_object_ref()/gimp_item_sink() added items to take ownership of
	them.

	* app/core/gimplayer.c (gimp_layer_add_mask):
	g_object_ref()/gimp_item_sink() the mask.

	* app/gui/layers-commands.c
	* app/xcf/xcf-load.c: don't unref layer masks after adding them to
	the layer.

	* tools/pdbgen/pdb/drawable.pdb (drawable_delete):
	gimp_item_sink() the drawable if it's floating and fail if it's
	not. Fixes bug #128881.

	* tools/pdbgen/pdb/layer.pdb (layer_create_mask): fixed docs.

	* app/pdb/drawable_cmds.c
	* app/pdb/layer_cmds.c
	* libgimp/gimplayer_pdb.c: regenerated.
2003-12-09 18:59:35 +00:00
Michael Natterer
68fd1809bd return a more exact result.
2003-12-09  Michael Natterer  <mitch@gimp.org>

	* app/base/tile-manager.c (tile_manager_get_memsize): return a
	more exact result.

	* app/core/gimpimage-scale.[ch] (gimp_image_scale_check): estimate
	the new memsize by separating parts of the image that are constant
	from parts that will scale. Also take undo logic into account.
	Return the estimated new memsize since it's not trivial to
	calculate.

	* app/gui/image-commands.c (image_scale_callback): use the memsize
	returned by gimp_image_scale_check() for the warning message. Free
	allocated strings.
2003-12-09 12:56:22 +00:00
Michael Natterer
fc2f99c893 changed GimpImageScaleCheckType enum values to GIMP_IMAGE_SCALE_*.
2003-12-09  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.h: changed GimpImageScaleCheckType enum
	values to GIMP_IMAGE_SCALE_*.

	* app/core/gimpimage-scale.c (gimp_image_scale_check): return
	GIMP_IMAGE_SCALE_TOO_BIG only if we are scaling up.

	* app/gui/image-commands.c: changed accordingly. Whitespace and
	indentation cleanup.
2003-12-09 11:49:47 +00:00
Dave Neary
ca493e0d6c Added the GimpImageScaleCheckType enum and used it in
2003-12-08  Dave Neary  <bolsh@gimp.org>

        * app/core/core-enums.h:
        * app/core/gimpimage-scale.[ch]: Added the GimpImageScaleCheckType
        enum and used it in gimp_image_scale_check() which used to be
        gimp_image_check_scaling().

        * app/gui/image_commands.c: Used the above when checking
        scaling parameters to display a message if the image is too big
        or too small after scaling. Closes bug #21028.
2003-12-08 21:56:22 +00:00
Sven Neumann
d8903a2477 added libgimpthumb.
2003-12-08  Sven Neumann  <sven@gimp.org>

	* Makefile.am (SUBDIRS): added libgimpthumb.

	* libgimpthumb/gimpthumb-utils.c
	* libgimpthumb/gimpthumbnail.c: basic functionality is implemented
	and seems to be working.

	* app/Makefile.am: link the application against libgimpthumb.

	* app/core/core-types.h: include libgimpthumb/gimpthumb-types.h.

	* app/core/gimpimagefile.[ch]: removed thumbnail handling routines
	and use libgimpthumb instead. Fixes bug #127914.

	* app/gui/file-open-dialog.c
	* app/widgets/gimpdocumentview.c: changed accordingly.
2003-12-08 09:12:25 +00:00
Sven Neumann
f918e33e89 added mnemonics.
2003-12-05  Sven Neumann  <sven@gimp.org>

	* app/gui/resize-dialog.c: added mnemonics.
2003-12-04 23:32:13 +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
Michael Natterer
e0e8a34f31 added enum values GIMP_ADD_ALPHA_MASK_TRANSFER and
2003-11-26  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.[ch]: added enum values
	GIMP_ADD_ALPHA_MASK_TRANSFER and GIMP_UNDO_GROUP_LAYER_ADD_MASK.

	* app/core/gimplayer.c (gimp_layer_create_mask): applied patch
	from Pedro Gimeno which implements the new ADD_MASK type and
	added undo. Fixes bug #127930.

	* app/gui/layers-commands.c: push an undo group around layer mask
	creation & adding since the creation may change the layer now.

	* app/pdb/layer_cmds.c
	* libgimp/gimpenums.h
	* plug-ins/pygimp/gimpenums.py
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.
2003-11-26 15:48:50 +00:00
Sven Neumann
e65d666f94 remember the size of the levels tool dialog. Fixes bug #127896.
2003-11-25  Sven Neumann  <sven@gimp.org>

	* app/gui/dialogs.c (toplevel_entries): remember the size of the
	levels tool dialog. Fixes bug #127896.
2003-11-25 15:30:16 +00:00
Michael Natterer
964c83a82f Fixed intra-session position management for file dialogs and newly created
2003-11-24  Michael Natterer  <mitch@gimp.org>

	Fixed intra-session position management for file dialogs and newly
	created docks:

	* app/widgets/gimpdockable.c (gimp_dockable_detach)
	* app/gui/file-dialog-utils.c (file_dialog_new): don't call
	gtk_window_set_position() on session managed dialogs and docks.

	* app/widgets/gimpdialogfactory.c (gimp_dialog_factory_add_dialog):
	make sure new docks get GDK_HINT_USER_POS set so they remember
	their positions across hide/show.

	* app/widgets/gimpdock.c: removed unused disabled code.
2003-11-24 12:07:29 +00:00
Sven Neumann
722fb64dbd Fixed some selection editor problems (bug #127644):
2003-11-22  Sven Neumann  <sven@gimp.org>

	Fixed some selection editor problems (bug #127644):

	* plug-ins/sel2path/sel2path.c: use the given image_ID, ignore the
	drawable_ID. This plug-in doesn't operate on a drawable at all.

	* plug-ins/imagemap/imap_main.c: pass a valid image_ID to sel2path.

	* app/gui/vectors-commands.c: don't attempt to create a valid
	drawable_ID for the call to sel2path since it isn't used anyway.

	* app/core/gimpdrawable-stroke.c (gimp_drawable_stroke_boundary):
	just return when being called with an empty boundary.
2003-11-22 13:38:11 +00:00
Sven Neumann
fafc492a0e let the templates editor expand.
2003-11-22  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: let the templates editor expand.
2003-11-22 00:01:49 +00:00
Michael Natterer
32bc599dc3 forgot to declare gimp_color_display_stack_clone().
2003-11-21  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolordisplaystack.h: forgot to declare
	gimp_color_display_stack_clone().

	* app/display/gimpdisplayshell.[ch]: replaced the GList of
	GimpColorDisplays by a single GimpColorDisplayStack.

	* app/display/gimpdisplayshell-render.c
	(gimp_display_shell_render): changed accordingly.

	* app/display/gimpdisplayshell-filter.[ch]: reduced API to a
	single function, gimp_display_shell_filter_set(), which exchanges
	the whole filter stack. Idle update the display on
	GimpColorDisplayStack::update().

	* app/display/gimpdisplayshell-filter-dialog.[ch]: changed
	accordingly.  Return the created dialog instead of assigning
	shell->filters_dialog.

	* app/gui/view-commands.c (view_display_filters_cmd_callback): set
	shell->filters_dialog here and raise it it if already
	exists. Don't use the dialog factory to create it because it's a
	transient dialog for the display which does not need to be session
	managed.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: removed display filter dialog stuff.
2003-11-21 22:52:36 +00:00
Henrik Brix Andersen
2df60dacc2 app/widgets/gimphelp-ids.h changed "Window Manager" to "Window Management"
2003-11-21 Henrik Brix Andersen <brix@gimp.org>

* app/widgets/gimphelp-ids.h
* app/gui/preferences-dialog.c: changed "Window Manager" to
"Window Management" and "Decorations" to "Window Type Hints"

* themes/Default/images/preferences/window-manager.png: removed...

* themes/Default/images/preferences/Makefile.am
* themes/Default/images/preferences/window-management.png: ... and
added under a new name.
2003-11-21 18:39:52 +00:00
Henrik Brix Andersen
229d12121e app/gui/preferences-dialog.c Added Window Manager tab exposing the window
2003-11-20 Henrik Brix Andersen <brix@gimp.org>

* app/gui/preferences-dialog.c
* app/widgets/gimphelp-ids.h: Added Window Manager tab exposing
the window manager hint settings to the user, moved the
activate-on-focus setting to this tab as well.

* themes/Default/images/preferences/window-manager.png
* themes/Default/images/preferences/Makefile.am: added empty
placeholder for Window Manager preferences icon.
2003-11-20 23:02:54 +00:00
Sven Neumann
689c754e28 app/gui/info-dialog.c (info_dialog_new_extended) don't set the utility
2003-11-20  Sven Neumann  <sven@gimp.org>

	* app/gui/info-dialog.c (info_dialog_new_extended)
	* app/widgets/gimptooldialog.c (gimp_tool_dialog_new): don't set
	the utility window type hint on info and tool dialogs. These are
	not persistent utility windows. See bug #115092.
2003-11-20 21:41:36 +00:00
Sven Neumann
5a43e55c50 added GimpWindowTypeHint enum.
2003-11-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/widgets-enums.[ch]: added GimpWindowTypeHint enum.

	* app/widgets/gimpwidgets-utils.{ch]: added a utility function
	that translates GimpWindowTypeHint to GdkWindowTypeHint.

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: added two new gimprc options that
	allow to configure which window type hint to set on the toolbox
	and on dock windows.

	* app/widgets/gimpdock.[ch}: use the window type hint from gimprc.
	Introduced construct properties and got rid of gimp_dock_construct().

	* app/widgets/gimpimagedock.c
	* app/widgets/gimptoolbox.c: changed accordingly.

	* app/gui/preferences-dialog.c (prefs_dialog_new): let the Themes
	frame expand.
2003-11-20 20:36:55 +00:00
Sven Neumann
565aaa5271 app/config/gimpdisplayconfig.[ch] added a new gimprc option
2003-11-20  Sven Neumann  <sven@gimp.org>

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h: added a new gimprc option
	"activate-on-focus" that allows to configure GIMP to activate an
	image when the image window receives the focus. Useful for window
	managers using click-to-focus. Defaults to TRUE on OS_WIN32.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.c: implemented the new behaviour.
2003-11-20 17:13:02 +00:00
Sven Neumann
41553a8bb7 register a log handler for the "Gimp-Vectors" domain.
2003-11-19  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c (app_run): register a log handler for the
	"Gimp-Vectors" domain.

	* app/gui/stroke-dialog.c (stroke_dialog_new): attach the saved
	options to its parent, the user context, not to the gimp.
2003-11-19 00:48:52 +00:00
Sven Neumann
4f82e87d62 don't do lazy binding on GIMP modules. We can't recover from missing
2003-11-18  Sven Neumann  <sven@gimp.org>

	* libgimpmodule/gimpmodule.c (gimp_module_open): don't do lazy
	binding on GIMP modules. We can't recover from missing symbols
	later.

	* libgimpwidgets/gimpquerybox.[ch]: renamed "help_page" parameter
	to "help_id" and changed the docs accordingly.

	* libgimpwidgets/gimpcolordisplay.[ch]
	* libgimpwidgets/gimpcolorselector.[ch]: renamed the "help_page"
	struct members of GimpColorDisplay and GimpColorSelector to
	"help_id".

	* app/gui/color-notebook.c
	* app/widgets/gimpcoloreditor.c
	* libgimpwidgets/gimpcolorbutton.c
	* libgimpwidgets/gimpcolornotebook.c
	* libgimpwidgets/gimpcolorscales.c
	* libgimpwidgets/gimpcolorselect.c
	* modules/*.c: changed accordingly. Specify a help id instead of
	a HTML page.
2003-11-18 23:44:35 +00:00
Michael Natterer
56863fac49 support '|'-separated lists of dialog identifiers and raise any of them if
2003-11-18  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.[ch]
	(gimp_dialog_factory_dialog_raise): support '|'-separated lists of
	dialog identifiers and raise any of them if it is already open, or
	the first dialog in the list otherwise.

	* app/gui/dialogs-commands.c (dialogs_create_dockable_cmd_callback):
	removed the same functionality here.

	* app/gui/edit-commands.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimptextoptions.c
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimptoolbox-indicator-area.c: pass lists of dialog
	identifiers to gimp_dialog_factory_dialog_raise().
2003-11-18 12:28:15 +00:00
Michael Natterer
976816a5f4 app/gui/file-dialog-utils.[ch] app/gui/file-open-dialog.c
2003-11-17  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-dialog-utils.[ch]
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gradients-commands.c
	* app/gui/vectors-commands.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimptexteditor.c
	* libgimpwidgets/gimpfileselection.c: don't access the "ok_button"
	and "cancel_button" members of GtkFileSelection. Instead, connect
	to GtkDialog::response(). Feels better and reduces code which
	depends on the to-be-deprecated GtkFileSelection. Changed border
	widths to match the 6px border width of other GIMP dialogs.
	File selections in plug-ins will follow...
2003-11-17 18:29:59 +00:00
Sven Neumann
0c05ec2958 removed an unused variable and trailing whitespace.
2003-11-16  Sven Neumann  <sven@gimp.org>

	* app/gui/themes.c (themes_apply_theme): removed an unused
	variable and trailing whitespace.

	* app/widgets/gimppropwidgets.c (gimp_prop_adjustment_notify):
	fixed a cut'n'paste error and added a warning which would have
	caught it.

	* app/config/gimpbaseconfig.c
	* app/config/gimpcoreconfig.c
	* app/config/gimpguiconfig.c
	* app/config/gimppluginconfig.c: cosmetics.
2003-11-16 21:57:46 +00:00
Hans Breuer
b23682bf8e still unacceptable patched to compile without FT2, see bug #113681
2003-11-16  Hans Breuer  <hans@breuer.org>

	* app/text/*.c : still unacceptable patched to compile
	without FT2, see bug #113681

	* **makefile.msc : updated

	* app/config/gimpconfig-dump.c : include gimpwin32-io.h

	* app/plug-in/plug-ins.c : don't depend on g_print handling
	%s with NULL pointers, it doesn't anymore with glib cvs at
	least not on win32

	* app/widgets/gimppropwidgets.c
	  libgimpbase/gimputils.c
	  libgimpwidgets/gimpmemsizeentry.c :
	sorry about the mess, need to work-around a stupi not able
	to cast from guint64 to double

	* app/widgets/gimppropwidgets.c (gimp_prop_memsize_entry_new) :
	avoid 'overflow in floating-point constant arithmetic' by disabling
	an imho alays questionable g_return_val_if_fail() for _MSC_VER only

	* libgimpmodule/gimpmodule.def : sorted

	* libgimpwidgets/gimpfileselection.c : removed unused S_ISDIR
	definition

	* app/gui/themes.c : filenames in rc files need to be escaped
2003-11-16 21:20:14 +00:00
Sven Neumann
fd30d5c976 app/config/gimpbaseconfig.h use gint64 for all memsize properties.
2003-11-16  Sven Neumann  <sven@gimp.org>

	* app/config/gimpbaseconfig.h
	* app/config/gimpcoreconfig.h: use gint64 for all memsize properties.

	* app/base/tile-manager.[ch] (tile_manager_get_memsize): since
	tiles can be swapped out, a tilemanager can be larger than gsize
	(on 32bit platforms). Use a gint64 to avoid an overflow.

	* app/core/gimp.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpbuffer.c
	* app/core/gimpchannel.c
	* app/core/gimpcontainer.c
	* app/core/gimpcontext.c
	* app/core/gimpdata.c
	* app/core/gimpdatafactory.c
	* app/core/gimpdrawable.c
	* app/core/gimpgradient.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage-undo.[ch]
	* app/core/gimpimage.c
	* app/core/gimpitem.c
	* app/core/gimpitemundo.[ch]
	* app/core/gimplayer.c
	* app/core/gimplist.c
	* app/core/gimpobject.[ch]
	* app/core/gimppalette.c
	* app/core/gimpparasitelist.c
	* app/core/gimppattern.c
	* app/core/gimpundo.[ch]
	* app/core/gimpundostack.c
	* app/core/gimpviewable.c
	* app/text/gimptext.c
	* app/text/gimptextlayer.c
	* app/vectors/gimpstroke.c
	* app/vectors/gimpvectors.c: use gint64 for gimp_object_get_memsize()
	and all its implementations.

	* app/display/gimpdisplayshell-title.c
	* app/gui/info-window.c: changed accordingly.
2003-11-16 17:51:36 +00:00
Michael Natterer
799661194a app/gui/dialogs-constructors.c app/gui/images-commands.[ch] implemented
2003-11-16  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs-constructors.c
	* app/gui/images-commands.[ch]
	* app/widgets/gimpimageview.[ch]: implemented the "Raise Displays"
	button's functionality. Fixes bug #127079.
2003-11-16 12:07:03 +00:00
Michael Natterer
5221d4daa6 libgimpbase/Makefile.am libgimpbase/gimpbase-private.[ch] new files
2003-11-15  Michael Natterer  <mitch@gimp.org>

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbase-private.[ch]
	* libgimpbase/gimpunit.c: new files implementing GimpUnitVTable
	(formerly known as GimpWidgetsVTable). Now the unit functions
	finally live in the same library as their header declarations.

	* libgimpbase/gimpunit.h: removed comment about being a header for
	two different files.

	* libgimpwidgets/gimpwidgets-private.[ch]: removed
	GimpWidgetsVTable.

	* libgimpwidgets/gimpsizeentry.c
	* libgimpwidgets/gimpunitmenu.c
	* libgimpwidgets/gimpwidgets.c: use normal gimp_unit functions
	again.

	* libgimp/gimpui.c
	* app/gui/gui.c: removed GimpWidgetVTable stuff.

	* libgimp/Makefile.am
	* libgimp/gimpunitcache.[ch]: new files.

	* libgimp/gimpunit.c: removed (moved to gimpunitcache.c).

	* libgimp/gimp.c (gimp_main): initialize GimpUnitVTable using the
	gimp_unit_cache functions.

	* app/Makefile.am
	* app/units.[ch]: new files implementing GimpUnitVTable.

	* app/libgimp_glue.[ch]: removed.

	* app/app_procs.[ch]: made "the_gimp" a static variable. Call
	units_init().

	* app/main.c: changed accordingly.
2003-11-15 22:53:28 +00:00
Michael Natterer
74cbd80f17 new utility function which takes a filename relative to the theme's root
2003-11-15  Michael Natterer  <mitch@gimp.org>

	* app/gui/themes.c (themes_get_theme_file): new utility function
	which takes a filename relative to the theme's root directory and
	returns the absolute path to the file in the current theme. It
	falls back to the resp. path in the default theme if the given
	file is not present in the current theme.

	* app/gui/preferences-dialog.c (prefs_notebook_append_page): use it.
2003-11-15 17:53:18 +00:00
Sven Neumann
4f0c837f16 readded a toggle for "confirm-on-close" that seems to have been lost some
2003-11-15  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: readded a toggle for
	"confirm-on-close" that seems to have been lost some day.
2003-11-15 13:08:41 +00:00
Manish Singh
ee2bfb69b5 add gimp_int_option_menu_set_sensitive and
2003-11-14  Manish Singh  <yosh@gimp.org>

        * libgimpwidgets/gimpwidgets.[ch]: add
        gimp_int_option_menu_set_sensitive and gimp_int_radio_group_set_active,
        tweak docs.

        * app/gui/convert-dialog.c
        * app/gui/layers-commands.c
        * app/tools/gimpcolorbalancetool.c
        * app/tools/gimpcurvestool.c
        * app/tools/gimplevelstool.c
        * app/widgets/gimpcontainerpopup.c
        * app/widgets/gimphistogrameditor.c
        * app/widgets/gimppropwidgets.c
        * app/widgets/gimptemplateeditor.c
        * app/widgets/gimptexteditor.c: use them.
2003-11-14 23:17:38 +00:00
Manish Singh
178c225318 add gimp_int_option_menu_set_history as a wrapper for
2003-11-14  Manish Singh  <yosh@gimp.org>

        * libgimpwidgets/gimpwidgets.[ch]: add gimp_int_option_menu_set_history
        as a wrapper for gimp_option_menu_set_history.

        * app/gui/brush-select.c
        * app/gui/resize-dialog.c
        * app/tools/gimpcurvestool.c
        * app/widgets/gimppropwidgets.c
        * app/widgets/gimplayertreeview.c
        * app/widgets/gimpcolorframe.c
        * libgimpwidgets/gimpmemsizeentry.c
        * modules/cdisplay_colorblind.c: use the above.
2003-11-14 19:02:24 +00:00
Manish Singh
4961608004 implementedgimp_int_option_menu_new and gimp_int_radio_group_new, which
2003-11-14  Manish Singh  <yosh@gimp.org>

	* libgimpwidgets/gimpwidgets.[ch]: implementedgimp_int_option_menu_new
	and gimp_int_radio_group_new, which are the same as
	gimp_option_menu_new2 and gimp_radio_group_new2, but they take
	integers as values to map instead of gpointers, which avoids casts
	in pretty much all uses of it in the tree.

	* app/gui/image-commands.c
	* app/gui/offset-dialog.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpwidgets-constructors.c
	* libgimpwidgets/gimpmemsizeentry.c
	* modules/cdisplay_colorblind.c
	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/MapObject/mapobject_ui.c
	* plug-ins/common/AlienMap.c
	* plug-ins/common/AlienMap2.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/align_layers.c
	* plug-ins/common/blinds.c
	* plug-ins/common/borderaverage.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/deinterlace.c
	* plug-ins/common/edge.c
	* plug-ins/common/emboss.c
	* plug-ins/common/fractaltrace.c
	* plug-ins/common/gif.c
	* plug-ins/common/hot.c
	* plug-ins/common/iwarp.c
	* plug-ins/common/jigsaw.c
	* plug-ins/common/jpeg.c
	* plug-ins/common/lic.c
	* plug-ins/common/mail.c
	* plug-ins/common/max_rgb.c
	* plug-ins/common/mblur.c
	* plug-ins/common/mng.c
	* plug-ins/common/mosaic.c
	* plug-ins/common/nlfilt.c
	* plug-ins/common/papertile.c
	* plug-ins/common/pnm.c
	* plug-ins/common/ps.c
	* plug-ins/common/psp.c
	* plug-ins/common/ripple.c
	* plug-ins/common/shift.c
	* plug-ins/common/sinus.c
	* plug-ins/common/sparkle.c
	* plug-ins/common/struc.c
	* plug-ins/common/sunras.c
	* plug-ins/common/tiff.c
	* plug-ins/common/waves.c
	* plug-ins/common/wind.c
	* plug-ins/fits/fits.c
	* plug-ins/flame/flame.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gimpressionist/color.c
	* plug-ins/gimpressionist/orientmap.c
	* plug-ins/gimpressionist/placement.c
	* plug-ins/maze/maze_face.c
	* plug-ins/sgi/sgi.c: Use gimp_int_option_menu_new and
	gimp_int_radio_group_new.

	* plug-ins/common/CML_explorer.c: make function_graph_new take a
	gpointer *data instead of a gpointer data, and properly pass an
	int through it.

	* plug-ins/common/mng.c: mark menu strings for translation.

	* plug-ins/rcm/rcm.c: remove initialization for Success member
	in RcmParams, since it's gone now.
2003-11-14 18:05:39 +00:00
Michael Natterer
c6bd27d286 app/config/gimpconfig-utils.c use standard file error message strings.
2003-11-14  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-utils.c
	* app/gui/themes.c: use standard file error message
	strings. Removes two more translatable strings.
2003-11-14 17:08:51 +00:00
Sven Neumann
c678de97f7 use gtk_window_present(). Fixes bug #126941.
2003-11-14  Sven Neumann  <sven@gimp.org>

	* app/gui/info-dialog.c (info_dialog_popup): use gtk_window_present().
	Fixes bug #126941.
2003-11-14 15:38:42 +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
Sven Neumann
f98c0013f1 app/config/gimpscanner.c configured the scanner to use 64bit integers.
2003-11-14  Sven Neumann  <sven@gimp.org>

	* app/config/gimpscanner.c
	* app/config/gimpconfig-deserialize.c: configured the scanner to
	use 64bit integers. This means you must now access value.v_int64
	instead of value.v_int. Fortunately gimp_scanner_parse_int() hides
	this ugly detail from you.

	* app/config/gimpconfig-params.[ch]
	* app/config/gimpconfig-types.c: derive GimpMemsize from guint64
	now that support for 64bit integers is guaranteed by glib.

	* app/config/gimpbaseconfig.c
	* app/config/gimpcoreconfig.c
	* app/config/gimpguiconfig.[ch]
	* app/widgets/gimppropwidgets.c: changed accordingly.

	* app/gui/preferences-dialog.c: changed a label.
2003-11-14 13:41:16 +00:00
Sven Neumann
5ea47f728f take a guint64 parameter and handle values beyond a gigabyte.
2003-11-14  Sven Neumann  <sven@gimp.org>

	* libgimpbase/gimputils.[ch] (gimp_memsize_to_string): take a
	guint64 parameter and handle values beyond a gigabyte.

	* app/core/gimptemplate.[ch]: use a guint64 for the initial memory
	size and removed the gboolean that used to indicate a gulong
	overflow.

	* app/widgets/gimptemplateeditor.[ch]: changed accordingly.

	* app/gui/file-new-dialog.c: don't set the OK button insensitive
	when the initial memory size exceeds GULONG_MAX.

	* app/widgets/gimpsessioninfo.c (gimp_session_info_deserialize):
	replaced a misleading comment.
2003-11-14 12:05:13 +00:00
Michael Natterer
6838c48046 added number of layers and size in memory. Changed pixel and unit size
2003-11-13  Michael Natterer  <mitch@gimp.org>

	* app/gui/info-window.c: added number of layers and size in
	memory.  Changed pixel and unit size labels to "Pixel Dimensions"
	and "Print Size" to be consistent with the scale dialog.
	Fixes two issues of bug #86276.
2003-11-13 20:02:48 +00:00
Sven Neumann
d13cf0d10b app/gui/color-history.[ch] app/gui/gui.c moved the color history out of
2003-11-13  Sven Neumann  <sven@gimp.org>

	* app/gui/color-history.[ch]
	* app/gui/gui.c
	* app/gui/session.c: moved the color history out of the sessionrc
	into it's own little file called colorrc.
2003-11-13 15:25:38 +00:00
Sven Neumann
a843b2adfd app/app_procs.[ch] app/main.c app/core/gimp.[ch] app/gui/gui.c allow to
2003-11-13  Sven Neumann  <sven@gimp.org>

	* app/app_procs.[ch]
	* app/main.c
	* app/core/gimp.[ch]
	* app/gui/gui.c
	* app/gui/session.[ch]: allow to pass a session name on the
	command-line. This causes a different sessionrc to be used. This
	is a bit hackish but our power users will probably love it.
	Also removed the useless --restore-session command-line option.

	* docs/gimp-1.3.1.in: changed accordingly.

	* app/core/gimpmarshal.list: removed obsolete marshaller.

	* app/config/gimprc.c (gimp_rc_new): improved gtk-doc comment.
2003-11-13 14:14:20 +00:00
Sven Neumann
ff9cf41f9f remember the stroke settings in a less hackish way.
2003-11-13  Sven Neumann  <sven@gimp.org>

	* app/gui/stroke-dialog.c: remember the stroke settings in a less
	hackish way.
2003-11-13 12:56:24 +00:00
Sven Neumann
bff0e2a102 changed COLOR_HISTORY_SIZE to 12 to reduce the minimum size of the color
2003-11-12  Sven Neumann  <sven@gimp.org>

	* app/gui/color-history.[ch]: changed COLOR_HISTORY_SIZE to 12 to
	reduce the minimum size of the color selector dialog.

	* app/gui/color-notebook.c (color_notebook_new): changed the
	dialog setup to not depend on COLOR_HISTORY_SIZE being 16.
2003-11-12 14:36:50 +00:00
Michael Natterer
8706affa1d Use the correct GTK+ APIs for setting and changing the theme:
2003-11-12  Michael Natterer  <mitch@gimp.org>

	Use the correct GTK+ APIs for setting and changing the theme:

	* app/gui/themes.c (themes_apply_theme): don't call gtk_rc_parse()
	but write a new config file "~/.gimp-1.3/themerc" which includes
	both the theme's and the user's gtkrc files.

	(themes_init): use gtk_rc_add_default_file() to make themerc known
	to GTK+.

	(themes_theme_change_notify): don't fiddle with toplevel windows
	manually but simply call gtk_rc_reparse_all() after writing the
	new themerc.

	* libgimp/gimpui.c (gimp_ui_init): use gtk_rc_add_default_file()
	instead of gtk_rc_parse().

	* app/gui/preferences-dialog.c: cleaned up / beautified the theme
	selector. Added a "Reload Current Theme" button. Simplified
	GtkTreeView column inserting all over the place.

	(prefs_response): destroy the preferences dialog later so we don't
	crash when cancelling a theme change on "Cancel" (workaround for
	bug #126808).

	* app/gui/module-browser.c (module_browser_new): column inserting
	simplification.
2003-11-12 12:56:31 +00:00
Sven Neumann
dfe47821d3 added a default role used for color selectors not handled by
2003-11-12  Sven Neumann  <sven@gimp.org>

	* app/gui/color-notebook.c (color_notebook_new): added a default
	role used for color selectors not handled by GimpDialogFactory.
	Fixes bug #126783.
2003-11-12 12:17:35 +00:00
Michael Natterer
0ce22bfc51 split out function themes_apply_theme() from themes_init(). Connect to
2003-11-12  Michael Natterer  <mitch@gimp.org>

	* app/gui/themes.[ch]: split out function themes_apply_theme()
	from themes_init(). Connect to "notify::theme" of gimp->config and
	change the theme in the callback. Added themes_list_themes().
	Added "const gchar *theme_name" parameter to
	themes_get_theme_dir().

	* app/gui/gui-vtable.c (gui_get_theme_dir): changed accordingly.

	* app/gui/preferences-dialog.c (prefs_dialog_create): enabled
	theme selection on the "Interface" page. Still has many issues
	(like using a conceptually wrong method of theme changing ;-)
	but it won't get fixed if we cannot change themes on the fly...
2003-11-11 23:56:00 +00:00
Michael Natterer
f72b8b1e39 new function which does the same as gtk_dialog_run() except it does not
2003-11-11  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpdialog.[ch] (gimp_dialog_run): new function
	which does the same as gtk_dialog_run() except it does not make
	the dialog modal.

	* app/gui/resolution-calibrate-dialog.c
	* libgimp/gimpexport.c
	* plug-ins/*/*.c: use gimp_dialog_run() instead of gtk_dialog_run().

	* plug-ins/common/grid.c: set update_continuous to TRUE for
	the GimpColorButtons so this feature gets some testing.
2003-11-11 18:11:56 +00:00
Michael Natterer
e34358d8c3 added new API gimp_color_button_[get|set]_update() which configures the
2003-11-11  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolorbutton.[ch]: added new API
	gimp_color_button_[get|set]_update() which configures the button
	to emit "color_changed" continuously while the color in the color
	selection dialog is being changed. Fixes bug #90091.

	Renamed GimpColorButton struct member
	"GtkItemFactory *item_factory" to a /*< private >*/ member named
	"gpointer popup_menu". This is ugly but fixes bug #125115,

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.c
	* app/widgets/gimpcolorpanel.c: changed accordingly.

	* libgimpwidgets/gimpcolorbutton.c: use a GimpColorSelection
	with a handmade GimpDialog instead of GtkColorSelectionDialog.

	Enabled module loading for plug-ins so the color selection
	can show the color selectors which are implemented in modules:

	* libgimpwidgets/gimpwidgets-private.[ch]: added
	GimpEnsureModlesFunc which can be called by modules users.

	* app/gui/gui.c (gui_libs_init): pass NULL as
	GimpEnsureModulesFunc since the core loads the modules itself.

	* libgimp/gimpui.c (gimp_ui_init): pass new private function
	gimp_ensure_modules() which will load the modules upon first
	invocation.

	* libgimp/Makefile.am: link libgimpui against libgimpmodule.

	* libgimpwidgets/gimpcolorselection.c: call
	_gimp_ensure_modules_func() if it is non-NULL so color selector
	modules are available for plug-ins.

	* tools/pdbgen/pdb/gimprc.pdb: added new PDB wrapper
	gimp_get_module_load_inhibit().

	* app/pdb/gimprc_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpgimprc_pdb.[ch]: regenerated.
2003-11-11 17:55:45 +00:00
Sven Neumann
73570b0d35 libgimpwidgets/gimpstock.[ch] themes/Default/images/Makefile.am added new
2003-11-11  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-move-to-screen-[16|24].png: added
	new icon drawn by Jimmac.

	* app/gui/dialogs-menu.c
	* app/gui/image-menu.c: use the new icon.
2003-11-11 17:49:30 +00:00
Michael Natterer
78bf44ddb6 update shell->popup_factory only if this is the active display or we will
2003-11-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-appearance.c: update
	shell->popup_factory only if this is the active display or we will
	change another display's options when creating a new display.
	Fixes bug #126668.

	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/view-commands.c
	* app/tools/gimpimagemaptool.c: do the same here. Can't really
	happen in these places but it's more correct to have the check
	for the active display.

	* app/display/gimpdisplay.c (gimp_display_flush_whenever): get the
	active display from the user_context, not the current_context.

	* app/gui/image-menu.c (image_menu_update): removed unused code.
2003-11-11 13:09:50 +00:00
Sven Neumann
5728a40c69 removed non-functional colormap-cycling and simplified the selection code.
2003-11-11  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.[ch]: removed
	non-functional colormap-cycling and simplified the selection code.

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/gui/preferences-dialog.c: removed "colormap-cycling" from
	the preferences.
2003-11-11 12:43:52 +00:00
Michael Natterer
372c253a7f removed color_notebook_new() and renamed color_notebook_viewable_new() to
2003-11-10  Michael Natterer  <mitch@gimp.org>

	* app/gui/color-notebook.[ch]: removed color_notebook_new() and
	renamed color_notebook_viewable_new() to color_notebook_new().

	* app/gui/gradient-editor-commands.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimptoolbox-color-area.c: changed accordingly.
2003-11-10 17:55:44 +00:00
Michael Natterer
dc6422dc39 libgimpwidgets/Makefile.am libgimpwidgets/gimpwidgets.h
2003-11-10  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpcolorselection.[ch]: new widget derived from
	GtkVBox. Contains a GimpColorNotebook, GimpColorScales and new/old
	color areas as known from the app's color_notebook. Will soon be
	used to replace GtkColorSelection for plug-ins.

	* app/gui/color-notebook.c: removed most code and use a
	GimpColorSelection widget. Moved the "Reset" button to the
	action_area. Cleanup.
2003-11-10 16:38:37 +00:00
Michael Natterer
5da6a94bf7 #include "themes.h".
2003-11-10  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui-vtable.c: #include "themes.h".
2003-11-10 15:13:29 +00:00
Michael Natterer
cd218fef29 Made plug-ins honor the current GIMP theme:
2003-11-10  Michael Natterer  <mitch@gimp.org>

	Made plug-ins honor the current GIMP theme:

	* app/core/gimp.[ch]: added GimpGetThemeDirFunc to the GUI vtable.

	* app/gui/gui-vtable.c: implement it here.

	* tools/pdbgen/pdb/gimprc.pdb: added new PDB function
	gimp_get_theme_dir().

	* libgimp/gimpui.c: use the new function and fall back to
	gimp_gtkrc() if it returns NULL.

	* app/pdb/gimprc_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpgimprc_pdb.[ch]: regenerated.

	* app/gui/themes.c: unrelated cleanup.
2003-11-10 12:36:22 +00:00
Michael Natterer
429313f598 don't call tool_manager_initialize_active() with a NULL GimpDisplay. Fixes
2003-11-10  Michael Natterer  <mitch@gimp.org>

	* app/gui/tools-commands.c (tools_select_cmd_callback): don't
	call tool_manager_initialize_active() with a NULL GimpDisplay.
	Fixes bug #126462.
2003-11-10 11:33:35 +00:00
Michael Natterer
729ff4faac removed the "Move to Screen" hack.
2003-11-10  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: removed the
	"Move to Screen" hack.

	* app/gui/dialogs-commands.[ch]
	* app/gui/view-commands.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/image-menu.c: added proper menu items to the
	<Image>/View and the <Dialogs> menus so all image windows and
	docks can be sent to other screens. Hide the menu items when
	there is just one screen.

	* app/widgets/gimphelp-ids.h: new help IDd for the new menu items.
2003-11-10 00:24:33 +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
4d095af4db use gtk_widget_get_screen() instead of gdk_screen_get_default().
2003-11-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimptooloptionseditor.c
	(gimp_tool_options_editor_get_preview): use
	gtk_widget_get_screen() instead of gdk_screen_get_default().

	* app/widgets/gimpdatafactoryview.[ch]: added "GtkWidget *parent"
	to GimpDataEditFunc.

	* app/gui/dialogs-constructors.[ch]
	(dialogs_edit_brush,gradient,palette_func): use the passed parent
	widget for finding the right screen instead of
	gdk_screen_get_deafault().

	* app/gui/gui.c: minor cleanup.
2003-11-08 18:16:25 +00:00
Michael Natterer
c947f0b297 remember the "create_tearoff" passed to gimp_item_factory_new() in the
2003-11-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpitemfactory.[ch]: remember the "create_tearoff"
	passed to gimp_item_factory_new() in the GimpItemFactory struct
	and removed "create_tearoff" from the create_item functions
	(it makes no sense to pass this per create_item).

	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/image-menu.c
	* app/gui/menus.c
	* app/gui/plug-in-menus.c
	* app/gui/tool-options-menu.c: changed accordingly.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): create
	the menu bar without tearoff entries. It is very confusing to have
	both the popup menu (which is global and works on the active
	display) and the menu bar submenus (which are specific to this
	display) be torn off at the same time.
2003-11-08 18:07:33 +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
Michael Natterer
efd9a3e14a added "wm_name", "wm_class", "display_name" and "monitor_number" to the
2003-11-07  Michael Natterer  <mitch@gimp.org>

	* libgimpbase/gimpprotocol.[ch]: added "wm_name", "wm_class",
	"display_name" and "monitor_number" to the GPConfig message.
	Increased protocol version number.

	* libgimp/gimp.[ch] (gimp_config): read them from the GPConfig
	message and remember them.
	Added public accessors for the new config values.

	* libgimp/gimpui.c (gimp_ui_init): pass wm_name and wm_class to
	gtk_init() and export the display/screen to use to the
	environment.

	* app/core/gimp.[ch]: added vtable entries to get the values
	from the GUI.

	* app/gui/gui-vtable.c: implement the vtable entries.

	* app/plug-in/plug-in-run.c: fill in the GPConfig values using
	the new Gimp vtable functions.

	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell.c
	* app/gui/about-dialog.c
	* app/gui/channels-commands.c
	* app/gui/color-notebook.c
	* app/gui/convert-dialog.c
	* app/gui/file-dialog-utils.[ch]
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gradient-editor-commands.c
	* app/gui/gradients-commands.c
	* app/gui/grid-dialog.c
	* app/gui/image-commands.c
	* app/gui/info-dialog.[ch]
	* app/gui/info-window.c
	* app/gui/layers-commands.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/qmask-commands.c
	* app/gui/resize-dialog.c
	* app/gui/splash.c
	* app/gui/stroke-dialog.c
	* app/gui/templates-commands.c
	* app/gui/tips-dialog.c
	* app/gui/vectors-commands.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimpdock.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimptexteditor.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimpviewabledialog.[ch]
	* libgimpwidgets/gimpfileselection.c
	* libgimpwidgets/gimpquerybox.c
	* libgimpwidgets/gimpunitmenu.c
	* plug-ins/helpbrowser/dialog.c
	* plug-ins/ifscompose/ifscompose.c: replaced all calls to
	gtk_window_set_wmclass() by gtk_window_set_role() and all
	"const gchar *wmclass_name" parameters by "const gchar *role".
	Cleaned up the window role strings.
2003-11-07 17:29:02 +00:00
Simon Budig
31f7e362ac New function that appends a duplicate of the source vectors strokes to the
2003-11-07 Simon Budig  <simon@gimp.org>

	* app/vectors/gimpvectors.[ch]: New function that appends a
	duplicate of the source vectors strokes to the list of strokes
	of a target vectors object.

	* app/core/gimpimage-merge.[ch]
	* app/core/core-enums.h: Use this new function to merge
	the visible vectors in an Image. New Undo type for vectors merging.

	* app/core/core-enums.c: regenerated.

	* app/gui/vectors-menu.c
	* app/gui/vectors-commands.[ch]
	* app/widgets/gimphelp-ids.h: New Menu entry + callback to invoke
	the merge functionality. New Help ID for the menu entry.
2003-11-07 13:20:52 +00:00
Michael Natterer
f34d6e2d3f fixed typo in dialog title.
2003-11-07  Michael Natterer  <mitch@gimp.org>

	* app/gui/tool-options-commands.c
	(tool_options_rename_saved_cmd_callback): fixed typo in dialog title.
2003-11-07 11:45:26 +00:00
Michael Natterer
66c5dd8772 removed our own action_area API and use GtkDialog's one. Create all
2003-11-06  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpdialog.[ch]: removed our own action_area API
	and use GtkDialog's one. Create all dialogs without separator.
	Changed almost everything else too. Fixes bug #125143.

	* libgimpwidgets/gimpquerybox.c
	* libgimpwidgets/gimpunitmenu.c: changed accordingly.

	* libgimp/gimpexport.[ch]: ditto. Renamed enum GimpExportReturnType
	to GimpExportReturn.

	* libgimp/gimpcompat.h: added a #define for the old name.

	* themes/Default/gtkrc: increased action_area border to 6 pixels.

	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpprogress.c
	* app/gui/brush-select.c
	* app/gui/channels-commands.c
	* app/gui/color-notebook.c
	* app/gui/convert-dialog.c
	* app/gui/file-new-dialog.c
	* app/gui/font-select.c
	* app/gui/gradient-editor-commands.c
	* app/gui/gradient-select.c
	* app/gui/grid-dialog.c
	* app/gui/image-commands.c
	* app/gui/info-window.c
	* app/gui/layers-commands.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/gui/preferences-dialog.c
	* app/gui/qmask-commands.c
	* app/gui/resize-dialog.c
	* app/gui/resolution-calibrate-dialog.c
	* app/gui/stroke-dialog.c
	* app/gui/templates-commands.c
	* app/gui/user-install-dialog.c
	* app/gui/vectors-commands.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimptexteditor.c
	* app/widgets/gimptooldialog.[ch]
	* app/widgets/gimpviewabledialog.[ch]
	* app/widgets/gimpwidgets-utils.c: changed accordingly and increased
	the dialogs' outer borders to 6 pixels all over the place.

	* plug-ins/*/*.c: changed accordingly. The plug-ins may be
	arbitrarily broken, I tested none of them.
2003-11-06 15:27:05 +00:00
Sven Neumann
8e8c9511c7 etc/Makefile.am renamed to gtkrc.
2003-11-04  Sven Neumann  <sven@gimp.org>

	* etc/Makefile.am
	* etc/gtkrc_user: renamed to gtkrc.

	* gimp.spec.in: changed accordingly.

	* app/gui/user-install-dialog.c: don't install the sessionrc,
	templaterc and unitrc into the personal gimp directory. The files
	are created when GIMP is quit.

	* app/core/gimp-templates.c
	* app/core/gimp-units.c
	* app/gui/session.c: load sessionrc, templaterc and unitrc from
	the systemwide config directory. That way you can restore the
	default setup by removing the respective files from your personal
	gimp directory.
2003-11-04 21:58:39 +00:00
Michael Natterer
481d42d536 added static "the_dnd_gimp" variable and don't use the global "the_gimp"
2003-11-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdnd.[ch]: added static "the_dnd_gimp" variable
	and don't use the global "the_gimp" any more.
	Added gimp_dnd_init() to let the DND system know about the GUI's
	Gimp instance.

	* app/gui/gui.c (gui_init): call gimp_dnd_init().

	* app/app_procs.h: changed the #warning about including
	"app_procs.h" to an #error, like the other headers in app/ do.
2003-11-03 23:24:32 +00:00
Henrik Brix Andersen
75d3fb4d8e reverted Svens change (which increased vertical spacing) to make the
2003-11-03 Henrik Brix Andersen <brix@gimp.org>

* app/gui/preferences-dialog.c: reverted Svens change (which
increased vertical spacing) to make the spacing in the preferences
dialog consistent.
2003-11-03 09:04:41 +00:00
Sven Neumann
d0916b195f app/gui/dialogs-menu.c app/gui/image-menu.c added Histogram to the dialog
2003-11-02  Sven Neumann  <sven@gimp.org>

	* app/gui/dialogs-menu.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: added Histogram to the dialog menus.
2003-11-01 23:58:25 +00:00
Manish Singh
3b6318bff1 Only add FOO_DISABLE_DEPRECATED flags with GTK+ 2.2.x. Add
2003-11-01  Manish Singh  <yosh@gimp.org>

        * configure.in: Only add FOO_DISABLE_DEPRECATED flags with GTK+ 2.2.x.
        Add -DGDK_MULTIHEAD_SAFE.

        * app/config/test-config.c: use guints for strlen()

        * app/gui/gui.c
        * app/gui/info-window.c
        * app/gui/menus.c
        * app/widgets/gimpcontainerview.c
        * app/widgets/gimpcursor.c
        * app/widgets/gimpdevices.c
        * app/widgets/gimpdevicestatus.c
        * app/widgets/gimpimagedock.c
        * app/widgets/gimpitemfactory.c
        * app/widgets/gimpnavigationpreview.c
        * app/widgets/gimptoolbox.c
        * app/widgets/gimptooloptionseditor.c
        * app/widgets/gimpwidgets-utils.c
        * libgimp/gimpbrushmenu.c
        * libgimp/gimppatternmenu.c
        * libgimp/gimpui.c
        * plug-ins/FractalExplorer/Dialogs.c
        * plug-ins/FractalExplorer/FractalExplorer.c
        * plug-ins/common/screenshot.c
        * plug-ins/gimpressionist/gimpressionist.c: more GDK_MULTIHEAD_SAFE
        fixes.

        * plug-ins/common/wmf.c: #undef GDK_MULTIHEAD_SAFE.. this plug-in
        is going away anyway.

        * app/widgets/gimpcursor.h: add #warning about needing a proper
        multihead safe API.

        * app/gui/vectors-commands.c: s/clipoard/clipboard/
2003-11-01 20:06:01 +00:00
Sven Neumann
dcf50dc2a9 Replaced the histogram tool by a histogram dialog:
2003-11-01  Sven Neumann  <sven@gimp.org>

	Replaced the histogram tool by a histogram dialog:

	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/stock-tool-histogram-[16|22].png:
	removed here ...

	* themes/Default/images/stock-histogram-[16|22].png: ,,, and added
	under these new names.

	* libgimpwidgets/gimpstock.[ch]: register the icons as
	GIMP_STOCK_HISTOGRAM and removed the histogram tool stock icons.

	* app/base/gimphistogram.c: don't crash when uncalculated values
	are requested from a GimpHistogram. Allow to reset the histogram
	by calling gimp_histogram_calculate() with a NULL region.

	* app/widgets/gimphistogrambox.[ch]: renamed the GimpHistogramView
	struct member to "view".

	* app/tools/gimpthresholdtool.c: changed accordingly.

	* app/widgets/gimphistogramview.[ch] (gimp_histogram_view_events):
	return TRUE when events were handled.

	* app/tools/Makefile.am
	* app/tools/gimp-tools.c
	* app/tools/gimphistogramtool.[ch]: removed the histogram tool.

	* app/widgets/Makefile.am
	* app/widgets/gimphelp-ids.h
	* app/widgets/widgets-types.h
	* app/widgets/gimphistogrameditor.[ch]: added GimpHistogramEditor.
	Has some rough edges still...

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c
	* app/gui/image-menu.c: register the new dialog instead of the
	histogram tool.
2003-11-01 02:39:34 +00:00
Sven Neumann
7937639ed1 increased vertical spacing.
2003-10-29  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: increased vertical spacing.
2003-10-29 21:55:26 +00:00
Sven Neumann
c590c6aa15 app/display/gimpdisplayshell-callbacks.c
2003-10-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimphistogramview.c
	* app/widgets/gimpnavigationpreview.c
	* libgimpwidgets/gimpcolorselect.c
	* libgimpwidgets/gimpoffsetarea.c
	* libgimpwidgets/gimppickbutton.c: use multihead safe variants of
	the unsafe functions gdk_pointer_ungrab(), gdk_keyboard_ungrab()
	and gdk_device_get_core_pointer().

	* plug-ins/libgck/gck/gck.h
	* plug-ins/libgck/gck/gckcolor.c: made libgck multi-head safe.

	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/MapObject/mapobject_preview.c
	* plug-ins/MapObject/mapobject_ui.c: changed accordingly.

	* plug-ins/common/animationplay.c
	* plug-ins/common/curve_bend.c
	* plug-ins/gfig/gfig.c
	* plug-ins/imagemap/imap_preview.c: use multihead safe GDK API.
2003-10-29 20:57:21 +00:00
Michael Natterer
a8309a7d7e stop using the deprecated GtkTipsQuery widget for context help and
2003-10-27  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimphelpui.c: stop using the deprecated
	GtkTipsQuery widget for context help and implement the needed part
	of its functionality using a grab on a GtkInvisible. Should stop
	GIMP crashing with Gtk+ HEAD.

	* libgimpwidgets/gimphelpui.[ch] (gimp_context_help): requires
	a GtkWidget parameter now (finding the correct GdkScreen).

	* app/gui/help-commands.c (help_context_help_cmd_callback):
	changed accordingly.
2003-10-27 10:56:06 +00:00
Michael Natterer
09ae4b29cd resurrected the runtime check for the required Gtk+ version. Depend on
2003-10-26  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c (gui_libs_init): resurrected the runtime check for
	the required Gtk+ version. Depend on Gtk+ >= 2.2.2 and abort if
	the requirement is not met. This is mainly for catching packaging
	errors, as we already compile-time require Gtk+ 2.2.2.

	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c: removed #warnings and
	workarounds for bugs in Gtk+ < 2.2.2.

	* app/widgets/gimpcontainertreeview.c: replaced the #warning about
	the pending fix for bug #115871 by a #warning plus runtime check
	for Gtk+ >= 2.2.3. Did some general cleanups.
2003-10-26 20:25:34 +00:00
Henrik Brix Andersen
e047cd8b30 gimp/app/widgets/gimphelp-ids.h
2003-10-26 Henrik Brix Andersen <brix@gimp.org>

* gimp/app/widgets/gimphelp-ids.h
* gimp/app/gui/preferences-dialog.c:
- moved all session related settings to a new Session Management page
- moved Web Browser setting to Help System page
- changed Configure Input Devices to Configure Extended Input Devices

* gimp/themes/Default/images/preferences/Makefile.am
* gimp/themes/Default/images/preferences/session.png: re-added
session.png

* gimp/app/widgets/gimpdevices.h
* gimp/app/widgets/gimpdevices.c (gimp_devices_clear): function
added to be consistent with the rest of the session management
routines. This function needs to be filled in.

* gimp/app/widgets/gimptemplateeditor.c
* gimp/app/widgets/gimpgrideditor.c: fixed spacing between widgets
2003-10-26 14:01:33 +00:00
Simon Budig
332e344f94 Fixed/Added some UTF-8 encoded names. Please speak up if I did mess up
2003-10-26 Simon Budig  <simon@gimp.org>

	* tools/authorsgen/contributors: Fixed/Added some UTF-8 encoded
	names. Please speak up if I did mess up your name.

	* AUTHORS
	* app/gui/authors.h: regenerated.
2003-10-25 23:39:51 +00:00
Sven Neumann
1a246b695c added "ms" (Malay) now that all po files are there.
2003-10-25  Sven Neumann  <sven@gimp.org>

	* configure.in (ALL_LINUGUAS): added "ms" (Malay) now that all po
	files are there.

	(PANGOFT2_REQUIRED_VERSION) depend on PangoFT2 >= 1.2.2. There are
	a couple of bug-fixes that are needed to make the text tool work.
	Actually you should use at least version 1.2.4.

	(GTK_REQUIRED_VERSION): depend on GTK+ >= 2.2.2. Earlier versions
	had bugs that we don't want to work around any longer.

	* INSTALL: document this change.

	* app/gui/gui.c (gui_post_init): removed the GTK+ version check.

	* app/text/gimptext.[ch]: added properties for letter spacing and
	kerning for compatibility with future GIMP versions implementing
	these features.
2003-10-25 15:25:17 +00:00
Sven Neumann
03b90ade98 themes/Default/images/Makefile.am
2003-10-23  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-tools-[16|24].png
	* themes/Default/images/stock-device-status-24.png
	* themes/Default/images/stock-tool-options-24.png: new icons drawn
	by Jimmac.

	* libgimpwidgets/gimpstock.[ch]: register the new icons.

	* app/gui/dialogs-constructors.c
	* app/gui/dialogs-menu.c: use the new GIMP_STOCK_TOOLS icon.

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: add the Tools dialog entry here as well.

	* app/widgets/gimphelp-ids: s/TOOL_DIALOG/TOOLS_DIALOG/.
2003-10-23 13:04:44 +00:00
Michael Natterer
507b19bc91 properly align the toggle button columns by packing their containers
2003-10-23  Michael Natterer  <mitch@gimp.org>

	* app/gui/preferences-dialog.c (prefs_display_options_frame_add):
	properly align the toggle button columns by packing their
	containers expanding, removed ascii art, cleanup.
2003-10-23 11:39:33 +00:00
Henrik Brix Andersen
879d2c2864 changed PROP_SHOW_ACTIVE_LAYER to PROP_SHOW_LAYER_BOUNDARY to be
2003-10-23 Henrik Brix Andersen <brix@gimp.org>

* gimp/app/display/gimpdisplayoptions.[ch]: changed
PROP_SHOW_ACTIVE_LAYER to PROP_SHOW_LAYER_BOUNDARY to be
consistent with the user interface

* gimp/app/display/gimpdisplayshell-appearance.c
* gimp/app/display/gimpdisplayshell-callbacks.c
* gimp/app/gui/preferences-dialog.c
* gimp/app/gui/image-menu.c: changed accordingly
2003-10-23 07:33:16 +00:00
Dave Neary
ac6bd36f52 Add outstanding display options to preferences dialog.
2003-10-22  Dave Neary  <bolsh@gimp.org>

	* app/gui/preferences-dialog.c: Add outstanding display options to
	preferences dialog.
2003-10-22 20:32:13 +00:00
Sven Neumann
e3480536f3 app/display/Makefile.am new files that implement a GimpConfig object with
2003-10-22  Sven Neumann  <sven@gimp.org>

	* app/display/Makefile.am
	* app/display/gimpdisplayoptions.[ch]: new files that implement
	a GimpConfig object with GimpDisplayShell and GimpCanvas options.
	Actually two classes, one for the normal view, a derived one with
	different default values for fullscreen mode.

	* app/display/display-enums.[ch]: renamed GimpDisplayPadding enum
	to GimpCanvasPadding.

	* app/config/config-types.h: added the GimpDisplayOptions typedef.

	* app/config/gimprc-blurbs.h
	* app/config/gimpdisplayconfig.[ch]: replaced a bunch of properties
	with two instances of GimpDisplayOptions.

	* app/display/gimpdisplayshell.[ch]: replaced the
	GimpDisplayShellAppearance struct with GimpDisplayOptions.

	* app/display/gimpdisplayshell-appearance.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.[ch]
	* app/gui/image-menu.c: changed accordingly.

	* app/gui/preferences-dialog.c: added a convenience function that
	creates a view on a GimpDisplayOptions object. Not all values are
	configurable here yet.

	* docs/gimprc-1.3.5.in
	* etc/gimprc: regenerated to document the gimprc format changes.
2003-10-22 14:46:05 +00:00
Sven Neumann
3930693783 base/base.c (base_init) moved the message about possible debug messages to
2003-10-21  Sven Neumann  <sven@gimp.org>

	* base/base.c (base_init)
	* app/errors.c (gimp_errors_init): moved the message about
	possible debug messages to gimp_errors_init() so that it appears
	before any startup debug output.

	* app/app_procs.c (app_init): register a log handler for the
	GimpConfig log domain.

	* app/widgets/gimpwidgets-utils.c (gimp_message_box)
	* app/core/gimp.c (gimp_message): added an extra newline when
	sending messages to stderr. Don't output the full progname for
	messages; use a simple "GIMP" like the GUI message handler does.

	* app/gui/user-install-dialog.c: removed function copy_file()...

	* app/config/gimpconfig-utils.[ch]: ... and added it here as
	gimp_config_file_copy(). Also added utility function
	gimp_config_file_backup_on_error().

	* app/config/gimprc.c (gimp_rc_load): if the user gimprc can't be
	parsed, create a backup and if that succeeds unlink the broken one
	to cure the problem.

	* app/gui/session.c: create a backup if sessionrc can't be parsed.

	* config/gimpconfig-deserialize.c (gimp_config_deserialize_properties):
	don't set an error when token is G_TOKEN_NONE; it should already
	be set then.
2003-10-21 18:14:58 +00:00
Sven Neumann
fb448d8004 app/tools/gimpcropoptions.c revert back to "Current".
2003-10-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcropoptions.c
	* app/tools/gimpmoveoptions.c: revert back to "Current".

	* app/tools/tools-enums.[ch]: removed "Active" from the enum value
	descriptions; it was misleading.
2003-10-19 16:04:01 +00:00
Sven Neumann
5b84acdc81 removed the "Select Tab" menu and all the evil hacks that were needed to
2003-10-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdockbook.c: removed the "Select Tab" menu and
	all the evil hacks that were needed to make it work. Now that we
	have an extra dockable menu, the standard menu from GTK+ is good
	enough.

	* app/widgets/gimpdockable.c: added a tooltip to the close button
	and removed code that used to hide the "Select Tab" menu.

	* app/gui/dialogs-menu.c (dialogs_menu_entries): removed now unused
	"Select Tab" entry.
2003-10-18 22:12:32 +00:00
Sven Neumann
f68d05c9ce added an (unused) GimpTemplate parameter to make this function match the
2003-10-18  Sven Neumann  <sven@gimp.org>

	* app/gui/templates-commands.[ch] (templates_new_template_dialog):
	added an (unused) GimpTemplate parameter to make this function
	match the GimpTemplateActionFunc signature.
2003-10-18 17:06:43 +00:00
Michael Natterer
78b6153301 added gimp_container_freeze() / _thaw() around font list reloading.
2003-10-18  Michael Natterer  <mitch@gimp.org>

	* app/text/gimp-fonts.c (gimp_fonts_load): added
	gimp_container_freeze() / _thaw() around font list reloading.

	* app/tools/gimp-tools.c (gimp_tools_init): added missing
	gimp_container_freeze().

	* app/widgets/gimpcontainerview.c: connect to the container's
	"freeze" and "thaw" signals and empty / refill the view
	accordingly. Ignore "add", "remove" and "reorder" signals while
	the container is frozen. Fixes font list sorting after refresh and
	speeds up refreshing of fonts, brushes, patterns etc.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfontview.[ch]: new widget for the font list/grid.

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

	* app/gui/dialogs-constructors.c: changed accordingly.

	* app/gui/Makefile.am
	* app/gui/fonts-commands.[ch]
	* app/gui/fonts-menu.[ch]: new files: a menu for the font view.

	* app/gui/menus.c (menus_init): register the new <Fonts> menu.

	* app/gui/preferences-dialog.c (prefs_dialog_new): removed the
	fonts refreshing hack from the "Environment" page.
2003-10-18 16:23:15 +00:00
Sven Neumann
ab3abfff4e added gimp_any_to_utf8.
2003-10-16  Sven Neumann  <sven@gimp.org>

	* libgimpbase/gimpbase.def: added gimp_any_to_utf8.

	* app/gui/info-window.c
	* app/widgets/gimpcolorframe.c: use "n/a" instead of "N/A".
2003-10-16 16:55:16 +00:00
Sven Neumann
d872565a6d increased default undo-size to 4 MB.
2003-10-16  Sven Neumann  <sven@gimp.org>

	* app/config/gimpcoreconfig.c: increased default undo-size to 4 MB.

	* app/config/gimprc-blurbs.h (UNDO_SIZE_BLURB): attempt to improve
	the description of the undo-size setting.

	* app/gui/image-menu.c (image_menu_entries): changed the default
	shortcut for Redo from the unergonmic Shift-Ctrl-Z to Ctrl-Y.
2003-10-16 00:08:05 +00:00
Michael Natterer
ba4844ec9b hide the "Tab Style" submenu when there is no tab visible (when there is
2003-10-15  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs-menu.c (dialogs_menu_update): hide the
	"Tab Style" submenu when there is no tab visible (when there is
	only one page in the notebook). Fixes bug #124697.
2003-10-15 20:11:13 +00:00
Michael Natterer
f80e52fbf0 eek. should actually commit what i claimed below...
2003-10-15  Michael Natterer  <mitch@gimp.org>

	* app/gui/info-window.c: eek. should actually commit what i
	claimed below...
2003-10-15 17:59:40 +00:00
Sven Neumann
bfc4ac1148 sync from the given template to the dialog template, not the other way
2003-10-15  Sven Neumann  <sven@gimp.org>

	* app/gui/file-new-dialog.c (file_new_dialog_set): sync from the
	given template to the dialog template, not the other way around.

	* app/widgets/gimptemplateeditor.c (gimp_template_editor_constructor):
	shouldn't have to call the notify callback from here.
2003-10-15 17:10:22 +00:00
Sven Neumann
1e0816fa93 minor cleanup.
2003-10-15  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig-utils.c (gimp_config_diff_internal): minor
	cleanup.

	* app/core/gimptemplate.[ch]: added a comment property.

	* app/config/gimpcoreconfig.[ch]
	* app/config/gimprc-blurbs.h: removed "default_comment" property
	and set the default comment on the default image template.

	* app/widgets/gimptemplateeditor.c: added a comment editor widget.

	* app/core/gimp.c
	* app/gui/file-new-dialog.c
	* app/gui/preferences-dialog.c
	* app/pdb/gimprc_cmds.c
	* tools/pdbgen/pdb/gimprc.pdb: changed accordingly.

	* libgimpwidgets/gimpmemsizeentry.c (gimp_memsize_entry_init):
	increased spacing between the spinbutton and the menu.
2003-10-15 15:30:11 +00:00
Sven Neumann
2806c6b2d5 added new function gimp_size_entry_get_help_widget() to make it possible
2003-10-15  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpsizeentry.[ch]: added new function
	gimp_size_entry_get_help_widget() to make it possible to set
	tooltips on a GimpSizeEntry.

	* app/widgets/gimppropwidgets.c (gimp_prop_size_entry_new)
	(gimp_prop_coordinates_connect): set tooltips from property blurbs.

	* app/core/gimpgrid.c
	* app/core/gimptemplate.c
	* app/gui/preferences-dialog.c: minor string changes.
2003-10-15 11:04:31 +00:00
Sven Neumann
76db85da52 some fine-tuning.
2003-10-15  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: some fine-tuning.
2003-10-14 23:41:58 +00:00
Sven Neumann
cff08b64ae app/config/gimpconfig-utils.c (gimp_config_diff) (gimp_config_sync)
2003-10-15  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig-utils.c (gimp_config_diff) (gimp_config_sync)
	* app/config/gimpconfig.c (gimp_config_iface_equal): compare and sync
	aggregate objects recursively.

	* app/core/gimptemplate.c (gimp_template_finalize): don't leak the
	filename.

	* app/display/gimpdisplayshell-title.c
	* app/config/gimpconfig-dump.c: added %L format identifier for
	verbose layer count. Renamed former %L to %n (layer name).

	* app/config/gimpdisplayconfig.c: changed default image title and
	image status format strings.

	* app/gui/dialogs-constructors.c: added a blurb for Templates
	dockables.

	* app/display/gimpdisplayshell.h: fixed typo.
2003-10-14 23:00:16 +00:00
Sven Neumann
3ac7d14d19 app/core/gimpimage-grid.c app/core/gimpimage.[ch] removed the
2003-10-14  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-grid.c
	* app/core/gimpimage.[ch]
	* app/gui/grid-dialog.c: removed the "grid_changed" signal from
	GimpImage.

	* app/display/gimpdisplayshell-handlers.c: connect to
	notifications from the image grid instead.
2003-10-14 15:37:21 +00:00
Sven Neumann
737da42437 removed gimp_config_copy_properties() and added the more intelligent
2003-10-14  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig-utils.[ch]: removed
	gimp_config_copy_properties() and added the more intelligent
	gimp_config_sync() instead.

	* app/config/Makefile.am
	* app/config/config-types.h
	* app/config/gimpcoreconfig.[ch]
	* app/config/gimprc-blurbs.h: replaced default image properties
	with a single GimpTemplate object property. Changed the
	set_property function to not replace aggregate objects but call
	gimp_config_sync() instead.

	* app/tools/gimptextoptions.c (gimp_text_options_set_property):
	same change here.

	* app/config/gimpconfig.[ch]: changed return value of
	gimp_config_duplicate() to gpointer to avoid some casts that only
	made the code harder to read.

	* app/widgets/gimptemplateeditor.[ch]: don't keep an internal copy
	here but edit the GimpTemplate passed when the editor was
	constructed.

	* app/gui/preferences-dialog.c: use a GimpTemplateEditor to allow
	editing of the default image paramaters.

	* app/config/gimprc.c
	* app/core/core-types.h
	* app/core/gimp.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-grid.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage.c
	* app/core/gimptemplate.[ch]
	* app/gui/file-new-dialog.c
	* app/gui/grid-dialog.c
	* app/gui/info-window.c
	* app/gui/resize-dialog.c
	* app/gui/templates-commands.[ch]
	* app/gui/tool-options-commands.c
	* app/text/gimptextlayer.c
	* app/text/gimptextlayer.c
	* app/tools/gimptexttool.c
	* app/widgets/gimptemplateview.c
	* app/xcf/xcf-load.c: changed accordingly.
2003-10-14 15:20:59 +00:00
Sven Neumann
f0e8517eb5 removed "grid_changed" signal. The user of GimpGridEditor can connect to
2003-10-14  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpgrideditor.[ch]: removed "grid_changed" signal.
	The user of GimpGridEditor can connect to notifications of the
	grid that is being edited. There is no need for a proxy signal.

	* app/core/gimpimage-grid.c (gimp_image_set_grid): don't exchange
	the image's grid object, it is part of the image. Copy all grid
	properties instead.

	* app/core/gimpimage-undo-push.c
	* app/gui/grid-dialog.c: changed accordingly.
2003-10-14 12:23:23 +00:00
Michael Natterer
2b0c05131f renamed gimp_dialog_factories_idle() and _unidle() to
2003-10-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.[ch]: renamed
	gimp_dialog_factories_idle() and _unidle() to
	gimp_dialog_factories_set_busy() and _unset_busy().
	Added utility function gimp_dialog_factory_set_widget_data() and
	public API gimp_dialog_factory_from_widget() so we don't need to
	g_object_[set|get]_data() with magic keys all over the place.

	* app/widgets/gimpsessioninfo.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-menu.c
	* app/gui/gui-vtable.c: changed accordingly.

	* app/widgets/gimpsessioninfo.c: remember active page of all dock
	notebooks in sessionrc.

	* app/widgets/gimpsessioninfo.h: cleaned up the session info structs.
2003-10-13 11:57:50 +00:00
Michael Natterer
b136228de9 app/widgets/widgets-types.h added new struct GimpSessionInfoAux which
2003-10-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-types.h
	* app/widgets/gimpsessioninfo.[ch]: added new struct
	GimpSessionInfoAux which contains "gchar *name" and "gchar *value".
	Changed sessionrc "aux-info" format again to be really extendable
	this time. Also breaks everybody's sessionrc again.

	* app/widgets/gimpimagedock.c
	* etc/sessionrc: changed accordingly.

	Implemented the stuff suggested in bug #122964. Fixes bug #122964
	and bug #52206:

	* app/widgets/gimpdataeditor.[ch]: replaced the "Gimp" member by a
	"GimpDataFactory" and changed gimp_data_editor_construct()
	accordingly. Implement GimpDockedInterface::set_aux_info() and
	get_aux_info() and remember the currently edited data across
	sessions.

	* app/gui/gradient-editor-commands.c
	* app/gui/gradient-editor-menu.c
	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimppaletteeditor.c: changed accordingly.

	* app/widgets/gimpcoloreditor.c: remember the active color
	selector across sessions.
2003-10-11 16:50:35 +00:00
Sven Neumann
a88e11afb3 app/widgets/gimpdocked.[ch] renamed GimpDockedIface to
2003-10-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdocked.[ch]
	* app/widgets/widgets-types.h: renamed GimpDockedIface to
	GimpDockedInterface.

	* app/display/gimpnavigationview.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpimageeditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimptooloptionseditor.c: changed accordingly.

	* app/config/config-types.h
	* app/config/gimpconfig.[ch]
	* app/config/gimpconfig-deserialize.[ch]
	* app/config/gimpconfig-serialize.[ch]
	* app/config/gimpconfig-utils.[ch]: added a GimpConfig typedef and
	changed the GimpConfig API to take GimpConfig instead of GObject
	pointers.

	* app/config/gimpconfig-dump.c
	* app/config/gimprc.c
	* app/config/test-config.c
	* app/core/gimp-documents.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp.[ch]
	* app/core/gimpcontainer.c
	* app/core/gimpcontext.c
	* app/core/gimpdocumentlist.c
	* app/core/gimpgrid.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage.c
	* app/core/gimpparasitelist.c
	* app/core/gimptemplate.c
	* app/core/gimptooloptions.c
	* app/core/gimpviewable.c
	* app/gui/grid-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/stroke-dialog.c
	* app/gui/templates-commands.c
	* app/gui/tool-options-commands.c
	* app/paint/gimppaintcore.c
	* app/pdb/gimprc_cmds.c
	* app/text/gimptext-parasite.c
	* app/text/gimptext.c
	* app/text/gimptextlayer.c
	* app/tools/gimp-tools.c
	* app/tools/gimptexttool.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptemplateview.c
	* tools/pdbgen/pdb/gimprc.pdb: changed accordingly.
2003-10-11 14:30:18 +00:00
Michael Natterer
99746e1d6c app/widgets/Makefile.am app/widgets/widgets-types.h new files implementing
2003-10-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpdocked.[ch]: new files implementing
	GimpDockedInterface, a GTypeInterface which must be implemented by
	all widgets which want to be packed into a GimpDockable. Has
	virtual functions similar to the ones GimpDockable had.

	* app/widgets/gimpdockable.[ch]: removed all virtual functions and
	all function pointers from the instance struct (also the ones just
	added in the commit below). Make sure only widgets implementing
	the GimpDockedIface are added and simply call the child's
	GimpDocked functions where we used to call our own virtual
	functions and function pointers.

	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpimageeditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimpsessioninfo.c
	* app/widgets/gimptooloptionseditor.c
	* app/display/gimpnavigationview.c: implement GimpDockedIface.

	* app/gui/dialogs-constructors.c: removed all that get_preview_func(),
	set_context_func() etc. cruft since that's done by GimpDockedIface.
	It's really a file of constructors now.

	* app/gui/dialogs-menu.c: changed accordingly.

	* app/widgets/gimpimagedock.c: forgotten in the commit below.
2003-10-10 21:24:12 +00:00
Michael Natterer
87480880c3 Cleaned up session management and changed the format of sessionrc in a way
2003-10-10  Michael Natterer  <mitch@gimp.org>

	Cleaned up session management and changed the format of sessionrc
	in a way that allows extensions without changing the format during
	the 2.0 cycle:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpsessioninfo.[ch]: new files implementing the whole
	GimpSessionInfo stuff (parsing, saving, restoring, utility functions).
	Save / parse the position of GimpDock's panes (bug #122964).

	* app/widgets/gimpdialogfactory.[ch]: removed saving, restoring
	and session related utility functions and use the ones from
	the new files above.

	* app/gui/session.c: removed parsing and use the new stuff.

	* app/widgets/gimpdock.[ch]: added new virtual functions
	GimpDock::set_aux_info() and GimpDock::get_aux_info():

	* app/widgets/gimpimagedock.c: implement them and handle the
	"auto_follow_active" and "show_image_menu" properties.

	* app/widgets/gimpdockable.[ch]: added the same virtual functions
	to the GimpDockable class. Enables forward-compatible per-dockable
	session management (bug #122964).

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

	* etc/sessionrc: ditto. Look at this file and update your own
	sessionrc manually if you don't want to lose it.
2003-10-10 15:59:12 +00:00
Henrik Brix Andersen
4ac8c82501 removed the grid parasite related functions from here ...
2003-10-10 Henrik Brix Andersen <brix@gimp.org>

* app/core/gimpimage-grid.[ch]: removed the grid parasite related
functions from here ...

* app/core/gimpgrid.[ch]: ... and added them here. While I was at
it I also changed PROP_TYPE to PROP_STYLE and added blurbs to the
properties

* app/xcf/xcf-load.c
* app/display/gimpdisplayshell.c: changed accordingly

* app/widgets/Makefile.am
* po/POTFILES.in
* app/widgets/widgets-types.h
* app/widgets/gimpgrideditor.[ch]: added a new GimpGridEditor
widget - with a work-around for the fact that
gimp_prop_coordinated_new() doesn't accept boundaries

* app/gui/grid-dialog.h
* app/gui/grid-dialog.c (grid_dialog_new): use the new
GimpGridEditor widget, take a GimpImage as function parameter,
assume GimpImages always have a GimpGrid. This simplifies the grid
dialog.

* app/gui/image-commands.c
(image_configure_grid_cmd_callback): changed accordingly

* app/core/core-types.h: moved typedef GimpGrid from here ...

* app/config/config-types.h: ... to here to be able to use it in
GimpCoreConfig

* app/config/gimprc-blurbs.h
* app/config/gimpcoreconfig.[ch]: added default_grid member

* app/widgets/gimphelp-ids.h
* themes/Default/images/preferences/Makefile.am
* themes/Default/images/default-grid.png
* app/gui/preferences-dialog.c: added UI for specifying default
image grid

* app/core/gimpimage.c (gimp_image_new): create a GimpGrid from
core_config->default_grid

* app/gui/image-menu.c (image_menu_update): the grid/guide entries
in <Image>/View/ should always be sensitive ...

* app/display/gimpdisplayshell.c (gimp_display_shell_init):
... but the grid entries should be disabled by default
2003-10-10 14:11:47 +00:00
Sven Neumann
4591aed0b4 app/errors.c (gimp_eek) app/main.c (main) (gimp_text_console_exit) call
2003-10-10  Sven Neumann  <sven@gimp.org>

	* app/errors.c (gimp_eek)
	* app/main.c (main) (gimp_text_console_exit)
	* app/gui/user-install-dialog.c (user_install_cancel_callback):
	call exit() with EXIT_SUCCESS or EXIT_FAILURE instead of 0 and 1.
2003-10-10 10:02:34 +00:00
Michael Natterer
181a2c4820 added new pure virtual function GimpDock::setup() which configures a dock
2003-10-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdock.[ch]: added new pure virtual function
	GimpDock::setup() which configures a dock like a passed template
	dock.

	* app/widgets/gimpimagedock.c: implement it and set
	"show_image_menu" and "auto_follow_active" accordingly.

	* app/widgets/gimpdockable.c (gimp_dockable_detach): call
	gimp_dock_setup() to configure the new dock like the old one.
	Removed inclusion if "gimpimagedock.h".

	* app/gui/dialogs-commands.c: minor code cleanups.
2003-10-08 15:44:35 +00:00
Michael Natterer
f65a7acbab new function. Need to include ugly stuff for proper GimpImageDock setup.
2003-10-07  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockable.[ch] (gimp_dockable_detach): new
	function.  Need to include ugly stuff for proper GimpImageDock
	setup.

	* app/widgets/gimpdockbook.c (gimp_dockbook_menu_end): use
	gimp_dockable_detach() and removed the evil includes.

	* app/gui/dialogs-commands.c (dialogs_detach_tab_cmd_callback):
	implement it using gimp_dockable_detach().
2003-10-07 12:24:01 +00:00
Manish Singh
f64ad067d7 app/gui/image-menu.c app/gui/layers-menu.c "Imagesize" isn't a real word.
2003-10-06  Manish Singh  <yosh@gimp.org>

        * app/gui/image-menu.c
        * app/gui/layers-menu.c
        * etc/ps-menurc: "Imagesize" isn't a real word. Fix to "Image Size".

        * app/paint/gimppaintcore.c: add declaration for rotate_pointers which
        was inadvertently took out.

        * tools/pdbgen/pdb/layer.pdb: add gimp_layer_resize_to_image_size.
        Fix failure reporting logic for gimp_layer_delete.

        * app/pdb/internal_procs.c
        * app/pdb/layer_cmds.c
        * libgimp/gimplayer_pdb.[ch]: regenerated.

        * plug-ins/common/tiff.c: always compare used unsigned chars for 7bit
        ASCII check.
2003-10-06 21:22:09 +00:00
Michael Natterer
f0372cad0f Treat changes to the selection like changes to any other drawable:
2003-10-06  Michael Natterer  <mitch@gimp.org>

	Treat changes to the selection like changes to any other drawable:

	* app/core/gimpchannel.c
	* app/core/gimpchannel-combine.c: call gimp_drawable_update() after
	changing the channel.

	* app/core/gimpimage.[ch]: added struct GimpImageFlushAccumulator
	with one member "gboolean mask_changed". Connect to "update" of
	the selection and set accum.mask_changed to TRUE in the callback.
	Added default implementation for GimpImage::flush() and emit
	"mask_changed" there.

	Unrelated:
	* app/core/gimpimage.h: removed GimpGuide struct...
	* app/core/gimpimage-guides.h: ...and added it here.

	* app/core/gimpimage-undo-push.c (undo_pop_mask)
	(undo_pop_channel_mod): don't distinguish between selection and
	non-selection channels and just call gimp_drawable_update().

	* app/core/gimpundo.h
	* app/core/gimpimage-undo.c: removed "gboolean mask_changed" from
	the GimpUndoAccumulator struct since we don't have to care about
	that signal explicitly any more.

	* app/display/gimpdisplay-foreach.[ch]: removed gimp_displays_flush().

	* tools/pdbgen/pdb/display.pdb (displays_flush_invoker): call
	gimp_image_flush() on all images so the flush accumulator is
	honored.

	This generalization enables the removal of more special purpose
	code which was needed to treat the selection different:

	* app/core/gimpimage-mask-select.[ch]: removed...

	* app/core/gimpchannel-select.[ch]: ...and added under a new name
	because it's not selection specific any more.

	* app/core/gimpimage-mask.[ch]: removed...

	* app/core/gimpselection.[ch]: ...added the two remaining
	functions here. Removed all calls to gimp_image_mask_changed().

	* app/core/Makefile.am
	* app/core/gimp-edit.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-snap.c
	* app/display/gimpdisplayshell.c
	* app/gui/channels-commands.c
	* app/gui/layers-commands.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/selection_tools.pdb: changed accordingly.

	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpimage-colormap.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/gui/image-menu.c
	* app/paint/gimppaintcore.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpinkoptions.c
	* app/tools/gimpvectortool.c: removed useless and/or obsolete
	#includes.

	* app/pdb/display_cmds.c
	* app/pdb/paths_cmds.c
	* app/pdb/selection_cmds.c
	* app/pdb/selection_tools_cmds.c: regenerated.
2003-10-06 12:17:11 +00:00
Sven Neumann
ee770239ff removed unused variables.
2003-10-05  Sven Neumann  <sven@gimp.org>

	* app/gui/tool-options-menu.c (tool_options_menu_update): removed
	unused variables.
2003-10-05 21:06:43 +00:00
Michael Natterer
89d936f3aa Cleaned up the app init and exit stuff even more. Also reduces the number
2003-10-02  Michael Natterer  <mitch@gimp.org>

	Cleaned up the app init and exit stuff even more. Also reduces the
	number of missing symbols for gimp-console. Added init and exit
	debugging output (only for --verbose).

	* app/core/gimpmarshal.list
	* app/core/gimp.[ch]: added new signals "initialize" and
	"restore".  Moved plug_ins_init() to Gimp::restore()'s default
	implementation and plug_ins_exit() to Gimp::exit()'s default
	implementation. Renamed gimp_set_config() to gimp_load_config()
	and load GimpRC here. Moved base_init() and base_exit() to this
	file, too.

	* app/gui/Makefile.am
	* app/gui/gui-vtable.[ch]: new files split out of gui.c. It was
	simply too large.

	* app/gui/gui.[ch]: renamed gui_themes_init() to gui_init(),
	connect to Gimp's "initialize" and "restore" signals and create
	the GUI stuff in the callbacks. Removed most other public
	functions since they don't need to be called explicitly any more.
	Moved the whole tool initialization/shutdown code to this file.

	* app/gui/user-install-dialog.[ch]: changed
	user_install_dialog_create() to user_install_dialog_run() and
	added a gtk_main() at the end, so the install dialog's gtk_main()
	and gtk_main_quit() live in the same file.

	* app/app_procs.c: removed lots of stuff. app_init() is much
	simpler now.
2003-10-02 11:26:26 +00:00
Michael Natterer
a3ab230fdc remember the name of the saved options and set it again after
2003-10-02  Michael Natterer  <mitch@gimp.org>

	* app/gui/tool-options-commands.c
	(tool_options_save_to_cmd_callback): remember the name of the
	saved options and set it again after gimp_config_copy_properties().
	Fixes bug #123660.
2003-10-02 10:16:02 +00:00
Sven Neumann
8996d18ff5 added back ellipsis to Display Filters and Configure Grid.
2003-10-02  Sven Neumann  <sven@gimp.org>

	* app/gui/image-menu.c: added back ellipsis to Display Filters and
	Configure Grid.

2003-10-02  Sven Neumann  <sven@gimp.org>

	* de.po: updated german translation (reviewing my menu changes).
2003-10-02 00:55:52 +00:00
Sven Neumann
f8fed93e45 app/gui/brushes-menu.c app/gui/channels-menu.c
2003-10-02  Sven Neumann  <sven@gimp.org>

	* app/gui/brushes-menu.c
	* app/gui/channels-menu.c
	* app/gui/colormap-editor-menu.c
	* app/gui/image-menu.c
	* app/gui/templates-menu.c
	* app/gui/vectors-menu.c: added ellipsis back for Edit menu items.
	Added missing ellipsis for Stroke items.
2003-10-01 22:31:29 +00:00
Sven Neumann
038a20e089 app/gui/brushes-menu.c app/gui/channels-menu.c
2003-10-01  Sven Neumann  <sven@gimp.org>

	* app/gui/brushes-menu.c
	* app/gui/channels-menu.c
	* app/gui/colormap-editor-menu.c
	* app/gui/dialogs-menu.c
	* app/gui/documents-menu.c
	* app/gui/image-menu.c
	* app/gui/palettes-menu.c
	* app/gui/templates-menu.c
	* app/gui/toolbox-menu.c
	* app/gui/vectors-menu.c
	* plug-ins/common/uniteditor.c
	* plug-ins/dbbrowser/dbbrowser.c: followed the HIG advisory on
	labelling menus with a trailing ellipsis and removed some.
2003-10-01 20:46:48 +00:00
Sven Neumann
ef94033e26 renamed gimp_prop_size_entry_connect() to gimp_prop_coordinates_connect().
2003-10-01  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppropwidgets.[ch]: renamed
	gimp_prop_size_entry_connect() to gimp_prop_coordinates_connect().
	Added a new property widget that is a single GimpSizeEntry and is
	connected to size and unit properties.

	* app/widgets/gimptemplateeditor.c: changed accordingly.

	* app/widgets/gimpstrokeeditor.c: added a "resolution" property
	and use the new property widget.

	* app/gui/stroke-dialog.c: pass the image resolution to
	gimp_stroke_editor_new().
2003-10-01 19:55:13 +00:00
Sven Neumann
69f7bd131c app/core/Makefile.am added small wrappers to ease handling of image units
2003-10-01  Sven Neumann  <sven@gimp.org>

	* app/core/Makefile.am
	* app/core/gimpimage-unit.[ch]: added small wrappers to ease
	handling of image units and to hide the core GimpUnit API.

	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpstatusbar.c
	* app/gui/info-window.c:
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimpscaletool.c: use the new functions.

	* app/core/gimp-units.c
	* app/vectors/gimpvectors-export.c: use the core GimpUnit API.

	* app/vectors/gimpvectors.c: no need to include gimpunit.h here.
2003-10-01 17:32:14 +00:00
Sven Neumann
1667acd36d accept NULL as blurb and use the name as fallback for a missing blurb.
2003-09-30  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdockable.c (gimp_dockable_new): accept NULL
	as blurb and use the name as fallback for a missing blurb.

	* app/gui/dialogs-constructors.c: removed the "Foo List" and "Foo
	Grid" blurbs. Only left blurbs where the longer name makes sense.
2003-09-30 18:50:55 +00:00
Michael Natterer
36c83350a2 added a "Rename Saved Options" submenu and factored on-the-fly submenu
2003-09-30  Michael Natterer  <mitch@gimp.org>

	* app/gui/tool-options-menu.c: added a "Rename Saved Options"
	submenu and factored on-the-fly submenu creation out to a utility
	function.

	* app/gui/tool-options-commands.[ch]: added rename callback.

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

	* app/widgets/gimptooloptionseditor.c
	(gimp_tool_options_editor_menu_popup): pass "button = 0" to
	gtk_menu_popup() because we show the menu on button_release, not
	on button_press.
2003-09-30 18:33:46 +00:00
Sven Neumann
b563329c28 accept a list of dialog identifiers and try to raise an existing dockable
2003-09-30  Sven Neumann  <sven@gimp.org>

	* app/gui/dialogs-commands.c (dialogs_create_dockable_cmd_callback):
	accept a list of dialog identifiers and try to raise an existing
	dockable from the list. If that fails, create a new one from the
	first entry.

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: specify alternative dialog identifiers
	where appropriate.

	* app/vectors/gimpstroke.c (gimp_stroke_interpolate): use NULL
	instead of 0.
2003-09-30 15:48:14 +00:00
Michael Natterer
d0e1c1c661 cleanup.
2003-09-30  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore-stroke.c: cleanup.

	(gimp_paint_core_stroke_boundary): don't push a separate undo
	for each part of the boundary.

	* app/core/gimpdrawable-stroke.[ch]: added empty stub
	gimp_drawable_stroke_boundary(). Changed
	gimp_drawable_stroke_vectors() to take the GimpStrokeOptions as
	second parameter.

	* app/core/gimpchannel.c (gimp_channel_stroke): use it. No need
	to push an undo group around gimp_paint_core_stroke_boundary().

	* app/vectors/gimpvectors.c: changed accordingly.

	* app/widgets/gimpselectioneditor.[ch]: added a GimpStrokeItemFunc
	pointer and use it for stroking.

	* app/gui/edit-commands.[ch] (edit_stroke_selection): a
	GimpStrokeItemFunc which strokes the selection using the
	stroke-dialog.

	* app/gui/dialogs-constructors.c: use it for the selection editor.
2003-09-30 02:44:17 +00:00
Sven Neumann
f4c7ef9914 app/core/gimpdrawable-stroke.c app/core/gimpstrokeoptions.[ch] removed the
2003-09-30  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-stroke.c
	* app/core/gimpstrokeoptions.[ch]
	* app/gui/stroke-dialog.c: removed the resolution property again.
	The object should stay resolution independent. The resolution can
	be taken from the image it is used with.
2003-09-30 00:15:00 +00:00
Simon Budig
3761462869 Added support for setting X- and Y-resolution for stroking paths. The
2003-09-30  Simon Budig  <simon@gimp.org>

	* app/core/gimpscanconvert.[ch]: Added support for setting
	X- and Y-resolution for stroking paths. The width of a path
	has to be given in pixels, using X-resolution.

	* app/core/gimpstrokeoptions.[ch]: Added "resolution" property,
	so that conversion between various width-units can happen.
	Should be set to the target images X-resolution.

	* app/gui/stroke-dialog.c: set the resolution of the options.

	* app/core/gimpdrawable-stroke.c: Use that stuff, cleanup.
2003-09-29 23:45:06 +00:00
Michael Natterer
dedbe33b8d new function for stuff which needs to be done once, not on every
2003-09-30  Michael Natterer  <mitch@gimp.org>

	* app/gui/tool-options-menu.[ch] (tool_options_menu_setup): new
	function for stuff which needs to be done once, not on every
	tool_options_menu_update(). Cleanup.

	* app/gui/menus.c: register it as setup_func of <ToolOptions>.

	* app/gui/tool-options-commands.c: removed the "Reset"
	implementations and activate GimpToolOptionsEditor's buttons
	accordingly.

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

	* app/widgets/gimptooloptionseditor.[ch]: moved "Reset"
	implementations to this file. Added "Delete" button. Pop up the
	"Save", "Restore" and "Delete" submenus of the <ToolOptions>
	item_factory when the resp. buttons are clicked.
2003-09-29 22:23:44 +00:00
Michael Natterer
d1ba870458 added a GimpContainer of tool options presets.
2003-09-29  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.[ch]: added a GimpContainer of tool
	options presets.

	* app/core/gimptooloptions.[ch] (gimp_tool_options_set_property):
	silently accept setting the *same* tool_info again.

	(gimp_tool_options_build_filename): is public now.

	* app/tools/gimp-tools.c (gimp_tools_restore,save): load and save
	the presets container.

	* app/gui/tool-options-dialog.[ch]: removed.

	* app/gui/tool-options-commands.[ch]
	* app/gui/tool-options-menu.[ch]: new files implementing a menu
	for the new GimpToolOptionsEditor widget. Has submenus for saving,
	loading, and deleting tool options to/from the
	tool_info->options_presets container.

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

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptooloptionseditor.[ch]: the tool options dialog
	as proper widget. The "Load" and "Save" buttons still do the same
	stuff as before. Will make them use the new presets since making
	them do something useful was the reason for this whole change.

	* app/widgets/gimphelp-ids.h: added missing help IDs for the tool
	options dialog.
2003-09-29 20:26:09 +00:00
Sven Neumann
14d3b01418 as a temporary hack, let the Stroke Dialog remember the last used stroke
2003-09-28  Sven Neumann  <sven@gimp.org>

	* app/gui/stroke-dialog.c (stroke_dialog_new): as a temporary hack,
	let the Stroke Dialog remember the last used stroke options.
2003-09-28 21:20:28 +00:00
Sven Neumann
8e613a455d use the GIMP_COORDINATES_CHAINBUTTON() macro instead of trying to get it
2003-09-28  Sven Neumann  <sven@gimp.org>

	* app/gui/resolution-calibrate-dialog.c (resolution_calibrate_ok):
	use the GIMP_COORDINATES_CHAINBUTTON() macro instead of trying to
	get it using a hardcoded and misspelled identifier.
2003-09-27 23:19:43 +00:00
Michael Natterer
ab34b3ee94 added new functions color_region_mask() which works like color_region()
2003-09-27  Michael Natterer  <mitch@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: added new functions
	color_region_mask() which works like color_region() but takes an
	additional maskPR parameters and pattern_region() which fills
	destPR with a TempBuf of *matching color depth*.

	* app/paint-funcs/paint-funcs-generic.h: added corresponding
	color_pixels_mask() and pattern_pixels().

	* app/core/gimpimage.[ch] (gimp_image_transform_temp_buf): new
	function which transforms a TempBuf to a specified drawable's
	color space.

	* app/core/gimpdrawable-bucket-fill.c: the functions were factored
	out here. Removed them and use the new stuff.

	* app/core/core-enums.[ch]: added enum GimpStrokeStyle which can
	be one of { SOLID, PATTERN }.

	* app/core/gimpstrokeoptions.[ch]: added "GimpStrokeStyle style"
	property, cleanup.

	* app/core/gimpdrawable-stroke.c: honor the new "style" property
	and call the new color_region_mask() and pattern_region()
	functions accordingly, cleanup.

	* app/widgets/gimpstrokeeditor.c: added a GUI for the stroke
	style. Ugly but works.

	* app/gui/stroke-dialog.c: undefine "foreground" and "pattern" and
	set the user context as parent context so we get these properties
	from the global settings.
2003-09-27 20:04:07 +00:00
Sven Neumann
fcb29af719 themes/Default/images/Makefile.am
2003-09-27  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-cap-[butt|round|square]-16.png
	* themes/Default/images/stock-join-[miter|round|bevel]-16.png:
	added placeholders for GimpCapStyle and GimpJoinStyle icons.

	* libgimpwidgets/gimpstock.[ch]: register the new icons.

	* app/widgets/gimpstrokeeditor.c: made "options" a construct-only
	property of the editor and create the widgets in a constructor
	method. Use stock boxes with the new icons.

	* app/gui/stroke-dialog.c (stroke_dialog_new): let the Cancel
	button destroy the dialog instead of itself.
2003-09-27 19:05:13 +00:00
Michael Natterer
07417fb07e made it a view on the GimpItem to stroke, not on the image, so the dialog
2003-09-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/stroke-dialog.[ch]: made it a view on the GimpItem to
	stroke, not on the image, so the dialog goes away automatically if
	the item is removed from the image. Don't pass a GimpStrokeOptions
	to stroke_dialog_new() until we figured how to handle a list of
	presets or at least the last used options object. Also don't pass
	a GimpDrawable, get the active_drawable in the "ok" callback
	instead. Attach less pointers to the dialog and simplified stuff.

	* app/gui/vectors-commands.c (vectors_stroke_vectors): changed
	accordingly, removed commented out cruft.
2003-09-27 14:41:10 +00:00
Michael Natterer
d2b8494a29 derive it from GimpViewable.
2003-09-27  Michael Natterer  <mitch@gimp.org>

	* app/core/gimppaintinfo.[ch]: derive it from GimpViewable.

	* app/core/gimptoolinfo.c (gimp_tool_info_new): set the
	paint_info's stock_id from the tool_info's stock_id.

	* app/widgets/widgets-types.h: resurrected GimpItemStrokeFunc.

	* app/widgets/gimpvectorstreeview.[ch]: added a item_stroke_func
	pointer and use it instead of implementing stroking here.

	* app/gui/vectors-commands.[ch]: added vectors_stroke_vectors()
	which has the signature of a GimpItemStrokeFunc.

	* app/gui/dialogs-constructors.c: use it for the paths dialog.

	* app/gui/stroke-dialog.[ch]: extended to handle both libart and
	GimpPaintCore stroking. Use a GimpContainerMenu view on the
	gimp->paint_info_list container to select the paint core to use.
2003-09-27 13:46:30 +00:00
Sven Neumann
06a21943d0 improved readability of this code by introducing a local GimpImage*
2003-09-27  Sven Neumann  <sven@gimp.org>

	* app/gui/info-window.c (info_window_update): improved readability
	of this code by introducing a local GimpImage* variable.

	* app/composite/gimp-composite-regression.c: use a matching format
	string for an u_long variable (should probably use gulong instead).

	* app/composite/make-installer.py: output a short note about what
	tests are going to be run.

	* app/composite/gimp-composite-3dnow-test.c
	* app/composite/gimp-composite-altivec-test.c
	* app/composite/gimp-composite-mmx-test.c
	* app/composite/gimp-composite-sse-test.c
	* app/composite/gimp-composite-sse2-test.c
	* app/composite/gimp-composite-vis-test.c: regenerated.
2003-09-27 12:59:22 +00:00
Michael Natterer
09eb6fe8dd honor the default-resolution-unit when displaying the image's resolution.
2003-09-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/info-window.c (info_window_update): honor the
	default-resolution-unit when displaying the image's resolution.
	Fixes bug #123336.
2003-09-27 10:27:38 +00:00
Simon Budig
3f76868aee This still is very much in progress. I just want to commit this to avoid
2003-09-27  Simon Budig  <simon@gimp.org>

	This still is very much in progress. I just want to commit this
	to avoid lossage. It kind of works but there definitely is
	code in the wrong place now.

	* app/gui/stroke-dialog.[ch]: New files implementing a dialog
	containing Svens GimpStrokeEditor-Widget.

	* app/gui/Makefile.am: changed accordingly.

	* app/gui/vectors-commands.c: Open the StrokeOptions-Dialog when
	the "stroke" menu entry gets selected.

	* app/vectors/gimpvectors.c: Remove bad #ifdef hacks and use
	Libart/Paintcore-Stroking depending on the type of the stroke_desc
	Parameter.

	* app/core/gimpstrokeoptions.c: Proper handle the Enum-Properties.

	* app/core/gimpscanconvert.[ch]: make the antialias-parameter
	to gimp_scan_convert_new a gboolean.

	* app/tools/gimpiscissorstool.c
	* app/core/gimpdrawable-stroke.c
	* app/core/gimpimage-mask-select.c: Changed accordingly.
2003-09-27 02:34:18 +00:00
Simon Budig
10a5269e22 New Object, holding the Options for a Libart-Stroke.
2003-09-26  Simon Budig  <simon@gimp.org>

	* app/core/gimpstrokeoptions.[ch]: New Object, holding the
	Options for a Libart-Stroke.

	* app/core/Makefile.am
	* app/core/core-types.h: Changed accordingly.

	* app/core/gimpitem.[ch]: Changed the Signature of
	gimp_item_stroke to accept a GimpObject instead of a
	GimpPaintInfo. This enables us to pass GimpStrokeOptions
	to it. To be cleaned up for 2.2.

	* app/core/gimpselection.c
	* app/core/gimpchannel.c
	* app/vectors/gimpvectors.c: Changed accordingly

	* app/gui/edit-commands.c
	* app/gui/vectors-commands.c
	* app/pdb/edit_cmds.c
	* app/pdb/paths_cmds.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpvectorstreeview.c: Fixed warnings by
	casting the GimpPaintInfo to GimpObject.
2003-09-26 15:37:53 +00:00
Michael Natterer
e13afaf260 Cleaned up all places which pick colors to work consistently: the concept
2003-09-26  Michael Natterer  <mitch@gimp.org>

	Cleaned up all places which pick colors to work consistently: the
	concept of an "active color" has disappeared, instead <ctrl> picks
	the BG color all over the place (fixes bug #122931).

	* app/tools/tools-enums.[ch]: added enum GimpColorPickMode which
	can be one of { FOREGROUND, BACKGROUND }. Reordered enums so
	non-registered ones are at the end of the file. Removed trailing
	whitespace.

	* app/tools/gimpcolorpickeroptions.[ch]: added a "pick-mode"
	property and a GUI for it. Renamed the "update-active" property to
	"update-toolbox".

	* app/tools/gimpcolorpickertool.c: honor the new option. Toggle
	pick-mode on <ctrl>.

	* app/tools/gimpcolortool.[ch]: added pick_mode member and change
	the cursor accordingly.

	* app/widgets/gimpcolormapeditor.[ch]: added "GdkModifierType
	state" to the "selected" signal. Removed the signal's default
	implementation.

	* app/gui/dialogs-constructors.c: fixed the signal handler which
	lives here and set BG if <ctrl> was pressed.

	* app/widgets/gimppaletteeditor.c: removed weird <ctrl> <->
	active_color interaction and pick BG on <ctrl>. Don't change the
	toolbox color when editing a color in the palette.

	* app/widgets/gimptoolbox-color-area.[ch]: made the whole
	active_color stuff private. Will remove these artefacts soon...

	* app/gui/colormap-editor-menu.c
	* app/gui/palette-editor-menu.c: added separate menu entries
	for adding a color from the current FG and BG.

	* app/gui/colormap-editor-commands.c
	* app/gui/palette-editor-commands.[ch]: changed callbacks
	accordingly.

	* cursors/background.xbm
	* cursors/background_mask.xbm
	* cursors/foreground.xbm
	* cursors/foreground_mask.xbm
	* cursors/gimp-tool-cursors.xcf: moved the FG/BG cursor modifiers
	closer to the upper right corner.

	* app/widgets/gimpcursor.c: ignore the cursor modifiers' hotspots
	since they are not relevant and I didn't save the hotspot in the
	updated cursor files for that reason.
2003-09-26 13:33:54 +00:00
Sven Neumann
b2ad956b0f optionally scale the imported SVG to fit the image.
2003-09-25  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-import.[ch]: optionally scale the
	imported SVG to fit the image.

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

	* tools/pdbgen/pdb/paths.pdb: export the new scale parameter to
	the PDB.

	* app/pdb/paths_cmds.c
	* libgimp/gimppaths_pdb.[ch]: regenerated.

	* plug-ins/common/svg.c: scale the imported vectors to image size.
	This makes them always fit :)
2003-09-25 00:39:46 +00:00
Michael Natterer
55f938fa01 using gimp_container_view_get_by_dockable() was a bad idea since not all
2003-09-24  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs-constructors.c (dialogs_get_view_menu_func):
	using gimp_container_view_get_by_dockable() was a bad idea since
	not all our GimpEditor subclasses actually are GimpContainerViews.
	Find the right GimpEditor manually instead (fixes missing popup
	menus).

	* app/gui/colormap-editor-menu.c (colormap_editor_menu_update):
	make the menu entries insensitive if the image is not indexed.
	fixes bug #123066.
2003-09-24 15:11:29 +00:00
Sven Neumann
008769d5ac app/gui/resize-dialog.c app/widgets/gimptemplateeditor.c use horizontal
2003-09-23  Sven Neumann  <sven@gimp.org>

	* app/gui/resize-dialog.c
	* app/widgets/gimptemplateeditor.c
	* plug-ins/common/svg.c: use horizontal boxes instead of alignments.
	Fixes dialog layout for RTL rendering.

	* plug-ins/common/png.c (save_dialog): only set the comment toggle
	active if there's a comment to save.
2003-09-23 21:51:08 +00:00
Michael Natterer
c5fd48f2fb added a "menu_title" which is registered with each menu.
2003-09-23  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpmenufactory.[ch]: added a "menu_title" which is
	registered with each menu.

	* app/widgets/gimpitemfactory.[ch]: added the title to the
	constructor and to the GimpItemFactory struct.

	* app/gui/menus.c: register titles with all menus.

	* app/widgets/gimpdockable.[ch]: show the tab menu, not the
	contained dialog's menu when clicking on the menu button.
	Embed the dialog's menu as submenu. Use the item_factory's
	title and the dockable's stock_id for the submenu entry.

	* app/widgets/gimpeditor.c: removed GtkWidget:popup_menu()
	implementation since that's done by GimpDockable now.

	* app/widgets/gimpdockbook.c: set the new menu item invisible
	when showing the menu as tab menu.

	* app/widgets/gimphelp-ids.h: added GIMP_HELP_DOCK_TAB_DETACH
	and renamed _TAB_REMOVE to _TAB_CLOSE.

	* app/gui/dialogs-menu.c: added the new menu entry for showing the
	dialog's sub-menu. Added a "Detach" menu item, renamed "Remove" to
	"Close". Accept both a GimpDockbook and a GimpDockable pointer as
	"data" in dialogs_menu_update().

	* app/gui/dialogs-commands.[ch]: changed accordingly. Never use
	gtk_item_factory_popup_data_from_widget() but always the "data"
	passed to the callbacks. Take care to not set the already active
	preview_size, tab_style and list/grid type in the resp. callbacks
	to avoid being called from dialogs_menu_update().

	* app/gui/dialogs-constructors.c: removed separate
	set_context_funcs and get_menu_funcs for GimpContainerView and
	GimpContainerEditor widgets and simply use
	gimp_container_view_get_by_dockable() to find the right widget.
2003-09-23 16:17:25 +00:00
Sven Neumann
f55261c2c1 add a shortcut of Ctrl-0 for the 10th entry.
2003-09-23  Sven Neumann  <sven@gimp.org>

	* app/gui/menus.c (menus_last_opened_add): add a shortcut of
	Ctrl-0 for the 10th entry.

	* app/config/gimpguiconfig.c: increased the default
	last-opened-size from 4 to 10; increased the max-new-image-size
	from 32M to 64M.
2003-09-23 14:05:03 +00:00
Sven Neumann
f56486c598 removed redundant calculations.
2003-09-23  Sven Neumann  <sven@gimp.org>

	* app/gui/resize-dialog.c (ratio_callback): removed redundant
	calculations.

	* plug-ins/common/svg.c: use a default size to handle the case
	when librsvg cannot determine the SVG size.
2003-09-23 00:45:18 +00:00
Henrik Brix Andersen
9b3bc08eb6 Replaced the netscape-dependent web browser plug-in with a user
2003-09-22 Henrik Brix Andersen <brix@gimp.org>

Replaced the netscape-dependent web browser plug-in with a user
configureable plug-in. This fixes bug #119120:

* app/config/gimpguiconfig.[ch]: added gchar *web_browser member

* app/config/gimprc-blurbs.h: added web browser blurb

* etc/gimprc
* docs/gimprc-1.3.5.in: regenerated using gimpconfig-dump

* app/gui/preferences-dialog.c (prefs_dialog_new): added UI for
specifying external web browser

* configure.in
* plug-ins/Makefile.am
* plug-ins/webbrowser/Makefile.am
* plug-ins/webbrowser/README
* plug-ins/webbrowser/web-browser.scm
* plug-ins/webbrowser/webbrowser.c : removed the old netscape-dependent
web browser plug-in

* po-plug-ins/POTFILES.in
* plug-ins/common/plugin-defs.pl
* plug-ins/common/webbrowser.c: added a new web browser plug-in

* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am: regenerated

* app/widgets/gimphelp.c
* app/widgets/widget-enums.[ch]
* plug-ins/helpbrowser/dialog.c
* plug-ins/maze/maze_face.c: changed accordingly + whitespace
clean-up

* po-script-fu/POTFILES.in
* plug-ins/script-fu/scripts/Makefile.am
* plug-ins/script-fu/scripts/web-browser.scm: use the new web
browser plug-in to add menu entries to <Toolbox>/Help/
2003-09-22 20:04:39 +00:00
Sven Neumann
c9ef4b23f7 removed gimprc checks; let the functions always do what they are supposed
2003-09-22  Sven Neumann  <sven@gimp.org>

	* app/gui/menus.c (menus_restore) (menus_save): removed gimprc
	checks; let the functions always do what they are supposed to do.

	* app/gui/gui.c: check gimprc settings here and decide what to
	restore on startup and save on exit. Fixes bug #122930.
2003-09-22 15:31:54 +00:00
Michael Natterer
47b1e3eef8 added a title bar showing the dockable's name, a "close" and a "menu"
2003-09-21  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockable.[ch]: added a title bar showing the
	dockable's name, a "close" and a "menu" button. Not quite
	finished, but almost...

	* app/gui/dialogs-constructors.c: changed accordingly.

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-close-12.png
	* themes/Default/images/stock-menu-12.png: new icons for the above.

	* libgimpwidgets/gimpstock.[ch]: register them.

	* themes/Default/gtkrc: remove any focus spacing from the
	dockables' new buttons since they can't get the focus anyway.
2003-09-21 19:35:54 +00:00
Michael Natterer
db979650f0 fixed typo.
2003-09-21  Michael Natterer  <mitch@gimp.org>

	* app/gui/images-menu.c (images_menu_update): fixed typo.
2003-09-21 19:21:12 +00:00
Dave Neary
d92c11d358 Changed default shortcut for Redo to Ctrl-Shift-Z, following a
2003-09-21  Dave Neary  <bolsh@gimp.org>

        * app/gui/image-menu.c: Changed default shortcut for Redo to
        Ctrl-Shift-Z, following a reccommendation of the GNOME HIG.
2003-09-21 18:39:48 +00:00
Sven Neumann
3ee7c4d0e0 renamed new enums to use "style" instead of the overloaded term "type".
2003-09-21  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch]: renamed new enums to use "style" instead
	of the overloaded term "type". Also renamed GimpGridType while I was
	on it.

	* app/core/gimpdrawable-stroke.[ch]
	* app/core/gimpgrid.[ch]
	* app/core/gimpscanconvert.[ch]
	* app/display/gimpdisplayshell.c
	* app/vectors/gimpvectors.c
	* app/gui/grid-dialog.c: changed accordingly.
2003-09-21 10:45:19 +00:00
Michael Natterer
f8d46710e1 session_info->widget is not a GimpDeviceStatus but its parent
2003-09-19  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c (gui_device_change_notify): session_info->widget
	is not a GimpDeviceStatus but its parent GimpDockable. Use the
	dockable's child instead. Fixes bug #122684.
2003-09-19 12:38:30 +00:00
Michael Natterer
9e7a2b2aeb Fix for bug #122695:
2003-09-19  Michael Natterer  <mitch@gimp.org>

	Fix for bug #122695:

	* app/widgets/gimpcolormapeditor.c
	(gimp_colormap_hex_entry_activate): call gimp_image_flush() after
	gimp_image_set_colormap_entry() so the projection gets updated.

	Cleanup / consistency with other dialogs:

	* app/widgets/gimphelp-ids.h: added help IDs for the colormap
	editor's menu items and buttons.

	* app/gui/colormap-editor-menu.c (colormap_editor_menu_entries):
	use the new help IDs.

	* app/widgets/gimpcolormapeditor.[ch]: added buttons for "Edit Color"
	and "Add Color" and moved the color_notebook code to this file.

	* app/gui/colormap-editor-commands.[ch]: removed almost all code
	and simply emit "clicked" from the editor's buttons so their
	callbacks are invoked.
2003-09-19 11:40:12 +00:00
Michael Natterer
6b2ca702ad app/paint/Makefile.am removed... ...and added.
2003-09-18  Michael Natterer  <mitch@gimp.org>

	* app/paint/Makefile.am
	* app/paint/paint.[ch]: removed...
	* app/paint/gimp-paint.[ch]: ...and added.

	* app/core/gimp.c: changed accordingly.

	* app/tools/Makefile.am
	* app/tools/tools.[ch]: removed...

	* app/tools/gimp-tools.[ch]: ...and added. Added
	gimp_tools_restore() and gimp_tools_save() and moved the entire
	tool registering and tool_options loading/saving code here. Call
	tool_manager_init() from gimp_tools_init() and tool_manager_exit()
	from gimp_tools_exit().

	* app/tools/tool_manager.[ch]: removed the code which now lives
	in gimp-tools.[ch]. The tool manager now has no knowledge about
	individual tools any more and just handles the active_tool
	and the tool part of tool <-> display interaction.
	Removed tool_manager_get_info_by_type().

	* app/tools/gimpvectortool.c (gimp_vector_tool_register): the
	tool's identifier is "gimp-vector-tool", not "gimp-path-tool".

	* app/app_procs.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/vectors-commands.c
	* app/tools/gimppainttool.c: changed accordingly.
2003-09-18 13:51:10 +00:00
Michael Natterer
5ebce856b5 app/widgets/gimpdatafactoryview.[ch] app/widgets/gimpitemtreeview.[ch]
2003-09-18  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpitemtreeview.[ch]
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimptemplateview.[ch]: order the button boxes in
	these dialogs like the entries their popup menus: The default
	(double click) action is the first menu entry / button. In an
	attack of consistency, also reordered functions and function
	parameters all over the place to match the new order.

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpvectorstreeview.c
	* app/gui/dialogs-constructors.c: changed accordingly.
2003-09-17 22:54:48 +00:00
Michael Natterer
431f9122f6 app/gui/brushes-menu.c app/gui/colormap-editor-menu.c
2003-09-16  Michael Natterer  <mitch@gimp.org>

	* app/gui/brushes-menu.c
	* app/gui/colormap-editor-menu.c
	* app/gui/dialogs-menu.c
	* app/gui/documents-menu.c
	* app/gui/gradients-menu.c
	* app/gui/palettes-menu.c
	* app/gui/patterns-menu.c: suppress more standard GTK+ stock item
	accelerators in popup menus by specifying "" instead of NULL as
	accelerator.
2003-09-16 16:40:16 +00:00
Sven Neumann
555038debf app/composite/gimp-composite-generic.c app/composite/gimp-composite-mmx.c
2003-09-16  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite-generic.c
	* app/composite/gimp-composite-mmx.c
	* app/composite/gimp-composite-sse.c
	* app/composite/gimp-composite-sse2.c
	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-path.c
	* app/config/gimpconfig-serialize.c
	* app/core/cpercep.c
	* app/core/gimpunit.c
	* app/gui/palette-import-dialog.c
	* app/gui/plug-in-menus.c
	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c
	* app/pdb/procedural_db.c
	* app/text/gimptextlayout-render.c
	* app/tools/gimpfuzzyselecttool.c
	* app/widgets/gimpcursor.c: some trivial code cleanups: avoid
	casts that discard const qualifiers and avoid useless comparisons
	on unsigned variables. Also reordered qualifiers in function
	declarations (static comes before const).
2003-09-16 13:12:50 +00:00
Michael Natterer
28d6f0a241 app/core/gimpedit.[ch] app/core/gimpmodules.[ch] app/core/gimpunits.[ch]
2003-09-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpedit.[ch]
	* app/core/gimpmodules.[ch]
	* app/core/gimpunits.[ch]
	* app/text/gimpfonts.[ch]: removed...

	* app/core/gimp-edit.[ch]
	* app/core/gimp-modules.[ch]
	* app/core/gimp-units.[ch]
	* app/text/gimp-fonts.[ch]: ...and added with new names because
	these files operate on members of a Gimp instance and are
	therefore methods of the Gimp object.

	* app/core/Makefile.am
	* app/text/Makefile.am
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/edit-commands.c
	* app/gui/module-browser.c
	* app/gui/preferences-dialog.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/app_procs.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/fonts.pdb: changed accordingly.

	* app/pdb/edit_cmds.c
	* app/pdb/fonts_cmds.c: regenerated.

	* app/core/gimp.c (gimp_init): don't create gimp->fonts.
	(gimp_initialize): call gimp_fonts_init().
	(gimp_restore): call gimp_fonts_load() instead of _init().

	* app/text/gimp-fonts.c (gimp_fonts_init): don't call
	gimp_fonts_load(), just create gimp->fonts and connect to
	"notify::font-path" of gimp->config.
2003-09-15 17:26:28 +00:00
Sven Neumann
80bd6f1c2b app/config/Makefile.am app/config/config-types.h new files that hold a
2003-09-15  Sven Neumann  <sven@gimp.org>

	* app/config/Makefile.am
	* app/config/config-types.h
	* app/config/gimpxmlparser.[ch]: new files that hold a simple XML
	parser based on GMarkupParser. It's not a full-featured XML parser;
	it only adds transparent handling of encodings to GMarkupParser
	and provides a convenient API to deal with files or IO channels.

	* app/vectors/gimpvectors-import.c: use the new GimpXmlParser.

	* app/vectors/gimpvectors-export.c: write encoding attribute.

	* app/tips-dialog.c
	* app/tips-parser.c: use the new GimpXmlParser.

	* app/vectors/Makefile.am: had to add one of those truly ugly
	hacks here in order to get the application linked.
2003-09-15 15:24:52 +00:00
Manish Singh
36ed0023da changed to a runtime check for gtk version.
2003-09-14  Manish Singh  <yosh@gimp.org>

        * app/gui/gui.c: changed to a runtime check for gtk version.
2003-09-14 19:23:18 +00:00
Sven Neumann
1495924279 no need to flush the image after exporting vectors.
2003-09-13  Sven Neumann  <sven@gimp.org>

	* app/gui/vectors-commands.c (vectors_export_ok_callback): no need
	to flush the image after exporting vectors.

	* app/vectors/gimpvectors-import.c: improved error handling.
2003-09-14 09:34:22 +00:00
Sven Neumann
26ae4062a7 app/core/core-enums.[ch] add vectors in an undo-group.
2003-09-13  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch]
	* app/vectors/gimpvectors-import.c: add vectors in an undo-group.

	* app/gui/vectors-commands.c: added simple file selection dialogs
	for vectors import and export.
2003-09-13 02:33:30 +00:00
Sven Neumann
3f885c7fa0 app/core/gimpselection.c app/gui/images-menus.c string fixes.
2003-09-12  Sven Neumann  <sven@gimp.org>

	* app/core/gimpselection.c
	* app/gui/images-menus.c
	* app/gui/session.c: string fixes.

	* app/gui/images-commands.[ch]: changed the function names
	accordingly..
2003-09-12 15:14:02 +00:00
Christian Neumair
7a93545876 added missing ngettext calls to MENU_BRANCH calls' argument.
2003-09-12  Christian Neumair  <chris@gnome-de.org>

	* app/gui/dialogs-menu.c: added missing ngettext calls to MENU_BRANCH
	calls' argument.
2003-09-12 14:40:10 +00:00
Michael Natterer
7cf4eb467a removed "visible" and all its API...
2003-09-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: removed "visible" and all its API...

	* app/core/gimpitem.[ch]: ...and added it here.

	* app/core/core-enums.[ch]
	* app/core/gimpimage-undo-push.[ch]: changed the drawable
	visibility undo to be an item visibility undo.

	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c: save it in PROP_VECTORS and changed channel
	and layer loading/saving accordingly.

	* app/core/gimpimage-merge.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/text/gimptextlayer.c
	* app/gui/channels-commands.c
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/channel_cmds.c
	* app/pdb/layer_cmds.c: regenerated.

	* app/widgets/gimpdrawabletreeview.[ch]: removed the eye icon...

	* app/widgets/gimpitemtreeview.[ch]: ...and added it here.
2003-09-11 19:52:29 +00:00
Sven Neumann
4aabfe7b34 themes/Default/images/Makefile.am new icon.
2003-09-11  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-transparency-[16|24].png: new icon.

	* libgimpwidgets/gimpstock.[ch]: register as GIMP_STOCK_TRANSPARENCY.

	* app/gui/image-menu.c
	* app/gui/layers-menu.c: use the new icon for "Add Alpha Channel".

	* app/widgets/gimplayertreeview.c: replaced the "Keep Trans."
	button with a check button plus the new icon (bug #121784).
2003-09-11 18:48:00 +00:00
Michael Natterer
cf8f8d85f8 app/gui/brushes-menu.c app/gui/buffers-menu.c app/gui/channels-menu.c
2003-09-11  Michael Natterer  <mitch@gimp.org>

	* app/gui/brushes-menu.c
	* app/gui/buffers-menu.c
	* app/gui/channels-menu.c
	* app/gui/colormap-editor-menu.c
	* app/gui/gradients-menu.c
	* app/gui/images-menu.c
	* app/gui/layers-menu.c
	* app/gui/palette-editor-menu.c
	* app/gui/palettes-menu.c
	* app/gui/patterns-menu.c
	* app/gui/templates-menu.c
	* app/gui/vectors-menu.c: made the default (== double click)
	action the first menu entry as suggested by the HIG and
	added/removed separators where appropriate.
2003-09-11 16:43:07 +00:00
Michael Natterer
82321d4a2f app/gui/Makefile.am new files.
2003-09-11  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/themes.[ch]: new files.

	* app/gui/gui.[ch]: code taken from here. It was getting too large.

	* app/gui/preferences-dialog.c; changed accordingly.
2003-09-10 23:42:59 +00:00
Sven Neumann
2ae38423af allow to optionally export all paths from an image into a single SVG file.
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-export.[ch]: allow to optionally export
	all paths from an image into a single SVG file.

	* app/gui/vectors-commands.c: changed accordingly.
2003-09-10 23:00:44 +00:00
Sven Neumann
3e96247853 replaced GTK_CFLAGS by GDK_PIXBUF_CFLAGS.
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/vectors/Makefile.am (INCLUDES): replaced GTK_CFLAGS by
	GDK_PIXBUF_CFLAGS.

	* app/vectors/gimpvectors-export.c: added a first draft of
	GimpVectors SVG export.

	* app/gui/vectors-commands.c (vectors_export_cmd_callback): call
	gimp_vectors_export() with a hardcoded filename.
2003-09-10 23:00:44 +00:00
Sven Neumann
0037f5a7ea app/vectors/gimpvectors-import.[ch] allow to optionally create a
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-import.[ch]
	* app/gui/vectors-commands.c: allow to optionally create a
	GimpVectors object per <path> element. Made this the default until
	there's a GUI for this.
2003-09-10 22:11:02 +00:00
Michael Natterer
268c4fb1ce added lots more "GimpFooFunc gui_foo_func" vtable entries to the Gimp
2003-09-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.[ch]: added lots more "GimpFooFunc gui_foo_func"
	vtable entries to the Gimp struct and wrapper function for them.
	They cover plug-in menu creation and plug-in progress utilities.

	* app/gui/gui.c: fill in the funtion pointers and dispatch
	to the actual functions.

	* app/pdb/Makefile.am (libapppdb_a_LIBADD): removed most hacks
	since the symbols are referenced within libappgui.a now.

	Removed any GTK+ dependency from the plug-ins/ directory:

	* app/plug-in/Makefile.am (INCLUDES): replaces GTK_CFLAGS by
	GDK_PIXBUF_CFLAGS.

	* app/plug-in/plug-in-progress.c
	* app/plug-in/plug-ins.c: replaced gui function calls to create
	menus and progress bars by calls to the wrappers.

	* app/plug-in/plug-in.c (plug_in_close): check dangling PDB
	dialogs using the new wrapper.

	* app/plug-in/plug-in-def.c
	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-in-run.c: removed trailing whitespace.
2003-09-10 22:06:45 +00:00
Sven Neumann
0700992ea4 call gimp_vectors_import(). Hardcoded filename to path.svg for now.
2003-09-10  Sven Neumann  <sven@gimp.org>

	* app/gui/vectors-commands.c (vectors_import_cmd_callback): call
	gimp_vectors_import(). Hardcoded filename to path.svg for now.

	* app/vectors/gimpvectors-import.c: more work on the SVG parser.
2003-09-10 16:52:45 +00:00