1. 05 Sep, 2005 1 commit
    • Sven Neumann's avatar
      Address bug #307971: · ec56ef9d
      Sven Neumann authored
      2005-09-05  Sven Neumann  <sven@gimp.org>
      
      	Address bug #307971:
      
      	* app/core/gimp-gui.[ch]
      	* app/display/gimpdisplay.[ch]
      	* app/gui/gui-vtable.c
      	* tools/pdbgen/pdb/display.pdb: added PDB function to obtain a
      	window handle on an image display.
      
      	* app/pdb/display_cmds.c
      	* app/pdb/internal_procs.c
      	* libgimp/gimpdisplay_pdb.[ch]: regenerated.
      
      	* libgimp/gimpui.[ch]: added functions to set a GtkWindow transient
      	to an image display.
      
      	* plug-ins/common/gauss.c: use the new function exemplarily.
      
      	* libgimp/gimp.def
      	* libgimp/gimpui.def: updated.
      ec56ef9d
  2. 12 Apr, 2005 1 commit
    • Sven Neumann's avatar
      handle a NULL palette with GIMP_CUSTOM_PALETTE type, use the builtin mono · 0e678c4c
      Sven Neumann authored
      2005-04-13  Sven Neumann  <sven@gimp.org>
      
      	* app/core/gimpimage-convert.c (gimp_image_convert): handle a NULL
      	palette with GIMP_CUSTOM_PALETTE type, use the builtin mono
      	palette as fallback.
      
      	* app/dialogs/convert-dialog.c: handle empty palette container.
      
      	* app/gui/gui-vtable.c (gui_pdb_dialog_new): removed unused code.
      
      	* tools/pdbgen/pdb/convert.pdb: don't load the palettes implicitely.
      
      	* app/pdb/convert_cmds.c: regenerated.
      0e678c4c
  3. 24 Mar, 2005 1 commit
    • Michael Natterer's avatar
      Added API to explicitly register dynamic menu items hierarchies. Fixes bug · 0a5ce16b
      Michael Natterer authored
      2005-03-24  Michael Natterer  <mitch@gimp.org>
      
      	Added API to explicitly register dynamic menu items hierarchies.
      	Fixes bug #170623.
      
      	* app/core/gimp.h: added "GSList *plug_in_menu_branches".
      
      	* app/plug-in/plug-in-types.h
      
      	* app/plug-in/plug-ins.[ch]: added API to register plug-in menu
      	branches, just as for locale and help domans. Cleaned up handling
      	of locale and help domains.
      
      	(plug_ins_exit): free the registered menu branches.
      
      	* app/actions/plug-in-actions.[ch] (plug_in_actions_add_branch):
      	new function to explicitly add a menu branch action.
      
      	(plug_in_actions_setup): add the registered menu branches to each
      	new action group.
      
      	(plug_in_actions_build_path): always strip the untranslated menu
      	path from underlines before using it as hash table key or action
      	name.
      
      	* app/menus/plug-in-menus.c (plug_in_menus_add_proc): changed
      	accordingly: strip underlines from untranslated menu paths before
      	passing them to plug_in_menus_build_path().
      
      	* app/core/gimp-gui.[ch]: added gimp_menus_create_branch() plus
      	vtable entry to access the new stuff from the core. Renamed the
      	functions desling with items from gimp_foo_entry() to
      	gimp_foo_item().
      
      	* app/gui/gui-vtable.c: implement create_branch() and add the
      	branch action to all existing "plug-in" action groups. Note that
      	we don't need to create any menus because that happens implicitly
      	when adding menu items.
      
      	* tools/pdbgen/pdb/plug_in.pdb (plugin_menu_branch_register): new
      	PDB wrapper to access branch registering from plug-ins.
      
      	* app/pdb/internal_procs.c
      	* app/pdb/plug_in_cmds.c
      	* libgimp/gimpplugin_pdb.[ch]: regenerated.
      
      	* libgimp/gimp.def: changed accordingly.
      
      	* plug-ins/script-fu/script-fu-scripts.c (script_fu_find_scripts):
      	register the menu branches for all included scripts.
      0a5ce16b
  4. 31 Jan, 2005 1 commit
    • Michael Natterer's avatar
      Some cleanup to make plug-in menu creation less hackish and finally enable · f3e0792d
      Michael Natterer authored
      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.
      f3e0792d
  5. 18 Nov, 2004 1 commit
    • Michael Natterer's avatar
      The following fixes have no visible effect because nobody uses · b8344d51
      Michael Natterer authored
      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.
      b8344d51
  6. 17 Nov, 2004 1 commit
    • Michael Natterer's avatar
      Made plug-in menu registration work the same way for ordinary and · d871be74
      Michael Natterer authored
      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.
      d871be74
  7. 08 Oct, 2004 1 commit
    • Michael Natterer's avatar
      app/display/gimpdisplayshell.c (gimp_display_shell_real_scaled) · fb315d6c
      Michael Natterer authored
      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.
      fb315d6c
  8. 27 Sep, 2004 1 commit
    • Michael Natterer's avatar
      app/actions/brushes-actions.c app/actions/gradients-actions.c · 96a27b59
      Michael Natterer authored
      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.
      96a27b59
  9. 22 Sep, 2004 1 commit
    • Michael Natterer's avatar
      app/plug-in/Makefile.am removed... ...and added with a new name. · 9ffc00be
      Michael Natterer authored
      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.
      9ffc00be
  10. 13 Sep, 2004 1 commit
    • Michael Natterer's avatar
      configure.in added new directory app/dialogs and link libappdialogs.c into · 7d065360
      Michael Natterer authored
      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.
      7d065360
  11. 31 Aug, 2004 1 commit
    • Sven Neumann's avatar
      added a boolean parameter to gimp_dialog_factory_dialog_new() to let the · ce1370bb
      Sven Neumann authored
      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.
      ce1370bb
  12. 25 Aug, 2004 1 commit
    • Sven Neumann's avatar
      added gimp_message_box_repeat(). · 80531ec9
      Sven Neumann authored
       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.
      80531ec9
  13. 11 Aug, 2004 1 commit
    • Michael Natterer's avatar
      added "display_ID" to gimp_new_progress(). · ca30f738
      Michael Natterer authored
      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.
      ca30f738
  14. 10 Aug, 2004 1 commit
    • Michael Natterer's avatar
      Redid the whole internal progress stuff: don't pass around · 02d2b990
      Michael Natterer authored
      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.
      02d2b990
  15. 12 Jul, 2004 1 commit
    • Michael Natterer's avatar
      app/core/Makefile.am new files defining a GimpGui vtable struct and · 509a6c57
      Michael Natterer authored
      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.
      509a6c57
  16. 10 Jul, 2004 2 commits
    • Michael Natterer's avatar
      new utility functions which create and destroy GParameter arrays for · 48dfe699
      Michael Natterer authored
      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.
      48dfe699
    • Michael Natterer's avatar
      Removed any remaining GUI dependency from the PDB wrappers: · 2176afbb
      Michael Natterer authored
      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.
      2176afbb
  17. 09 Jul, 2004 1 commit
    • Michael Natterer's avatar
      app/gui/Makefile.am app/gui/brush-select.[ch] app/gui/font-select.[ch] · 8d9e3622
      Michael Natterer authored
      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.
      8d9e3622
  18. 01 Jun, 2004 1 commit
    • Sven Neumann's avatar
      tools/pdbgen/pdb/image.pdb app/pdb/image_cmds.c reverted changes I did to · c509204b
      Sven Neumann authored
      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.
      c509204b
  19. 17 May, 2004 1 commit
    • Michael Natterer's avatar
      put the image popup menu into a dummy menubar to work around the silly · cf3533ba
      Michael Natterer authored
      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().
      cf3533ba
  20. 06 May, 2004 2 commits
    • Michael Natterer's avatar
      Enabled multiple menu entries per plug-in procedure: · 7b943b64
      Michael Natterer authored
      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.
      7b943b64
    • Michael Natterer's avatar
      configure.in app/Makefile.am app/menus/.cvsignore app/menus/Makefile.am · d3439fc3
      Michael Natterer authored
      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.
      d3439fc3
  21. 29 Apr, 2004 1 commit
    • Michael Natterer's avatar
      Switch from GtkItemFactory to GtkUIManager. The migration is almost · 46542801
      Michael Natterer authored
      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.
      46542801
  22. 27 Apr, 2004 1 commit
    • Michael Natterer's avatar
      Correctly translated & sorted plug-in actions & menu entries: · 4e8105c1
      Michael Natterer authored
      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.
      4e8105c1
  23. 26 Apr, 2004 1 commit
    • Michael Natterer's avatar
      removed "locale_domain" and "help_domain" parameters from · b69ddb39
      Michael Natterer authored
      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.
      b69ddb39
  24. 25 Apr, 2004 1 commit
  25. 22 Apr, 2004 1 commit
    • Michael Natterer's avatar
      remember and ref the created widgets. Added gimp_ui_manager_ui_popup() · 10718425
      Michael Natterer authored
      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.
      10718425
  26. 21 Apr, 2004 1 commit
    • Michael Natterer's avatar
      app/widgets/Makefile.am app/widgets/widgets-types.h new GtkUIManager · 0b8c4b3e
      Michael Natterer authored
      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.
      0b8c4b3e
  27. 29 Jan, 2004 1 commit
    • Simon Budig's avatar
      Store the zoom factor as float, not as a ratio. · 645a1ab6
      Simon Budig authored
      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
      645a1ab6
  28. 12 Jan, 2004 1 commit
    • Sven Neumann's avatar
      call the callback with the selected image which is not necessarily the · cbdb6947
      Sven Neumann authored
      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.
      cbdb6947
  29. 11 Nov, 2003 1 commit
    • Michael Natterer's avatar
      split out function themes_apply_theme() from themes_init(). Connect to · 0ce22bfc
      Michael Natterer authored
      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...
      0ce22bfc
  30. 10 Nov, 2003 2 commits
    • Michael Natterer's avatar
      #include "themes.h". · 5da6a94b
      Michael Natterer authored
      2003-11-10  Michael Natterer  <mitch@gimp.org>
      
      	* app/gui/gui-vtable.c: #include "themes.h".
      5da6a94b
    • Michael Natterer's avatar
      Made plug-ins honor the current GIMP theme: · cd218fef
      Michael Natterer authored
      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.
      cd218fef
  31. 08 Nov, 2003 1 commit
    • Michael Natterer's avatar
      To be multihead safe, each new window or menu needs to be associated with · bcd9794a
      Michael Natterer authored
      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.
      bcd9794a
  32. 07 Nov, 2003 1 commit
    • Michael Natterer's avatar
      added "wm_name", "wm_class", "display_name" and "monitor_number" to the · efd9a3e1
      Michael Natterer authored
      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.
      efd9a3e1
  33. 13 Oct, 2003 1 commit
    • Michael Natterer's avatar
      renamed gimp_dialog_factories_idle() and _unidle() to · 2b0c0513
      Michael Natterer authored
      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.
      2b0c0513
  34. 02 Oct, 2003 1 commit
    • Michael Natterer's avatar
      Cleaned up the app init and exit stuff even more. Also reduces the number · 89d936f3
      Michael Natterer authored
      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.
      89d936f3