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
2004-10-23 Michael Natterer <mitch@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/image-merge-layers-dialog.[ch]: one more dialog split
out of actions/.
* app/actions/image-commands.c: removed it here. Some cleanup.
2004-10-23 Sven Neumann <sven@gimp.org>
* libgimpthumb/gimpthumb-utils.[ch]
* libgimpthumb/gimpthumbnail.[ch]
* libgimpthumb/gimpthumb.def: added missing API, mainly for deleting
thumbnails.
* app/core/gimpimagefile.[ch]: when saving a thumbnail, delete a
failure thumbnail if one exists. Unless the thumbnail was created
explicitely, remove all other thumbnails for this image.
* app/actions/documents-commands.c: changed accordingly.
* app/file/file-open.c: only save a thumbnail if there isn't a
valid thumbnail already.
* app/widgets/gimpthumbbox.c: before attempting to create a new
thumbnail, check if there's an uptodate failure thumbnail.
2004-10-23 Michael Natterer <mitch@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/layer-add-mask-dialog.[ch]: one more dialog split
out of actions/.
* app/actions/layers-commands.c: removed it here. Some cleanup.
2004-10-23 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpstock.c: added labels ("_Stroke") to the
SLEECTION_STROKE and PATH_STROKE stock items so they can be used
in action areas.
* app/widgets/gimpstrokeeditor.c: changed mnemonic to no clash
with "_Stroke" and reordered some code.
* app/dialogs/stroke-dialog.[ch]: use the passed stock_id instead
of GTK_STOCK_OK. Added parameters to specify the dialog's title
so it doesn't say "Stroke Options".
* app/actions/select-commands.c
* app/actions/vectors-commands.c
* app/tools/gimpvectortool.c: pass "Stroke Selection" and "Stroke
Path" as dialog titles.
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.
2004-10-23 Michael Natterer <mitch@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/layer-options-dialog.[ch]: the new/edit layer dialog.
* app/actions/layers-commands.c: use it here.
2004-10-22 Michael Natterer <mitch@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/template-options-dialog.[ch]: the new/edit template
dialog.
* app/actions/templates-commands.c: removed the code here and use
template_options_dialog_new(). Removed utility functions. Some
cleanup.
2004-10-22 Michael Natterer <mitch@gimp.org>
* app/core/core-enums.[ch]: added new enum GimpStrokeMethod which
can be one of { LIBART, PAINT_CORE }.
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpstrokedesc.[ch]: new object which encapsulates
the params and setup logic for the different stroke methods.
* app/core/gimpitem.[ch]: use it in GimpItem::stroke() and
in the gimp_item_stroke() wrapper.
* app/core/gimpchannel.c (gimp_channel_stroke)
* app/core/gimpselection.c (gimp_selection_stroke)
* app/vectors/gimpvectors.c (gimp_vectors_stroke): changed accprdingly.
* app/actions/select-commands.c
* app/actions/vectors-commands.c
* app/dialogs/stroke-dialog.c
* tools/pdbgen/pdb/edit.pdb
* tools/pdbgen/pdb/paths.pdb: use GimpStrokeDesc. Simplifies the
code quite a bit.
* app/pdb/edit_cmds.c
* app/pdb/paths_cmds.c: regenerated.
2004-10-21 Michael Natterer <mitch@gimp.org>
* app/actions/select-actions.c
* app/actions/select-commands.[ch]
* app/actions/vectors-actions.c
* app/actions/vectors-commands.[ch]: added actions and callbacks
to stroke with the last values used without showing the stroke
dialog. The actions have no menu entries but can be called via
shortcuts. Fixes bug #135746.
(Disclaimer: the uglyness of the callbacks shows the need for a
stroke API overhaul).
2004-10-19 Michael Natterer <mitch@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/vectors-options-dialog.[ch]: one more dialog split
out of actions/.
* app/actions/vectors-commands.c: removed it here. Merged more
utility functions into their only callers.
* app/actions/dockable-commands.c
* app/actions/edit-commands.c
* app/actions/file-commands.c
* app/actions/palettes-commands.c
* app/actions/tool-options-commands.c
* app/actions/view-commands.c: renamed "qbox" and "query_box"
variables to "dialog".
2004-10-19 Michael Natterer <mitch@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/channel-options-dialog.[ch]: new files implementing
the channel options dialog with a horrid number of 13 construction
parameters. Still better than having the same code twice, only
differing in strings used...
* app/actions/channels-commands.c
* app/actions/qmask-commands.c: removed the dialog code here and
use channel_options_dialog_new().
2004-10-18 Michael Natterer <mitch@gimp.org>
Action code review and pre-release consistency cleanup:
* app/actions/*-actions.c: added some missing and resolved
conflicting mnemonics, added missing help IDs. Cleaned up the
*_actions_update() functions.
* app/actions/channels-actions.c
* app/actions/layers-actions.c
* app/actions/vectors-actions.c (*_actions_update): simplified
the code that figures the prev and next channel,layer,vectors.
* app/actions/qmask-actions.c: use the same accelerator for
"qmask-active" and "qmask-toggle". Fixed action sensitivity.
* app/actions/channels-commands.c
* app/actions/dockable-commands.c
* app/actions/documents-commands.c
* app/actions/gradients-commands.c
* app/actions/layers-commands.c
* app/actions/palettes-commands.c
* app/actions/image-commands.c
* app/actions/select-commands.c
* app/actions/vectors-commands.c: folded tons of private utility
functions into their only callers (they used to be public and
called from outside before the switch to action based menus).
Renamed functions and variables saying "query" or "qbox" to
"dialog". Moved static functions to the end of the files. Misc
minor cleanups.
* app/actions/drawable-actions.c
* app/actions/drawable-commands.c: made the "drawable-visible" and
"drawable-linked" actions affect the layer if the active drawable
is a layer mask.
* app/actions/select-commands.c: added action to stroke with the
last values used in an attempt to address bug #135746 but #if 0'ed
it because the approach is too ugly.
* app/tools/gimpiscissorstool.c: changed mnemonic from I to S.
* menus/image-menu-xml.in: added more stuff to the (commented out)
"context" menu.
2004-10-16 Michael Natterer <mitch@gimp.org>
* app/actions/channels-actions.c
* app/actions/colormap-editor-actions.c
* app/actions/documents-actions.c
* app/actions/tool-options-actions.c
* app/actions/vectors-actions.c: added more tooltips for actions
which are used as extended dialog button callbacks.
* app/widgets/gimpeditor.c (gimp_editor_add_action_button): keep
the list of extended actions in reverse order.
* app/widgets/gimpchanneltreeview.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpdocumentview.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimplayertreeview.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimpvectorstreeview.c: don't set the tooltips
manually. Removes another bunch of insane translatable multiline
format strings. Pass the extended actions in the right order
to gimp_editor_add_action_button().
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.
2004-10-15 Michael Natterer <mitch@gimp.org>
* app/actions/images-commands.[ch]
* app/actions/templates-commands.[ch]: made some public functions
private or removed them entirely by folding their code into their
callers. They used to be passed as function pointers to widgets in
the pre action-based dialog buttons era.
2004-10-15 Michael Natterer <mitch@gimp.org>
Fixed bug #155328:
* app/actions/vectors-actions.c (vectors_actions_update): don't
set the "selection to path" actions sensitive if there is no
image.
* app/widgets/gimpitemtreeview.c: update the UI manager after
setting the view's image. Connect to GimpImage::flush() and
update the UI manager in the callback, too.
2004-10-14 Sven Neumann <sven@gimp.org>
* app/actions/file-commands.c (file_revert_cmd_callback): creata
an UTF-8 filename from the image URI and display that instead of
the URI.
* app/dialogs/convert-dialog.c (convert_dialog_new): removed the
palette size warning for transparent images. The number of colors
is already adjusted to 255. This text was IMO more frightening
than helpful.
2004-10-13 Sven Neumann <sven@gimp.org>
* app/widgets/gimpmessagedialog.c: handle parent widget not being
a GtkWindow by calling gtk_widget_get_toplevel().
* app/actions/data-commands.c
* app/actions/edit-commands.c
* app/actions/file-commands.c: ported more boolean queries to
GimpMessageDialog.
2004-10-12 Sven Neumann <sven@gimp.org>
* app/core/gimpimage.[ch]: renamed struct member "unit" to
"resolution_unit".
* app/actions/image-commands.c
* app/core/gimp-edit.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-undo-push.c
* app/dialogs/info-window.c
* app/vectors/gimpvectors-export.c
* app/widgets/gimptoolbox-dnd.c:
* app/xcf/xcf-load.c
* app/xcf/xcf-save.c: changed accordingly. Use gimp_image_get_unit()
where appropriate.
* app/core/gimptemplate.c (gimp_template_set_from_image): fixed
unit handling. Don't touch the template unit, it is used as the
initial display unit. This will need further changes...
2004-10-12 Michael Natterer <mitch@gimp.org>
* app/actions/drawable-commands.c (drawable_rotate_cmd_callback):
if the drawable is a channel, pass clip_result as FALSE. Need to
do this here for rotating only because it can't be decided
generically in GimpChannel. Fixes crash when rotating channels
or layer masks.
Use the undo_desc from GimpItemClass instead of passing "Flip
Layer" and "Rotate Layer".
2004-10-12 Sven Neumann <sven@gimp.org>
* app/actions/layers-actions.c (layers_actions_update): set
"layers-crop" insensitive if the selection is empty.
* plug-ins/script-fu/scripts/alien-glow-button.scm
* plug-ins/script-fu/scripts/alien-glow-logo.scm
* plug-ins/script-fu/scripts/basic2-logo.scm
* plug-ins/script-fu/scripts/gradient-bevel-logo.scm: use "Sans
Bold" instead of "Futura_Poster". The underscore in the font name
used to confuse intltool (bug #137029) and the freefont package
isn't that widely used any longer anyway.
2004-10-12 Sven Neumann <sven@gimp.org>
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpsizebox.[ch]: added new widget GimpSizeBox.
* app/widgets/gimppropwidgets.c: the order of setting the X and Y
properties does matter.
* app/dialogs/Makefile.am
* app/dialogs/scale-dialog.[ch]: added first version of a new
Scale dialog in an attempt to address bug #151022.
* app/actions/layers-commands.c: use the new scale dialog.