2008-10-11 Michael Natterer <mitch@gimp.org>
* app/core/gimpchannel.[ch]: add a projection node and
implement GimpDrawable::get_node(). Reconfigure the node in
visibility_changed(), set_color(), set_opacity() and
set_show_masked().
* app/core/gimpimage.c (gimp_image_get_graph): enable code that
projects the channels stack on top of the layer stack.
* app/core/gimpprojection-construct.c: remove the call to
gimp_projection_construct_channels() from the GEGL code path. Also
don't touch proj->construct_flag.
svn path=/trunk/; revision=27230
2008-10-11 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawablestack.c: add GimpContainer::add()
implementation, it's needed after all even though everybody uses
gimp_container_insert() on drawable stacks.
(gimp_drawable_stack_remove_node): no need to have a special check
for newly added nodes, this can't happen any more now that we have
an add() impl.
(gimp_drawable_stack_get_graph): free the reverse list.
svn path=/trunk/; revision=27228
2008-10-11 Michael Natterer <mitch@gimp.org>
Fix old bug in the GimpContainer implementation that wasn't
visible before the drawable stack completly b0rked when removing
the second-last item:
* app/core/gimpcontainer.c: add default implementations of ::add()
and ::remove() and update container->num_children there instead of
in the gimp_container_add() and _remove() wrapper functions.
This way not only external callbacks connected to the "add" and
"remove" signals are called with the correct num_children, also
implemtations of ::add() and ::remove() in subclass have the right
number available before/after upchaining. Add paranoia code to the
wrapper functions which check if the subclass reall chains up.
* app/core/gimplist.c: chain up in add() and remove().
svn path=/trunk/; revision=27227
* app/widgets/gimpdockseparator.c (gimp_dock_separator_new): Add a
GtkAnchorType member to GimpDockSeparator that specifies where a
dropped dockable shall be inserted.
(gimp_dock_separator_drag_drop): Get rid of the ugly hack where
the role of a given separator was based on its position as a child
in its container. Simply decide what role the separator has by
loooking at its anchor-member.
* app/widgets/gimpdock.c (gimp_dock_init)
(gimp_dock_add_book): Give the GimpDockSeparators their
appropriate roles directly at their construction.
svn path=/trunk/; revision=27218
2008-10-10 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawablestack.[ch]: move all the code that creates
a graph of drawables and all adding/removing/reordering code from
GimpImage to this file.
* app/core/gimpimage.c: remove the code here and use the layer
stack's subgraph instead. Add #if 0'ed code that blends the
channels on top of that but that doesn't work because channels
don't provide nodes yet.
svn path=/trunk/; revision=27216
2008-10-10 Michael Natterer <mitch@gimp.org>
* app/core/core-types.h
* app/core/Makefile.am
* app/core/gimpdrawablestack.[ch]: new GimpList subclass stub
which will manage the subgraphs of layers and channels and is also
the first step towards layer tree.
* app/core/gimpimage.c (gimp_image_init): keep the layers and
channels in GimpDrawableStacks instead of plain GimpLists.
svn path=/trunk/; revision=27212
2008-10-10 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable.[ch]: add virtual function
GimpDrawable::get_node() which returns a node to be plugged into
the projection.
* app/core/gimplayer.[ch]: remove public get_node() api and
implement the virtual function instead.
* app/core/gimpimage.c: changed accordingly.
svn path=/trunk/; revision=27211
2008-10-10 Michael Natterer <mitch@gimp.org>
* app/tools/gimpmovetool.c (gimp_move_tool_button_release): flush
the image after setting active items back from temporarily
selected ones. Fixes menu item sensitivity.
svn path=/trunk/; revision=27209
2008-10-10 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer.c: implement GimpItem::visibility-changed
and turn the layer's node into a nop when the layer is invisible.
(gimp_layer_get_node): connect the stuff to a nop here too for
invisible layers.
svn path=/trunk/; revision=27208
2008-10-10 Michael Natterer <mitch@gimp.org>
Bug 554983 – Layers Projection using GEGL
First projection using GEGL, wheeeee. Disabled by default because
it doesn't work with floating selection (and will not, FS
refactoring is in the queue).
* app/core/gimpimage.[ch]: add gimp_image_get_graph() which
returns a GeglNode representing the image's projection.
(gimp_image_add_layer_node)
(gimp_image_remove_layer_node): new utility functions to add and
remove layer nodes to/from the graph.
(gimp_image_add_layer)
(gimp_image_remove_layer)
(gimp_image_position_layer): call them to keep the graph up to date.
* app/core/gimpdrawable.c (gimp_drawable_real_update): invalidate
the source node.
* app/core/gimpprojection.[ch]: keep a projection graph around and
add gimp_projection_get_sink_node() which returns the node that
writes to the projection tiles.
* app/core/gimpprojection-construct.c: add
gimp_projection_construct_gegl() which is a few-liner that uses a
GeglProcessor to run the projection graph.
(gimp_projection_construct): call the new function (disabled by
default).
svn path=/trunk/; revision=27207
2008-10-10 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.[ch]: add new functions
gimp_image_get_layer_by_index(), _channel_by_index() and
_vectors_by_index().
* app/core/gimpprojection-construct.c
* app/display/gimpdisplayshell-layer-select.c
* app/xcf/xcf-load.c: use them instead of looking the items up
in image->container and casting the return value.
svn path=/trunk/; revision=27206
2008-10-10 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer.c (gimp_layer_translate)
(gimp_layer_get_node): the "shift" operation's x and y properties
are doubles not ints.
(gimp_layer_apply_mask): properly disconnect the mask node.
(gimp_layer_set_opacity): the opacity node has a "value" property,
not "opacity".
svn path=/trunk/; revision=27205
2008-10-09 Michael Natterer <mitch@gimp.org>
Address Bug 554983 – Layers Projection using GEGL
* app/gegl/gimp-gegl-utils.[ch]: add (imcomplete) function
gimp_layer_mode_to_gegl_operation() from bug #554983.
* app/core/gimpdrawable.[ch]: add gimp_drawable_get_source_node()
which returns a GimpOperationTileSource for the drawable's
tiles.
(gimp_drawable_real_set_tiles)
(gimp_drawable_configure): set the node's "tiles" property.
* app/core/gimplayer.[ch]: add gimp_layer_get_node() which returns
a GeglNode with proxy "input" and "output" pads to be plugged
into the projection graph. The node has children for opacity,
mask, layer mode and layer offset.
(gimp_layer_translate)
(gimp_layer_add_mask)
(gimp_layer_apply_mask)
(gimp_layer_set_opacity)
(gimp_layer_set_mode): reconfigure the respective nodes.
* app/core/gimpimage.[ch]: keep a "graph" node around and destroy
it in finalize(). Not even a stub, just a silly GEGL dependency.
svn path=/trunk/; revision=27204
2008-10-09 Michael Natterer <mitch@gimp.org>
Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h
had a GEGL dependency (they will have in the next commit, but I
wanted to keep the commit separate).
* app/dialogs/Makefile.am
* app/file/Makefile.am
* app/gui/Makefile.am
* app/menus/Makefile.am
* app/paint/Makefile.am
* app/plug-in/Makefile.am
* app/text/Makefile.am
* app/vectors/Makefile.am
* app/widgets/Makefile.am
* app/xcf/Makefile.am: add GEGL_CFLAGS.
* app/actions/*.c
* app/core/*.c
* app/dialogs/*.c
* app/display/*.c
* app/file/*.c
* app/gui/*.c
* app/menus/*.c
* app/paint/*.c
* app/pdb/gimppdb-utils.c
* app/pdb/gimpprocedure.c
* app/plug-in/*.c
* app/text/*.c
* app/tools/*.c
* app/vectors/*.c
* app/widgets/*.c
* app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h>
to all files which include a drawable subclass or gimpimage.h
* tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h>
in all generated files.
* app/pdb/*-cmds.c: regenerated.
* data/images/gimp-splash.png: the goat is still sleeping.
By Aurore Derriennic.
svn path=/trunk/; revision=27202
2008-10-09 Michael Natterer <mitch@gimp.org>
Remove the last code duplication from the undo system (or if not
the last then at least the most ugly):
* app/core/gimpimage.[ch] (gimp_image_add_layer,channel,vectors):
add "gboolean push_undo" parameter and add the item without
touching undo if it's TRUE. Changed assertions from
g_object_is_floating() to !gimp_item_is_attached() so they also
take items from the undo stack and not only newly created ones.
(gimp_image_remove_layer,channel,vectors): add "push_undo"
parameter here too. Also add a "new_active" parameter where an
optional new active item can be passed.
(gimp_image_remove_layer,channel): these functions must not be
called with push_undo=FALSE and a floating selection attached to
the layer/channel. This can't currently happen; added warnings in
case other code is changed and makes it happen anyway.
* app/core/gimpchannelundo.c
* app/core/gimplayerundo.c
* app/vectors/gimpvectorsundo.c: use above functions to add/remove
items instead of duplicating (parts of) their code. Pass
push_undo=FALSE and the previously active item to the remove()
functions.
* app/actions/channels-commands.c
* app/actions/edit-commands.c
* app/actions/layers-commands.c
* app/actions/vectors-commands.c
* app/core/gimp-edit.c
* app/core/gimpchannelundo.c
* app/core/gimpimage-crop.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-merge.c
* app/core/gimpimage-quick-mask.c
* app/core/gimpimage-scale.c
* app/core/gimplayer-floating-sel.c
* app/core/gimplayerundo.c
* app/core/gimpselection.c
* app/core/gimptemplate.c
* app/display/gimpdisplayshell-dnd.c
* app/text/gimptext-compat.c
* app/tools/gimptexttool.c
* app/tools/gimpvectortool.c
* app/vectors/gimpvectors-import.c
* app/vectors/gimpvectorsundo.c
* app/widgets/gimpchanneltreeview.c
* app/widgets/gimpitemtreeview.[ch]
* app/widgets/gimplayertreeview.c
* app/widgets/gimptoolbox-dnd.c
* app/widgets/gimpvectorstreeview.c
* app/xcf/xcf-load.c
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/paths.pdb: changed accordingly (pass TRUE
unless it's a new image like when loading and XCF file).
* app/pdb/image-cmds.c
* app/pdb/paths-cmds.c: regenerated.
svn path=/trunk/; revision=27200
2008-10-09 Sven Neumann <sven@gimp.org>
* data/images/Makefile.am
* data/images/gimp-devel-logo.png: added 128x128 version of
wilber-devel.png.
* app/dialogs/about-dialog.c (about_dialog_load_logo): use
gimp-devel-logo.png for unstable releasees.
svn path=/trunk/; revision=27199
2008-10-09 Sven Neumann <sven@gimp.org>
Bug 555697 – build fails if configured with --without-libjpeg
* plug-ins/Makefile.am: applied patch from Simon Zilliken that
disables the build of the PSD plug-in if JPEG support is
disabled.
svn path=/trunk/; revision=27196
2008-10-09 Michael Natterer <mitch@gimp.org>
Bug 134956 – Curves tool doesn't save free curves
* app/core/gimpmarshal.list
* app/widgets/gimpsettingsbox.[ch]: add signal "file-dialog-setup"
and emit it when the export/import file chooser is fully
constructed. Callbacks can then do additional things to the
dialog, like adding custom buttons.
* app/tools/gimpcurvestool.h
* app/tools/gimplevelstool.h: add boolean member
"export_old_format".
* app/tools/gimpcurvestool.c
* app/tools/gimplevelstool.c (gimp_*_tool_dialog): connect to
the settings box' "file-dialog-setup".
(gimp_*_tool_export_setup): new callback which adds a toggle to
the file choosers that allows to export to the old format.
Default saving the new format, we defaulted to the old one before.
(gimp_*_tool_settings_export): check the "export_old_format"
boolean and only save the cruft format if it is TRUE; chain up
otherwise, which generically saves the new format.
* app/tools/gimplevelstool.c (gimp_levels_tool_settings_import):
add the same file format detection code as in the curves tool
so it transparently loads old and new levels files.
svn path=/trunk/; revision=27194
2008-10-09 Sven Neumann <sven@sven>
* app/core/gimp-user-install.c (gimp_user_install_detect_old):
use GIMP_MINOR_VERSION to determine the version to migrate from.
svn path=/trunk/; revision=27192
2008-10-09 Michael Natterer <mitch@gimp.org>
* app/gegl/gimpcurvesconfig.c (gimp_curves_config_save_cruft):
when saving a curve of type GIMP_CURVE_FREE, don't use
gimp_curve_get_point() because that returns nothing for free
curves.
(gimp_curves_config_load_cruft): reset the curve before loading it.
* app/core/gimpcurve.c (gimp_curve_get_point): instead of above
mentioned uninitialized nonsense, at least return -1,-1 for free
curves.
svn path=/trunk/; revision=27190
2008-10-09 Sven Neumann <sven@gimp.org>
* README
* NEWS
* configure.in: bumped version to 2.7.0 after creating a stable
gimp-2-6 branch.
svn path=/trunk/; revision=27187
2008-10-08 Michael Natterer <mitch@gimp.org>
Quick hack I needed for debugging and which doesn't hurt:
* tools/test-clipboard.c (test_clipboard_paste): allow to paste to
STDOUT by passing '-' as filename.
svn path=/trunk/; revision=27177
* plug-ins/file-psd/psd-load.c (add_layers): Some PSD files can
have channels where a compression method used for the channel data
is specified, but without any actual channel data. Handle this
case. Fix inspired by patch from Chris Mohler.
svn path=/trunk/; revision=27175
2008-10-08 Sven Neumann <sven@gimp.org>
* app/base/tile-cache.c: use a GMutex instead of a GStaticMutex
as the latter needs API that causes compiler warnings about
dereferencing of type-punned pointers.
svn path=/trunk/; revision=27170
2008-10-07 Michael Natterer <mitch@gimp.org>
Bug 555362 – gimp-remote is not working properly
* app/widgets/gimptoolbox-dnd.c (gimp_toolbox_dnd_init): add the
window itself as drop traget again so gimp-remote works.
svn path=/trunk/; revision=27164
2008-10-06 Sven Neumann <sven@gimp.org>
* plug-ins/common/file-gif-load.c (GetCode): be more tolerant
and
continue loading with a warning message if there are bits
missing
at the end of the file. Fixes bug #555280.
svn path=/trunk/; revision=27150
2008-10-06 Michael Natterer <mitch@gimp.org>
* plug-ins/common/file-gih.c
* plug-ins/common/file-xbm.c: setting a spin button's
page_increment to 1 is of no use, set it to 10 instead.
svn path=/trunk/; revision=27148
2008-10-06 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-menu-path.c (menu_path_mappings): add a
fallback mapping from <Toolbox> to <Image> so we catch really
everything that wants to go to <Toolbox>.
svn path=/trunk/; revision=27147
2008-10-06 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontext.c (gimp_context_real_set_display): paranoia
fix for hypothetical but harmful misbehavior: when setting the
display from !=NULL to NULL, also set the image to NULL instead of
relying on whatever obscure implicit behavior of other parts of
GIMP which set a new display right away or make sure the image
goes away together with the display.
svn path=/trunk/; revision=27145
2008-10-06 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer.c (gimp_layer_add_mask): g_return_if_fail()
on the mask's image being the same as the layer's image. The PDB
already checks for this.
* app/core/gimpimage.c (gimp_image_add_layer,channel,vectors):
remove calls to gimp_item_set_image() because we only accept
itmes of this image anyway.
svn path=/trunk/; revision=27138
2008-10-05 Michael Natterer <mitch@gimp.org>
Allow to "Open as Layers" in the empty display:
* app/widgets/gimpfiledialog.[ch]: add member
"gboolean open_as_layers". Rename gimp_file_dialog_set_image() to
gimp_file_dialog_set_save_image() and add
gimp_file_dialog_set_open_image() which sets both the image to
load layers into and the "open_as_layers" boolean.
* app/dialogs/file-open-dialog.c (file_open_dialog_response): look
at dialog->open_as_layers instead of dialog->image to decide whether
to open as layers (that's much more obvious). Enable open as layers
without existing image by creating the image if it doesn't exist.
* app/actions/file-commands.c (file_open_dialog_show): add "title"
parameter and take the uri from the image if none was passed. Use the
new gimp_file_dialog_set_open_image() instead of poking into the
dialog struct. Change callers to pass the title and not get the
uri from the image; instead always pass the image.
* app/actions/file-actions.c (file_actions_update): keep
"Open as Layers" sensitive even without image.
svn path=/trunk/; revision=27135
2008-10-05 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-contiguous-region.c: some formatting cleanups.
(find_contiguous_segment): changed to return gboolean not gint.
svn path=/trunk/; revision=27134
2008-10-05 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpruler.c: cache the PangoLayout. Use it not
only for drawing the numbers, but also to calculate the size
requisition depending on the actual font size.
svn path=/trunk/; revision=27131
2008-10-05 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpruler.c: instead of hardcoding a size
request, implement GtkWidget::size_request and set the size
depending on the font-scale.
svn path=/trunk/; revision=27130
2008-10-05 Sven Neumann <sven@gimp.org>
* plug-ins/file-jpeg/jpeg.c (run): fixed problem introduced by
the
use of an enum for the subsampling factor. Fixes bug #554890.
svn path=/trunk/; revision=27129
2008-10-04 Michael Natterer <mitch@gimp.org>
* plug-ins/common/web-browser.c: return errors via return_vals
instead of displaying them with g_message().
svn path=/trunk/; revision=27128
2008-10-04 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpruler.c: increased ruler font scale from
X_SMALL to SMALL as it appears to be too small for many users.
* themes/Default/gtkrc: follow that change here, but keep the
ruler font extra small in the Small theme.
svn path=/trunk/; revision=27127
2008-10-04 Sven Neumann <sven@gimp.org>
* plug-ins/file-jpeg/jpeg-save.c: some cleanups to the
subsampling
code; in an attempt to fix bug #555031.
svn path=/trunk/; revision=27126
2008-10-04 Michael Natterer <mitch@gimp.org>
* configure.in: depend on GTK+ 2.12.5 so motion history events of
extended input devices have proper timestamps needed by paint
tools.
svn path=/trunk/; revision=27124
2008-10-04 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpruler.c: make the font scale factor
configurable in gtkrc.
* themes/Default/gtkrc
* themes/Small/gtkrc: for documentation, add the default value
here.
svn path=/trunk/; revision=27121
2008-10-03 Hans Breuer <hans@breuer.org>
* plug-ins/common/web-browser.c : when ShellExecute() is failing give
the detailed (currently intentionally untranslated) error message via
g_message()
svn path=/trunk/; revision=27119
2008-10-03 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplayshell-scale.c
(gimp_display_shell_scale_update_scrollbars)
(gimp_display_shell_scale_update_rulers): bail out early if
shell->display is NULL. Fixes crash reported on the
mailing-list.
svn path=/trunk/; revision=27117
2008-10-03 Michael Natterer <mitch@gimp.org>
Bug 554785 – Compile failure on uri-backend-libcurl
* plug-ins/file-uri/uri-backend-libcurl.c: apply patch from Robby
Workman which fixes the build for this file.
svn path=/trunk/; revision=27116
2008-10-03 Sven Neumann <sven@gimp.org>
* configure.in: removed custom error message from checks for
babl
and GEGL. The default error message is a lot more helpful.
svn path=/trunk/; revision=27115
2008-10-02 Sven Neumann <sven@gimp.org>
* app/tools/gimpgegltool.c
(gimp_gegl_tool_operation_blacklisted):
add "text" to the list of blacklisted operations.
svn path=/trunk/; revision=27114
2008-10-02 Michael Natterer <mitch@gimp.org>
Bug 554646 – Opening Help crashes GIMP with lqr-plugin installed
* app/widgets/gimphelp.c (gimp_help_get_help_domains): need to
assign (*foo)[i] and not *foo[i] of a gchar** returned via return
value location.
svn path=/trunk/; revision=27113
2008-10-02 Michael Natterer <mitch@gimp.org>
* app/plug-in/gimppluginprocframe.c: keep a reference to the
proc_frame's procedure. We can't asume it's always there since it
could be a temporary one and its plug-in might die during
procedure execution, taking the temp_proc with it.
svn path=/trunk/; revision=27112
to 100%
* app/display/display-enums.h: Added a GimpZoomFocus enum with
'best guess', 'pointer' or 'image center' values.
* app/display/gimpdisplayshell-scale.[ch]
(gimp_display_shell_scale): Take a GimpZoomFocus parameter and
pass it on to
(gimp_display_shell_scale_get_zoom_focus): which returns the
requested zoom focus point if one was given, else makes a best
guess.
* app/actions/view-commands.c
* app/display/gimpstatusbar.c
* app/display/gimpnavigationeditor.c
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell-scale-dialog.c: For explicit-zoom
commands like "zoom to 100%", always use the image center as the
zoom focus point. For all other zooming, continue to use the
best-guess method.
* app/display/display-enums.c: Regenerated.
svn path=/trunk/; revision=27104
2008-10-01 Sven Neumann <sven@gimp.org>
* tools/gimptool.c: create the target directory and intermediate
parent directories as needed. Restores the behavior of the
gimptool shell script.
svn path=/trunk/; revision=27101
2008-10-01 Sven Neumann <sven@gimp.org>
* menus/Makefile.am (%.xml): added a dependency on configure.in
to
make sure that the image-menu.xml file is rebuilt when the
version
number is changed.
svn path=/trunk/; revision=27100
2008-10-01 Tor Lillqvist <tml@novell.com>
* app/widgets/gtkscalebutton.c: : Don't #define _GNU_SOURCE on
Windows as it confuses newest mingw headers.
svn path=/trunk/; revision=27097
2008-10-01 Tor Lillqvist <tml@novell.com>
* app/plug-in/gimpplugin.c: Don't #define _GNU_SOURCE on Windows
as it confuses newest mingw headers.
svn path=/trunk/; revision=27096
2008-10-01 Sven Neumann <sven@gimp.org>
* configure.in: bumped version to 2.6.1 (interface age 1).
Rotated ChangeLog and NEWs.
svn path=/trunk/; revision=27095
2008-09-30 Michael Natterer <mitch@gimp.org>
Bug 546924 – "New Image" misscalculating dimensions for non-pixel
sized templates
* app/core/gimptemplate.h: added private param flag
GIMP_TEMPLATE_PARAM_COPY_FIRST.
* app/core/gimptemplate.c (gimp_template_class_init): set the flag
on the resolution properties.
* app/dialogs/image-new-dialog.c (image_new_template_changed):
make sure the resolution properties are copied first.
* libgimpconfig/gimpconfig-utils.c (gimp_config_sync): remove
comment about fixing the template editor. That's not true any
more.
svn path=/trunk/; revision=27091
2008-09-30 Michael Natterer <mitch@gimp.org>
* app/tools/gimpimagemaptool.[ch]: keep a "default_config" object
around and use it to reset the tool if it exists.
(gimp_image_map_tool_edit_as): set the default_config on the new
tool so "reset" goes back to the values the tool was started with.
* app/tools/gimpcolorbalencetool.c (gimp_color_balance_tool_reset)
* app/tools/gimpcurvestool.c (gimp_curves_tool_reset)
* app/tools/gimphuesaturationtool.c (gimp_hue_saturation_tool_reset)
* app/tools/gimplevelstool.c (gimp_levels_tool_reset): use the
default config to reset the tool here too if it exists.
svn path=/trunk/; revision=27090
2008-09-30 Sven Neumann <sven@gimp.org>
* app/gui/splash.c: don't make the upper label bold. This change
compensates for the smaller width of the new splash screen.
svn path=/trunk/; revision=27089
2008-09-30 Sven Neumann <sven@gimp.org>
* app/widgets/gimpwidgets-utils.[ch]: added
gimp_pango_layout_set_scale().
* app/gui/splash.c: set a smaller font size on the lower label.
svn path=/trunk/; revision=27088
2008-09-30 Sven Neumann <sven@gimp.org>
* app/widgets/gimpwidgets-utils.c
(gimp_pango_layout_set_weight):
actually use the passed weight.
svn path=/trunk/; revision=27087
2008-09-30 Sven Neumann <sven@gimp.org>
* app/config/gimpbaseconfig.c
* app/config/gimpguiconfig.c: reverted parts of commit 25812.
Restores compatibility with old gimprc files.
svn path=/trunk/; revision=27086
2008-09-29 Sven Neumann <sven@gimp.org>
* data/images/gimp-splash.png: splash screen for GIMP 2.6.
Created
by Alexia Death and edited together with Ville Pätsi.
* authors.xml: added the two splash screen artists.
* AUTHORS: regenerated.
svn path=/trunk/; revision=27080
image open.
* app/widgets/gimpdialogfactory.[ch]: Add 'toggle_visibility' to
GimpDialogFactory and as a parameter to gimp_dialog_factory_new(),
and set it there.
(gimp_dialog_factories_hide_foreach): Don't hide dialogs belonging
to factories with toggle_visibility FALSE.
* app/display/gimpdisplayshell-callbacks.c
(gimp_display_shell_canvas_tool_events): Move no-image event
handling to a new helper function, and make pressing Tab hide
windows.
* app/dialogs/dialogs.c (dialogs_init): Allow toggling visibility
for all factories except the display-factory.
svn path=/trunk/; revision=27077
2008-09-29 Michael Natterer <mitch@gimp.org>
* app/core/gimpcurve.c (gimp_curve_copy): no need to memcpy() the
arrays, they are properly copied by gimp_config_sync() now. Add
call to gimp_data_dirty() so GimpCurvesConfig gets notified.
* app/gegl/gimpcurvesconfig.c (gimp_curves_config_set_property):
use gimp_config_copy() instead of copying the curve menually.
svn path=/trunk/; revision=27076
2008-09-29 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdialogfactory.c
(gimp_dialog_factories_show_foreach)
(gimp_dialog_factories_hide_foreach): remove some casts that were
always useless and are even more useless now after the recent
readability improvement.
svn path=/trunk/; revision=27075
selection
* plug-ins/script-fu/scripts/add-bevel.scm (script-fu-add-bevel):
Applied modified patch from Barak Itkin that when there is no
selection makes the bevel be performed on the whole layer instead
of the whole image (which was broken in the first place). It also
fixes some bugs with setting the selection when there is no
initial selection.
svn path=/trunk/; revision=27070
* plug-ins/script-fu/scripts/add-bevel.scm (script-fu-add-bevel):
Rename 'select' to 'selection' since that is what it holds.
svn path=/trunk/; revision=27069
machines
* plug-ins/flame/rect.c (render_rectangle): To handle p[0] and
p[1] being NaN, make sure that they are "within bounds" instead of
"not outside bounds".
svn path=/trunk/; revision=27067
2008-09-25 Michael Natterer <mitch@gimp.org>
* app/base/colorize.c (colorize_calculate): fix calculation of
final lookup table to not darken the image.
svn path=/trunk/; revision=27062
2008-09-25 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-dnd.c
(gimp_display_shell_drop_pixbuf): use the new helper function here
too.
svn path=/trunk/; revision=27060
2008-09-25 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplayshell-dnd.c
(gimp_display_shell_drop_component)
(gimp_display_shell_drop_drawable): moved duplicate code to a
helper function.
svn path=/trunk/; revision=27058
2008-09-25 Michael Natterer <mitch@gimp.org>
* plug-ins/print/print-draw-page.c
(print_cairo_surface_from_drawable): free the right array.
svn path=/trunk/; revision=27057
2008-09-25 Sven Neumann <sven@gimp.org>
* plug-ins/file-jpeg/jpeg.[ch]
* plug-ins/file-jpeg/jpeg-save.[ch]
* plug-ins/file-jpeg/jpeg-settings.[ch]: introduced an enum for
the subsampling factor.
svn path=/trunk/; revision=27056
2008-09-25 Sven Neumann <sven@gimp.org>
Bug 553412 – JPEG sampling factors not set to 1x1 on grayscale
images:
* plug-ins/file-jpeg/jpeg-save.c: always set subsampling to 1x1
for grayscale images and indicate this properly in the UI.
svn path=/trunk/; revision=27055
2008-09-25 Michael Natterer <mitch@gimp.org>
Bug 553530 – fatal error: Segmentation fault - when attempting to
bring up color-picker:
* modules/color-selector-wheel.c: declare gtk_hsv_get_type() if
not already done by GTK+. Fixes confusion about its return value
being 32 or 64 bit on 64 bit machines.
svn path=/trunk/; revision=27054
2008-09-25 Michael Natterer <mitch@gimp.org>
Bug 549195 – Color Wheel not working (GtkHSV):
* modules/color-selector-wheel.c: change packing and size requests
of the GtkHSV and its optional GtkAligmnent depending on the GTK+
version used to make it work with both the old and the new version
of the widget. Evil hacks, better don't look :)
svn path=/trunk/; revision=27053
2008-09-25 Sven Neumann <sven@gimp.org>
* app/core/gimp.[ch]: added a 'restored' flag to the Gimp object
and set it in gimp_real_restore(). Added method
gimp_is_restored().
* app/gui/gui.c: call gui_unique_init() in gui_init() instead of
that later in gui_restore_after_callback(). By doing so we start
our DBus service (or message proxy window on Win32) much earlier
in the start process, thus reducing the time frame where two
instances of gimp can be launched.
* app/gui/gui-unique.c
* app/gui/gimpdbusservice.c: wait handling the queued file-open
requests until gimp is fully restored.
* app/gui/splash.c (splash_update): only run one iteration of
the
main loop. Doing it in a while loop can cause us to get stuck if
the gimp-unique service already added an idle handler.
svn path=/trunk/; revision=27049
deselects selection
* app/tools/gimprectangleselecttool.c
(gimp_rectangle_select_tool_execute): Be more intuitive when
clicking outside the current selection for the selection modes Add
and Subtract. More specifically, don't alter the selection mask at
all.
svn path=/trunk/; revision=27048
* app/tools/gimprectangleselecttool.c: Added new utility function
gimp_rectangle_select_tool_get_operation(), and started using it.
svn path=/trunk/; revision=27047
2008-09-24 Sven Neumann <sven@gimp.org>
* plug-ins/pygimp/pygimp-image.c: undef GIMP_DISABLE_DEPRECATED
as we need the deprecated gimp_image_free_shadow() here.
* plug-ins/pygimp/pygimp-drawable.c: added
Drawable.free_shadow().
svn path=/trunk/; revision=27043
2008-09-24 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcontrollereditor.c
(gimp_controller_editor_edit_response): call
gimp_controller_editor_sel_changed() with the right
GtkTreeSelection object (the editor's, not the action
list's). Fixes crash upon selecting an action for a controller
event. Spotted by Alexander Rabtchevich.
svn path=/trunk/; revision=27041
* tools/pdbgen/pdb/selection.pdb (selection_layer_alpha): Update
documentation, the layer does not need to have an alpha channel. A
layer without an alpha channel is considered opaque.
* app/pdb/selection-cmds.c
* libgimp/gimpselection_pdb.c: Regenerated.
svn path=/trunk/; revision=27040
2008-09-24 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/image.pdb: added new scale procedures that
allow to specify the interpolation explicitly. Fixes bug
#486977.
Also pass the progress parameter to the scale and rotate
functions.
* app/pdb/image-cmds.c
* app/pdb/internal-procs.c
* app/pdb/layer-cmds.c
* libgimp/gimpimage_pdb.[ch]
* libgimp/gimplayer_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
svn path=/trunk/; revision=27039
2008-09-24 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/image.pdb: fixed error and some typos in the
PDB documentation.
* app/pdb/image-cmds.c
* libgimp/gimpimage_pdb.c: regenerated.
svn path=/trunk/; revision=27038
2008-09-23 Sven Neumann <sven@gimp.org>
Move the "Use GEGL" check-box to the Colors menu (bug #548760):
* app/actions/Makefile.am
* app/actions/config-actions.[ch]
* app/actions/config-commands.[ch]: new files holding the
"config"
action group that includes the "use-gegl" toggle action.
* app/actions/debug-actions.c
* app/actions/debug-commands.[ch]: removed the "use-gegl"
action
here.
* app/menus/menus.c
* app/actions/actions.c: added the new action group.
* app/widgets/gimphelp-ids.h: added a help ID for the
"use-gegl"
action.
* menus/image-menu.xml.in: moved the "Use GEGL" check-box to
the
Colors menu.
svn path=/trunk/; revision=27035
2008-09-21 Sven Neumann <sven@gimp.org>
* app/actions/windows-actions.c: don't set a help ID on the
display menu items.
* app/widgets/gimphelp-ids.h: removed now unused help ID.
* app/menus/windows-menu.c: show a larger image preview in the
tooltip.
svn path=/trunk/; revision=27028
2008-09-21 Sven Neumann <sven@gimp.org>
* INSTALL: mention more explicitely that the '--without-gvfs'
option should be used with configure if GVfs support is missing.
svn path=/trunk/; revision=27027
2008-09-20 Sven Neumann <sven@gimp.org>
* app/dialogs/about-dialog.c: put translator comment on a single
line, looks better in the .po file.
svn path=/trunk/; revision=27025
2008-09-20 Simon Budig <simon@gimp.org>
* app/core/gimpcurve.c: whitespace fix
* app/gegl/gimplevelsconfig.c: make sure that the points set by
default gets unset before calculating the levels->curves
transition. We don't want stray points in the corners.
svn path=/trunk/; revision=27018
2008-09-19 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-types.h (struct SFScript): rename
"menu_path" to "menu_label". Having a full path here is just
compat cruft.
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-script.[ch]: changed accordingly.
svn path=/trunk/; revision=27016
2008-09-19 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c: also apply the menu
mapping on scripts that use script-fu-menu-register to add
themselves to the menus.
svn path=/trunk/; revision=27015
2008-09-19 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scheme-wrapper.c: move variables to local
scopes, fix some whitespace and indentation, some misc. cleanup,
remove comments about array calling conventions that had lots of
copy and paste errors.
svn path=/trunk/; revision=27014
2008-09-19 Michael Natterer <mitch@gimp.org>
* libgimp/gimp.[ch] (gimp_destroy_paramdefs): fix docs: there is
no such thing as gimp_query_procedure(), the function is called
gimp_procedural_db_proc_info().
svn path=/trunk/; revision=27012
2008-09-19 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-script.[ch]: add new functions
script_fu_script_get_title() and script_fu_script_reset().
* plug-ins/script-fu/script-fu-scripts.c (script_fu_add_script):
don't set all default values *and* values when parsing the script,
just set the defaults and call script_fu_script_reset() afterwards.
* plug-ins/script-fu/script-fu-interface.c (script_fu_interface):
use the new script_fu_script_get_title().
(script_fu_reset): call script_fu_script_reset() and then update
the UI from the current values, instead of doing slightly
different things for each arg type.
svn path=/trunk/; revision=27009
2008-09-19 Sven Neumann <sven@gimp.org>
* plug-ins/help-browser/dialog.c (update_actions): allow to copy
selected text to the clipboard using Ctrl-C or the right-click
menu.
svn path=/trunk/; revision=27006
2008-09-19 Sven Neumann <sven@gimp.org>
* app/actions/plug-in-actions.c
(plug_in_actions_history_changed):
try to use the menu label with ellipsis instead of the result of
gimp_plug_in_procedure_get_label() which has ellipsis and
mnemonics stripped.
svn path=/trunk/; revision=27005
2008-09-18 Simon Budig <simon@gimp.org>
* app/core/gimpcurve.c: comment fix
* app/gegl/gimplevelsconfig.c: improve the levels->curves
transition. Not perfect, the result does not match a "real"
gamma correction, especially in the dark areas, where the
curves are too dark compared to the levels.
svn path=/trunk/; revision=27001
2008-09-18 Sven Neumann <sven@gimp.org>
* plug-ins/common/edge-dog.c: the plug-in can only run on
layers,
not masks and channels. Added a check for this and bail out with
an error message. Fixes bug #552625.
* plug-ins/common/curve-bend.c: return error messages via the
procedure's return values.
svn path=/trunk/; revision=27000
2008-09-18 Michael Natterer <mitch@gimp.org>
Bug 552785 – Script-fu run errors do not show in UI
* plug-ins/script-fu/script-fu-scripts.c (script_fu_script_proc):
fix the code that passes the error message back via the pipe.
svn path=/trunk/; revision=26997
2008-09-18 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-script.[ch]: add new functions
script_fu_script_collect_standard_args(),
script_fu_script_get_command() and
script_fu_script_get_command_from_params().
* plug-ins/script-fu/script-fu-scripts.c: remove the resp. code
here and use above functions instead.
* plug-ins/script-fu/script-fu-interface.c (script_fu_ok): changed
loop over args to only copy all widget content into the script's
values and then call script_fu_script_get_command().
svn path=/trunk/; revision=26993
2008-09-18 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdock.c (gimp_dock_style_set): reset the RC
styles of the dock's children after parsing the RC file snippet
for them. Fixes font size for detached dockables.
svn path=/trunk/; revision=26992
2008-09-18 Tor Lillqvist <tml@novell.com>
* app/plug-in/gimppluginshm.c: Use INVALID_HANDLE_VALUE instead of
INVALID_FILE_HANDLE which was an misunderstanding.
svn path=/trunk/; revision=26989
2008-09-18 Sven Neumann <sven@gimp.org>
* app/widgets/gimpdock.c: made the font scale factor for the
docks
configurable in gtkrc.
* themes/Default/gtkrc
* themes/Small/gtkrc: for documentation purposes, added the
default value for GimpDock::font-scale here. Changed all style
property names to use the canonical names.
svn path=/trunk/; revision=26988
2008-09-18 Sven Neumann <sven@gimp.org>
* app/core/gimpdrawable-shadow.c
(gimp_drawable_get_shadow_tiles):
no need to check if the drawable is attached as shadow tiles are
per drawable now.
svn path=/trunk/; revision=26986
2008-09-18 Simon Budig <simon@gimp.org>
* app/gegl/gimpbrightnesscontrastconfig.c: fix the
brightness/contrast --> levels step by doing proper math (TM).
svn path=/trunk/; revision=26984
2008-09-18 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/drawable.pdb: gimp_drawable_mask_intersect()
and gimp_drawable_mask_bounds() may only be used on attached
drawables. Added missing checks.
* app/pdb/drawable-cmds.c: regenerated.
svn path=/trunk/; revision=26983
2008-09-18 Sven Neumann <sven@gimp.org>
* configure.in (CPPFLAGS): removed G*_DISABLE_SINGLE_INCLUDES
until
we depend on newer versions of GLib and GTK+. Fixes bug #552669.
svn path=/trunk/; revision=26981
2008-09-18 Sven Neumann <sven@gimp.org>
* plug-ins/common/lcms.c (run): call gimp_displays_flush() at
the
end of all interactive uses. Fixes bug #552104.
svn path=/trunk/; revision=26980
2008-09-17 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-types.h: add struct SFArg which
keeps all a script argument's type, label, value and default
value.
(struct SFScript): replace separate arrays of type, label etc. by
one array of SFArg. Remove array of GimpParamDef because they are
only needed while registering the temp proc.
* plug-ins/script-fu/Makefile.am
* plug-ins/script-fu/script-fu-script.[ch]: new files implementing
script_fu_script_new(), script_fu_script_free(),
script_fu_script_register_proc() and
script_fu_script_unregister_proc().
* plug-ins/script-fu/script-fu-scripts.c: remove lots of code now
implemented in script-fu-script.c. Changed stuff according to the
introduction of SFArg. Moved variables to local scopes. Most
changes are in script_fu_add_script(), almost every line changed
and it's hopefully more readable now. Lots of cleanup all over the
place.
* plug-ins/script-fu/script-fu-interface.c: changed stuff
according to the introduction of SFArg
svn path=/trunk/; revision=26978
2008-09-17 Sven Neumann <sven@gimp.org>
* plug-ins/pygimp/plug-ins/pyconsole.py: removed she-bang as
this
file is not a plug-in. Addresses bug #552601.
svn path=/trunk/; revision=26977
2008-09-17 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-interface.c (script_fu_ok): set
the
PDB error handler to GIMP_PDB_ERROR_HANDLER_PLUGIN while
interpreting the script.
svn path=/trunk/; revision=26967
2008-09-16 Sven Neumann <sven@gimp.org>
* app/core/gimpimage.[ch]: added GError parameter to
gimp_image_{raise,lower}_{channel,layer,vectors} functions and
removed calls to g_message().
* app/actions/channels-commands.c
* app/actions/layers-commands.c
* app/actions/vectors-commands.c: pass NULL for the GError
parameter as these actions are insensitive if they would fail.
* tools/pdbgen/pdb/image.pdb: changed accordingly. Corrected the
documentation.
* app/pdb/image-cmds.c
* libgimp/gimpimage_pdb.c: regenerated.
svn path=/trunk/; revision=26953
2008-09-16 Michael Natterer <mitch@gimp.org>
* app/actions/actions.c: use the "tool options" icon for the
"context" action group since that's what its actions mostly
control.
* app/actions/dialogs-actions.c: use the "brush", "gradient" and
"palette" icons also for their resp. editors since that's also the
icons they use in their dockable tabs.
svn path=/trunk/; revision=26949
2008-09-15 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer.[ch] (gimp_layer_add_mask): add GError
parameter and replace g_message() by g_set_error().
* app/core/gimplayermaskundo.c
* app/xcf/xcf-load.c
* app/actions/layers-commands.c: pass NULL errors since these
places know what they are doing. Ha ha...
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/image.pdb: pass the error so we get more real
error messages for failed PDB calls.
* app/pdb/image-cmds.c
* app/pdb/layer-cmds.c: regenerated.
svn path=/trunk/; revision=26948
2008-09-15 Michael Natterer <mitch@gimp.org>
Bug 552413 – Script triggers Gimp-Core-CRITICAL
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/layer.pdb: add some more checks that produce
proper PDB error messages when adding and removing layer masks
instead of having the code run into assertions in the called core
functions. Also add some more checks when removing layers,
channels or vectors.
* app/pdb/image-cmds.c
* app/pdb/layer-cmds.c: regenerated.
svn path=/trunk/; revision=26947
2008-09-14 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/tinyscheme/scheme.c (mk_vector), (opexe_2):
Applied changes from official version of TinyScheme which adds
tests for when mk_vector is out of memory. Can't rely on sc->sink.
svn path=/trunk/; revision=26943
2008-09-13 Sven Neumann <sven@gimp.org>
* plug-ins/common/lcms.c (lcms_image_apply_profile): flush the
displays after closing the undo group. Should fix bug #552104.
svn path=/trunk/; revision=26938
2008-09-12 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/tinyscheme/scheme.c
* plug-ins/script-fu/tinyscheme/scheme.h: Applied changes froh
official version of TinyScheme which expose more of the internals.
Part of making it more suitable for Scheme->C->Scheme calling.
See SourceForge bug #1599947.
svn path=/trunk/; revision=26937
2008-09-12 Sven Neumann <sven@gimp.org>
* plug-ins/common/guillotine.c: return the list of created
images.
Only create displays when running in interactive mode.
svn path=/trunk/; revision=26936
2008-09-11 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/tinyscheme/CHANGES: Updating to match version
in official version of TinyScheme.
* plug-ins/script-fu/tinyscheme/scheme.c: Applied changes from
official version of TinyScheme which adds entry point for nested
calling. Part of making it more suitable for Scheme->C->Scheme
calling. See SourceForge bug #1599945. Updated usage information
using text from Manual.txt.
svn path=/trunk/; revision=26930
2008-09-11 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scheme-wrapper.[ch]: reordered and renamed
functions to be consistent. Got rid of file-global "register_scripts"
variable. Pass more "scheme *sc" pointers around to reduce usage
or the global variable.
* plug-ins/script-fu/script-fu-eval.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-server.c
* plug-ins/script-fu/script-fu.c: changed accordingly.
svn path=/trunk/; revision=26928
2008-09-11 Michael Natterer <mitch@gimp.org>
* app/core/gimp-modules.c (gimp_modules_unload): make a string
pointer const.
svn path=/trunk/; revision=26927
2008-09-11 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_load_script):
convert the filename to UTF-8 before displaying it in the error
message.
svn path=/trunk/; revision=26923
2008-09-11 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_run_command):
use g_set_error() instead of g_set_error_literal() which is only
available in glib 2.18.
svn path=/trunk/; revision=26922
2008-09-11 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/Makefile.am
* plug-ins/script-fu/re/*: removed....
* plug-ins/script-fu/script-fu-regex.[ch]: and replaced with a
few-liner using GRegex. Seems to have some issues that need to be
sorted out.
* plug-ins/script-fu/scheme-wrapper.c: changed accordingly.
svn path=/trunk/; revision=26921
2008-09-10 Michael Natterer <mitch@gimp.org>
Change Script-Fu error handling to properly use the new error
message passing in PDB return values:
* plug-ins/script-fu/script-fu-scripts.[ch]: remove function
script_fu_error_msg().
* plug-ins/script-fu/script-fu-interface.c (script_fu_ok): output
errors of interactive script-fu dialogs directly here with
g_message().
* plug-ins/script-fu/script-fu-scripts.c (script_fu_run_command):
add GError and return the error message instead of displaying it.
(script_fu_load_script): show the returned error here (and make it
more specific than the former script_fu_error_msg() did).
(script_fu_script_proc): return error messages via the procedure's
return values.
* plug-ins/script-fu/scheme-wrapper.c
(script_fu_marshal_procedure_call): if an error message was
returned from the PDB call, pass it to foreign_error() so it ends
up where it should (consle, text console or error string).
* plug-ins/script-fu/script-fu-console.c
* plug-ins/script-fu/script-fu-text-console.c: set the error
handler to PLUGIN while interpreting scheme, we handle errors
from calling back into the PDB ourselves now.
svn path=/trunk/; revision=26920
2008-09-10 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/tinyscheme/scheme.h: fix prototype (foo() is
not a prototype, use foo(void) instead).
svn path=/trunk/; revision=26919
2008-09-10 Tor Lillqvist <tml@novell.com>
* app/gui/gui-unique.c (gui_unique_win32_exit): Destroy the proxy
window here so that gimp_unique_win32_open() in app/unique.c won't
find it. This is important especially in a developer version where
the debug output window might be left open and the proxy window
still existing for a long time after the GTK+ main loop of the
GIMP GUI has finished. Thanks to Michael Schumacher for pointing
this out.
There is still a small race window here after GIMP has begun
closing down its GUI in gui_exit_callback() and before the proxy
window has gone away. If another GIMP starts during that interval,
it will find the proxy window and send it a message, which will
then either be ignored, or the proxy window will have been
destroyed before it gets the message. Let's ignore that. There is
a much wider time window during which multiple GIMP instances may
be started during GIMP startup anyway.
svn path=/trunk/; revision=26917
2008-09-10 Tor Lillqvist <tml@novell.com>
* app/gui/gui-unique.c: gui_unique_win32_message_handler() can be
static. Include file/file-open.h for file_open_from_command_line()
declaration. Fix copy/paste glitch in gui_unique_exit().
svn path=/trunk/; revision=26916
2008-09-10 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpactionview.c: factor out function that selects a
path and scrolls to that path. Keep the selected path visible if
it is still there after filtering.
svn path=/trunk/; revision=26914
2008-09-10 Michael Natterer <mitch@gimp.org>
* app/actions/context-actions.c: made action labels more
consistent, use '°' instead of 'degrees'.
* app/actions/context-commands.c: cosmetic change in macro
parameters.
svn path=/trunk/; revision=26913
2008-09-09 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scheme-wrapper.c
(script_fu_marshal_procedure_call): remove debug arrays to map the
values of registered enums to strings. Look up the strings
registered with the type system instead.
svn path=/trunk/; revision=26911
2008-09-09 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scheme-wrapper.c: fix formatting of prototypes.
(script_fu_marshal_procedure_call): move variables to local scopes
where possible. Make this function a bit readable by indenting the
debug code in DEBUG_MARSHAL normally.
svn path=/trunk/; revision=26910
2008-09-08 Sven Neumann <sven@gimp.org>
* plug-ins/file-psd/psd-save.c: applied patch from Dennis Ranke
as
attached to bug #551231. Changes the PSD save plug-in to store
transparency data in the image data section. Also fixes bug
#551232
(saving an indexed image with multiple layers as PSD modifies
the
image).
svn path=/trunk/; revision=26902
2008-09-08 Sven Neumann <sven@gimp.org>
* app/paint/gimpbrushcore.c: based on a patch from David Gowers
clamp the brush scale so that the brush never becomes smaller
than
0.5 pixels. Fixes bug #548631.
svn path=/trunk/; revision=26900
2008-09-08 Michael Natterer <mitch@gimp.org>
Bug 551306 – Color picker for text tool does not show selected
palette
* app/tools/gimptexttool.c (gimp_text_tool_register): add
GIMP_CONTEXT_PALETTE_MASK to the tool option's context mask so the
color popup's palette follows the globally selected palette.
svn path=/trunk/; revision=26899
2008-09-08 Sven Neumann <sven@gimp.org>
* authors.xml: restored alphabetic order. Use real name instead
of
a nick.
* AUTHORS: regenerated.
* app/dialogs/authors.xsl: changed rule to only include
contributors from the 2.6 development cycle in the About dialog.
svn path=/trunk/; revision=26898
2008-09-08 Roman Joost <romanofski@gimp.org>
* authors.xml: updated documenters who contributed to the user
manual since 2.4
svn path=/trunk/; revision=26897
2008-09-07 Sven Neumann <sven@gimp.org>
Applied 'gimp-decimate.diff' as announced on the mailing-list:
* app/gimp-log.[ch]: added log domain "scale".
* app/paint-funcs/scale-region.c: replaced decimation routines
with box filters. Only use the decimation routines to pre-scale
the image, always apply the interpolation for the final step.
svn path=/trunk/; revision=26896
* app/widgets/gimpnavigationview.c
(gimp_navigation_view_set_marker): Invalidating the view renderer
is just plain wrong, revert to redrawing the view. We will need to
solve the flicker in some other way.
svn path=/trunk/; revision=26894
* plug-ins/common/file-raw.c (load_dialog): Set the allowed max
values for Width and Height to the size of the image to load
instead of an arbitrary max of 4096
svn path=/trunk/; revision=26892
* app/core/gimpchannel.c (gimp_channel_real_all): We don't want to
clear the region, we want to fill it with OPAQUE_OPACITY.
svn path=/trunk/; revision=26891
Paintshop Pro)
* plug-ins/file-psd/psd-load.c (add_layers): Fix integer underflow
and only attempt to read channel data if there is any channel
data.
svn path=/trunk/; revision=26888
* plug-ins/file-psd/psd-load.c (add_layers): Also consider unknown
compression methods unsupported. This gives an error message
instead of a crash for bug #544939. The PSD loader still fails to
read the correct compression method however.
svn path=/trunk/; revision=26886
2008-09-06 Michael Natterer <mitch@gimp.org>
* app/gegl/gimpoperationhuesaturation.c
(gimp_operation_hue_saturation_process): don't use // for comments.
svn path=/trunk/; revision=26885
* app/gegl/gimpoperationhuesaturation.c
(gimp_operation_hue_saturation_process): Properly map the
secondary hue. Based on patch by Michael Deal.
svn path=/trunk/; revision=26883
2008-09-05 Sven Neumann <sven@gimp.org>
* app/tools/gimpgegltool.c: blacklist "color-convert" and all
GIMP
operations.
svn path=/trunk/; revision=26879
2008-09-05 Sven Neumann <sven@gimp.org>
* app/tools/gimpgegltool.c: added a blacklist of operations that
should not be shown. We may want to add more operations here.
svn path=/trunk/; revision=26878
2008-09-05 Michael Natterer <mitch@gimp.org>
* app/plug-in/gimpplugindebug.[ch] (gimp_plug_in_debug_argv): made
the "args" parameter const.
* app/plug-in/gimpplugin.c (gimp_plug_in_open): made some strings
const.
svn path=/trunk/; revision=26877
2008-09-05 Michael Natterer <mitch@gimp.org>
Bug 545325 – Scrollbars do not disappear automatically
* app/widgets/gimpcontainertreeview.c: autosize the columns after
each operation that can reduce the treeview's width.
svn path=/trunk/; revision=26875
2008-09-05 Michael Natterer <mitch@gimp.org>
Bug 550983 – The size displayed in the status bar isn't correct
* app/tools/gimprectangletool.c: use the right precision when
pushing the rectangle's size as coordinates to the statusbar.
svn path=/trunk/; revision=26872
2008-09-05 Michael Natterer <mitch@gimp.org>
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpactioneditor.[ch]: new simple widget which
contains a GimpActionView plus the search entry.
* app/dialogs/keyboard-shortcuts-dialog.c: use the new widget
instead of implementing the search entry here.
* app/widgets/gimpcontrollereditor.c: use a GimpActionEditor
instead of GimpActionView so the actions become searchable here
too.
svn path=/trunk/; revision=26870
2008-09-04 Sven Neumann <sven@gimp.org>
* app/tools/gimptransformtool.c
(gimp_transform_tool_initialize):
expose the preview when the tool is initialized. Fixes missing
redraws when the tool is selected from the menus (bug #550911).
(gimp_transform_tool_motion): expose the preview after
recalculating the transformation matrix.
svn path=/trunk/; revision=26868
2008-09-04 Tor Lillqvist <tml@novell.com>
* app/base/base-utils.h
* app/base/base-utils.c: The return type of get_pid() should be
gint, not GPid. This matches also the C library on Windows, in
which the return type of getpid() is int, not a pointer or
intptr_t. The use for GPid in the GLib API is as a "handle" to a
descendant processes, returned by the g_spawn_*() functions, and
passed to the g_child_watch_*() functions, not as a "process
identifier".
svn path=/trunk/; revision=26866
2008-09-04 Tor Lillqvist <tml@novell.com>
* tools/gimptool.c: Make it compile without warnings also with gcc
-Wwrite-strings. Use cmd.exe instead of command.com to execute the
COPY and DEL commands on Windows.
svn path=/trunk/; revision=26865
2008-09-04 Sven Neumann <sven@gimp.org>
* app/dialogs/keyboard-shortcuts-dialog.c: tweaked spacing
between
entry and button and resolved a mnemnic conflict.
svn path=/trunk/; revision=26862
2008-09-04 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpactionview.[ch]: add a column for the casefold
label of the action and filter on that.
* app/dialogs/keyboard-shortcuts-dialog.c: add a button to clear
the filter entry. Changed the label to "Search:".
svn path=/trunk/; revision=26861
2008-09-04 Michael Natterer <mitch@gimp.org>
* plug-ins/gfig/gfig-dobject.h
* plug-ins/gfig/gfig-style.c: some more const.
svn path=/trunk/; revision=26860
2008-09-04 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpactionview.[ch]: add an GtkTreeModelFilter
between the GtkTreeView and the actual GtkTreeStore. Add API to
set the filter which is simply a string that's matched with
strstr(). Quite some things improvable here...
* app/dialogs/keyboard-shortcuts-dialog.c: add a "Filter" entry
and set the filter on the action view.
svn path=/trunk/; revision=26859
2008-09-04 Sven Neumann <sven@gimp.org>
* libgimp/gimpprocview.[ch]: made the GimpParamDef parameter in
gimp_proc_view_new() const.
svn path=/trunk/; revision=26858
2008-09-04 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpreloc.c (set_gerror): made the error_message
variable const.
svn path=/trunk/; revision=26856
2008-09-04 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpbasetypes.h
(struct GimpEnumDesc)
(struct GimpFlagsDesc): made the value_desc and value_help members
const, just as the corresponding GEnumValue and GFlagsValue
members. This is technically an API change but shouldn't hurt
since it totally reflects how they are used.
svn path=/trunk/; revision=26855
2008-09-04 Michael Natterer <mitch@gimp.org>
* plug-ins/color-rotate/color-rotate-callbacks.c
* plug-ins/common/filter-pack.c
* plug-ins/common/nova.c
* plug-ins/common/sample-colorize.c: get rid of calls to
gdk_window_get_pointer(), use the coords from the motion event
and use gdk_event_request_motions().
* plug-ins/color-rotate/color-rotate-callbacks.[ch]: some
unrelated cleanup while i was at it.
svn path=/trunk/; revision=26853
2008-09-03 Lars-Peter Clausen <lars@metafoo.de>
* plugin-ins/pygimp/pygimp.h: define PyInt_AsSsize_t as PyInt_AsLong
if the python version is smaller then 2.5.0.
* configure.in: Lower required python version to 2.4.
svn path=/trunk/; revision=26849
2008-09-03 Michael Natterer <mitch@gimp.org>
* app/pdb/gimpprocedure.[ch] (gimp_procedure_set_static_strings):
made the string parameters const.
svn path=/trunk/; revision=26846
2008-09-03 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpnavigationview.c
(gimp_navigation_view_motion_notify): remove the call to
gdk_window_get_pointer() again.
(gimp_navigation_view_grab_pointer): instead, grab the pointer
properly with owner_events=FALSE so all events are reported with
respect to the widget's window.
svn path=/trunk/; revision=26844
2008-09-03 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-callbacks.c
* libgimpwidgets/gimpcolorselect.c
* modules/color-selector-water.c
* plug-ins/ifs-compose/ifs-compose.c: instead of using
gdk_window_get_pointer() if GdkEventMotion::is_hint is TRUE,
simply always use the coords from the event and call
gdk_event_request_motions() to ask for more motion events. This is
the recommended way and also works for events from devices other
than the core pointer.
* plug-ins/ifs-compose/ifs-compose.c (design_area_motion): some
code cleanup while i was at it.
svn path=/trunk/; revision=26843
2008-09-03 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpbutton.c: massively simplified. Don't fiddle
in GtkButton's internals (like setting "in_button" and forcing
redraws). Instead, simply remember the modifier state in
button_press() and check it in clicked(); if the state is != 0,
stop the "clicked" emission and emit "extended-clicked" instead.
svn path=/trunk/; revision=26842
2008-09-03 Michael Schumacher <schumaml@cvs.gnome.org>
* configure.in: bumped minimum required Python version to 2.5.0,
because of PyInt_AsSsize_t. Fixes bug #550576.
svn path=/trunk/; revision=26841
2008-09-03 Sven Neumann <sven@gimp.org>
* README.i18n: removed lots of outdated information directed at
developers and only kept the most important hints for translators.
svn path=/trunk/; revision=26840
2008-09-02 Sven Neumann <sven@gimp.org>
* app/plug-in/gimppluginshm.c: if INVALID_FILE_HANDLE is
undefined,
define it as the constant that we used to use here.
svn path=/trunk/; revision=26839
2008-09-02 Aurimas Juška <aurisj@svn.gnome.org>
* libgimp/gimpzoompreview.c (gimp_zoom_preview_draw_buffer),
(gimp_zoom_preview_set_drawable): fixed GimpZoomPreview to handle
layers with offsets and display intersection of layer and selection
in the preview. (bug #156905)
svn path=/trunk/; revision=26838
2008-09-02 Michael Natterer <mitch@gimp.org>
* app/display/gimpstatusbar.c: use gtk_widget_get_style() instead
of widget->style.
svn path=/trunk/; revision=26837
2008-09-02 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpruler.c: use gtk_widget_get_style() instead
of widget->style. Reduce indentation by one level in
gimp_ruler_draw_pos().
svn path=/trunk/; revision=26836
2008-09-02 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpselectiondata.c: no need to set strlen(sting)+1
bytes on the GtkSelectionData because gtk_selection_data_set()
zero-terminates all data anyway.
svn path=/trunk/; revision=26835