2005-01-26 Michael Natterer <mitch@gimp.org>
* app/actions/dockable-actions.c
* app/actions/dockable-commands.[ch]: removed dock-related
actions (show-image-menu, auto-follow-active and move-to-screen).
* app/actions/dock-actions.c
* app/actions/dock-commands.[ch]: and added them here.
* app/menus/menus.c: add the "dock" action group to the
"<Dockable>" UI Manager.
* app/widgets/gimphelp-ids.h: reordered to match the new grouping.
* menus/dockable-menu.xml.in: changed accordingly.
2005-01-24 Michael Natterer <mitch@gimp.org>
Enabled closing docks with Ctrl-W:
* app/actions/Makefile.am
* app/actions/dock-actions.[ch]
* app/actions/dock-commands.[ch]: added new action group which
holds a single action, "dock-close".
* app/actions/actions.c: register the "dock" group.
* app/menus/menus.c: add it to the "<Dock>" UI manager.
* app/widgets/gimphelp-ids.h: added GIMP_HELP_DOCK_CLOSE.
2005-01-23 Sven Neumann <sven@gimp.org>
* app/actions/dialogs-actions.c (dialogs_actions): set Ctrl-B as
default shortcut to raise the Toolbox (as suggested in bug #163368).
2005-01-15 Michael Natterer <mitch@gimp.org>
* app/core/gimpchannel.c (gimp_channel_new*): don't require a
non-NULL color parameter (just leave the default color untouched
if NULL is passed).
* app/actions/channels-commands.c
* app/core/gimpchannel-select.c: pass NULL as color for temporary
channels or channels where we used to pass black.
2005-01-13 Michael Natterer <mitch@gimp.org>
Allow to easily open brushes and patterns as images.
Fixes bug #163059.
* app/actions/brushes-actions.c
* app/actions/patterns-actions.c: added "brushes-open-as-image"
and "patterns-open-as-image" actions.
* app/actions/data-commands.[ch]: added
data_open_as_image_cmd_callback() which tries to load
data->filename as image.
* app/widgets/gimphelp-ids.h: added help IDs for the new actions.
* app/widgets/gimpdatafactoryview.c: added buttons.
* menus/brushes-menu.xml
* menus/patterns-menu.xml: added them to the menus.
2005-01-13 Michael Natterer <mitch@gimp.org>
Made the file open and save dialogs use the last used folder
instead of defaulting to current directory. Fixes bug #162385.
* app/widgets/gimpfiledialog.[ch] (gimp_file_dialog_set_uri):
removed this function because it had no functionality except
creating usability problems.
* app/actions/file-commands.c: use gtk_file_chooser_set_uri()
instead but *only* if we already have an uri from an alread open
image or the document hinstory.
* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_image): set
the file chooser's uri only if we have an uri from the image
itself. Leave the current folder untouched otherwise and just set
the current name (e.g. "Untitled").
* app/dialogs/file-save-dialog.c (file_save_dialog_save_image): on
successful save, remember the used uri by attaching it to the
"gimp" instance.
(file_save_dialog_new): set the last saved uri's folder on the
newly created file save dialog.
2005-01-07 Michael Natterer <mitch@gimp.org>
* app/actions/plug-in-commands.c
* app/actions/vectors-commands.c: GIMP_PROGRESS(NULL) is perfectly
valid, no need to say gdisp ? GIMP_PROGRESS(gdisp) : NULL.
* app/actions/plug-in-commands.c (plug_in_run_cmd_callback):
remember the last plug-in if it has at least 3 args, not 2.
Cleaned up the whole function and removed cruft.
2005-01-03 Michael Natterer <mitch@gimp.org>
* app/actions/view-actions.c
* app/actions/view-commands.[ch]
* app/display/gimpdisplayshell-appearance.[ch]
* menus/image-menu.xml.in: reordered actions, functions and menu
items so the "show" and "snap" actions are grouped.
2005-01-03 Michael Natterer <mitch@gimp.org>
Implemented "Snap to Canvas Edges" (fixes bug #152971) and
"Snap to Active Path" (half way done):
* app/core/gimpimage-snap.[ch]: added boolean snap_to_canvas and
snap_to_vectors parameters (snap_to_vectors works fine when
snapping to a point, but is unimplemented for snapping to a
rectangle).
* app/display/gimpdisplayshell.[ch] (struct GimpDisplayShell):
added snap_to_canvas and snap_to_vectors booleans.
* app/display/gimpdisplayshell-appearance.[ch]: added API to
get/set them.
* app/actions/view-actions.c
* app/actions/view-commands.[ch]
* app/widgets/gimphelp-ids.h: added actions, callbacks and help IDs.
* menus/image-menu.xml.in: added them to Image->View.
2004-12-31 Michael Natterer <mitch@gimp.org>
* app/actions/plug-in-actions.c: use the orininal string if
plug_in_actions_check_translation() fails instead of bailing out.
Fixes bug #162590.
2004-12-31 Michael Natterer <mitch@gimp.org>
* app/core/gimppalette.[ch]: removed the just added
gimp_palette_insert_entry() and added a "gint position" parameter
to gimp_palette_add_entry() instead (no need to have two almost
identical functions).
* app/actions/palette-editor-commands.c
* app/core/gimppalette-import.c
* app/widgets/gimppaletteeditor.c
* tools/pdbgen/pdb/palette.pdb: changed accordingly.
* app/pdb/palette_cmds.c: regenerated.
2004-12-31 Michael Natterer <mitch@gimp.org>
* app/actions/tools-actions.c
* app/actions/tools-commands.[ch]
* app/widgets/gimptoolview.[ch]: applied a (modified) patch from
Joao S. O. Bueno which adds "raise" and "lower" actions and
their buttons in the tool dialog. Fixes bug #158666.
Cleaned up the tool action callbacks.
* app/actions/documents-commands.c
* app/actions/file-commands.c
* app/dialogs/file-open-dialog.c
* app/dialogs/file-open-location-dialog.c
* app/display/gimpdisplayshell-dnd.c
* app/widgets/gimplayertreeview.c
* app/widgets/gimptoolbox-dnd.c: replace % with space
in file name before showing error message,
fixes bug #162147.
* app/core/gimp-gui.c
* app/widgets/gimpmessagebox.c: be a bit more paranoid
about validating utf8 for messages.
2004-12-21 Michael Natterer <mitch@gimp.org>
* app/actions/gradient-editor-actions.c
(gradient_editor_actions_update): if the dialog is insensitive,
disable all actions which modify the gradient. Fixes bug #161411.
* app/actions/gradient-editor-commands.c: update the UI manager
after setting the dialog sensitive/insensitive so te above works.
2004-12-16 Michael Natterer <mitch@gimp.org>
* app/actions/actions.c (action_data_get_*): get gimp, display or
image from a context only if it isn't NULL. Fixes warnings and
crashes when dragging around some dockables (the dockables'
context temporarily becomes NULL while dragging).
Reordered checks for the passed "data" to be consistent across the
various functions.
Removed assertions which said "#warning: remove me before 2.2"
2004-12-12 Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs.[ch]: added new function
copy_region_nocow() as a workaround for the fact that sharing
tiles with the projection is heavily broken.
* app/base/tile-manager.c (tile_invalidate): added a warning when
entering the code path that breaks badly.
* app/core/gimp-edit.[ch]: added gimp_edit_copy_visible(), using
the non-COW copying function above.
* app/widgets/gimphelp-ids.h: added GIMP_HELP_COPY_VISIBLE.
* app/actions/edit-actions.c
* app/actions/edit-commands.[ch]: added action & callback for
"edit-copy-visible".
* menus/image-menu.xml.in: added "edit-copy-visible" to the image
menu.
* tools/pdbgen/pdb/edit.pdb: added gimp_edit_copy_visible()
PDB wrapper.
* app/pdb/edit_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpedit_pdb.[ch]: regenerated.
* plug-ins/script-fu/scripts/copy-visible.scm: removed all code
and made it a backward compat wrapper around gimp-edit-copy-visible.
Fixes bug #138662.
2004-12-02 Michael Natterer <mitch@gimp.org>
* app/actions/tool-options-actions.c
(tool_options_actions_update_presets): don't forget to initialize
the "value_variable" boolean of GimpEnumActionEntry. Fixes myriads
of warnings about wrong values for boolean properties.
* app/actions/file-actions.c (file_actions_setup): same
here. Fixes nothing but is cleaner.
2004-09-21 Hans Breuer <hans@breuer.org>
* app/dialogs/makefile.msc : [new file]
app/dialogs/Makefile.am : added to EXTRA_DIST
* **/makefile.msc app/gimpcore.def : updated
* app/gimp.rc : let wilber be first
* app/widgets/gimppropwidgets.c : msvc6 can't cast uint64 either
* libgimpbase/gimpwin32-io.h : make up recent loss of ftruncate in GLib
* libgimpthumbnail/gimpthumbnail.c : <process.h> for getpid() on win32
* plug-ins/helpbrowser/dialog.c : include gimpwin32-io.h
* plug-ins/script-fu/siodwrapper.c plug-ins/script-fu/scrip-fu.c : there
is no script-fu-server on win32
2004-11-18 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpenumaction.[ch]: added boolean property
"value-variable" which specifies if the GimpEnumAction::selected()
signal may be emitted with arbirtary values (value-variable = TRUE)
or *only* with enum_action->value (value-variable = FALSE).
* app/widgets/gimpactiongroup.[ch]: added "gboolean
value_variable" to GimpEnumActionEntry and set it in
gimp_action_group_add_enum_actions().
* app/actions/channels-actions.c
* app/actions/colormap-editor-actions.c
* app/actions/context-actions.c
* app/actions/drawable-actions.c
* app/actions/edit-actions.c
* app/actions/error-console-actions.c
* app/actions/gradient-editor-actions.c
* app/actions/image-actions.c
* app/actions/layers-actions.c
* app/actions/palette-editor-actions.c
* app/actions/plug-in-actions.c
* app/actions/vectors-actions.c
* app/actions/view-actions.c: set "variable" to FALSE for all enum
actions except those which are used with the GIMP_ACTION_SELECT_SET
voodoo.
* app/widgets/gimpcontrollers.c (gimp_controllers_event_mapped):
fall back to gtk_action_activate() if the action specified in a
GIMP_CONTROLLER_EVENT_VALUE mapping is not variable. Enables
triggering of enum actions from GIMP_CONTROLLER_EVENT_VALUE events
(like midi note-on and note-off).
2004-11-18 Michael Natterer <mitch@gimp.org>
The following fixes have no visible effect because nobody
uses gimp_plugin_menu_register() on temp_procs yet:
* app/actions/plug-in-actions.[ch]: added
plug_in_actions_add_path() which just adds the actions needed for
a given menu math, but not the procedure action itself.
* app/gui/gui-vtable.c (gui_menus_create_entry): create the
menu_path's actions using above function so adding of submenus to
existing ui managers works.
* tools/pdbgen/pdb/plug_in.pdb (plugin_menu_register_invoker):
don't add a menu if "no_interface" is TRUE.
* app/pdb/plug_in_cmds.c: regenerated.
* plug-ins/script-fu/script-fu-scripts.c: pass untranslated
menu_paths to the core, not translated ones. Don't store the
scripts directly in the "script_list" tree but use a list of
scripts per key because there can be identical keys for different
scripts now. Fixed sorting of menu entries and menus.
2004-11-16 Sven Neumann <sven@gimp.org>
* app/actions/file-commands.c
* app/dialogs/file-save-dialog.c
* app/file/file-save.[ch]
* app/widgets/gimpfiledialog.[ch]: combined "set_uri_and_proc" and
"set_image_clean" parameters into a single "save_a_copy"
parameter. When saving a copy, attach the used URI to the image and
let the "Save a Copy" file chooser default to the last used value.
2004-11-13 Sven Neumann <sven@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/print-size-dialog.[ch]: new files for the Print Size
dialog that is still missing. Still work in progress...
* app/actions/image-actions.c
* app/actions/image-commands.[ch]
* app/widgets/gimphelp-ids.h
* menus/image-menu.xml.in: integrate the new dialog.
2004-11-04 Michael Natterer <mitch@gimp.org>
Don't use deprecated GtkToolbar API in GimpTextEditor:
* app/actions/Makefile.am
* app/actions/actions.c
* app/actions/text-editor-actions.[ch]
* app/actions/text-editor-commands.[ch]: added acions and
callbacks for the new "text-editor" action group.
* app/menus/menus.c: register a "<TextEditor>" UI manager.
* menus/Makefile.am
* menus/text-editor-toolbar.xml: new file for the toolbar.
* app/widgets/gimptexteditor.[ch]: use the toolbar created by the
UI manager instead of constructing it using deprecated API.
* app/tools/gimptextoptions.c: changed accordingly.
* app/widgets/gimpwidgets-utils.[ch]: added gimp_text_buffer_load()
(used by text-editor-commands.c).
2004-11-01 Michael Natterer <mitch@gimp.org>
* app/actions/drawable-actions.c: trailing whitespace.
* app/actions/drawable-commands.[ch]: partly revert alphabetical
ordering. Instead, group them as in drawable-actions.c and order
by alphabet inside the groups (different ordering in *-actions.c
and *-commands.c is inconvenient for the usual workflow of editing
both files at the same time).
* app/core/gimpdrawable-levels.h: indentation.
2004-10-30 Sven Neumann <sven@gimp.org>
* app/actions/image-commands.c (image_scale_cmd_callback): destroy
the scale dialog when the display is disconnected.
* app/dialogs/resize-dialog.c: fixed a couple of bugs related to
the offset area. Still work in progress.
2004-10-28 Sven Neumann <sven@gimp.org>
* app/actions/layers-actions.c (layers_actions_update): do not set
the "layers-mask-add" action insensitive if there's no alpha channel.
* app/actions/layers-commands.c (layers_add_mask_response): add an
alpha channel if there isn't one already. Fixes bug #156676.
2004-10-27 Sven Neumann <sven@gimp.org>
* app/actions/dockable-actions.c (dockable_toggle_actions): changed
menu label from "Show Image Menu" to "Show Image Selection".
* app/widgets/gimpsizebox.c: unmarked a string for translation.
* app/dialogs/scale-dialog.c: added back the message when scaling
an indexed image.
2004-10-27 Sven Neumann <sven@gimp.org>
* app/dialogs/resize-dialog.[ch]: started to redo the Resize
dialog in the style of the new Scale dialog. Only halfway done but
at least the new API is there.
* app/actions/image-commands.c
* app/actions/layers-commands.c: changed accordingly.
* app/dialogs/image-scale-dialog.c: cosmetics.
2004-10-27 Sven Neumann <sven@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/image-scale-dialog.[ch]: a wrapper around the scale
dialog that takes care verifying the user input and optionally
asking for confirmation. Most of this moved out of image-commands.c.
* app/actions/image-commands.c: use the new image scale dialog
even though it doesn't allow to edit the resolution yet. That's a
temporary regression that will get fixed soon.
* app/actions/layers-commands.c: cosmetics.
* app/dialogs/scale-dialog.c (scale_dialog_reset): also reset the
resolution.
* app/widgets/gimpsizebox.c: fixed cut'n'paste error.
2004-10-27 Sven Neumann <sven@gimp.org>
* app/widgets/gimpsizebox.[ch]: added a resolution label similar
to one in the template editor. Prepared for editable resolution,
work in progress...
* app/dialogs/scale-dialog.[ch]: added resolution and resolution
unit parameters to ScaleDialogCallback.
* app/actions/layers-commands.c: changed accordingly.
2004-10-26 Sven Neumann <sven@gimp.org>
* app/actions/channels-commands.c
* app/core/gimpchannel-select.c
* app/core/gimpimagefile.c
* app/core/gimpundo.c
* app/widgets/gimpcomponenteditor.c: use the new enum utility
functions from libgimpbase instead of accessing enum_value->value_name.
2004-10-25 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpwidgets-utils.[ch]: added gimp_text_buffer_save()
which saves a GtkTextBuffer's contents to a file.
* app/widgets/gimperrorconsole.c: use
gimp_editor_add_action_button() and removed all "clicked"
callbacks, including all file saving code.
* app/actions/error-console-actions.c
* app/actions/error-console-commands.[ch]: added the code removed
above to the action callbacks. Use gimp_text_buffer_save().
2004-10-24 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpgradienteditor.[ch]
* app/widgets/gimppaletteeditor.[ch]: added public APIs for
zooming the editors. Use gimp_editor_add_action_button() to create
all buttons. Removed all button callbacks and all duplicated
button sensitivity logic.
* app/widgets/gimpdataeditor.c (gimp_data_editor_set_data): update
the editor's UI manager if it exists.
* app/actions/gradient-editor-actions.c
* app/actions/gradient-editor-commands.[ch]: added zoom actions
and callback and call gimp_gradient_editor_zoom(). Fixed
gradient_editor_actions_update() to actually set all items'
sensitivity (it was possible to modify read-only gradients and
even to crash GIMP).
* app/actions/palette-editor-actions.c
* app/actions/palette-editor-commands.[ch]: changed "new" and
"zoom" actions to actually do their job instead of calling
gtk_button_clicked(editor->foo_button).
2004-10-24 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcolormapeditor.c: removed the "Edit Color"
dialog callbacks and use gimp_editor_add_action_button() for
the edit button. Removed button sensitivity logic. Hide the
color dialog when the image's mode changes.
* app/actions/colormap-editor-actions.c: added missing tooltip
for the edit action.
* app/actions/colormap-editor-commands.c: implement the dialog
here.
2004-10-24 Michael Natterer <mitch@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/vectors-export-dialog.[ch]
* app/dialogs/vectors-import-dialog.[ch]: new files.
* app/actions/vectors-commands.c: use the new dialogs and remember
their last values.
2004-10-23 Michael Natterer <mitch@gimp.org>
* app/actions/file-commands.c (file_save_cmd_callback): don't
g_return_if_fail() if there is no active drawable, just silently
return.
* app/actions/image-commands.c: remember the last merge_type of
the "Merge Visible Layers" dialog.
* app/actions/layers-commands.c: remeber the last values of the
"Add Layer Mask" dialog.
* app/actions/select-commands.c: renamed a bunch of static
variables to be consistent with other variables used to remember
dialog values.
* app/actions/view-commands.c (view_fullscreen_cmd_callback): it's
useless to update the "view-fullscreen" actions here because the
"fullscreen" state of the shell changes asynchronously