2005-02-07 Sven Neumann <sven@gimp.org>
* app/core/gimpimagefile.c (gimp_imagefile_get_desc_string):
changed "Remote Image" to "Remote File". The state of the
thumbnail doesn't tell us if this is an image file at all.
* app/widgets/gimpthumbbox.c: don't auto-thumbnail remote files.
* libgimpthumb/gimpthumb-utils.[ch]
* libgimpthumb/gimpthumbnail.c: do the same workaround for UNC
paths as in file_utils_filename_from_uri().
2005-02-07 Michael Natterer <mitch@gimp.org>
* plug-ins/uri/uri-backend.h: added backend methods
uri_backend_init() and uri_backend_shutdown().
* plug-ins/uri/uri.c: call them around using other backend
functions (both in query() and run()).
* plug-ins/uri/uri-backend-gnomevfs.c: moved init()/shutdown() of
GnomeVFS into the new backend methods. Create the list of
supported protocols dynamically. Get rid of one translatable
string.
* plug-ins/uri/uri-backend-wget.c: implement the new methods as
empty stubs which always succeed.
2005-02-07 Sven Neumann <sven@gimp.org>
* libgimpconfig/Makefile.am
* libgimpconfig/gimpconfig.def
* libgimpconfig/gimpconfig.h
* libgimpconfig/gimpconfigtypes.h: install the GimpColorConfig
header and include it.
* libgimpconfig/gimpcolorconfig.[ch]: commented out some options
that will only be needed later and that will most likely undergo
some changes.
* app/config/gimpcoreconfig.[ch]
* app/config/gimprc-blurbs.h: added GimpColorConfig to GimpRc.
2005-02-07 Michael Natterer <mitch@gimp.org>
* plug-ins/uri/uri-backend-gnomevfs.c: fixed wrong use of
GnomeVFSFileInfo (it wants to be allocated and unrefed). Extended
the list of supported prefixes (still conceptually broken).
2005-02-07 Sven Neumann <sven@gimp.org>
* HACKING
* autogen.sh: dropped support for automake 1.6, automake >= 1.7 is
now required.
* configure.in: removed cruft that was there only for automake 1.6.
2005-02-07 Michael Natterer <mitch@gimp.org>
* configure.in: check for gnome-vfs-2.0
* plug-ins/uri/Makefile.am
* plug-ins/uri/uri-backend-gnomevfs.c: new file which is built
instead of the wget backend if GnomeVFS is available.
2005-02-07 Sven Neumann <sven@gimp.org>
* themes/Default/images/preferences/Makefile.am
* themes/Default/images/preferences/color-management.png: added
icon for the yet to be added color management preferences page.
Icon kindly provided by Alastair M. Robinson (bug #78265).
2005-02-07 Sven Neumann <sven@gimp.org>
* app/widgets/gimptooldialog.c (gimp_tool_dialog_new): unset the
"focus-on-map" property for tool dialogs. Fixes bug #154651 (on
window managers supporting this hint).
2005-02-06 Sven Neumann <sven@gimp.org>
* libgimpconfig/Makefile.am
* libgimpconfig/gimpcolorconfig-enums.[ch]
* libgimpconfig/gimpcolorconfig.[ch]: added a first draft of a
color management configuration object. Not yet installed nor used
by anything. This is based on an older patch by Stefan Döhla.
2005-02-06 Michael Natterer <mitch@gimp.org>
* plug-ins/common/url.c: removed.
* plug-ins/common/plugin-defs.pl: changed accordingly.
* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am: regenerated.
* configure.in
* plug-ins/Makefile.am: added the "uri" subdir.
* plug-ins/uri/.cvsignore
* plug-ins/uri/Makefile.am
* plug-ins/uri/uri-backend-wget.c
* plug-ins/uri/uri-backend.h
* plug-ins/uri/uri.c: new files: split uri plug-in into common and
backend-specific code that will soon optionally use gnomre-vfs.
Also treat everything after the basename's first dot as extension,
not after the last dot, so opening "foo.ext.gz" doesn't trigger
warnings from the compressor plug-in.
2005-02-06 Sven Neumann <sven@gimp.org>
* app/main.c: moved call to sanity_check() after the
initialization of gtk+ so that the error message can be displayed.
2005-02-05 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcontrollers.c (gimp_controllers_init): removed
some eeeky code that used to fiddle with the GimpController type.
* libgimpwidgets/gimpcontroller.c (gimp_controller_get_type): add
the GimpConfig interface here, where it belongs.
2005-02-05 Sven Neumann <sven@gimp.org>
* modules/cdisplay_colorblind.c
* modules/cdisplay_gamma.c
* modules/cdisplay_highcontrast.c
* modules/cdisplay_proof.c: there's no longer a need to keep a
pointer to the widget returned by GimpColorDisplay::configure.
2005-02-05 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpcolordisplay.[ch]: deprecate the
implementation of the class methods clone, load_state, save_state
and configure_reset and implement them in the base class using the
GimpConfigInterface.
* modules/cdisplay_colorblind.c
* modules/cdisplay_gamma.c
* modules/cdisplay_highcontrast.c
* modules/cdisplay_proof.c: removed deprecated implementations here.
2005-02-05 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplayshell-callbacks.c
(gimp_display_shell_canvas_tool_events): switched meaning of Ctrl
and Shift modifiers used with the mouse scroll wheel. The HIG
suggests to use Ctrl for zooming and it makes GIMP more consistent
with other apps (for example Inkscape).
2005-02-05 Sven Neumann <sven@gimp.org>
* modules/Makefile.am: link ColorDisplay modules with libgimpconfig.
* modules/cdisplay_colorblind.c: added the GimpConfig interface
and use it.
2005-02-03 Michael Natterer <mitch@gimp.org>
* app/dialogs/print-size-dialog.c
* app/dialogs/resize-dialog.c
* app/dialogs/scale-dialog.c: moved "Reset" buttons left of "Cancel".
2005-02-03 Sven Neumann <sven@gimp.org>
* tools/Makefile.am
* tools/gimp-remote.c: allow to localize gimp-remote.
* app/main.c: changed a string so it can be shared with gimp-remote.
2005-02-03 Michael Natterer <mitch@gimp.org>
* app/actions/help-commands.c (help_context_help_cmd_callback):
for consistency, use return_if_no_widget() instead of
action_data_get_widget()
2005-02-03 Michael Natterer <mitch@gimp.org>
* app/dialogs/image-scale-dialog.c (image_scale_dialog_new): use
the passed parent widget instead of display->shell.
2005-02-03 Sven Neumann <sven@gimp.org>
* app/core/gimpimagemap.c (gimp_image_map_do): fixed handling of
pixel region that broke with my latest change. Fixes bug #166126.
2005-02-03 Sven Neumann <sven@gimp.org>
* app/app_procs.[ch]
* app/main.c: let the GLib command-line parser deal with the
remaining arguments and pass a string array to app_run().
2005-02-02 Michael Natterer <mitch@gimp.org>
* app/core/gimp-utils.[ch] (gimp_check_glib_version): removed this
function.
* app/sanity.c (sanity_check_glib): use glib_check_version()
instead and set required version to 2.6.0.
2005-02-02 Sven Neumann <sven@gimp.org>
* configure.in: depend on glib >= 2.6.0.
* app/main.c: use the new GLib commandline option parser. Still
work in progress.
2005-02-02 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-convert.c (gimp_image_convert): relax/rigor
the floating selection around the convert operations so color
analysis for indexed conversion works on the floating selection's
drawable original pixels, and not on the composited one.
Fixes bug #165342.
2005-02-02 Sven Neumann <sven@gimp.org>
* data/misc/gimp.desktop.in.in (_Name): experimentally expand the
GIMP acronym. Not sure if this is a good idea at all...
2005-02-01 Sven Neumann <sven@gimp.org>
* app/core/gimpimagemap.c (gimp_image_map_do): tiny optimization
based on a patch by Bill Skaggs. Process up to 16 tiles in one go
before updating the display.
2005-01-31 Sven Neumann <sven@gimp.org>
* themes/Default/images/Makefile.am
* themes/Default/images/tools/stock-tool-new-rect-select-16.png
* themes/Default/images/tools/stock-tool-new-rect-select-22.png
* libgimpwidgets/gimpstock.[ch]: removed the new icon again;
there's no point in adding a stock icon temporarily.
* app/tools/gimpnewrectselecttool.c: changed accordingly.
2005-01-31 Michael Natterer <mitch@gimp.org>
Some cleanup to make plug-in menu creation less hackish and
finally enable registering plug-in menu entries in much more UI
managers (not only in the image and toolbox menus):
* app/menus/menus.c: added a <Toolbox> UI manager instead of
creating the toolbox menu from the <Image> UI manager.
* app/widgets/gimpimagedock.[ch]: removed the ui_manager and the
signal connections to update it...
* app/widgets/gimpdock.[ch]: ...and added them here so all docks
have their own UI manager. Determine which manager to create from
looking at GimpDockClass::ui_manager_name (defaults to <Dock>).
* app/widgets/gimptoolbox.c: set ui_manager_name to <Toolbox> and
use the UI manager created by our parent class instead of using
the <Image> one.
(toolbox_create_tools): use gimp_action_get_accel_closure()
instead of doing evil hacks.
* app/gui/gui-vtable.c
* app/menus/plug-in-menus.c: removed lots of special casing of the
<Image> UI manager. The code is almost ready for allowing plug-in
menus under <Layers>, <Channels>, <Brushes> etc.
2005-01-28 Michael Natterer <mitch@gimp.org>
* app/actions/Makefile.am
* app/actions/window-actions.[ch]: new files holding utility
functions to create actions to move windows to other screens.
* app/actions/dock-actions.c
* app/actions/dock-commands.[ch]
* app/actions/view-actions.c
* app/actions/view-commands.[ch]: use the new actions instead of
the change screen dialog.
* app/menus/Makefile.am
* app/menus/window-menu.[ch]: new files which create menu items
for above actions.
* app/menus/dockable-menu.[ch]: new files using above window-menu
utility functions.
* app/menus/image-menu.c: use them here too.
* app/menus/menus.c: set a setup_func for the "<Dockable>"
UI manager.
* menus/dockable-menu.xml.in
* menus/image-menu.xml.in: changed accordingly.
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-26 Raphael Quinet <raphael@gimp.org>
* app/composite/gimp-composite-generic.c: minor doc fix for
formula used by gimp_composite_multiply_any_any_any_generic().
2005-01-26 Sven Neumann <sven@gimp.org>
* libgimpconfig/gimpconfig-path.h: added declarations for the
gimp_config_build_path functions.
* app/config/Makefile.am
* app/config/gimprc-utils.[ch]: removed these two files again;
they used to duplicate functionality from libgimpconfig.
* app/config/gimpcoreconfig.c
* app/config/gimpguiconfig.c
* app/config/gimppluginconfig.c: changed accordingly.
2005-01-25 Michael Natterer <mitch@gimp.org>
* libgimpconfig/gimpconfigtypes.h: new file holding the opaque
typedefs for libgimpconfig. Includes "libgimpbase/gimpbasetypes.h"
* libgimpconfig/Makefile.am: added the new file. Removed stuff
that is not needed.
* libgimpconfig/gimpconfigwriter.h
* libgimpconfig/gimpconfig-iface.h: removed typedefs here.
* libgimpconfig/gimpconfig-deserialize.c
* libgimpconfig/gimpconfig-iface.c
* libgimpconfig/gimpconfig-serialize.c
* libgimpconfig/gimpconfig-utils.c
* libgimpconfig/gimpconfig.h
* libgimpconfig/gimpconfigwriter.c: include it before including
any other libgimpconfig stuff.
* app/config/config-types.h: #include "libgimpbase/gimpbasetypes.h"
* app/config/gimpconfig-utils.h: changed include guards to
__APP_GIMP_CONFIG_UTILS_H__.
* app/dialogs/tips-parser.c: include <glib-object.h> instead of
just <glib.h>.
* app/tools/gimphistogramoptions.c
* app/tools/gimptextoptions.c: include "config/gimpconfig-utils.h"
* app/widgets/gimpdialogfactory.h
* app/widgets/gimpsessioninfo.h: removed inclusion of
"libgimpbase/gimpbasetypes.h".
2005-01-24 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-deserialize.[ch]
* app/config/gimpconfig-serialize.[ch]
* app/config/gimpconfig.[ch]: factored out some rather obscure
GimpConfig features that were added solely for gimprc.
* app/config/Makefile.am
* app/config/gimprc-deserialize.[ch]
* app/config/gimprc-serialize.[ch]
* app/config/gimprc-unknown.[ch]: moved gimprc-specific code to
these new files.
* app/config/gimprc.c
* app/config/test-config.c: 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>
* plug-ins/MapObject/Makefile.am (MapObject_SOURCES): added
arcball.c; it isn't used but it doesn't hurt to have it in the
tarball in case someone wants to resurrect this functionality.
2005-01-23 Sven Neumann <sven@gimp.org>
* libgimpbase/Makefile.am
* libgimpbase/gimpbaseparams.[ch]: removed this file again.
* libgimpbase/gimpmemsize.[ch]
* libgimpbase/gimppath.[ch]
* libgimpbase/gimpunit.[ch]: moved the paramspec definitions to
the types they belong to.
* libgimpbase/gimpbase.h: changed accordingly.
* libgimpwidgets/Makefile.am (libgimpwidgetsinclude_HEADERS):
install the new header files.
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-23 Sven Neumann <sven@gimp.org>
* app/paint/paint-enums.h
* libgimpbase/gimpbaseenums.h: moved enums to libgimpbase (from
app/paint and libgimp). The remaining enums in
app/paint/paint-enums.h need special treatment.
* app/paint/paint-enums.c:
* libgimp/gimpenums.h
* libgimpbase/gimpbaseenums.c
* tools/pdbgen/enums.pl: regenerated.
* libgimpbase/gimpbase.def
* libgimp/gimp.def: updated.
2005-01-23 Sven Neumann <sven@gimp.org>
* app/plug-in/Makefile.am
* app/plug-in/plug-in-enums.h: new file with enums moved from ...
* app/plug-in/plug-in-types.h: ... here.
* tools/pdbgen/Makefile.am (enum_headers): changed accordingly.
2005-01-23 Sven Neumann <sven@gimp.org>
* app/core/core-enums.h
* libgimpbase/gimpbaseenums.h: moved enums to libgimpbase (from
app/core and libgimp). The remaining enums in app/core/core-enums.h
need special treatment.
* app/core/core-enums.c:
* libgimp/gimpenums.h
* libgimpbase/gimpbaseenums.c
* tools/pdbgen/enums.pl: regenerated.
* libgimpbase/gimpbase.def
* libgimp/gimp.def: updated.
2005-01-23 Sven Neumann <sven@gimp.org>
* app/base/base-enums.h
* libgimpbase/gimpbaseenums.h: moved GimpInterpolationType and
GimpTransferMode to libgimpbase (from core and libgimp). The
remaining enums in app/base/base-enums.h need special treatment.
* app/base/base-enums.c
* libgimp/gimpenums.h
* libgimpbase/gimpbaseenums.[ch]
* tools/pdbgen/enums.pl: regenerated.
* libgimpbase/gimpbase.def
* libgimp/gimp.def: updated.
2005-01-22 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu-interface.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-types.h
* plug-ins/script-fu/siod-wrapper.c: added new script-fu
parameter SF-ENUM that allows to easily create a combo-box to
choose values from registered enums. For this to work correctly,
another change is needed that I will commit separately.
* plug-ins/script-fu/scripts/perspective-shadow.scm
* plug-ins/script-fu/scripts/test-sphere.scm: use the new SF-ENUM
parameter.
2005-01-22 Sven Neumann <sven@gimp.org>
* app/widgets/gimppropwidgets.[ch]: added gimp_prop_expander_new().
* app/paint/gimppaintoptions.[ch]: added a property to track the
state of the "Pressure sensitivity" expander.
* app/tools/gimppaintoptions-gui.c: use gimp_prop_expander_new()
to create the "Pressure sensitivity" expander.
2005-01-22 Maurits Rijk <m.rijk@chello.nl>
* plug-ins/imagemap/imap_file.c
* plug-ins/imagemap/imap_main.c
* plug-ins/imagemap/imap_menu.c
* plug-ins/imagemap/imap_menu_funcs.[ch]
* plug-ins/imagemap/imap_misc.[ch]
* plug-ins/imagemap/imap_object.[ch]
* plug-ins/imagemap/imap_selection.c: cleaning up code, mostly
replacing homebrewn stuff that is now in either GTK or one of the
GIMP libs. More to come.
2005-01-22 Sven Neumann <sven@gimp.org>
* plug-ins/jpeg/jpeg-save.c (save_dialog): update the preview (and
thus the filesize) if the EXIF or thumbnail toggles are being used.
Fixes bug #164914.
2005-01-22 Sven Neumann <sven@gimp.org>
* plug-ins/imagemap/imap_file.c (do_file_save_as_dialog): use
GTK_STOCK_SAVE for the save dialog (bug #164864).
2005-01-22 Sven Neumann <sven@gimp.org>
* libgimpbase/gimputils.c (gimp_enum_value_get_desc): no point in
crashing if gimp_enum_get_desc() returns NULL.
* modules/cdisplay_colorblind.c
* modules/cdisplay_proof.c: register enum descriptions, use
GimpEnumComboBox.
2005-01-21 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpwidgets-utils.[ch] (gimp_action_get_accel_closure):
new function as workaround for missing GTK+ API (see bug #141750).
* app/widgets/gimpactionview.[ch]: use the function instead of
having this ugly hack here. Store the accel_closure instead of the
hackish menu_item in the tree store. Removed cruft and cleaned up
a bit.
2005-01-21 Sven Neumann <sven@gimp.org>
* app/core/gimpdrawable-transform.c: applied a patch from Geert
Jordaens that seems to fix drawable transformation using the new
Lanczos interpolation routine :)
2005-01-20 Sven Neumann <sven@gimp.org>
* HACKING
* Makefile.am
* acinclude.m4
* autogen.sh: applied (modified) patch from Raphaël Quinet that
allows to build GIMP from CVS without having gtk-doc installed.
If you need to do this, pass --disable-gtk-doc to autogen.sh.
* configure.in: removed --disable-devel-docs option since it has
become obsolete now.
* devel-docs/Makefile.am: require gtk-doc when running 'make dist'.
2005-01-20 Sven Neumann <sven@gimp.org>
* app/paint-funcs/scale-funcs.[ch]: applied patch from Geert
Jordaens that improves results of the Lanczos interpolation
routine.
2005-01-20 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcomponenteditor.c
(gimp_component_editor_button_press): call gimp_image_flush() after
setting the active component since this might unselect the active
channel. Fixes bug #164195.
2005-01-19 Sven Neumann <sven@gimp.org>
* app/core/gimpdrawable-transform.c: applied a patch from Geert
Jordaens that fixes the crash in the drawable transformations
using the Lanczos interpolation type. The result is somewhat wrong
though :(
2005-01-18 Manish Singh <yosh@gimp.org>
* plug-ins/jpeg/jpeg-save.[ch]: Adapted the code from the stable
branch (based on a patch from Nils Philippsen) that makes sure that
the EXIF thumbnail doesn't cause the EXIF data block to grow beyond
its maximum size. Fixes bug #164087.
2005-01-19 Sven Neumann <sven@gimp.org>
* app/display/gimpscalecombobox.c (gimp_scale_combo_box_set_scale):
don't use == to compare floating point values.
2005-01-18 Michael Natterer <mitch@gimp.org>
* app/core/gimpparasitelist.c (parasite_serialize): use
gimp_config_writer_data() to write the parasite data because
it's binary and can contain '\0'.
(gimp_parasite_list_deserialize): use gimp_scanner_parse_data() to
read it. Still accepts the old file format for backward
compatibility. Fixes bug #163131.
* gimp/plug-ins/jpeg/gimpexif.c
* gimp/plug-ins/jpeg/gimpexif.h: new files with prototype
interface code for metadata system.
* gimp/plug-ins/jpeg/Makefile.am
* gimp/plug-ins/jpeg/jpeg-exif.c
* gimp/plug-ins/jpeg/jpeg.c: adapted to metadata interface
as described on gimp-dev mailing list.
* libgimpwidgets/gimpwidgets.c (gimp_coordinates_callback):
Make sure last_x and last_y are set to values that match
those returned by gimp_size_entry_get_refval(),
fixes bug #163951.
2005-01-18 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdockable.[ch]: added new function
gimp_dockable_blink() which lets the dockable's title_area blink.
* app/widgets/gimpdialogfactory.c
(gimp_dialog_factory_dialog_new_internal): let wilber blink at the
user :) Fixes bug #164156.
2005-01-17 Michael Natterer <mitch@gimp.org>
Allow to drop stuff onto empty layers, channels and paths dialogs
to create new items:
* app/widgets/gimpcontainertreeview.h (struct GimpContainerTreeView):
added "gboolean dnd_drop_to_empty".
* app/widgets/gimpcontainertreeview-dnd.c: if "dnd_drop_to_empty"
is TRUE, dispatch drops to empty views and to the empty area below
all items.
* app/widgets/gimpitemtreeview.c (gimp_item_tree_view_init): set
"dnd_drop_to_empty" to TRUE.
* app/widgets/gimpitemtreeview.c
* app/widgets/gimpchanneltreeview.c
* app/widgets/gimpdrawabletreeview.c
* app/widgets/gimplayertreeview.c
* app/widgets/gimpvectorstreeview.c: made all drop functions work
with "dest_viewable" being NULL and changed drop_possible()
implementations accordingly. Cleaned up the whole DND code a bit.
* app/widgets/gimplayertreeview.c: removed color and pattern
drop code...
* app/widgets/gimpdrawabletreeview.c: and added it here so colors
and patterns can be dropped to the channels dialog too.
2005-01-16 Sven Neumann <sven@gimp.org>
* app/tools/gimppaintoptions-gui.c (pressure_options_gui): added a
toggle to control whether pressure affects opacity of the Airbrush
tool (bug #164237).
2005-01-16 Sven Neumann <sven@gimp.org>
* app/config/gimpdisplayconfig.[ch]
* app/dialogs/preferences-dialog.c: also list the default image
title and statusbar formats.
2005-01-16 Sven Neumann <sven@gimp.org>
* app/dialogs/preferences-dialog.c: renamed default image title
and statusbar format as suggested in bug #150679.
2005-01-16 Sven Neumann <sven@gimp.org>
* plug-ins/common/curve_bend.c: applied patch from Jan Heller that
fixes broken expose event handling (bug #164207).
2005-01-15 Michael Natterer <mitch@gimp.org>
* app/core/gimpchannel.c: implement GimpItem::convert(). Handles
any drawable, including conversion to GRAY, flattening and
resizing.
* app/widgets/gimpchanneltreeview.c: implement dropping of all
kinds of drawables as new channels. Fixes bug #158133.
Simplified component dropping by removing stuff which is done by
gimp_item_convert() now.
2005-01-15 Sven Neumann <sven@gimp.org>
* app/core/gimpdrawable-transform.c
* app/paint-funcs/scale-funcs.c: minor cleanups to the new Lanczos
interpolation routines. Drawable transformations do still crash :(
2005-01-15 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-dnd.[ch]: added new function
gimp_display_shell_dnd_init() which connects all DND callbacks.
Made all DND callbacks static.
* app/display/gimpdisplayshell.c (gimp_display_shell_init): call
above function instead of connecting all DND callbacks here. Removed
lots of now unused #includes.
2005-01-15 Michael Natterer <mitch@gimp.org>
* app/core/gimpitem.c
* app/core/gimpdrawable.c
* app/vectors/gimpvectors.c: made GimpItem::scale() and ::resize()
work on unattached items.
* app/widgets/gimplayertreeview.c
(gimp_layer_tree_view_drop_component): fix drop index.
* app/widgets/gimpchanneltreeview.c: implement dropping of
components as new channels. Fixes bug #158483.
2005-01-15 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcontainertreeview.[ch]: added virtual function
GimpContainerTreeView::drop_component(). Added EEKy "dnd_gimp"
needed for gimp_selection_data_get_component().
* app/widgets/gimpitemtreeview.c (gimp_item_tree_view_set_context):
set the "dnd_gimp" pointer if it is NULL.
* app/widgets/gimpcontainertreeview-dnd.c: handle component drops
and dispatch ::drop_component() accordingly.
* app/widgets/gimplayertreeview.c: implement dropping of
components as new layers. Addresses bugs #158483 and #158133.
2005-01-15 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell.c
* app/display/gimpdisplayshell-dnd.[ch]
* app/widgets/gimptoolbox-dnd.c: enabled dropping of components
to the display and the toolbox. Addresses bug #158483.
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-15 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdnd.c: added gimp_dnd_get_component_icon().
* app/widgets/gimpcomponenteditor.c: allow to drag
components. They can't be dropped anywhere yet.
2005-01-15 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpitemtreeview.c
(gimp_item_tree_view_drop_viewable): handle drops of items of all
types from all images and convert them if needed.
* app/widgets/gimplayertreeview.c: enable dropping of all kinds of
drawables. Addresses bug #158133.
2005-01-15 Michael Natterer <mitch@gimp.org>
* app/widgets/widgets-enums.h (enum GimpDndType): reordered so
COMPONENT is after IMAGE.
* app/widgets/gimpdnd.[ch]
* app/widgets/gimpselectiondata.[ch]: added API for passing
components around via DND. Speaks in terms of a
(GimpImage,GimpChannelType) tuple.
2005-01-14 Michael Natterer <mitch@gimp.org>
* app/core/core-enums.[ch] (enum GimpUndoType): added GIMP_UNDO_INK.
* app/paint/gimppaintcore.[ch]: added virtual function
GimpPaintCore::push_undo() and call it.
* app/paint/gimppaintcore-undo.[ch]: made it the default
implementation.
* app/paint/gimpink-blob.[ch]: added blob_duplicate().
* app/paint/gimpink.[ch]: added a "start_blob" (just like
GimpPaintCore::start_coords) which gets set whenever we start a
new stroke or line. Removed ink->lastx and ink->lasty because
they are the same as paint_core->last_coords.
* app/paint/Makefile.am
* app/paint/gimpink-undo.[ch]: new files implementing an
undo step for ink which restores the last blob used along
with the whole ink state. Fixes bug #163670.
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>
Splitting GimpItem::convert() into two virtual functions was
apparently buggy over-engineering. Reverted that stuff and
implement item conversion much simpler:
* app/core/gimpitem.[ch]: have a single virtual function,
GimpItem::convert(), which takes a newly duplicated item and the
destination image.
(gimp_item_convert): simply call GimpItem::convert() on the result
of gimp_item_duplicate().
(gimp_item_real_convert): set the item's new image.
* app/core/gimplayer.c (gimp_layer_convert)
* app/vectors/gimpvectors.c (gimp_vectors_convert): changed
accordingly and chain up after, not before doing our own stuff
so the old image is still available as item->image for stuff
like colormap conversion. Fixes bug #163879.
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-13 Sven Neumann <sven@gimp.org>
* app/units.c
* app/core/gimp-units.c
* app/core/gimp.c
* app/core/gimpunit.[ch]: added a utility function that frees the
memory allocated for user units. Minor cleanups.
2005-01-11 Sven Neumann <neumann@jpk.com>
* app/base/base-enums.[ch]
* app/core/gimpdrawable-transform.c
* app/core/gimpdrawable.c
* app/paint-funcs/Makefile.am
* app/paint-funcs/paint-funcs.[ch]
* app/paint-funcs/scale-funcs.[ch]: applied patch by Geert Jordaens
(after a good deal of reformatting for coding style compliance).
This factors the scale routines into their own file and adds a
sinc-based (Lanczos) interpolation routine (bug #162250).
2005-01-10 Manish Singh <yosh@gimp.org>
* modules/controller_midi.c: #include <time.h> to make sure all
the types are there for the alsa headers. Should address bug
#163593.
2005-01-09 Sven Neumann <sven@gimp.org>
* app/widgets/gimpactionview.c (gimp_action_view_new): connect to
"button_press_event" and start editing immidiately instead of
waiting for a second click. Fixes bug #163385.
2005-01-09 Sven Neumann <sven@gimp.org>
* app/widgets/gimpdialogfactory.c (gimp_dialog_factories_toggle):
if called with (ensure_visibility == TRUE), raise the toolbox.
Fixes bug #163381.
2005-01-08 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcontainertreeview.c
(gimp_container_tree_view_button_press): fixed handling of clicks
into a horizontally scrolled treeview.
2005-01-08 Sven Neumann <sven@gimp.org>
* app/dialogs/scale-dialog.c: use a GimpMessageBox to display the
informative message when scaling an indexed image.
2005-01-07 Shlomi Fish <shlomif@iglu.org.il>
* plug-ins/script-fu/scripts/frosty-logo.scm: made sure the shadow
is given enough space and then truncated instead of translated to the
center of the image, thus preventing the display of shadows with
a completely horizontal or vertical edge.
Fixes bug #132145.
2005-01-07 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-snap.c: moved variables to local scopes,
assign the snapped coords unconditionally (also if we don't snap),
cleanup.
(gimp_image_snap_rectangle): entirely rewritten to use local
mindist_x, mindist_y variables instead of fiddling with lots of
boolean variables. Implemented vectors snapping as if the required
GimpStroke functions existed (#defined them). Simon, your turn :)
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-07 Sven Neumann <sven@gimp.org>
* app/composite/gimp-composite-x86.h
* app/composite/gimp-composite-sse.c: applied patch from Andreas
Jochens that fixes the build on amd64 with gcc-4.0 (bug #163041).
2005-01-06 Manish Singh <yosh@gimp.org>
* libgimpwidgets/gimpdialog.c: flush the display in dispose if we're
no longer in a main loop, so the dialog doesn't hang around while
possibly long running calculations are being done. Fixes bug #163084.
2005-01-06 Sven Neumann <sven@gimp.org>
* plug-ins/common/sparkle.c: applied patch from Shlomi Fish that
fixes more regressions in Sparkle plug-in (bug #132145).
* libgimpwidgets/gimpscrolledpreview.[ch]: new function:
gimp_scrolled_preview_set_position () to set the position of the
preview content wrt the drawable. This function might be moved to a
virtual function of GimpPreview in a near future.
* libgimp/gimpdrawablepreview.c: use this function, so a preview
remembers its position from one invocation to the next. This is done
using the current executable name as a key for gimp_set/get_data () so
each plug-in can have its preview on a different place.
More informations could be saved this way: the update toggle, the checks, etc.
Addresses bug #162286.
* libgimpwidgets/gimppreview.c: smallish cleanup.
* configure.in: add check for libexif version >= 0.6.0,
necessary because of nasty incompatible api change.
* plug-ins/jpeg/exif-handling.txt: removed from here...
* devel-docs/exif-handling.txt: ...and added here
* plug-ins/jpeg/jpeg-exif.c
* plug-ins/jpeg/Makefile.am
* plug-ins/jpeg/jpeg-load.c
* plug-ins/jpeg/jpeg.c
* plug-ins/jpeg/jpeg.h: extract info from exif on loading,
and add info to exif on saving, addresses bug #56433,
bug #61499, and bug #121810.
2005-01-04 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplayshell-close.c
(gimp_display_shell_close_dialog): set the default response to
Cancel in order to reduce the risk of accidentally saving an
image (bug #162872).
* plug-ins/common/mosaic.c: invalidate the preview when a parameter
change. Disabled updating the preview by default. There is room
optimisations, but this fixes#162710.
2005-01-03 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpcellrenderertoggle.c
(gimp_cell_renderer_toggle_get_size): made the code look more
similar to GtkCellRendererToggle to allow for easy comparison.