1. 23 Oct, 2004 1 commit
    • Michael Natterer's avatar
      When there are variants of actions with and without dialog, let the · fd6d30fd
      Michael Natterer authored
      2004-10-23  Michael Natterer  <mitch@gimp.org>
      
      	When there are variants of actions with and without dialog, let
      	the dialog-less actions try to use the values from the last dialog
      	invocation:
      
      	* app/actions/channels-actions.c
      	* app/actions/channels-commands.[ch]
      	* app/actions/layers-actions.c
      	* app/actions/layers-commands.[ch]
      	* app/actions/vectors-actions.c
      	* app/actions/vectors-commands.[ch]: renamed the foo-new-defaults
      	actions to foo-new-last-values and use the last values entered in
      	the dialogs.
      
      	* app/widgets/gimpchanneltreeview.c
      	* app/widgets/gimpitemtreeview.c
      	* app/widgets/gimplayertreeview.c
      	* app/widgets/gimpvectorstreeview.c: changed accordingly. Show
      	the dialog on clicking "New" and call the last-values action on
      	<shift>+click.
      
      	* app/actions/select-actions.c
      	* app/actions/vectors-commands.c: renamed the foo-stroke-last-vals
      	to -last-values.
      
      	* app/widgets/gimpselectioneditor.c
      	* app/widgets/gimpvectorstreeview.c: stroke with last values on
      	<shift> clicking the stroke buttons.
      fd6d30fd
  2. 16 Oct, 2004 1 commit
    • Michael Natterer's avatar
      Ported the layers, channels and paths dialogs from · 8effb0cf
      Michael Natterer authored
      2004-10-16  Michael Natterer  <mitch@gimp.org>
      
      	Ported the layers, channels and paths dialogs from
      	gimp_editor_add_button() to gimp_editor_add_action_button(),
      	removing a massive amount of duplicated code, sensitivity logic
      	and confusing utility functions.
      
      	* app/actions/channels-actions.c
      	* app/actions/channels-commands.[ch]
      	* app/actions/layers-actions.c
      	* app/actions/layers-commands.[ch]
      	* app/actions/vectors-actions.c
      	* app/actions/vectors-commands.[ch]: added "foo-new-default"
      	actions and callbacks which create items without a dialog,
      	optionally using default values from a passed template. Removed
      	all public utility function that were passed as function pointers
      	to widget construtors. Added tooltips to all actions which are now
      	used for dialog buttons.
      
      	* app/widgets/gimpeditor.c (gimp_editor_add_action_button):
      	automatically create multi-line tooltips showing the modifiers for
      	extended action buttons. Removes the need for lots of insane
      	format strings that need to be translated correctly.
      
      	* app/widgets/gimpitemtreeview.[ch] (struct GimpItemTreeViewClass):
      	replaced tooltip and help_id strings by action names.
      
      	(struct GimpItemTreeView)
      	(gimp_item_tree_view_new): removed "edit", "new" and "activate"
      	function pointers.
      
      	(gimp_item_tree_view_constructor): create all buttons
      	with gimp_editor_add_action_button(), using the action names
      	from GimpItemTreeViewClass.
      
      	Removed tons of "clicked" callbacks and all code which sets the
      	buttons' sensitivity. They are not needed any longer.
      
      	Require all subclasses to implement GimpItemTreeView::new_item(),
      	a new virtual function which creates a plain new item without
      	showing a dialog.
      
      	* app/widgets/gimpdrawabletreeview.c
      	* app/widgets/gimpchanneltreeview.c
      	* app/widgets/gimplayertreeview.c
      	* app/widgets/gimpvectorstreeview.c: fill in the action names and
      	implement GimpItemTreeView::new_item(). Removed all button
      	sensitivity logic.
      
      	* app/dialogs/dialogs-constructors.c: changed accordingly. Doesn't
      	include anything from actions/ any more.
      8effb0cf
  3. 25 May, 2004 1 commit
    • Michael Natterer's avatar
      added GimpContext parameters to GimpActivateItemFunc, GimpNewItemFunc and · 18d2d499
      Michael Natterer authored
      2004-05-25  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpitemtreeview.h: added GimpContext parameters
      	to GimpActivateItemFunc, GimpNewItemFunc and GimpEditItemFunc.
      
      	* app/widgets/gimpdrawabletreeview.c
      	* app/widgets/gimpitemtreeview.c: pass the view's context to
      	the functions.
      
      	* app/actions/actions.c (action_data_get_context): return
      	gimp_get_user_context() if "data" is a Gimp.
      
      	* app/actions/channels-commands.[ch]
      	* app/actions/layers-commands.[ch]
      	* app/actions/vectors-commands.[ch]: added GimpContext parameters
      	to the resp. activate, new and edit functions and use the passed
      	context instead of gimp_get_user_context().
      
      	* app/actions/layers-commands.[ch]: removed the merge and flatten
      	callbacks.
      
      	* app/actions/image-commands.[ch]: made public layer merge utility
      	function private and cleaned the whole file up a lot.
      
      	* app/actions/layers-actions.c: use the callbacks from
      	image-commands.c for merge and flatten.
      
      	* app/actions/edit-commands.c
      	* app/actions/file-commands.c
      	* app/actions/select-commands.c: use action_data_get_context()
      	instead of gimp_get_user_context().
      
      	* app/actions/edit-actions.c: some cleanup.
      18d2d499
  4. 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
  5. 19 Apr, 2004 1 commit
    • Michael Natterer's avatar
      More GtkAction stuff (still unused): · 8848558f
      Michael Natterer authored
      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.
      8848558f
  6. 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
  7. 27 Aug, 2003 1 commit
    • Michael Natterer's avatar
      Cleaned up my "To Selection" cleanup: · a7b2c160
      Michael Natterer authored
      2003-08-27  Michael Natterer  <mitch@gimp.org>
      
      	Cleaned up my "To Selection" cleanup:
      
      	* app/gui/channels-commands.[ch]
      	* app/gui/layers-commands.[ch]
      	* app/gui/vectors-commands.[ch]: removed the separate
      	cmd_callbacks for REPLACE,ADD,SUBTRACT,INTERSECT and pass the
      	operation as "guint action" to the callback.
      
      	* app/gui/channels-menu.c
      	* app/gui/image-menu.c
      	* app/gui/layers-menu.c
      	* app/gui/vectors-menu.c: changed accordingly.
      a7b2c160
  8. 21 Aug, 2003 1 commit
    • Michael Natterer's avatar
      app/widgets/Makefile.am new file defining the available help topics. Work · a319c455
      Michael Natterer authored
      2003-08-21  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/Makefile.am
      	* app/widgets/gimphelp-ids.h: new file defining the available help
      	topics. Work in progress and totally unusable for matching to the
      	help system. Stay tuned...
      
      	* app/gui/about-dialog.c
      	* app/gui/brushes-menu.c
      	* app/gui/buffers-menu.c
      	* app/gui/channels-commands.[ch]
      	* app/gui/channels-menu.c
      	* app/gui/edit-commands.c
      	* app/gui/file-commands.c
      	* app/gui/file-new-dialog.c
      	* app/gui/file-open-dialog.c
      	* app/gui/file-save-dialog.c
      	* app/gui/gradients-commands.c
      	* app/gui/gradients-menu.c
      	* app/gui/image-menu.c
      	* app/gui/layers-commands.[ch]
      	* app/gui/layers-menu.c
      	* app/gui/module-browser.c
      	* app/gui/offset-dialog.c
      	* app/gui/palettes-menu.c
      	* app/gui/patterns-menu.c
      	* app/gui/resize-dialog.c
      	* app/gui/select-commands.c
      	* app/gui/templates-menu.c
      	* app/gui/tips-dialog.c
      	* app/gui/toolbox-menu.c
      	* app/gui/vectors-commands.[ch]
      	* app/gui/vectors-menu.c: replaced literal HTML file paths by help
      	IDs from gimphelp-ids.h. Renamed some menu callbacks to be
      	consistent with similar ones. This is just an intermediate commit
      	and not finished.
      
      	While browsing all the menus, I noticed that our "x to selection"
      	functions are not consistent at all. They should all offer the
      	REPLACE,ADD,SUBTRACT,INTERSECT options:
      
      	* app/core/gimpchannel.[ch]: added new function
      	gimp_channel_new_from_alpha(). Removed gimp_channel_layer_alpha()
      	and gimp_channel_layer_mask().
      
      	* app/core/gimpimage-mask.[ch]: added
      	gimp_image_mask_select_alpha() and
      	gimp_image_mask_select_component() which offer the full set of
      	operation, feather and feather_radius parameters as the other
      	selection functions.
      
      	* app/core/gimpimage-mask-select.[ch]: removed
      	gimp_image_mask_layer_alpha() and gimp_image_mask_layer_mask().
      
      	* app/gui/channels-commands.c (channels_channel_to_selection): use
      	gimp_image_mask_select_component() instead of implementing it
      	here.
      
      	* app/gui/image-menu.c
      	* app/gui/layers-commands.[ch]: offer the full choice of
      	REPLACE,ADD,SUBTRACT,INTERSECT with "Alpha to Selection" and "Mask
      	to Selection".
      
      	* tools/pdbgen/pdb/selection.pdb: changed accordingly.
      
      	* app/pdb/selection_cmds.c: regenerated.
      a319c455
  9. 12 Mar, 2003 1 commit
    • Michael Natterer's avatar
      added descriptions to the GimpChannelType enum. · f2ca2574
      Michael Natterer authored
      2003-03-12  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/core-enums.[ch]: added descriptions to the
      	GimpChannelType enum.
      
      	* app/core/gimpimage.[ch]: added gimp_image_get_component_index()
      	utility function which does the GIMP_RED_CHANNEL -> RED_PIX etc.
      	mapping. Use it in all component getters/setters.
      
      	* app/widgets/gimpcomponenteditor.[ch]: new widget implementing
      	the component list using GtkListStore/GtkTreeView. Still a bit
      	ugly because it uses the standard check instead of the eye icon.
      
      	* app/widgets/gimpcomponentlistitem.[ch]: removed.
      
      	* app/widgets/Makefile.am
      	* app/widgets/widgets-types.h
      	* app/widgets/gimpvectorslistview.c: changed accordingly.
      
      	* app/widgets/gimpchannellistview.[ch]: create a GimpComponentEditor
      	and removed the old GtkList based stuff.
      
      	* app/widgets/gimpitemlistview.[ch]: keep around a pointer to the
      	GimpMenuFactory passed to the constructor.
      
      	* app/gui/channels-menu.c (channels_menu_update): do the right
      	thing if "data" is a GimpComponentEditor.
      
      	* app/gui/channels-commands.[ch]: ditto. Implemented duplicating
      	of components and component to selection (bug #61018).
      f2ca2574
  10. 11 Mar, 2003 1 commit
    • Sven Neumann's avatar
      added gimp_channel_new_from_component() which creates a new GimpChannel · 3c30a90b
      Sven Neumann authored
      2003-03-12  Sven Neumann  <sven@gimp.org>
      
      	* app/core/gimpchannel.[ch]: added gimp_channel_new_from_component()
      	which creates a new GimpChannel from an image's color component.
      
      	* app/gui/channels-commands.[ch]: added
      	channels_duplicate_component_cmd_callback().
      
      	* app/paint-funcs/paint-funcs-generic.h
      	* app/paint-funcs/paint-funcs.[ch]: added code to extract a color
      	component from a PixelRegion (untested!).
      
      	* plug-ins/common/checkerboard.c: cosmetics.
      3c30a90b
  11. 13 Jan, 2003 1 commit
    • Michael Natterer's avatar
      app/gui/brushes-menu.[ch] app/gui/buffers-menu.[ch] · 6f29b766
      Michael Natterer authored
      2003-01-13  Michael Natterer  <mitch@gimp.org>
      
      	* 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/file-open-menu.[ch]
      	* app/gui/file-save-menu.[ch]
      	* app/gui/gradient-editor-menu.[ch]
      	* app/gui/gradients-menu.[ch]
      	* app/gui/image-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/toolbox-menu.[ch]
      	* app/gui/vectors-menu.[ch]: new files, one per GimpItemFactory,
      	containing the menu entries and their setup and update funcs.
      
      	* app/gui/brushes-commands.[ch]
      	* app/gui/patterns-commands.[ch]: removed because they contained
      	only update funcs.
      
      	* app/gui/Makefile.am: changed accordingly. Split the huge
      	SOURCES list in smaller ones for menus and dialogs.
      
      	* app/gui/menus.[ch]: removed the menu entries and setup funcs.
      	Added MENU_SEPARATOR() and MENU_BRANCH() macros to the header.
      	Made some utility functions public.
      
      	* app/display/gimpdisplayshell.[ch]
      	* app/gui/buffers-commands.[ch]
      	* app/gui/channels-commands.[ch]
      	* app/gui/colormap-editor-commands.[ch]
      	* app/gui/dialogs-commands.[ch]
      	* app/gui/documents-commands.[ch]
      	* app/gui/gradient-editor-commands.[ch]
      	* app/gui/gradients-commands.[ch]
      	* app/gui/images-commands.[ch]
      	* app/gui/layers-commands.[ch]
      	* app/gui/palette-editor-commands.[ch]
      	* app/gui/palettes-commands.[ch]
      	* app/gui/qmask-commands.[ch]
      	* app/gui/vectors-commands.[ch]: removed the update funcs.
      
      	* app/gui/plug-in-menus.[ch]: renamed plug_in_set_menu_sensitivity()
      	to plug_in_menus_update(). Cleanup.
      
      	* app/gui/paths-dialog.[ch]: added the <Paths> entries here
      	so they will go away together with these files.
      
      	* app/gui/dialogs-constructors.c
      	* app/gui/drawable-commands.c: removed useless #includes.
      6f29b766
  12. 02 Sep, 2002 1 commit
    • Michael Natterer's avatar
      DND cleanup part 1: · c5d4b702
      Michael Natterer authored
      2002-09-02  Michael Natterer  <mitch@gimp.org>
      
      	DND cleanup part 1:
      
      	* app/widgets/gimpdnd.[ch]: changed all gimp_dnd_*_dest_set() and
      	_unset() functions to _dest_add() and _dest_remove(). Switch from
      	using static arrays of GtkTargetEntries to dynamic GtkTargetLists.
      	The _add() and _remove() functions configure the drag dest
      	automatically if not already done, so there is no need to call
      	gtk_drag_dest_set() on the widget any more. Drag source cleanup
      	will follow...
      
      	Renamed silly function names gimp_gtk_* to gimp_dnd_*
      
      	* app/display/gimpdisplayshell.c
      	* app/tools/gimpblendtool.c
      	* app/widgets/gimpcolormapeditor.c
      	* app/widgets/gimpcontainerview.c
      	* app/widgets/gimpgradienteditor.c
      	* app/widgets/gimplistitem.c
      	* app/widgets/gimpmenuitem.c
      	* app/widgets/gimppreview.c
      	* app/widgets/gimppaletteeditor.c
      	* app/widgets/gimpselectioneditor.c
      	* app/widgets/gimptoolbox-color-area.c
      	* app/widgets/gimptoolbox-indicator-area.c
      	* app/widgets/gimptoolbox.c
      	* app/gui/about-dialog.c
      	* app/gui/color-select.c
      	* app/gui/device-status-dialog.c
      	* app/gui/tool-options-dialog.c: changed accordingly. Removed
      	all calls to gtk_drag_dest_set() and their GtkTargetEntry tables.
      
      	* app/widgets/gimpchannellistitem.c: enabled some commented out
      	dnd code (which will not work since dnd needs more love...)
      
      	* app/widgets/gimpitemlistview.[ch]: added a third
      	"gboolean interactive" parameter to GimpItemNewFunc.
      
      	* app/gui/channels-commands.[ch]
      	* app/gui/layers-commands.[ch]
      	* app/gui/vectors-commands.[ch]: if the new_item_func is called
      	with "interactive == FALSE", don't pop up a dialog but silently
      	create a new item of the image's size.
      
      	* app/widgets/gimpdrawablelistview.c: use the new feature to allow
      	color and pattern drops to the "New" button, which creates a new
      	layer/channel filled with the color/pattern.
      	(special feature for drc ;-)
      
      	* app/widgets/gimppaletteeditor.c: fixed event handling so we see
      	the context menu again. Also, don't redraw on "expose", since
      	GtkPreview does that for us.
      c5d4b702
  13. 17 Dec, 2001 1 commit
    • Michael Natterer's avatar
      changed the GimpNewDrawableFunc typedef to take an additional · d15b07b4
      Michael Natterer authored
      2001-12-17  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpdrawablelistview.[ch]: changed
      	the GimpNewDrawableFunc typedef to take an additional
      	"GimpDrawable *template" paramater, added the "Drop to New"
      	feature again by passing the dropped drawable to
      	view->new_drawable_func().
      
      	* app/gui/channels-commands.[ch]: channels_new_channel_query:
      	* app/gui/layers-commands.[ch]: layers_new_layer_query:
      
      	Added the "template" parameter because they are used as the
      	views' new_drawable_func(), create layers/channels with
      	the template's properties if a template is passed.
      d15b07b4
  14. 30 Nov, 2001 1 commit
    • Michael Natterer's avatar
      app/core/Makefile.am new files: the QMask stuff stripped from GUI code. · bba84137
      Michael Natterer authored
      2001-11-30  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/Makefile.am
      	* app/core/gimpimage-qmask.[ch]: new files: the QMask stuff
      	stripped from GUI code. Added gimp_image_qmask_invert().
      
      	* app/core/gimpimage.[ch]: removed the QMask functions.
      
      	* app/display/Makefile.am
      	* app/display/gimpdisplayshell-qmask.[ch]: removed.
      
      	* app/gui/Makefile.am
      	* app/gui/qmask-commands.[ch]: new files for the new QMask item
      	factory callbacks and the qmask query dialog.
      
      	* app/gui/menus.c: added a context menu for the QMask button.
      
      	* app/display/gimpdisplayshell.c
      	* app/display/gimpdisplayshell-handlers.c: don't include the qmask
      	stuff.
      
      	* app/display/gimpdisplayshell-callbacks.[ch]: Moved the 2 qmask
      	callbacks here. Don't popup the dialog on double_click. Show
      	the contect menu on right-click.
      
      	* app/display/gimpdisplayshell-callbacks.[ch]:
      	gimp_display_shell_canvas_events(): removed the hack of
      	conntecting "key_press_event" to gtk_true() while a tool is
      	active. Instead, check for (event & GDK_BUTTON1_MASK) in the
      	key_press and key_release handlers and stop signal emission. Save
      	the modifier state on "button_press" and restore it after
      	"button_release".
      
      	Changed the way context menus are updated/shown:
      
      	- removed GimpContainerContextFunc.
      	- pass around item factory identifiers (e.g. "<Brushes>")
      	- added voodoo to update the menus before showing them.
      
      	* app/widgets/gimpitemfactory.[ch]: gimp_item_factory_new(): take
      	a GimpItemFactoryUpdateFunc parameter, attach it as data to the
      	factory and use it to update the menu in
      	gimp_item_factory_popup_with_date().
      
      	* app/widgets/gimpwidgets-utils.[ch]: removed
      	gimp_item_factory_popup_with_data() here.
      
      	* app/widgets/gimpbrushfactoryview.[ch]
      	* app/widgets/gimpbufferview.[ch]
      	* app/widgets/gimpcontainereditor.[ch]
      	* app/widgets/gimpdatafactoryview.[ch]
      	* app/widgets/gimpdocumentview.[ch]
      	* app/widgets/gimpdrawablelistview.[ch]: use item_factory
      	identifier strings all over the place.
      
      	* app/widgets/gimpdockbook.c: removed the menu update code, it's
      	now in gui/dialogs-commands.c.
      
      	* app/gui/brushes-commands.[ch]
      	* app/gui/buffers-commands.[c]
      	* app/gui/channels-commands.[ch]
      	* app/gui/dialogs-commands.[ch]
      	* app/gui/documents-commands.[ch]
      	* app/gui/gradient-editor-commands.[ch]
      	* app/gui/gradients-commands.[ch]
      	* app/gui/layers-commands.[ch]
      	* app/gui/palettes-commands.[ch]
      	* app/gui/patterns-commands.[ch]: removed all show_context_menu()
      	functions and made the update functions public. Changed all
      	update functions to use the gimp_item_factory_set_foo() methods
      	instead of gimp_menu_item_set_foo().
      
      	* app/gui/menus.c: pass the update functions to the
      	gimp_item_factory_new().
      
      	* app/gui/dialogs-constructors.c: pass item factory identifiers to
      	all view constructors.
      
      	* app/gui/gradient-editor.c: show the context menu using the new
      	method.
      
      	* app/gui/toolbox.c: no need to include "dialogs-commands.h".
      bba84137
  15. 29 Apr, 2001 1 commit
    • Michael Natterer's avatar
      added virtual method context_item() which works like select_item() and · 29fc0026
      Michael Natterer authored
      2001-04-29  Michael Natterer  <mitch@gimp.org>
      
      	* app/widgets/gimpcontainerview.[ch]: added virtual method
      	context_item() which works like select_item() and activate_item()
      	and a function to trigger the signal from subclasses (marked as
      	"protected").
      
      	* app/widgets/gimpcontainerlistview.c: invoke context_item() on
      	right click.
      
      	* app/widgets/gimpdrawablelistview.[ch]: implement context_item()
      	and show a context menu. The functions to show the menu as well as
      	functions to create a new drawable and to edit it's attriutes must
      	be passed to the constructor now.
      
      	* app/gui/channels-commands.[ch]
      	* app/gui/layers-commands.[ch]: added functions which show the
      	layers and channels context menus. No accelerators supported yet.
      	Auto-destroy all dialogs when their drawable is removed from the
      	image.
      
      	* app/gui/dialogs-constructors.c: changed the calls to
      	gimp_drawable_list_view_new() accordingly.
      
      	* app/gui/menus.c
      	* app/gui/test-commands.[ch]: removed some test dialogs.
      29fc0026
  16. 21 Apr, 2001 1 commit
    • Michael Natterer's avatar
      app/Makefile.am app/lc_dialogP.h removed stuff that will go away anyway · 44d41e8e
      Michael Natterer authored
      2001-04-21  Michael Natterer  <mitch@gimp.org>
      
      	* app/Makefile.am
      	* app/lc_dialogP.h
      	* app/paths_dialogP.h: removed stuff that will go away anyway (put
      	the declarations to the public headers).
      
      	* app/gimpui.[ch]: new function gimp_widget_get_callback_context()
      	which may only be called from a *_cmd_callback() and returns the
      	data we attached with weird methods.
      
      	* app/gui/Makefile.am
      	* app/gui/channels-commands.[ch]: callbacks independent from the
      	channels dialog and the "new" and "edit channel" dialogs.
      
      	* app/gui/channels-dialog.[ch]
      	* app/gui/layers-commands.c
      	* app/gui/layers-dialog.[ch]
      	* app/lc_dialog.[ch]
      	* app/gui/menus.c
      	* app/gui/paths-dialog.[ch]
      	* app/tools/gimpbezierselecttool.c
      	* po/POTFILES.in: changed accordingly.
      44d41e8e