1. 10 Jul, 2005 1 commit
    • Michael Natterer's avatar
      app/actions/layers-actions.c app/actions/layers-commands.[ch] · 20b4769c
      Michael Natterer authored
      2005-07-10  Michael Natterer  <mitch@gimp.org>
      	* app/actions/layers-actions.c
      	* app/actions/layers-commands.[ch]
      	* app/core/core-enums.[ch]
      	* app/core/gimpimage-undo-push.[ch]
      	* app/core/gimplayer-floating-sel.c
      	* app/core/gimplayer.[ch]
      	* app/text/gimptextlayer-xcf.c
      	* app/widgets/gimphelp-ids.h
      	* app/widgets/gimplayertreeview.[ch]
      	* app/xcf/xcf-load.c
      	* app/xcf/xcf-private.h
      	* app/xcf/xcf-save.c
      	* tools/pdbgen/pdb/layer.pdb
      	* menus/image-menu.xml.in
      	* libgimp/gimp.def: did a global s/preserve_trans/lock_alpha/ in
      	preparation for more layer locking flags.
      	* app/pdb/procedural_db.c
      	* libgimp/gimplayer.[ch]: added compat stuff for preserve_trans.
      	* app/pdb/layer_cmds.c
      	* libgimp/gimplayer_pdb.[ch]: regenerated.
      	* plug-ins/common/colortoalpha.c
      	* plug-ins/common/iwarp.c
      	* plug-ins/common/psd.c
      	* plug-ins/common/psd_save.c
      	* plug-ins/common/psp.c
      	* plug-ins/common/rotate.c
      	* plug-ins/common/threshold_alpha.c
      	* plug-ins/common/vpropagate.c
      	* plug-ins/script-fu/scripts/3d-outline.scm
      	* plug-ins/script-fu/scripts/alien-glow-bar.scm
      	* plug-ins/script-fu/scripts/alien-glow-bullet.scm
      	* plug-ins/script-fu/scripts/alien-glow-logo.scm
      	* plug-ins/script-fu/scripts/basic1-logo.scm
      	* plug-ins/script-fu/scripts/basic2-logo.scm
      	* plug-ins/script-fu/scripts/beveled-pattern-button.scm
      	* plug-ins/script-fu/scripts/blend-anim.scm
      	* plug-ins/script-fu/scripts/blended-logo.scm
      	* plug-ins/script-fu/scripts/bovinated-logo.scm
      	* plug-ins/script-fu/scripts/burn-in-anim.scm
      	* plug-ins/script-fu/scripts/carved-logo.scm
      	* plug-ins/script-fu/scripts/chalk.scm
      	* plug-ins/script-fu/scripts/chip-away.scm
      	* plug-ins/script-fu/scripts/comic-logo.scm
      	* plug-ins/script-fu/scripts/coolmetal-logo.scm
      	* plug-ins/script-fu/scripts/crystal-logo.scm
      	* plug-ins/script-fu/scripts/drop-shadow.scm
      	* plug-ins/script-fu/scripts/gimp-headers.scm
      	* plug-ins/script-fu/scripts/gimp-labels.scm
      	* plug-ins/script-fu/scripts/glowing-logo.scm
      	* plug-ins/script-fu/scripts/gradient-bevel-logo.scm
      	* plug-ins/script-fu/scripts/image-structure.scm
      	* plug-ins/script-fu/scripts/neon-logo.scm
      	* plug-ins/script-fu/scripts/perspective-shadow.scm
      	* plug-ins/script-fu/scripts/starburst-logo.scm
      	* plug-ins/script-fu/scripts/starscape-logo.scm
      	* plug-ins/script-fu/scripts/textured-logo.scm
      	* plug-ins/script-fu/scripts/title-header.scm
      	* plug-ins/script-fu/scripts/waves-anim.scm
      	* plug-ins/xjt/xjt.c: changed accordingly.
  2. 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
      	* 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
      	* 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.
  3. 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.
  4. 15 Sep, 2004 2 commits
    • Michael Natterer's avatar
      added help IDs for the drawable- and vectors-visible and -liked actions as · 186b5908
      Michael Natterer authored
      2004-09-15  Michael Natterer  <mitch@gimp.org>
      	* app/widgets/gimphelp-ids.h: added help IDs for the drawable- and
      	vectors-visible and -liked actions as well as for the layer mask
      	property action.
      	* app/actions/drawable-actions.c
      	* app/actions/vectors-actions.c: use them.
      	* app/actions/layers-actions.c
      	* app/actions/layers-commands.[ch]: ditto. Use
      	GIMP_STOCK_TRANSPARENCY for all layer opacity actions. Replaced
      	"paint_mode" by "mode" in all action and function/variable names
      	because this is the layer mode, not a paint mode.
      	* app/actions/channels-commands.c
      	* app/actions/layers-commands.c
      	* app/actions/vectors-commands.c: set the "activates-default"
      	property on the name entry in all "New Foo" and "Edit Foo
      	Attributes" dialogs except in the "New Layer" dialog.
      	Addresses bug #148026.
      	* menus/image-menu.xml.in: added a (commented out) layer
      	properties menu containing all the new actions.
    • Michael Natterer's avatar
      app/actions/layers-actions.c added actions and callbacks · 6a723efc
      Michael Natterer authored
      2004-09-15  Michael Natterer  <mitch@gimp.org>
      	* app/actions/layers-actions.c
      	* app/actions/layers-commands.[ch]: added actions and callbacks
      	"layers-preserve-transparency" and
      	"layers-paint-mode-first,last,previous,next". Update the "active"
      	state of the recently added layer mask property actions in
      	* app/actions/drawable-actions.c
      	* app/actions/drawable-commands.[ch]: added actions and callbacks
      	for "drawable-visible" and "drawable-linked". Fixes bug #152597.
      	* app/actions/vectors-actions.c
      	* app/actions/vectors-commands.[ch]: same here ("vectors-visible"
      	and "vectors-linked").
      	* app/widgets/gimplayertreeview.c
      	(gimp_layer_tree_view_preserve_button_toggled): flush the image
      	so the new actions are updated. Compress preserve_trans undos.
      	* menus/image-menu.xml.in: added the layer mask property actions
      	to the Layers/Mask submenu.
      	* menus/layers-menu.xml: reordered the mask property actions
      	to have the same order as in the image menu.
  5. 20 Aug, 2004 1 commit
    • Sven Neumann's avatar
      app/actions/layers-actions.[ch] app/actions/layers-commands.[ch] added · c04ddea8
      Sven Neumann authored
      2004-08-21  Sven Neumann  <sven@gimp.org>
      	* app/actions/layers-actions.[ch]
      	* app/actions/layers-commands.[ch]
      	* app/widgets/gimplayertreeview.c: added actions to handle layer
      	masks as suggested in bug #150446.
      	* menus/layers-menu.xml: added menu entries for new actions,
      	commented out raise/lower menu entries.
  6. 23 Jun, 2004 1 commit
    • Michael Natterer's avatar
      removed enum GimpContextSelectType. · d88f23dd
      Michael Natterer authored
      2004-06-23  Michael Natterer  <mitch@gimp.org>
      	* app/actions/context-commands.h: removed enum GimpContextSelectType.
      	* app/actions/actions-types.h: added enum GimpActionSelectType.
      	* app/actions/actions.[ch]: added utility functions
      	action_select_value() and action_select_object().
      	* app/actions/context-actions.c
      	* app/actions/context-commands.c: changed accordingly.
      	* app/actions/layers-actions.c
      	* app/actions/layers-commands.[ch]: merged the layer select
      	callbacks into one using the GimpActionSelectType functions. Added
      	actions and callbacks for modifying the active layer's opacity.
      	* app/menus/menus-types.h: #incude "actions/action-types.h".
      	* app/gui/gui-types.h: #incude "menus/menus-types.h".
      	* app/gui/preferences-dialog.c: allow to enable/disable input
  7. 10 Jun, 2004 1 commit
    • Michael Natterer's avatar
      app/actions/image-actions.c app/actions/image-commands.[ch] · 63e5c047
      Michael Natterer authored
      2004-06-10  Michael Natterer  <mitch@gimp.org>
      	* app/actions/image-actions.c
      	* app/actions/image-commands.[ch]
      	* app/actions/layers-actions.c
      	* app/actions/layers-commands.[ch]: made the
      	"image-convert-rgb/grayscale/indexed" and the
      	"layers-mask-apply/delete" actions GimpEnumActions and merged
      	their callbacks.
  8. 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
      	* 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.
  9. 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
      	* 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/
      	* 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.
  10. 13 Jan, 2004 1 commit
    • Michael Natterer's avatar
      Allow invoking the text tool by double clicking a text layer in the layers · 3bee156b
      Michael Natterer authored
      2004-01-13  Michael Natterer  <mitch@gimp.org>
      	Allow invoking the text tool by double clicking a text layer in
      	the layers dialog, just like the path tool is invoked when double
      	clicking a path.
      	* app/tools/gimptexttool.[ch]: added empty
      	gimp_text_tool_set_layer() stub. Sven, your turn...
      	* app/gui/layers-commands.[ch]: added layers_text_tool() which
      	invokes the text tool on text layers and falls back to
      	layers_edit_layer_query() otherwise.
      	Added layers_text_tool_cmd_callback() for the layers menu.
      	* app/gui/layers-menu.c: added "Text Tool" menu item and hide
      	it for layers which are no text layers.
      	* app/gui/dialogs-constructors.c (dialogs_layer_list_view_new):
      	use layers_text_tool() as "activate" function.
  11. 05 Jan, 2004 1 commit
    • Sven Neumann's avatar
      added GIMP_UNDO_TEXT_LAYER to GimpUndoType enum. · 3451c82f
      Sven Neumann authored
      2004-01-05  Sven Neumann  <sven@gimp.org>
      	* app/core/core-enums.[ch]: added GIMP_UNDO_TEXT_LAYER to
      	GimpUndoType enum.
      	* app/core/gimpimage-undo-push.[ch]: added new undo function
      	* app/text/gimptextlayer.[ch]: renamed gimp_text_layer_render() to
      	Added new function gimp_text_layer_discard().
      	* app/text/gimptextlayer-transform.c: changed accordingly.
      	* app/gui/image-menu.c
      	* app/gui/layers-commands.[ch]
      	* app/gui/layers-menu.c: added menu entries that allow to discard
      	the text information of a text layer (bug #118547).
      	* app/widgets/gimppreviewrendererlayer.c
      	(gimp_preview_renderer_layer_render): treat text layers without a
      	text object like ordinary layers.
      	* app/widgets/gimppreviewrenderer-utils.c: include gimplayer.h
      	instead of gimptextlayer.h.
  12. 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
      	* 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.
  13. 31 Aug, 2003 1 commit
    • Sven Neumann's avatar
      app/gui/layers-commands.[ch] added "Merge Visible Layers..." and "Flatten · 7c542ea7
      Sven Neumann authored
      2003-08-31  Sven Neumann  <sven@gimp.org>
      	* app/gui/layers-commands.[ch]
      	* app/gui/layers-menu.c: added "Merge Visible Layers..." and
      	"Flatten Image" menu entries as suggested in bug #120959.
      	* app/text/gimptext-vectors.c: fixed function declaration; we are
      	passing a PangoGlyph here, not a (PangoGlyph*).
  14. 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.
  15. 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
      	* 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
      	* 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.
  16. 06 Jun, 2003 1 commit
    • Michael Natterer's avatar
      use gtk_label_set_text_with_mnemonic() instead of just · 2c958770
      Michael Natterer authored
      2003-06-06  Michael Natterer  <mitch@gimp.org>
      	* app/widgets/gimpitemfactory.c (gimp_item_factory_set_label):
      	use gtk_label_set_text_with_mnemonic() instead of just
      	* app/gui/image-menu.c
      	* app/gui/toolbox-menu.c: added mnemonics for all sub-menus.
      	Fixes bug #106991.
      	* app/gui/image-menu.c: cleaned up the "Layers" menu: moved
      	sub-menus together. Changed the "Stack" menu's labels and
      	accelerators and added "Select Top/Bottom Layer" for consistency
      	(bound to Home/End).
      	* app/gui/layers-commands.[ch]: changed accordingly. Added the
      	new select top/bottom callbacks.
  17. 17 Feb, 2003 1 commit
    • Michael Natterer's avatar
      added "undo_desc" parameters. · fefaa309
      Michael Natterer authored
      2003-02-17  Michael Natterer  <mitch@gimp.org>
      	* app/core/gimpimage.[ch] (gimp_image_position_*): added
      	"undo_desc" parameters.
      	* app/core/gimpimage-undo-push.c: changed accordingly.
      	* app/widgets/gimpitemlistview.[ch]: moved the item stack
      	manipulation function pointers from the instance to the class
      	struct. Added lots of descriptive strings to be used by tooltips
      	and undo steps.
      	* app/widgets/gimpchannellistview.c
      	* app/widgets/gimpitemlistitem.c
      	* app/widgets/gimplayerlistview.[ch]
      	* app/widgets/gimpvectorslistview.c
      	* app/gui/dialogs-constructors.c
      	* app/gui/layers-commands.[ch]
      	* app/gui/vectors-commands.c: changed accordingly. Cleanup.
  18. 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.
  19. 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.
  20. 12 Apr, 2002 1 commit
    • Michael Natterer's avatar
      reordered some lines, no logic changed. · 1a259d68
      Michael Natterer authored
      2002-04-12  Michael Natterer  <mitch@gimp.org>
      	* app/core/gimpimage-crop.c: reordered some lines, no logic
      	* app/core/gimplayer.[ch]: made gimp_layer_pick_correlate()
      	return a gboolean, not gint.
      	* app/display/gimpdisplayshell.c
      	* app/gui/layers-commands.[ch]
      	* app/gui/menus.c: added "<Image>/Layers/Crop Layer" which resizes
      	the active layer to the current selection's bounds, just as
      	"<Image>/Image/Crop Image"
  21. 11 Mar, 2002 1 commit
    • Michael Natterer's avatar
      added a GimpAnchorItemFunc and use it if it's set. · 3e695dd0
      Michael Natterer authored
      2002-03-11  Michael Natterer  <mitch@gimp.org>
      	* app/widgets/gimplayerlistview.[ch]: added a GimpAnchorItemFunc
      	and use it if it's set.
      	* app/widgets/gimpitemlistview.c: removed the floating selection
      	special case hack from the remove_item callback.
      	* app/gui/layers-commands.[ch]: added layers_remove_layer() and
      	layers_anchor_layer(). Fixed sensitive setting of the "Anchor"
      	menu item.
      	* app/gui/dialogs-constructors.c: use the new functions when
      	constructing the layers dialog. Makes deleting and anchoring
      	floating selections from the layers dialog work without hacking
      	or code duplication.
      	* app/widgets/gimpdialogfactory.c: added comments about dialog
      	destruction in dispose().
  22. 26 Feb, 2002 1 commit
    • Michael Natterer's avatar
      make absolute paths out of relative ones passed on the commandline so the · d9c23318
      Michael Natterer authored
      2002-02-26  Michael Natterer  <mitch@gimp.org>
      	* app/app_procs.c: make absolute paths out of relative ones
      	passed on the commandline so the GimpImagefiles can generate
      	* app/gui/Makefile.am
      	* app/gui/drawable-commands.[ch]: new files implementing menu
      	callbacks which work not just on layers.
      	* app/gui/layers-commands.[ch]: removed them here. Cleanup.
      	* app/gui/menus.c: changed accordingly.
      	* app/gui/brushes-commands.c
      	* app/gui/channels-commands.c
      	* app/gui/vectors-commands.c: cleanup. Added macros to get
      	rid of code duplication.
  23. 13 Feb, 2002 1 commit
    • Michael Natterer's avatar
      moved "Merge Layers" and "Flatten Image" from "Layer/" to "Image/", · 1e9c264a
      Michael Natterer authored
      2002-02-13  Michael Natterer  <mitch@gimp.org>
      	* app/gui/menus.c: moved "Merge Layers" and "Flatten Image" from
      	"Layer/" to "Image/", removed them from the "<Layers>" menu
      	entirely, moved "Merge Down" after "Anchor Layer" in both menus.
      	* app/gui/image-commands.[ch]: moved callbacks from here...
      	* app/gui/layers-commands.[ch]: ...to here.
      	* app/gui/layers-commands.[ch]
      	* app/display/gimpdisplayshell.c: changed menu_update functions
  24. 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
      	* 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.
  25. 03 Dec, 2001 1 commit
    • Michael Natterer's avatar
      use the passed Gimp pointer instead of using "the_gimp". · 403a38e2
      Michael Natterer authored
      2001-12-03  Michael Natterer  <mitch@gimp.org>
      	* app/devices.c: use the passed Gimp pointer instead of
      	using "the_gimp".
      	* app/base/temp-buf.c: indentation.
      	* app/gui/preferences-dialog.c: prefs_toggle_callback(): fixed
      	segfault when trying to find the prefs_dlg widget from a menu
      	item callback (Fixes #65757).
      	* app/gui/offset-dialog.[ch]: fixed public prototype, include
      	the header in the .c file.
      	* app/gui/menus.c: some menu cleanup: moved all functions which
      	operate on the active layer/drawable to <Image>/Layer. Renamed
      	"Layers" to "Layer".
      	* app/display/gimpdisplayshell.c: changed menu update function
      	* app/gui/image-commands.[ch]
      	* app/gui/layers-commands.[ch]: moved stuff from image-commands.*
      	to layers-commads.*-
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbrightnesscontrasttool.c
      	* app/tools/gimpcolorbalancetool.c
      	* app/tools/gimpcurvestool.c
      	* app/tools/gimphistogramtool.c
      	* app/tools/gimphuesaturationtool.c
      	* app/tools/gimplevelstool.c
      	* app/tools/gimpposterizetool.c
      	* app/tools/gimpthresholdtool.c
      	* app/tools/paint_options.c
      	* app/tools/transform_options.c
      	* plug-ins/common/align_layers.c
      	* plug-ins/common/autocrop.c
      	* plug-ins/common/autostretch_hsv.c
      	* plug-ins/common/c_astretch.c
      	* plug-ins/common/color_enhance.c
      	* plug-ins/common/guillotine.c
      	* plug-ins/common/normalize.c
      	* plug-ins/common/rotate.c
      	* plug-ins/common/threshold_alpha.c
      	* plug-ins/common/zealouscrop.c
      	* plug-ins/rcm/rcm.c
      	* plug-ins/fp/fp.c: register under <Image>/Layer, some cosmetic
  26. 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
      	* 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
      	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
      	* 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
      	* 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
      	* app/gui/toolbox.c: no need to include "dialogs-commands.h".
  27. 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
      	* 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
      	* 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.
  28. 20 Apr, 2001 1 commit
    • Michael Natterer's avatar
      app/Makefile.am removed. · c1e2f4e2
      Michael Natterer authored
      2001-04-20  Michael Natterer  <mitch@gimp.org>
      	* app/Makefile.am
      	* app/layers_dialogP.h: removed.
      	* app/gimpui.[ch]: new function gimp_menu_position().
      	* app/disp_callbacks.c
      	* app/interface.c
      	* app/gui/layers-dialog.c: popup the image and layers menu with
      	gtk_item_factory_popup_with_data() instead of gtk_menu_popup()
      	and pass the GimpImage we're operating on as data.
      	For accelerators, which are invoked without context, we catch key
      	press events and attach the context to the GtkItemFactory.
      	* app/gui/Makefile.am
      	* app/gui/layers-commands.[ch]: common layer callbacks (instead of
      	separate ones in commands.c and layers-dialog.c
      	* app/gui/commands.[ch]
      	* app/gui/layers-dialog.[ch]: removed the menu callbacks here.
      	* app/gdisplay.h
      	* app/lc_dialog.c
      	* app/gui/channels-dialog.c
      	* app/gui/layer-select.c
      	* app/gui/menus.c
      	* po/POTFILES.in: changed accordingly.