2008-09-30 Sven Neumann * Made 2.6.0 release. 2008-09-30 Michael Natterer 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. 2008-09-30 Michael Natterer * 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. 2008-09-30 Sven Neumann * app/gui/splash.c: don't make the upper label bold. This change compensates for the smaller width of the new splash screen. 2008-09-30 Sven Neumann * app/widgets/gimpwidgets-utils.[ch]: added gimp_pango_layout_set_scale(). * app/gui/splash.c: set a smaller font size on the lower label. 2008-09-30 Sven Neumann * app/widgets/gimpwidgets-utils.c (gimp_pango_layout_set_weight): actually use the passed weight. 2008-09-30 Sven Neumann * app/config/gimpbaseconfig.c * app/config/gimpguiconfig.c: reverted parts of commit 25812. Restores compatibility with old gimprc files. 2008-09-30 Sven Neumann * app/config/gimprc-deserialize.c (gimp_rc_deserialize): formatting. 2008-09-29 Sven Neumann * README: prepared for the upcoming 2.6 release. 2008-09-29 Sven Neumann * configure.in: bumped version to 2.6.0. * app/Makefile.am * tools/Makefile.am: changed accordingly. * docs/gimprc.5.in * etc/gimprc: regenerated. 2008-09-29 Sven Neumann * 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. 2008-09-29 Sven Neumann * INSTALL: prepared for the upcoming 2.6 release. 2008-09-29 Martin Nordholts Bug 554125 – Tab key doesn't hide utility windows when there is no 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. 2008-09-29 Michael Natterer * 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. 2008-09-29 Michael Natterer * 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. 2008-09-29 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_new): reduced default window height to give a window aspect ratio of roughly 3:1 as requested by Peter. 2008-09-28 Martin Nordholts Bug 472403 – Add bevel script fu does not work if there is no 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. 2008-09-28 Martin Nordholts * plug-ins/script-fu/scripts/add-bevel.scm (script-fu-add-bevel): Rename 'select' to 'selection' since that is what it holds. 2008-09-28 Martin Nordholts * app/widgets/gimpdialogfactory.c (gimp_dialog_factories_show_foreach) (gimp_dialog_factories_hide_foreach): Increase readability with widget = list->data. 2008-09-27 Martin Nordholts Bug 551864 – plugin Flame fails for some settings on 64bit 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". 2008-09-26 Michael Natterer * app/widgets/gimpnavigationview.c: reorder functions and add static prototypes. 2008-09-25 Michael Natterer * app/base/colorize.c (colorize_calculate): fix calculation of final lookup table to not darken the image. 2008-09-25 Michael Natterer * app/display/gimpdisplayshell-dnd.c (gimp_display_shell_drop_pixbuf): use the new helper function here too. 2008-09-25 Sven Neumann * app/display/gimpdisplayshell-dnd.c (gimp_display_shell_drop_component) (gimp_display_shell_drop_drawable): moved duplicated code into a helper function. 2008-09-25 Michael Natterer * plug-ins/print/print-draw-page.c (print_cairo_surface_from_drawable): free the right array. 2008-09-25 Sven Neumann * 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. 2008-09-25 Sven Neumann 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. 2008-09-25 Michael Natterer 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. 2008-09-25 Michael Natterer 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 :) 2008-09-25 Sven Neumann * 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 doing 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. 2008-09-24 Martin Nordholts Bug 549925 – incorrect math: adding/substracting empty selection 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. 2008-09-24 Martin Nordholts * app/tools/gimprectangleselecttool.c: Added new utility function gimp_rectangle_select_tool_get_operation(), and started using it. 2008-09-24 Sven Neumann * 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(). 2008-09-24 Sven Neumann * plug-ins/pygimp/pygimp-drawable.c * plug-ins/pygimp/pygimp-image.c: added optional interpolation parameters to the image.scale() and layer.scale() methods. 2008-09-24 Michael Natterer * 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. 2008-09-24 Martin Nordholts * 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. 2008-09-24 Sven Neumann * 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. 2008-09-24 Sven Neumann * tools/pdbgen/pdb/image.pdb: fixed error and some typos in the PDB documentation. * app/pdb/image-cmds.c * libgimp/gimpimage_pdb.c: regenerated. 2008-09-23 Sven Neumann * INSTALL * configure.in: added --without-wmf option to disable build of the WMF plug-in. 2008-09-23 Sven Neumann 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. 2008-09-21 Sven Neumann * 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. 2008-09-21 Sven Neumann * INSTALL: mention more explicitely that the '--without-gvfs' option should be used with configure if GVfs support is missing. 2008-09-20 Sven Neumann * app/dialogs/about-dialog.c: put translator comment on a single line, looks better in the .po file. 2008-09-20 Michael Natterer * plug-ins/script-fu/Makefile.am * plug-ins/script-fu/script-fu-utils.[ch]: new files containing script_fu_stresacpe(). * plug-ins/script-fu/script-fu-script.c * plug-ins/script-fu/script-fu-scripts.[ch]: changed accordingly. 2008-09-20 Simon Budig * 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. 2008-09-19 Michael Natterer * 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. 2008-09-19 Sven Neumann * 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. 2008-09-19 Michael Natterer * 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. 2008-09-19 Sven Neumann * app/actions/file-actions.c: renamed "file-new-menu" to "file-create-menu" and changed the menu label from "New" to "Create". * app/plug-in/plug-in-menu-path.c * menus/image-menu.xml.in * plug-ins/common/screenshot.c * plug-ins/script-fu/script-fu.c * plug-ins/script-fu/scripts/*.scm * plug-ins/twain/twain.c * plug-ins/win-snap/winsnap.c: changed accordingly. 2008-09-19 Michael Natterer * 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(). 2008-09-19 Sven Neumann * plug-ins/script-fu/scheme-wrapper.c (script_fu_marshal_procedure_call): increased size of the stack-allocated error string. 2008-09-19 Michael Natterer * plug-ins/script-fu/script-fu-scripts.c (script_fu_script_proc): fix warning about missing braces around array initializer. 2008-09-19 Michael Natterer * 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. 2008-09-19 Sven Neumann * plug-ins/help-browser/dialog.c (update_actions): allow to copy selected text to the clipboard using Ctrl-C or the right-click menu. 2008-09-19 Sven Neumann * 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. 2008-09-19 Sven Neumann * app/gegl/gimplevelsconfig.c (gimp_levels_config_to_curves_config): need to set the point at the index corresponding to the x value. 2008-09-18 Sven Neumann * app/core/gimpcurve.c (gimp_curve_plot) * app/gegl/gimplevelsconfig.c (gimp_levels_config_to_curves_config): formatting. 2008-09-18 Simon Budig * 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. 2008-09-18 Sven Neumann * 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. 2008-09-18 Sven Neumann * app/plug-in/gimppluginprocedure.c * libgimp/gimp.c: minor cleanups. 2008-09-18 Sven Neumann * plug-ins/script-fu/script-fu-scripts.c (script_fu_script_proc): don't leak the GError. 2008-09-18 Michael Natterer 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. 2008-09-18 Sven Neumann * plug-ins/script-fu/script-fu-scripts.c (script_fu_run_command): plugged a memory leak. * plug-ins/script-fu/script-fu-console.c * plug-ins/script-fu/script-fu-server.c: minor cleanup. 2008-09-18 Michael Natterer * 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(). 2008-09-18 Michael Natterer * 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. 2008-09-18 Tor Lillqvist * plug-ins/script-fu/script-fu-scripts.c (script_fu_add_script): Fix small build break. * app/plug-in/gimppluginshm.c: Use INVALID_HANDLE_VALUE instead of INVALID_FILE_HANDLE which was a misunderstanding. 2008-09-18 Sven Neumann * 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. 2008-09-18 Sven Neumann * 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. 2008-09-18 Simon Budig * app/gegl/gimpbrightnesscontrastconfig.c: fix the brightness/contrast --> levels step by doing proper math (TM). 2008-09-18 Sven Neumann * 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. 2008-09-18 Sven Neumann * configure.in (CPPFLAGS): removed G*_DISABLE_SINGLE_INCLUDES until we depend on newer versions of GLib and GTK+. Fixes bug #552669. 2008-09-18 Sven Neumann * plug-ins/common/lcms.c (run): call gimp_displays_flush() at the end of all interactive uses. Fixes bug #552104. 2008-09-17 Sven Neumann * app/actions/edit-actions.c (edit_actions_update): formatting. 2008-09-17 Michael Natterer * 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 2008-09-17 Sven Neumann * plug-ins/pygimp/plug-ins/pyconsole.py: removed she-bang as this file is not a plug-in. Addresses bug #552601. 2008-09-17 Sven Neumann * libgimp/gimpimage.c (gimp_image_get_colormap): allow to pass NULL for "num_colors". * plug-ins/print/print-draw-page.c: added missing conversion routines for indexed images. Fixes bug #552609. 2008-09-17 Michael Natterer * app/widgets/gimpdockable.c: cosmetic paranoia. 2008-09-17 Michael Natterer Revert the change which adds GError parameters to gimp_image_add_{channel,layer,vectors}(): * 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/gimpimage-duplicate.c * app/core/gimpimage-merge.c * app/core/gimpimage-quick-mask.c * app/core/gimpimage.[ch] * app/core/gimplayer-floating-sel.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/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: revert. Instead, fix it at the PDB level: * app/core/gimpimage.c: turn the "added to wrong image" warning into a g_return_val_if_fail() assertion. * app/pdb/gimppdb-utils.[ch] (gimp_pdb_item_is_floating): add a "dest_image" parameter and fail if the passed item is not for this image. * tools/pdbgen/pdb/image.pdb * tools/pdbgen/pdb/layer.pdb * tools/pdbgen/pdb/paths.pdb: pass the dest image to gimp_pdb_item_is_floating(). * app/pdb/image-cmds.c * app/pdb/layer-cmds.c * app/pdb/paths-cmds.c: regenerated. 2008-09-17 Sven Neumann * plug-ins/script-fu/script-fu-scripts.c (script_fu_load_script): tweaked error message. * 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. 2008-09-17 Michael Natterer * plug-ins/script-fu/script-fu-interface.c (script_fu_interface): fix indentation. 2008-09-17 Michael Natterer * plug-ins/common/file-header.c * plug-ins/common/file-psp.c * plug-ins/common/file-xbm.c * plug-ins/common/file-xpm.c * plug-ins/common/hot.c * plug-ins/common/mail.c: add const plus misc. cleanups. 2008-09-17 Michael Natterer * plug-ins/file-fits/fits.c * plug-ins/gimpressionist/gimpressionist.h * plug-ins/gimpressionist/presets.c * plug-ins/gimpressionist/utils.c * plug-ins/gradient-flare/gradient-flare.c * plug-ins/ifs-compose/ifs-compose-storage.c * plug-ins/imagemap/imap_default_dialog.[ch] * plug-ins/imagemap/imap_object.h * plug-ins/map-object/map-object-ui.c: add const plus some minor unrelated cleanups. 2008-09-17 Michael Natterer * app/core/gimpimage.[ch]: add GError parameter to gimp_image_add_{channel,layer,vectors}() and remove calls to g_warning(). Changed checks to be possible failures at all. * app/widgets/gimpitemtreeview.h (GimpAddItemFunc): add the GError here too. * 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/gimpimage-duplicate.c * app/core/gimpimage-merge.c * app/core/gimpimage-quick-mask.c * app/core/gimplayer-floating-sel.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/widgets/gimpchanneltreeview.c * app/widgets/gimpitemtreeview.c * app/widgets/gimplayertreeview.c * app/widgets/gimptoolbox-dnd.c * app/widgets/gimpvectorstreeview.c * app/xcf/xcf-load.c: pass a NULL error. * tools/pdbgen/pdb/image.pdb * tools/pdbgen/pdb/paths.pdb: pass the error. * app/pdb/image-cmds.c * app/pdb/paths-cmds.c: regenerated. 2008-09-16 Sven Neumann * configure.in: bumped version to 2.5.5. 2008-09-16 Sven Neumann * Made 2.5.4 development release. 2008-09-16 Sven Neumann * 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. 2008-09-16 Sven Neumann * app/core/gimppalette-load.c (gimp_palette_load): unified error messages. 2008-09-16 Michael Natterer * 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. 2008-09-15 Michael Natterer * 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. 2008-09-15 Michael Natterer 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. 2008-09-14 Kevin Cozens * 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. 2008-09-13 Michael Schumacher * app/actions/edit-actions.c (edit_actions): removed double "the" from translatable string. Fixes bug #552127. 2008-09-13 Sven Neumann * plug-ins/common/lcms.c (lcms_image_apply_profile): flush the displays after closing the undo group. Should fix bug #552104. 2008-09-12 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c * plug-ins/script-fu/tinyscheme/scheme.h: Applied changes from 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. 2008-09-12 Sven Neumann * plug-ins/common/guillotine.c: return the list of created images. Only create displays when running in interactive mode. 2008-09-12 Michael Natterer * app/core/gimpdata.h: changed GimpBrush::get_extension() to return const gchar* instead of gchar* * app/core/gimpbrush.c * app/core/gimpbrushgenerated.c * app/core/gimpcurve.c * app/core/gimpgradient.c * app/core/gimppalette.c * app/core/gimppattern.c: changed accordingly. 2008-09-11 Kevin Cozens * 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. See SourceForge bug #1825395. 2008-09-11 Michael Natterer * configure.in: forgot to remove plug-ins/script-fu/re here. 2008-09-11 Michael Natterer * 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. 2008-09-11 Michael Natterer * app/core/gimp-modules.c (gimp_modules_unload): make a string pointer const. 2008-09-11 Michael Natterer * plug-ins/script-fu/script-fu-regex.[ch]: namespace, copyright headers, indentation, formatting, everything... * plug-ins/script-fu/scheme-wrapper.c: changed accordingly. Some formatting cleanup here too. 2008-09-11 Michael Natterer * libgimp/gimpexport.c (struct ExportAction): make string members const. 2008-09-11 Michael Natterer * 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. 2008-09-11 Michael Natterer * 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. 2008-09-11 Michael Natterer * 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. 2008-09-10 Michael Natterer 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 (console, 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. 2008-09-10 Michael Natterer * plug-ins/script-fu/tinyscheme/scheme.h: fix prototype (foo() is not a prototype, use foo(void) instead). 2008-09-10 Tor Lillqvist * app/gui/gui-unique.c: Untabify. * 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 otherwise would still exist 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. * 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(). 2008-09-10 Michael Natterer * 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. 2008-09-10 Michael Natterer * app/actions/context-actions.c: made action labels more consistent, use '°' instead of 'degrees'. * app/actions/context-commands.c: cosmetic change in macro parameters. 2008-09-10 Michael Natterer * plug-ins/file-uri/uri-backend-wget.c * plug-ins/file-xjt/xjt.c: s/while (1)/while (TRUE)/ 2008-09-09 Michael Natterer * 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. 2008-09-09 Michael Natterer * 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. 2008-09-09 Michael Natterer * app/Makefile.am * plug-ins/script-fu/Makefile.am: remove references to $(REGEXREPL). 2008-09-09 Sven Neumann * plug-ins/file-psd/psd-save.c (create_merged_image): don't leak the GimpDrawable. 2008-09-09 Martin Nordholts * plug-ins/file-psd/psd-save.c (save_data): Formating. 2008-09-08 Sven Neumann * authors.xml: some more updates. * AUTHORS: regenerated. 2008-09-08 Sven Neumann * 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). 2008-09-08 Sven Neumann * 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. 2008-09-08 Michael Natterer 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. 2008-09-08 Sven Neumann * 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. 2008-09-08 Roman Joost * authors.xml: updated documenters who contributed to the user manual since 2.4 2008-09-07 Sven Neumann 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. 2008-09-07 Martin Nordholts * 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. 2008-09-07 Martin Nordholts * 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. 2008-09-07 Martin Nordholts Bug 551141 – "Select all" does not work * app/core/gimpchannel.c (gimp_channel_real_all): We don't want to clear the region, we want to fill it with OPAQUE_OPACITY. 2008-09-06 Martin Nordholts * plug-ins/file-psd/psd-load.c (add_merged_image): Use the new COMP_MODE_SIZE constant instead of a magic number. 2008-09-06 Martin Nordholts Bug 544939 – PSD Plugin crash (maybe only PSD files created by 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. 2008-09-06 Martin Nordholts * 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 PSD file attached to bug #544939. The PSD loader still fails to read the correct compression method however. 2008-09-06 Michael Natterer * app/gegl/gimpoperationhuesaturation.c (gimp_operation_hue_saturation_process): don't use // for comments. 2008-09-06 Martin Nordholts * app/gegl/gimpoperationhuesaturation.c (gimp_operation_hue_saturation_process): mapped_* -> mapped_*_hue. 2008-09-06 Martin Nordholts Bug 527085 – Hue/Saturation (working improperly) * app/gegl/gimpoperationhuesaturation.c (gimp_operation_hue_saturation_process): Properly map the secondary hue. Based on patch by Michael Deal. 2008-09-05 Sven Neumann * app/tools/gimpgegltool.c: blacklist "color-convert" and all GIMP operations. 2008-09-05 Sven Neumann * app/tools/gimpgegltool.c: added a blacklist of operations that should not be shown. We may want to add more operations here. 2008-09-05 Michael Natterer * 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. 2008-09-05 Michael Natterer * plug-ins/file-fits/fits-io.[ch]: add some const. 2008-09-05 Michael Natterer Bug 545325 – Scrollbars do not disappear automatically * app/widgets/gimpcontainertreeview.c: autosize the columns after each operation that can reduce the treeview's width. 2008-09-05 Michael Natterer 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. 2008-09-05 Michael Natterer * 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. 2008-09-04 Sven Neumann * 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. 2008-09-04 Sven Neumann * app/display/gimpdisplayshell-dnd.c: improved the new DND code. 2008-09-04 Tor Lillqvist * 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". * 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. 2008-09-04 Sven Neumann * app/display/gimpdisplayshell-dnd.c (gimp_display_shell_drop_drawable) (gimp_display_shell_drop_pixbuf): handle drops on the empty image window. 2008-09-04 Sven Neumann * app/dialogs/keyboard-shortcuts-dialog.c: tweaked spacing between entry and button and resolved a mnemnic conflict. 2008-09-04 Michael Natterer * 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:". 2008-09-04 Michael Natterer * plug-ins/gfig/gfig-dobject.h * plug-ins/gfig/gfig-style.c: some more const. 2008-09-04 Michael Natterer * app/widgets/gimpactionview.[ch]: add a 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. 2008-09-04 Sven Neumann * libgimp/gimpprocview.[ch]: made the GimpParamDef parameter in gimp_proc_view_new() const. 2008-09-04 Michael Natterer * tools/gimptool.c: add tons of const. 2008-09-04 Michael Natterer * libgimpbase/gimpreloc.c (set_gerror): made the error_message variable const. 2008-09-04 Michael Natterer * 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. 2008-09-04 Michael Natterer * 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. 2008-09-04 Sven Neumann * app/composite/make-installer.py * app/composite/ns.py * app/dialogs/tips-dialog.c * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-scroll.c * app/display/gimpdisplayshell.c * app/display/gimpnavigationeditor.c * app/paint/gimppaintcore-stroke.c * app/tools/gimpcroptool.c * app/widgets/gtkscalebutton.c * plug-ins/common/animation-play.c * plug-ins/common/displace.c * plug-ins/common/file-raw.c * plug-ins/imagemap/imap_cern_lex.c * plug-ins/imagemap/imap_cern_parse.c * plug-ins/imagemap/imap_csim_lex.c * plug-ins/imagemap/imap_csim_parse.c * plug-ins/imagemap/imap_ncsa_lex.c * plug-ins/imagemap/imap_ncsa_parse.c * plug-ins/pygimp/gimpfu.py * plug-ins/pygimp/gimpshelf.py * plug-ins/pygimp/gimpthumbmodule.c * plug-ins/pygimp/gimpui.py * plug-ins/pygimp/gimpuimodule.c * plug-ins/pygimp/plug-ins/benchmark-foreground-extract.py * plug-ins/pygimp/plug-ins/foggify.py * plug-ins/pygimp/plug-ins/palette-offset.py * plug-ins/pygimp/plug-ins/palette-sort.py * plug-ins/pygimp/plug-ins/palette-to-gradient.py * plug-ins/pygimp/plug-ins/py-slice.py * plug-ins/pygimp/plug-ins/python-console.py * plug-ins/pygimp/plug-ins/python-eval.py * plug-ins/pygimp/plug-ins/whirlpinch.py * plug-ins/pygimp/pygimp-colors.c * plug-ins/pygimp/pygimp-drawable.c * plug-ins/pygimp/pygimp-image.c * plug-ins/script-fu/re/engine.c * plug-ins/script-fu/re/regerror.c * plug-ins/script-fu/tinyscheme/dynload.c * plug-ins/twain/tw_func.c * plug-ins/twain/tw_util.c * plug-ins/twain/tw_win.c * plug-ins/twain/twain.h * tools/defcheck.py * tools/gimppath2svg.py: removed trailing whitespace. 2008-09-03 Lars-Peter Clausen * plugin-ins/pygimp/pygimp-tile.c: Removed trailing whitespace. 2008-09-03 Lars-Peter Clausen * 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. 2008-09-03 Michael Natterer * app/pdb/gimpprocedure.[ch] (gimp_procedure_set_static_strings): made the string parameters const. 2008-09-03 Michael Natterer * app/widgets/gimpcontrollerkeyboard.c (struct _KeyboardEvent) * app/widgets/gimpcontrollerwheel.c (struct _WheelEvent): made the blurbs const. 2008-09-03 Michael Natterer * 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. 2008-09-03 Michael Natterer * 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. 2008-09-03 Michael Natterer * 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. 2008-09-03 Michael Schumacher * configure.in: bumped minimum required Python version to 2.5.0, because of PyInt_AsSsize_t. Fixes bug #550576. 2008-09-03 Sven Neumann * README.i18n: removed lots of outdated information directed at developers and only kept the most important hints for translators. 2008-09-02 Sven Neumann * app/plug-in/gimppluginshm.c: if INVALID_FILE_HANDLE is undefined, define it as the constant that we used to use here. 2008-09-02 Aurimas Juška * 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) 2008-09-02 Michael Natterer * app/display/gimpstatusbar.c: use gtk_widget_get_style() instead of widget->style. 2008-09-02 Michael Natterer * libgimpwidgets/gimpruler.c: use gtk_widget_get_style() instead of widget->style. Reduce indentation by one level in gimp_ruler_draw_pos(). 2008-09-02 Michael Natterer * 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. 2008-09-02 Michael Natterer * app/widgets/gimpselectiondata.c (gimp_selection_data_get_name): return a const string, no need to strdup it since it's only used temporarily in this file. (gimp_selection_data_get_image) (gimp_selection_data_get_component) (gimp_selection_data_get_item) (gimp_selection_data_get_object): changed accordingly. Move variables to local scopes and simplify. 2008-09-02 Sven Neumann * configure.in: removed ALL_LINGUAS definition. * po*/LINGUAS: introduced LINGUAS file instead. This allows to keep individual lists of languages for each textdomain and it makes it easier for translators to add a new language. 2008-09-01 Sven Neumann * app/plug-in/gimppluginshm.c (gimp_plug_in_shm_new): use the constant INVALID_FILE_HANDLE instead of 0xFFFFFFFF. Fixes shared memory tile transport on 64bit Windows systems. 2008-09-01 Sven Neumann * app/paint-funcs/paint-funcs.[ch]: added clear_region(). * app/base/tile-manager-crop.c * app/core/gimpchannel.c * app/core/gimpimage-merge.c * app/core/gimpmaskundo.c * app/core/gimpprojection-construct.c: use it instead of calling color_region() with a zero color. 2008-09-01 Sven Neumann * app/core/gimpprojection-construct.c (gimp_projection_initialize): also need to initialize the projection if the layer mask could introduce transparency. Fixes bug #550024. 2008-08-31 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_set_initial_scale): We need to set the scale before using it. Fixes at least gimp_display_shell_fill() and Image -> Duplicate giving weird initial scales. 2008-08-30 Michael Natterer * tools/test-clipboard.c (test_clipboard_paste): fix length calculation (in fact, no calculation is needed at all). 2008-08-29 Sven Neumann * authors.xml: fixed role of Aurore Derriennic. * AUTHORS: regenerated. 2008-08-29 Michael Natterer * libgimpwidgets/gimppreviewarea.c (gimp_preview_area_expose): remove g_return_val_if_fail(), this is not a public function. 2008-08-29 Michael Natterer * app/widgets/gimplayertreeview.c * libgimpwidgets/gimpcolorscales.c * libgimpwidgets/gimppropwidgets.c * libgimpwidgets/gimpscaleentry.c * libgimpwidgets/gimpwidgets.c: use gtk_adjustment_get_value() instead of adjustment->value. 2008-08-29 Lars-Peter Clausen * plug-ins/pygimp/gimpui.defs * plug-ins/pygimp/gimpui.override: Readded wrapper for the new GimpRuler. 2008-08-29 Sven Neumann * libgimpwidgets/gimpruler.c (gimp_ruler_new): fixed gtk-doc comment. 2008-08-29 Michael Natterer * libgimpwidgets/Makefile.am * libgimpwidgets/gimpwidgets.h * libgimpwidgets/gimphruler.[ch] * libgimpwidgets/gimpvruler.[ch]: remove separate H/VRuler classes. * libgimpwidgets/gimpruler.[ch]: add an "orientation" property instead. Add gimp_ruler_new(). * libgimpwidgets/gimpwidgets.def: changed accordingly. * app/dialogs/resolution-calibrate-dialog.c * app/display/gimpdisplayshell.c * plug-ins/gfig/gfig-preview.c * plug-ins/imagemap/imap_preview.c: ditto. 2008-08-29 Lars-Peter Clausen * plug-ins/pygimp/gimpui.defs * plug-ins/pygimp/gimpui.override: Removed wrappers for GimpRuler, GimpHRuler, GimpVRuler, as those are going to be removed from libgimpwidgets. 2008-08-29 Michael Natterer * app/widgets/gimphelp.c: #include "gimpwidgets-utils.h", not "gimpwidgets-utils.c" (eek). 2008-08-28 Lars-Peter Clausen * plug-ins/pygimp/gimpui.defs * plug-ins/pygimp/gimpui.override: Wrapped GimpRuler, GimpHRuler and GimpVRuler widgets. 2008-08-28 Lars-Peter Clausen * plug-ins/pygimp/gimpui.defs * plug-ins/pygimp/gimpui.override: Merged gimpui.{defs,override} from pygimp GSoC project. Updates gimpui module to have bindings for most widgets functions. 2008-08-28 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_to): Canonically calculate scale to use for zoom-focus calculations so that it also works when not in Dot by dot-mode. 2008-08-28 Martin Nordholts * app/core/gimpimage.[ch]: Make the size-changed-detailed signal also contain previous image size. * app/display/gimpdisplayshell-handlers.c (gimp_display_shell_size_changed_detailed_handler): Take the previous image size into account and center the image if it starts to fit (axis indepentently) in the viewport due to the resize. * app/core/gimpundo.h * app/core/gimpimage-undo.c * app/core/gimpimageundo.[ch] * app/core/gimpimage-undo-push.[ch]: Manage the previous-size-information. * app/core/gimpimage-crop.c * app/core/gimpimage-scale.c * app/core/gimpimage-rotate.c * app/core/gimpimage-resize.c: Propagate previous size to the size-changed-detailed signal emission and the undo-system. 2008-08-28 Sven Neumann * app/config/gimpguiconfig.[ch]: allow to disable the Wilber image shown at the top of the toolbox. * app/widgets/gimptoolbox.c: honor the new gimprc option. * app/config/gimprc-blurbs.h: document the old and new toolbox preferences. 2008-08-28 Michael Natterer * app/tools/gimprectangletool.c: some tiny formatting fixes. 2008-08-28 Sven Neumann * configure.in: use echo, not $echo in the Win32-specific code that sets up the Python build variables. 2008-08-28 Sven Neumann * app/paint-funcs/scale-region.c (scale_determine_progress): (scale_region_tile): fixed shift direction. 2008-08-27 Michael Natterer * app/widgets/gimpuimanager.c (gimp_ui_manager_item_key_press): try the find_widget_under_pointer() hack only if the menu item's parent is really a GtkMenu (not a GtkMenuBar). Fixes crash spotted by rubikcube. 2008-08-27 Lars-Peter Clausen * plug-ins/pygimp/pygimp-tile.c (pr_subscript): Removed some unnecessary g_new/g_free and improved range checking. (pr_ass_sub): Improved range checking. (pygimp_pixel_rgn_new): Clamp pixel region size to the drawable's size. 2008-08-27 Sven Neumann * app/core/gimp-transform-region.c: sprinkled more const qualifiers. * app/paint-funcs/scale-region.c: call the progress callback less often. 2008-08-27 Sven Neumann * app/tools/gimptransformtool.c: moved hiding the dialog from gimp_transform_tool_real_transform() to gimp_transform_tool_doit(). Delay undrawing the preview in doit() until the transformation is done. This removes the annoying flicker at the end. 2008-08-27 Sven Neumann * app/tools/gimptransformtool.c (gimp_transform_tool_real_transform): hide the tool dialog before starting to perform the transformation. 2008-08-27 Sven Neumann * app/core/gimp-transform-region.c: also use PixelSurround for the linear interpolation. Sprinkled some const qualifiers. 2008-08-26 Lars-Peter Clausen * plug-ins/pygimp/gimpmodule.c: Don't set tp_new for PyGimpTile_Type and PyGimpPixelRgn_Type as both don't have init functions. 2008-08-26 Lars-Peter Clausen * plug-ins/pygimp/pygimp-tile.c (pf_init): Ensure that the python drawables gimp drawable is set. (pf_dealloc): Don't crash if the pixel fetchers init function failed. 2008-08-26 Sven Neumann * app/base/pixel-surround.c: updated documentation. 2008-08-26 Sven Neumann * app/paint-funcs/scale-region.c: further simplified the code path that is executed when a brush is scaled up. We don't need to scale in several steps here. 2008-08-26 Sven Neumann * app/paint-funcs/scale-region.c: removed some unused parameters from the code that is used for brush scaling. Added sanity checks. 2008-08-26 Martin Nordholts * libgimpwidgets/gimpwidgets.c * plug-ins/common/file-xbm.c * plug-ins/common/file-wmf.c * plug-ins/common/file-svg.c * plug-ins/common/file-gih.c * plug-ins/common/blur-motion.c * plug-ins/file-jpeg/jpeg-save.c * plug-ins/lighting/lighting-ui.c * plug-ins/map-object/map-object-ui.c * app/tools/gimpsheartool.c * app/tools/gimpaligntool.c * app/tools/gimprotatetool.c * app/tools/gimplevelstool.c * app/dialogs/resize-dialog.c * app/dialogs/offset-dialog.c * app/widgets/gimppaletteeditor.c * app/widgets/gimpcolormapeditor.c * app/dialogs/layer-options-dialog.c * app/display/gimpdisplayshell-scale-dialog.c: Pass page_size = 0 to gimp_spin_button_new() to adapt to new and correct value clamping in GTK+. 2008-08-26 Sven Neumann * app/core/gimpdrawable-colorize.c (gimp_drawable_colorize): added missing call to colorize_init(). 2008-08-26 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_scroll_unoverscrollify): New function. * app/display/gimpdisplayshell-autoscroll.c (gimp_display_shell_autoscroll_timeout): Make sure the autoscroll does not result in overscroll. This more or less finalizes the implementation of the enhancement request in bug #362915. 2008-08-26 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll): If no scroll should be applied we can return early. 2008-08-26 Martin Nordholts * app/display/gimpdisplayshell-autoscroll.c (gimp_display_shell_autoscroll_timeout): Pass the scroll amount in variables that we can modify as we please before they actually reach gimp_display_shell_scroll(). 2008-08-26 Michael Natterer * app/tools/gimppaintoptions-gui.c (gimp_paint_options_gui): don't hardcode the attach coords for the fixed containing the dynamics labels but use the table's real width instead. Fixes broken table layout in the airbrush options. 2008-08-26 Sven Neumann * app/base/pixel-surround.c: attempt to fix the newly introduced smear edge mode. 2008-08-25 Sven Neumann * app/paint-funcs/scale-region.c: use PixelSurround to access the source pixels in a more efficient way. 2008-08-25 Sven Neumann * app/base/tile-manager.c (read_pixel_data_1): changed to silently return in case of out-of-bounds access. There's code that relies on this. * app/base/pixel-surround.[ch]: added SMEAR as another edge strategy for the PixelSurround helper. * core/gimp-transform-region.c: changed accordingly. 2008-08-25 Sven Neumann * app/paint-funcs/scale-region.c: reverted last change; it was bogus. 2008-08-25 Sven Neumann * app/paint-funcs/scale-region.c: don't scale in several steps if interpolation is GIMP_INTERPOLATION_NONE. 2008-08-25 Sven Neumann * app/paint-funcs/scale-region.c (gaussian_decimate) (gaussian_lanczos2): implemented uses integer arithmetic. (pixel_average): reduced rounding errors. 2008-08-25 Sven Neumann * app/core/gimpgradient.c (gimp_gradient_get_new_preview): fixed rounding errors in color conversion. 2008-08-25 Sven Neumann * app/base/tile-private.h: provide a macro version of tile_data_pointer(). * app/base/tile.c (tile_data_pointer): turned into a wrapper around the TILE_DATA_POINTER() macro. * app/base/tile-manager.c (read_pixel_data) (read_pixel_data_1) (write_pixel_data) (write_pixel_data_1): access tile struct members directly and use the new macro to access the tile data. 2008-08-25 Sven Neumann * app/display/gimpdisplayshell-render.c (render_image_tile_fault): formatting. 2008-08-25 Sven Neumann * app/base/tile-manager.c (read_pixel_data_1): removed redundant check that is already performed by tile_manager_get_tile_num(). Warn if an out-of-bounds read is requested, instead of silently doing nothing. 2008-08-25 Sven Neumann * app/dialogs/image-scale-dialog.c: hide the Scale dialog before starting to perform the scale operation. 2008-08-25 Sven Neumann * app/paint-funcs/scale-region.c: fixed progress feedback. 2008-08-25 Sven Neumann * app/paint-funcs/scale-region.c: improved progress bar calculations. Still buggy though. 2008-08-25 Sven Neumann * app/paint-funcs/scale-region.c: some more cleanups. 2008-08-24 Lars-Peter Clausen * plug-ins/pygimp/plug-ins/python-fu-eval.py: Moved execution into global namespace. Fixes import statements inside of evaled code. 2008-08-24 Lars-Peter Clausen * plug-ins/pygimp/pygimp-pdb.c (pdb_getattro): Fix wrong strcmp evaluation. 2008-08-24 Lars-Peter Clausen * plug-ins/pygimp/pygimp-drawable.c (drw_transform_rotate, drw_transform_flip_simple): Fix method format string, so the method is actual callable in a script. 2008-08-24 Martin Nordholts * app/tools/gimplevelstool.c (gimp_levels_tool_dialog): Set page_size for the Ouput/Input Levels lower/upper adjustments to 0 to adapt to new and more correct value clamping in GTK+. 2008-08-24 Martin Nordholts * authors.xml: Updated for 2.6 release. * AUTHORS: Regenerated. 2008-08-24 Martin Nordholts * app/display/gimpnavigationeditor.c (gimp_navigation_editor_popup): Prevent the popup from being positioned far away from the click position. This is further work on bug #362915. 2008-08-24 Martin Nordholts * app/display/gimpnavigationeditor.c (gimp_navigation_editor_popup): Further clarify and simplify. 2008-08-24 Martin Nordholts * app/display/gimpnavigationeditor.c (gimp_navigation_editor_popup): Correct the positioning calculation (while still retaining current overall behaviour). 2008-08-24 Martin Nordholts * app/widgets/gimpnavigationview.c (gimp_navigation_view_draw_marker): Use a define for border width. 2008-08-24 Martin Nordholts * app/widgets/gimpnavigationview.c (gimp_navigation_view_set_marker): Don't redraw the view, only invalidate it. This causes the redraw to occur in an idle-handler intead of each time this function is called, which reduces flicker when opening new images. Stil some flicker left though... 2008-08-24 Sven Neumann * app/paint-funcs/scale-region.c (scale) (scale_pr): use a constant to decide if we should decimate or interpolate. 2008-08-24 Sven Neumann * app/paint-funcs/scale-region.c (scale): instead of iterating over tiles manually and using write_pixel_data_1() to write the data, use pixel_region_process() to iterate over the destination. 2008-08-24 Sven Neumann * app/paint-funcs/scale-region.c: added more const qualifiers. 2008-08-24 Sven Neumann * app/paint-funcs/scale-region.c (scale): sprinkled with const qualifiers. Moved calculations out of the loops. 2008-08-24 Sven Neumann * app/paint-funcs/scale-region.c (scale): removed optimization of the case where the source and dest regions are the same size. This should not happen any longer. 2008-08-24 Sven Neumann * app/paint-funcs/scale-region.c (determine_scale): avoid unnecessary scaling when scaling factor is 2^n. (pixel_average): replaced with optimized pixel averager from tile-pyramid.c (from the gimp-2-4 branch with some minor corrections). 2008-08-23 Sven Neumann * app/paint-funcs/scale-region.c (scale): replaced code that copies pixels from one tile-manager to another by a call to copy_region(). 2008-08-23 Sven Neumann * plug-ins/print/print.c: return with a proper PDB status type depending on the result of gtk_print_operation_run(). When run non-interactively, pass the error message with the return values. 2008-08-23 Sven Neumann * plug-ins/script-fu/scripts/coolmetal-logo.scm: applied patch from LightningIsMyName. Changes the script to not break if called on a floating selection (bug #327681). 2008-08-23 Lars-Peter Clausen * app/core/gimpgradient.c (gimp_gradient_segment_range_delete): Don't dereference final_start_seg and final_end_seg if NULL. 2008-08-23 Lars-Peter Clausen Fix indentation in previous patch. * tools/pdbgen/pdb/gradient.pdb * app/pdb/gradient-cmds.c 2008-08-23 Lars-Peter Clausen * tools/pdbgen/pdb/gradient.pdb (gimp_gradient_segment_range_blend_(colors|opacity)): Don't crash if the index of the last segment is out of range. * app/pdb/gradient-cmds.c: regenerated. 2008-08-23 Sven Neumann * plug-ins/twain/Makefile.am: dropped use of AM_LDFLAGS completely and use target-specific LDFLAGS instead. 2008-08-23 Sven Neumann * app/core/gimpimagemap.c (gimp_image_map_init): only create and use a timer if GIMP_UNSTABLE is defined. 2008-08-22 Sven Neumann * app/widgets/gimpnavigationview.c * libgimpwidgets/gimpscrolledpreview.c: hardcode the colors to black and white. Using theme colors doesn't make sense here. 2008-08-22 Sven Neumann * libgimpwidgets/gimpscrolledpreview.[ch]: draw the navigation popup using Cairo, just as we do it in the core now. 2008-08-22 Sven Neumann * app/widgets/gimpnavigationview.c: indicate the viewport by shading the outside region using Cairo. 2008-08-22 Martin Nordholts * app/display/gimpnavigationeditor.c: Align static function prototypes. 2008-08-22 Martin Nordholts * app/widgets/gimpnavigationview.c (gimp_navigation_view_grab_pointer): Don't confine the cursor to the navigation view window because that limitation only feels in the way with overscroll. 2008-08-22 Michael Natterer * app/display/gimpcanvas.h: #define GIMP_CANVAS_EVENT_MASK. * app/display/gimpcanvas.c (gimp_canvas_realize): use it here. 2008-08-22 Michael Natterer * app/display/gimpcanvas.[ch]: add gimp_canvas_scroll() which scrolls the canvas and makes the result visible immediately. * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll): use the new function. 2008-08-22 Sven Neumann * app/widgets/gimptoolbox.c: removed the "Use GEGL" check-box from the toolbox. * app/config/gimpcoreconfig.c: changed the default for "use-gegl" to FALSE (in preparation of the 2.6 release). * app/actions/debug-commands.[ch] * app/actions/debug-actions.c * menus/image-menu.xml.in: added a "Use GEGL" check-box to the Debug menu. Temporary solution until a final decision is made. 2008-08-22 Sven Neumann * app/widgets/gimpaction.c * app/widgets/gimpdockable.c * app/widgets/gimpradioaction.c * app/widgets/gimpstringaction.c * app/widgets/gimptoggleaction.c: added basic support for icon names for actions and dockables. Uses the stock-id as icon name if the icon theme provides an icon under this name. * app/dialogs/dialogs.c * app/actions/documents-actions.c * app/actions/dialogs-actions.c: use the "document-open-recent" icon for the document history. 2008-08-22 Martin Nordholts * app/widgets/gimpnavigationview.c: Adapted to play nicely with the overscroll feature. Basically remove limitations of the marker, but also draw the marker frame with an inner and outer border so it is possible to see on what side the viewport is when zoomed out and overscrolled to the max. This is further work on bug #362915. 2008-08-21 Michael Natterer * app/display/gimpcanvas.[ch]: turn into a GtkContainer subclass mainly to reduce the diff to a local hack I'm at. Also swallow some code that used to be called on the canvas widget externally. * app/display/gimpdisplayshell.c (gimp_display_shell_new): remove the swallowed code. * app/display/gimpdisplayshell-callbacks.h: remove canvas event mask define. 2008-08-21 Sven Neumann * configure.in: bumped version to 2.5.4. 2008-08-21 Sven Neumann * Made 2.5.3 development release. 2008-08-21 Sven Neumann * app/plug-in/gimppluginprocedure.[ch] * app/plug-in/gimptemporaryprocedure.c: moved error handling for asynchronous procedure calls to a central place. Use the plug-in label instead of the procedure name for the error message. 2008-08-21 Sven Neumann * plug-ins/script-fu/script-fu-scripts.c * plug-ins/script-fu/script-fu-interface.[ch]: changed to actually return a meaningful return status when a script-fu procedure is run. 2008-08-21 Sven Neumann * app/plug-in/gimppluginprocedure.c * app/plug-in/gimptemporaryprocedure.c: don't just free the return values when running procedures asynchronously. Instead examine them and display the error message if there's one. * app/plug-in/gimppluginmanager-call.c (gimp_plug_in_manager_call_run_temp): return NULL if procedure->plug_in is not set. * app/plug-in/gimpplugin-message.c: comment. 2008-08-21 Michael Natterer * configure.in: removed indentation from blocks after AC_ARG_WITH(), it's confusing otherwise because they appeared to be part of the macro. Added some newlines. Minor cleanups. 2008-08-21 Sven Neumann * plug-ins/script-fu/Makefile.am * plug-ins/script-fu/script-fu-eval.[ch]: new files split out of script-fu-console.c[ch]. * plug-ins/script-fu/script-fu-text-console.h: fixed comment. * plug-ins/script-fu/script-fu-console.[ch]: removed script-fu-eval procedure here. * plug-ins/script-fu/script-fu.c: changed accordingly. 2008-08-21 Sven Neumann * plug-ins/script-fu/script-fu.c (script_fu_run): formatting. 2008-08-21 Sven Neumann * po-*/POTFILES.skip: added desktop/gimp.desktop.in. Seems to work around what appears to be a bug in intltool-update (version 0.40.1). 2008-08-21 Sven Neumann * Makefile.am (EXTRA_DIST): removed 'mkinstalldirs' which is not any longer required due to the changes in the po directories. 2008-08-21 Michael Natterer * app/tools/gimpforegroundselecttool.c (gimp_foreground_select_tool_init): set precision back to PIXEL_CENTER because it's set to SUBPIXEL by the parent class. 2008-08-20 Martin Nordholts * app/display/gimpdisplayshell-scroll.c: Use a constant for the minimum step amount for scrollbars. 2008-08-20 Michael Natterer * app/widgets/gimpuimanager.c: reindent prototypes. Steal find_widget_under_pointer() from gtktooltip.c (gimp_ui_manager_item_key_press): use the function to invoke help for the widget under the pointer if there is no selected menu item. Makes F1 work on insensitive menu items. 2008-08-20 Sven Neumann * plug-ins/print/print.c (page_setup): use the new API to set the PDB error handler in order to suppress a warning if the temporary procedure does not exist (see bug #513291). 2008-08-20 Michael Natterer * app/text/gimptextlayout-render.c (gimp_text_layout_render): add PANGO_ALIGN_LEFT to the switch to fix warning about unhandled value. 2008-08-20 Michael Natterer Bug 496772 – Position shown in the statusbar needs more precision (for some tools) * app/display/display-enums.[ch]: add enum GimpCursorPrecision which can be one of { PIXEL_CENTER, PIXEL_BORDER, SUBPIXEL }. * app/display/gimpdisplayshell-cursor.[ch]: add "precision" parameter to gimp_display_shell_update_cursor() and pass it on to the statusbar. * app/display/gimpstatusbar.[ch]: add "precision" parameters to the cursor coordinates APIs, offset the passed coords accordingly and display them with one decimal point if SUBPIXEL is requested and the display's unit is PIXEL. Keep a second floating-point format string around at any time. * app/tools/gimptoolcontrol.[ch]: add a "precision" member and API so tools can configure the precision they need. Defalt to PIXEL_CENTER since that's right for almost all tools. * app/display/gimpdisplayshell-callbacks.c: pass the tool's precision to gimp_display_shell_update_cursor(). * app/tools/gimptool.[ch]: add "precision" parameter to gimp_tool_push_status_coords() and pass it on to the statusbar. * app/tools/gimpaligntool.c * app/tools/gimpblendtool.c * app/tools/gimpcolortool.c * app/tools/gimpcroptool.c * app/tools/gimpeditselectiontool.c * app/tools/gimpfliptool.c * app/tools/gimpfreeselecttool.c * app/tools/gimpmovetool.c * app/tools/gimppainttool.c * app/tools/gimpperspectiveclonetool.c * app/tools/gimprectangleselecttool.c * app/tools/gimprectangletool.c * app/tools/gimptransformtool.c * app/tools/gimpvectortool.c: set precision in init() where needed. Adjust the precision in the fly when needed, e.g. while moving guides or when toggling hard-edge on paint tools. Also pass an appropriate precision to gimp_tool_push_status_coords(), which is not always the tool's precision as used for cursor display. 2008-08-20 Sven Neumann * plug-ins/script-fu/script-fu-console.c (script_fu_eval_run): pass error message with the return values instead of calling g_message(). 2008-08-20 Michael Natterer * plug-ins/common/align-layers.c * plug-ins/common/blur-gauss.c * plug-ins/common/cartoon.c * plug-ins/common/edge-dog.c * plug-ins/common/edge-neon.c * plug-ins/common/edge-sobel.c * plug-ins/common/photocopy.c * plug-ins/common/pixelize.c * plug-ins/common/softglow.c * plug-ins/gradient-flare/gradient-flare.c: pass error messages with the return values instead of calling g_message(). 2008-08-20 Michael Natterer * plug-ins/common/file-gif-load.c: tons of cleanup: proper prototypes, s/unsigned foo/gufoo/, indentation, ... 2008-08-20 Sven Neumann * plug-ins/common/file-cel.c * plug-ins/common/file-html-table.c * plug-ins/common/file-ps.c * plug-ins/common/file-sunras.c * plug-ins/common/file-tiff-load.c: pass error messages with the return values instead of calling g_message(). 2008-08-20 Sven Neumann * plug-ins/file-fits/fits.c * plug-ins/file-fli/fli-gimp.c: pass error messages with the return values instead of calling g_message(). 2008-08-20 Sven Neumann * plug-ins/file-xjt/xjt.c: pass error messages with the return values instead of calling g_message(). 2008-08-20 Sven Neumann * plug-ins/file-sgi/sgi.c * plug-ins/file-sgi/sgi-lib.[ch]: pass error messages with the return values instead of calling g_message(). 2008-08-20 Michael Natterer * app/paint/gimpperspectiveclone.[ch]: make gimp_perspective_clone_get_matrix() static, add gimp_perspective_clone_set_transform(). * app/tools/gimpperspectiveclonetool.c (gimp_perspective_clone_tool_mode_notify): use above set_transform() API instead of poking into the object. (gimp_perspective_clone_tool_constructor): call gimp_perspective_clone_tool_mode_notify() to set up things instead of duplicating code. 2008-08-20 Michael Natterer * app/tools/gimpperspectiveclonetool.[ch]: formatting. 2008-08-20 Sven Neumann * plug-ins/file-psd/psd.c * plug-ins/file-psd/psd-load.[ch] * plug-ins/file-psd/psd-save.c * plug-ins/file-psd/psd-thumb-load.[ch]: pass error messages with the return values instead of calling g_message(). 2008-08-20 Sven Neumann * plug-ins/file-jpeg/jpeg.[ch] * plug-ins/file-jpeg/jpeg-load.[ch] * plug-ins/file-jpeg/jpeg-save.[ch]: pass error messages with the return values instead of calling g_message(). 2008-08-20 Sven Neumann * app/file/file-save.c (file_save): flush the image when done to cause the actions to be updated (in particular File->Revert). 2008-08-20 Sven Neumann * plug-ins/file-ico/ico-save.c: create GHashTable with destroy notifiers. 2008-08-20 Sven Neumann * plug-ins/file-faxg3/faxg3.c * plug-ins/file-ico/ico.c * plug-ins/file-ico/ico-load.[ch] * plug-ins/file-ico/ico-save.[ch]: pass error messages with the return values instead of calling g_message(). 2008-08-19 Sven Neumann * app/core/gimpimage-guides.c (gimp_image_find_guide): find guides outside the image as well. This complements the change that we also draw guides outside the image now. 2008-08-19 Michael Natterer * app/tools/gimpgegltool.c (gimp_gegl_tool_dialog): formatting. 2008-08-19 Michael Natterer * app/plug-in/gimpplugin.[ch] (struct GimpPlugIn) * app/plug-in/gimppluginprocframe.[ch] (struct GimpPlugInProcFrame): move the error_handler from the plug-in to the proc-frame. * app/plug-in/gimpplugin.c * app/plug-in/gimpplugin-message.c: changed accordingly. 2008-08-19 Sven Neumann * libgimpbase/gimpbase.def * libgimp/gimp.def: added new symbols. 2008-08-19 Sven Neumann * plug-ins/file-bmp/bmp.[ch] * plug-ins/file-bmp/bmp-read.c * plug-ins/file-bmp/bmp-write.c: for most errors, pass the error message with the return values instead of calling g_message(). 2008-08-19 Sven Neumann Complements the fix for bug #344818: * libgimpbase/gimpbaseenums.[ch]: added new enum GimpPDBErrorHandler. * tools/pdbgen/enums.pl: regenerated. * app/plug-in/gimpplugin.[ch]: added error_handler to GimpPlugIn. * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_run): only display an error message for a failed procedure call if the plug-in's error-handler is set to GIMP_PDB_ERROR_HANDLER_INTERNAL. * tools/pdbgen/pdb/plug_in.pdb: added PDB getter and setter for the plug-in's error-handler. * app/pdb/plug-in-cmds.c * app/pdb/internal-procs.c * libgimp/gimpenums.c.tail * libgimp/gimpplugin_pdb.[ch]: regenerated. * plug-ins/common/file-compressor.c * plug-ins/file-uri/uri.c: set the error-handler to GIMP_PDB_ERROR_HANDLER_PLUGIN as these plug-ins are forwarding the error with their return values. 2008-08-18 Sven Neumann * plug-ins/file-uri/uri.c: pass error messages with the return values instead of calling g_message(). * plug-ins/file-uri/uri-backend-libcurl.c * plug-ins/file-uri/uri-backend-gnomevfs.c * plug-ins/file-uri/uri-backend-gvfs.c * plug-ins/file-uri/uri-backend-wget.c: set errors in the G_FILE_ERROR domain and other minor cleanups. 2008-08-18 Sven Neumann * plug-ins/common/file-compressor.c: open the temporary file before forking. This allows us to return an error message if the file can't be opened. Also changed the code to not use g_message() from the child process. 2008-08-18 Sven Neumann * plug-ins/common/file-compressor.c: pass some error message with the return values instead of calling g_message(). 2008-08-18 Sven Neumann * plug-ins/common/file-gbr.c * plug-ins/common/file-gih.c * plug-ins/common/file-pat.c * plug-ins/common/file-pix.c * plug-ins/common/file-sunras.c: for the most common errors, pass the error message with the return values instead of calling g_message(). 2008-08-18 Michael Natterer * plug-ins/common/compressor.c: renamed... * plug-ins/common/file-compressor.c: ...to this. * plug-ins/common/plugin-defs.pl: changed accordingly. * plug-ins/common/Makefile.am: regenerated. 2008-08-18 Sven Neumann * plug-ins/common/file-xbm.c * plug-ins/common/file-xpm.c * plug-ins/common/file-xwd.c: for the most common errors, pass the error message with the return values instead of calling g_message(). 2008-08-18 Sven Neumann * plug-ins/common/file-wmf.c: pass error message with the return values instead of calling g_message(). 2008-08-18 Sven Neumann * plug-ins/common/file-raw.c * plug-ins/common/file-tga.c * plug-ins/common/file-tiff-load.c * plug-ins/common/file-tiff-save.c: pass error messages with the return values instead of calling g_message(). 2008-08-18 Sven Neumann * plug-ins/common/file-pnm.c * plug-ins/common/file-ps.c * plug-ins/common/file-psp.c: for the most common errors, pass the error message with the return values instead of calling g_message(). 2008-08-18 Sven Neumann * plug-ins/common/file-mng.c * plug-ins/common/file-pcx.c: for the most common errors, pass the error message with the return values instead of calling g_message(). * plug-ins/common/file-gif-save.c * plug-ins/common/file-pdf.c * plug-ins/common/file-png.c: minor cleanup. 2008-08-17 Sven Neumann * plug-ins/common/file-pdf.c: in case of an error, pass the error message with the return values. 2008-08-17 Sven Neumann * plug-ins/common/file-gif-load.c * plug-ins/common/file-gif-save.c: for the most common errors, pass the error message with the return values instead of calling g_message(). * plug-ins/common/file-png.c: unmarked a string for translation. This error condition can't possibly happen. * plug-ins/common/file-svg.c: also return an error message when the thumbnail can't be loaded. 2008-08-17 Sven Neumann * plug-ins/common/file-dicom.c: for the most common errors, pass the error message with the return values instead of calling g_message(). 2008-08-17 Sven Neumann * plug-ins/common/file-csource.c: in case of an error, pass the error message with the return values. 2008-08-17 Sven Neumann * plug-ins/pygimp/plug-ins/whirlpinch.py: don't hardcode the tile size, use gimp.tile_width() instead. 2008-08-17 Sven Neumann * plug-ins/common/file-desktop-link.c * plug-ins/common/file-svg.c: changed to pass error messages with the return values instead of calling g_message(). 2008-08-17 Sven Neumann * plug-ins/script-fu/scripts/frosty-logo.scm (apply-frosty-logo-effect): unmarked string for translation. Script-Fu doesn't support i18n outside the register call. 2008-08-17 Sven Neumann * plug-ins/script-fu/scripts/glowing-logo.scm * plug-ins/script-fu/scripts/neon-logo.scm: changed the "Alpha to Logo" parts of these scripts so that the user can specify the effect size directly instead of as some multiple of the size. 2008-08-17 Sven Neumann * plug-ins/script-fu/scripts/starscape-logo.scm: dropped the "Alpha to Logo" part of the "Starscape logo script. It had a similar problem as the Starburst script (see bug #486779). 2008-08-17 Sven Neumann * plug-ins/script-fu/scripts/Makefile.am * plug-ins/script-fu/scripts/starburst-logo.scm: dropped the "Starburst" logo script. Fixes bug #486779. 2008-08-17 Sven Neumann Next step towards fixing bug #344818: * app/pdb/gimpprocedure.c (gimp_procedure_execute): if the error has not already been set, construct one from the error message that is optionally passed with the return values. * plug-ins/common/file-png.c: changed to pass an error message with the return values instead of calling g_message() in case of an error. 2008-08-17 Sven Neumann * app/plug-in/gimppluginprocframe.[ch]: renamed gimp_plug_in_proc_frame_get_return_vals() to gimp_plug_in_proc_frame_get_return_values(). * app/plug-in/gimppluginmanager-call.c: changed accordingly. 2008-08-17 Sven Neumann * plug-ins/file-psd/psd-util.c (psd_set_error): changed to use g_set_error(). 2008-08-17 Sven Neumann * app/plug-in/gimpplugin-progress.c (gimp_plug_in_progress_cancel_callback): introduced a utility function to reduce code duplication. * app/pdb/gimppdb.c (gimp_pdb_execute_procedure_by_name): changed to use g_error_new_literal(). 2008-08-17 Martin Nordholts * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_size_allocate): Simplify. 2008-08-17 Martin Nordholts * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_size_allocate): If the image ends up below or to the right of the viewport top and left edges, and the image is not centered on a given axis, align the top left image edge with the top left viewport edge. This is basically the best we can do without an API for start and end of a window resize cycle using the mouse. 2008-08-17 Martin Nordholts * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_size_allocate): Don't apply the centering logic on zoom_on_resize. 2008-08-17 Martin Nordholts * app/display/gimpdisplayshell.[ch] (gimp_display_shell_configure_event): When applying the centering logic we need to know the size of the new canvas, so instead of having it here, only make sure that this logic is run on the next canvas size-allocate. * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_size_allocate): If the size-allocate comes from a top level window resize, apply centering logic. 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll_center_image_on_next_size_allocate): Oops, correct parameter order. 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_scroll_center_image_on_next_size_allocate): Support axis independence. * app/display/gimpdisplayshell.c: Adapt. 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll_center_image_on_next_size_allocate): Explain that this function needs to be used with care since it is risky. * app/display/gimpdisplayshell.c (gimp_display_shell_new) (gimp_display_shell_fill): Clarify that it is safe to use the risky function. (gimp_display_shell_configure_event): Make proper comparisions (<= not =) and explain that usage of the risky function is safe. (gimp_display_shell_shrink_wrap): Always call gimp_display_shell_scroll_center_image() and let size-requests be handled by GimpDisplayShell::configure_event(). * app/actions/view-commands.c (view_shrink_wrap_cmd_callback): No need to center anything explicitly any longer. 2008-08-16 Sven Neumann * libgimp/gimp.c (gimp_get_pdb_error): added translator comments. 2008-08-16 Sven Neumann * plug-ins/pygimp/pygimp-pdb.c (pf_call): also use gimp_get_pdb_error() here. Easier and safer than looking at the return values to get the error message. 2008-08-16 Sven Neumann Next step towards fixing bug #344818: * libgimp/gimp.[ch]: keep the last error status and error message in libgimp. Added new functon gimp_get_pdb_error() that allows to retrieve it. * libgimp/gimp.def: updated. * plug-ins/pygimp/gimpmodule.c (pygimp_vectors_import_from_file) (pygimp_vectors_import_from_string): use the new function to get a more useful error message. 2008-08-16 Sven Neumann * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_run): removed the term 'PDB' from the user-visible error messages. 2008-08-16 Sven Neumann * tools/pdbgen/pdb/vectors.pdb: pass error parameter to gimp_vectors_import functions. * app/pdb/vectors-cmds.c: regenerated. 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_size_allocate): Remove the centering logic because we do not always want to run it when the canvas size changes. For example, the canvas size changes if rulers are toggled on/off. * app/display/gimpdisplayshell.c (gimp_display_shell_configure_event): Implement GtkWidget::configure_event() for the display shell and put the image centering logic here instead, since this class function is run when the top level window size changes. Run it only if the size (not position) of the window changes. 2008-08-16 Michael Natterer * app/tools/gimpdrawtool.c: remove #include "core/gimpguide.h" 2008-08-16 Sven Neumann * app/pdb/gimppdb.c (gimp_pdb_execute_procedure_by_name): changed error message to be similar to the message thrown from gimp_procedure_validate_args(). 2008-08-16 Sven Neumann If a procedure call fails, pass a string describing the error as the second return value. First step towards fixing bug #344818. * app/pdb/gimpprocedure.[ch] (gimp_procedure_get_return_values): added a GError parameter. If it is set, pass the error message to the return values. * app/pdb/gimppdberror.h: added some more error codes. * app/pdb/gimppdb.c * app/xcf/xcf.c: pass errors to gimp_procedure_get_return_values(). * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_run): show a different error message for execution vs. calling errors. * app/plug-in/gimpplugin-progress.c (gimp_plug_in_progress_cancel_callback): pass the error GIMP_PDB_CANCELLED to gimp_procedure_get_return_values(). * app/plug-in/gimppluginmanager-call.[ch] (gimp_plug_in_manager_call_run): removed the 'destroy_return_vals' parameter. * app/plug-in/gimppluginprocedure.c: destroy the return values here. * app/plug-in/gimppluginprocframe.c: pass an error to gimp_procedure_get_return_values(). * tools/pdbgen/app.pl * tools/pdbgen/pdb/fileops.pdb: generate code that passes the error to gimp_procedure_get_return_values(). * app/pdb/*-cmds.c: regenerated. * plug-ins/pygimp/pygimp-pdb.c: extract the error message from the return values and pass it to the exception that is thrown. 2008-08-16 Martin Nordholts * app/actions/view-commands.c (view_shrink_wrap_cmd_callback): Also handle the case when only the offset is wrong. Not pretty but simple. 2008-08-16 Sven Neumann * app/display/Makefile.am * app/display/gimpdisplayshell-scale.[ch] * app/display/gimpdisplayshell-scale-dialog.[ch]: split scale dialog into a new file. * app/actions/view-commands.c: changed accordingly. 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_viewport_coord_almost_centered): New function. (gimp_display_shell_scale): Center the image on zoom also if it is almost centered. This makes the image centered all the way when zooming out far away. 2008-08-16 Sven Neumann * app/tools/gimpfreeselecttool.c * app/tools/gimprectangletool.c: formatting. 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_to): Reimplement to increase readability. 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_to): Nice-ify. 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-scale.[ch] (gimp_display_shell_scale_get_zoom_focus) (gimp_display_shell_scale_image_is_within_viewport): Support axis independence. * app/display/gimpdisplayshell.c (gimp_display_shell_zoom_button_callback): Adapt to new gimp_display_shell_scale_image_is_within_viewport(). 2008-08-16 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_image_is_within_viewport): Make proper tests (>= not >)... 2008-08-16 Daniel Eddeland * app/text/gimptext.c: corrected gimp_text_set_property for "box-unit" , fixing bug #547126 2008-08-15 Sven Neumann * plug-ins/common/pixelize.c: formatting. 2008-08-15 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale): More elegantly deal with the 'Resize window on zoom'-case. 2008-08-15 Daniel Eddeland * app/text/gimptextlayout-render.c: make text align correctly if text-box is FIXED. 2008-08-15 Michael Natterer * app/paint/gimppaintcore-stroke.c (gimp_paint_core_stroke_boundary) (gimp_paint_core_stroke_vectors): when stroking multiple segments, set paint_core->cur_coords to the start of each segment. It normally gets assigned by gimp_paint_core_start(), but that's not called for subsequent segments. Fixes stroking multiple segments with the ink tool. The other tools were not affected since they plot individual brushes rather than a shape from the last to the current coordinates. Spotted by Alexia. 2008-08-15 Sven Neumann * plug-ins/common/mosaic.c: formatting. 2008-08-15 Sven Neumann * plug-ins/common/mosaic.c (polygon_add_point): converted a g_print() call to g_warning() and unmarked the string for translation. 2008-08-15 Sven Neumann * plug-ins/file-ico/ico-save.c: applied patch from Aurimas Juška that fixes an endianness issue (bug #529629). 2008-08-15 Sven Neumann * app/display/gimpstatusbar.[ch]: added some logic to avoid that an info message replaces a warning. Allow info messages to replace other info messages. * app/display/gimpdisplay-handlers.c: changed accordingly. 2008-08-15 Sven Neumann * app/actions/file-commands.c (file_save_cmd_callback): save new images, even if they are not marked dirty. 2008-08-14 Sven Neumann * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_run): use G_STRFUNC in another error message that I missed earlier. 2008-08-14 Michael Natterer * plug-ins/help-browser/dialog.c (search_entry_key_press): search the next match when return or enter is pressed in the search entry. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_image_starts_to_fit) (gimp_display_shell_scale_image_is_within_viewport): Make proper tests (<= not <). 2008-08-14 Sven Neumann * app/actions/file-commands.c (file_save_cmd_callback): if we trust the dirty flag and don't save because there are no changes, display a message in the status-bar telling the user so. * app/config/gimpguiconfig.c: changed the default value for "trust-dirty-flag" to TRUE. 2008-08-14 Sven Neumann * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_tile_get): use G_STRFUNC to get the proper function name in the error message. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_image_stops_to_fit): New function. (gimp_display_shell_scale_get_zoom_focus): If the image stops to fit the viewport, we can already now use the mouse cursor as the zoom focus point. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-draw.[ch] (gimp_display_shell_draw_get_scaled_image_size_for_scale): New function. * app/display/gimpdisplayshell-scale.[ch] (gimp_display_shell_scale): When zooming out and the image starts to fit the viewport on a given axis, center on that axis. (gimp_display_shell_scale_image_starts_to_fit): New function. (gimp_display_shell_calculate_scale_x_and_y): New function. * app/display/gimpdisplayshell.c (gimp_display_shell_scale_changed): Use gimp_display_shell_calculate_scale_x_and_y(). * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll_center_image): Bail out if neither vertical nor horizontal centering is requested. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_get_zoom_focus): When the image is within the viewport, also use the center of the image as the zoom focus point when zooming in. It feels way too weird not to do it this way. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_get_zoom_focus): If the image is within the viewport and we are zooming out, make the focus point be the center of the image. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_to): Move calculation of the actual new scale to use from here (gimp_display_shell_scale): to here, because we need this information in order to determine what point to focus on while zooming. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell.c (gimp_display_shell_set_unit): No need to update scrollbars, only rulers. (gimp_display_shell_reconnect): A gimp_display_shell_scroll_clamp_and_update() makes more sense here. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-handlers.c (gimp_display_shell_monitor_res_notify_handler): When the screen resolution changes and we are not in Dot by dot, we also need to clamp the display shell offsets. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-handlers.c (gimp_display_shell_resolution_changed_handler): If we are in dot-by-dot, we only need to update the rulers, and only if the unit is not pixels. 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_update_scrollbars_and_rulers): Split this up in gimp_display_shell_scale_update_scrollbars() and gimp_display_shell_scale_update_rulers(). 2008-08-14 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll_clamp_and_update): New helper function. * app/display/gimpdisplayshell-scale.c * app/display/gimpdisplayshell-scroll.c * app/display/gimpdisplayshell-callbacks.c: Use it. 2008-08-14 Sven Neumann * plug-ins/pygimp/plug-ins/python-console.py: renamed the dialog class to ConsoleDialog to avoid confusion with pyconsole.Console. 2008-08-13 Sven Neumann * plug-ins/pygimp/plug-ins/python-console.py: instead of calling gimp-displays-flush twice a second, call it after each command that is committed. This is similar to what the Script-Fu console does. * plug-ins/script-fu/script-fu-console.c: formatting. 2008-08-13 Sven Neumann * plug-ins/pygimp/pygimp-colors.c: fix compiler warnings. 2008-08-13 Sven Neumann * plug-ins/help/gimphelplocale.c (gimp_help_locale_parse): reverted the last change as g_file_query_info() is now also implemented on Win32. 2008-08-13 Sven Neumann * plug-ins/help/gimphelplocale.c (gimp_help_locale_parse): continue even if g_file_query_info() fails. We can't show proper progress information then, but we can still attempt the download. 2008-08-13 Sven Neumann * app/paint-funcs/paint-funcs.c (replace_inten_pixels): applied patch from Luidnel Maignan (followup to bug #105568). 2008-08-13 Sven Neumann * app/paint-funcs/scale-region.c: applied patch from Geert Jordaens to fix scaling artifacts in top row (bug #464466). 2008-08-13 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_get_zoom_focus): New function responsible for deciding what viewport coordinate to focus on when zooming in and out. 2008-08-13 Martin Nordholts * app/display/gimpdisplayshell-scale.[ch] (gimp_display_shell_scale_to): Make this a private function because we want to be in full control over what pixel to focus on when zooming in and out. * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_tool_events): Use gimp_display_shell_scale() here instead of gimp_display_shell_scale_to(). We figure out (and can override if we wish) the coordinates that were previously passed explicitly. 2008-08-13 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_image_is_within_viewport): New function. * app/display/gimpdisplayshell.c (gimp_display_shell_new): When the zoom button is toggled on, implicitly do a View -> Fit Image in Window if the (scaled) image is within the viewport. 2008-08-13 Martin Nordholts * app/paint/gimppaintcore.c: Include gimpprojection.h for gimp_projection_get_tiles(). 2008-08-12 Sven Neumann * app/paint-funcs/paint-funcs.c (replace_inten_pixels): applied a slightly modified version of the patch from Luidnel Maignan as attached to bug #105568. Fixes incorrect alpha treatment in plug-in selection masking. 2008-08-12 Sven Neumann * app/widgets/gimphistogrameditor.c (gimp_histogram_editor_frozen_update): don't do the background histogram unless the histogram view is actually visible. 2008-08-12 Sven Neumann * app/paint/gimppaintcore.c (gimp_paint_core_start): use gimp_projection_get_tiles() instead of doing the same through the GimpPickable interface. 2008-08-12 Sven Neumann * plug-ins/win-snap/Makefile.am: follow the executable name change. 2008-08-12 Sven Neumann * app/core/gimpprojection.c (gimp_projection_paint_area): moved function calls out of CLAMP macros. 2008-08-12 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_empty): removed calls to scale the image and to update the scrollbars and rulers. Doesn't seem to make sense in an empty display and it causes a crash. 2008-08-12 Sven Neumann * app/core/gimpitem.c * app/core/gimpobject.c * app/dialogs/preferences-dialog.c * plug-ins/imagemap/imap_main.c * plug-ins/imagemap/imap_selection.c * plug-ins/common/filter-pack.c * plug-ins/common/grid.c * plug-ins/common/newsprint.c * plug-ins/fractal-explorer/fractal-explorer-dialogs.c * plug-ins/fractal-explorer/fractal-explorer.c: use canonical signal names. 2008-08-12 Sven Neumann * configure.in (sed-po-makefiles): create the stamp-it files in the po-* directories. 2008-08-12 Sven Neumann * po-*/Makefile.in.in: corrected 'subdir' variables. Spotted by Tor Lillqvist. * modules/controller-midi.c: formatting. 2008-08-12 Michael Natterer * modules/color-selector-wheel.c: override the wheel's size-request and return a small requisition that allows it to be resized smaller again. 2008-08-12 Sven Neumann * modules/Makefile.am: fixed library dependencies. 2008-08-11 Michael Natterer * plug-ins/common/cml-explorer.c * plug-ins/common/depth-merge.c * plug-ins/common/file-cel.c * plug-ins/common/oilify.c * plug-ins/file-bmp/bmp-write.c * plug-ins/file-bmp/bmp.[ch] * plug-ins/file-ico/ico-dialog.c * plug-ins/file-ico/ico-save.c * plug-ins/file-ico/ico.h * plug-ins/flame/flame.c * plug-ins/fractal-explorer/fractal-explorer-dialogs.c * plug-ins/fractal-explorer/fractal-explorer.[ch] * plug-ins/gimpressionist/gimp.c * plug-ins/gimpressionist/gimpressionist.[ch] * plug-ins/gimpressionist/orientmap.c * plug-ins/gimpressionist/presets.c * plug-ins/gimpressionist/sizemap.c * plug-ins/help-browser/dialog.[ch] * plug-ins/help-browser/help-browser.c * plug-ins/ifs-compose/ifs-compose.c * plug-ins/imagemap/imap_default_dialog.c * plug-ins/imagemap/imap_main.[ch] * plug-ins/lighting/lighting-main.[ch] * plug-ins/lighting/lighting-ui.c * plug-ins/map-object/map-object-main.[ch] * plug-ins/map-object/map-object-ui.c * plug-ins/selection-to-path/selection-to-path.c * plug-ins/win-snap/winsnap.c: use PLUG_IN_BINARY and PLUG_IN_PROC defines consistently instead of using literal strings or other random defines. Define them if not already there or move them to plugin-global places. * plug-ins/win-snap/Makefile.am: rename the binary to "win-snap". * plug-ins/win-snap/winsnap.c: changed accordingly. 2008-08-11 Michael Natterer * modules/Makefile.am * modules/*.c: renamed all modules to color-selector-foo.c, display-filter-foo.c and controller-foo.c 2008-08-11 Sven Neumann * INSTALL: mention lcms in the list of recommended libraries. 2008-08-11 Michael Natterer * configure.in: check for lcms with PKG_CHECK_MODULES(). Remove check for vs. because the pc file should give us the right location now. * modules/cdisplay_lcms.c * modules/cdisplay_proof.c * modules/colorsel_cmyk_lcms.c * plug-ins/file-jpeg/jpeg-load.c * plug-ins/common/lcms.c: #include and nothing else. * modules/Makefile.am * plug-ins/file-jpeg/Makefile.am * plug-ins/common/plugin-defs.pl: add LCMS_CFLAGS where appropriate. * plug-ins/common/Makefile.am: regenerated. 2008-08-11 Sven Neumann Please re-run autogen.sh after this update, and let me know if there are any problems. * po-*/Makefile.in.in: updated to a version that does not require mkinstalldirs to be present. * autogen.sh: removed the call to glib-gettextize and call intltoolize without the --force command-line option. This change makes an end to the po/Makefile.in.in being overwritten. * HACKING: changed the documentation accordingly. 2008-08-11 Sven Neumann * plug-ins/common/mkgen.pl: removed the LIBFOO hack from this script. * plug-ins/common/plugin-defs.pl: explicitely specify the libs in the two places where it wasn't done yet. * plug-ins/common/Makefile.am: regenerated. 2008-08-11 Michael Natterer * configure.in: change all LIBFOO variables to FOO_LIBS for consistency, got rid of some variables alltogether since PNG_CHECK_MODULES() already defined FOO_LIBS. * tools/Makefile.am * modules/Makefile.am * plug-ins/file-ico/Makefile.am * plug-ins/file-jpeg/Makefile.am * plug-ins/file-psd/Makefile.am * plug-ins/file-xjt/Makefile.am * plug-ins/common/plugin-defs.pl * plug-ins/common/mkgen.pl: changed accordingly. * plug-ins/common/Makefile.am: regenerated. 2008-08-11 Michael Natterer * plug-ins/bmp/* * plug-ins/faxg3/* * plug-ins/fits/* * plug-ins/fli/* * plug-ins/ico/* * plug-ins/jpeg/* * plug-ins/psd/* * plug-ins/sgi/* * plug-ins/uri/* * plug-ins/xjt/*: removed these... * plug-ins/file-bmp/* * plug-ins/file-faxg3/* * plug-ins/file-fits/* * plug-ins/file-fli/* * plug-ins/file-ico/* * plug-ins/file-jpeg/* * plug-ins/file-psd/* * plug-ins/file-sgi/* * plug-ins/file-uri/* * plug-ins/file-xjt/*: and moved them here. Changed executable names to "file-foo". * plug-ins/Makefile.am: changed accordingly. * plug-ins/common/*: rename all file plug-ins to file-foo.c. Get rid of the names "poppler" and "postscript" and call them "file-pdf" and "file-ps" because the conflict with standard autofoo targets is gone. * plug-ins/common/plugin-defs.pl: changed accordingly. * plug-ins/common/mkgen.pl: make sure cflags variables are named "PLUG_IN_NAME_CFLAGS" and not "PLUG-IN-NAME_CFLAGS" * plug-ins/common/Makefile.am: regenerated. * configure.in: change folders and variable names to match above changes. 2008-08-11 Sven Neumann * app/tools/gimptexttool.c: minor coding style cleanups. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_size_allocate): If the image fits within the display shell canvas on a given axis, center the image on that axis. This behaviour will certainly require a few tweaks but let's see how this feels. Feedback welcome. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell.c (gimp_display_shell_fill): Recent refactorings seems to have made the centering hack obsolete so use gimp_display_shell_scroll_center_image_on_next_size_allocate() instead. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell.c (gimp_display_shell_shrink_wrap): Always center the image after a wrap. I can't think of a case when that shouldn't happen. * app/display/gimpdisplayshell-handlers.c (gimp_display_shell_size_changed_detailed_handler): Centering occurs implicitly after wrapping now, no need to do it explicitly. * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll_center_image): Handle the no-image case. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_scroll_set_offset): New low level function for setting display shell offset. (gimp_display_shell_scroll_center_image) * app/display/gimpdisplayshell-handlers.c (gimp_display_shell_size_changed_detailed_handler): Use it instead of gimp_display_shell_scale_by_values(). 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_handle_zoom_revert): Move the zoom-revert updating logic into this new helper function so that we can update zoom-revert from other places. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-scale.[ch]: Rename gimp_display_shell_scale_setup() to gimp_display_shell_update_scrollbars_and_rulers(), because that's exactly what that function does. * app/display/gimpdisplayshell.c * app/display/gimpdisplayshell-scroll.c * app/display/gimpdisplayshell-handlers.c * app/display/gimpdisplayshell-callbacks.c: Adapt to new name. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): Remove unused local variables sw and sh. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch]: Renamed gimp_display_shell_scroll_private() to gimp_display_shell_scroll() and keep it here. * app/display/gimpdisplayshell-private.h: Removed. * app/display/Makefile.am * app/display/gimpdisplayshell-scale.c * app/display/gimpdisplayshell-scroll.c * app/display/gimpdisplayshell-handlers.c * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-autoscroll.c: Adapt. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch]: It makes more sense for gimp_display_shell_get_scaled_image_size() to be moved from here to * app/display/gimpdisplayshell-draw.[ch]: here, and rename it to gimp_display_shell_draw_get_scaled_image_size(). * app/display/gimpdisplayshell.c: Adapt to name change. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-draw.[ch] * app/display/gimpdisplayshell-render.[ch] * app/display/gimpdisplayshell-transform.[ch] * app/display/gimpdisplayshell-appearance.[ch]: Sprinkle as many const qualifiers we can without any implementation changes. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch]: gimp_display_shell_ -> gimp_display_shell_scroll_ for functions that are scroll related. Also did some other minor renamings. * app/display/gimpnavigationeditor.c * app/display/gimpdisplayshell-draw.c * app/display/gimpdisplayshell-scale.c * app/display/gimpdisplayshell-render.c * app/display/gimpdisplayshell-transform.c * app/display/gimpdisplayshell-callbacks.c: Adapt to the name changes. 2008-08-10 Martin Nordholts * app/actions/view-commands.c (view_shrink_wrap_cmd_callback): We need to center the image after a Shrink Wrap. 2008-08-10 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll_center_image): There is no need for special casing depending on image size relative to viewport size. 2008-08-10 Martin Nordholts Put functions to center the image in the display shell where they belong, and give them proper names. * app/display/gimpdisplayshell-scale.[ch]: Get rid of functions and use the new names. * app/display/gimpdisplayshell-scroll.[ch]: Put the functions here and call them gimp_display_shell_scroll_center_image() and gimp_display_shell_scroll_center_image_on_next_size_allocate(). * app/display/gimpdisplayshell.c: * app/display/gimpdisplayshell-handlers.c: Use the new names. 2008-08-08 Michael Natterer Bug #545990: GIMP color wheel is not antialiased * modules/colorsel_triangle.c: removed. * modules/colorsel_wheel.c: new module using the GtkHSV widget which was originally developed from above triangle selector. * modules/Makefile.am: changed accordingly. 2008-08-08 Sven Neumann * app/base/tile-manager.c: implement tile_manager_get_tile_coordinates() by calling tile_manager_get_tile_col_row() instead of the other way around. Saves two multiplications and divisions for each call of tile_manager_get_tile_col_row(). 2008-08-08 Sven Neumann * app/base/tile-manager.c: introduced utility function tile_manager_allocate_tiles() to avoid code duplication. 2008-08-08 Sven Neumann * app/base/tile-pyramid.c: improved a comment. 2008-08-08 Sven Neumann * app/core/gimplayer.c (gimp_layer_new_from_tiles) (gimp_layer_new_from_pixbuf) (gimp_layer_new_from_region): allow to pass NULL for the 'name' parameter. This will be handled just like in gimp_layer_new(). 2008-08-07 Sven Neumann * plug-ins/script-fu/scripts/frosty-logo.scm: applied slightly modified version of a patch provided by LightningIsMyName. Catches some cases where the script would fail (bug #472316). 2008-08-07 Sven Neumann * app/actions/layers-actions.c (layers_actions): added mnemonic to the new action. 2008-08-07 Sven Neumann * app/paint-funcs/scale-region.c: sprinkled with const qualifiers. Fixed some portability problems. 2008-08-07 Sven Neumann * app/base/tile.c (tile_attach): renamed a variable. 2008-08-07 Sven Neumann * plug-ins/print/print.c (print_image): get rid of the gimp_export_image() hack and use the new procedure gimp-layer-new-from-visible instead. Finally we can print what the user sees (including channels). 2008-08-07 Sven Neumann * app/core/gimpbuffer.[ch]: added gimp_buffer_get_tiles(). * app/actions/edit-commands.c * app/core/gimpbrushclipboard.c * app/core/gimppatternclipboard.c: use the new accessor function. 2008-08-07 Sven Neumann * app/core/gimplayer.c * app/actions/edit-commands.c * app/actions/layers-commands.c * tools/pdbgen/pdb/layer.pdb: corrected the GimpImageType passed to gimp_layer_new_from_tiles(). * app/pdb/layer-cmds.c: regenerated. 2008-08-07 Sven Neumann * app/actions/edit-commands.[ch] * app/actions/edit-actions.c: added new action "edit-paste-as-new-layer". * app/widgets/gimphelp-ids.h: added new help-id. * menus/image-menu.xml.in: added the new action. 2008-08-07 Tor Lillqvist * app/config/gimpbaseconfig.c (gimp_base_config_class_init): Use G_MAXSIZE instead of G_MAXULONG to limit the max tile cache size, as long is still 32 bits on Win64 but size_t is 64 bits. 2008-08-07 Sven Neumann * tools/pdbgen/pdb/layer.pdb: added new procedure 'gimp-layer-new-from-visible'. * app/pdb/layer-cmds.c * app/pdb/internal-procs.c * libgimp/gimplayer_pdb.[ch]: regenerated. * libgimp/gimp.def: updated. 2008-08-07 Sven Neumann * app/actions/layers-actions.c * app/actions/layers-commands.[ch]: added new action "layers-new-from-visible". * app/widgets/gimphelp-ids.h: added new help-id. * menus/layers-menu.xml * menus/image-menu.xml.in: added the new action. * app/actions/edit-actions.c: improved the blurb for "edit-copy-visible". 2008-08-07 Tor Lillqvist * app/main.c: Code built by the still unstable mingw-w64 toolchain gets bogus argc and argv when built as subsystem:windows, so use __argc and __argv instead, which seem to be OK. * libgimp/gimp.h: Similar change here. 2008-08-07 Sven Neumann * app/base/tile-manager.c (tile_manager_invalidate_tile): fixed broken copy-on-write code. The old code did not insert the new tile in the tile-manager's tile pointer array. (tile_manager_map): changed in a similar way as tile_manager_invalidate_tile(). This code was not broken, but it is easier to read now. * app/base/tile-private.h: moved a comment. * app/core/gimpselection.c (gimp_selection_extract): removed workaround for above bug. 2008-08-07 Sven Neumann * app/core/gimpselection.c (gimp_selection_extract): aded a comment explaining why copy_region_nocow() is being used here. 2008-08-07 Sven Neumann * app/core/gimplayer.c (gimp_layer_new_from_region): added some empty lines for readability. 2008-08-07 Sven Neumann * app/core/gimpimage.[ch]: added gimp_image_get_projection(). * app/display/gimpdisplay-handlers.c * app/display/gimpdisplayshell-render.c * app/display/gimpdisplayshell-scroll.c * app/paint/gimppaintcore.c * app/paint/gimpsourcecore.c * app/tools/gimpbycolorselecttool.c * app/tools/gimpeditselectiontool.c * app/tools/gimpimagemaptool.c * app/tools/gimpiscissorstool.c * app/tools/gimppainttool.c * app/widgets/gimpsamplepointeditor.c * tools/pdbgen/pdb/image.pdb: use the new accessor function. * app/pdb/image-cmds.c: regenerated. 2008-08-07 Sven Neumann * app/tools/gimpcurvestool.h: fixed comment. 2008-08-07 Tor Lillqvist * configure.in: Define WIN32_LARGE_ADDRESS_AWARE as -Wl,--large-address-aware on 32-bit Windows, empty otherwise. AC_SUBST() it. * app/Makefile.am (win32_ldflags): Use WIN32_LARGE_ADDRESS_AWARE instead of hardcoding the switch, as it isn't valid, and would be pointless, when building a 64-bit GIMP. 2008-08-06 Sven Neumann * app/core/gimpdrawable-shadow.c: removed unused include. 2008-08-06 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_center_image): The operation of centering the image in the display shell has by itself nothing to do with resizing the display shell window. 2008-08-06 Sven Neumann * libgimp/gimppixelrgn.c (gimp_pixel_rgn_configure): fixed gtk-doc comment syntax. 2008-08-06 Sven Neumann * app/gui/gimpdbusservice.c: minor cleanups. 2008-08-05 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale): Only center on the mouse pointer when zooming if it is within the canvas. 2008-08-05 Michael Natterer * app/display/gimpdisplayshell-scroll.[ch] * app/display/gimpdisplayshell-draw.c * app/display/gimpdisplayshell-scale.c * app/display/gimpdisplayshell-transform.c: get rid of the "image" part in all instances of "scaled_image_viewport_offset", we call it simply "viewport" in all other places and it makes the code more readable. 2008-08-05 Sven Neumann * app/gui/gimpdbusservice.[ch]: changed refcounting and fixed a bug that I had introduced with the latest changes. 2008-08-05 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): Don't setup scrollbar step increment here. * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_setup_hscrollbar_with_value) (gimp_display_shell_setup_vscrollbar_with_value): Setup scrollbar step increment here and make sure that a step always scrolls at least a display shell pixel. 2008-08-05 Martin Nordholts * app/core/gimpimage.c (gimp_image_real_size_changed_detailed): Clarify the design with a comment. 2008-08-05 Sven Neumann * app/gui/gimpdbusservice.[ch]: keep a queue of D-Bus requests and work on them one after another instead of handling them all in parallel. Complements the fix for bug #546426. 2008-08-05 Sven Neumann * plug-ins/common/value-propagate.c (value_propagate_body): reduced number of progress updates. * app/core/gimpchannel.c (gimp_channel_scale): don't waste CPU cycles scaling an empty channel. 2008-08-05 Sven Neumann * app/base/tile-manager.h * app/base/tile-pyramid.h: moved a misplaced comment to the right place. 2008-08-05 Michael Natterer * app/display/gimpdisplayshell-callbacks.c: move update_range callbacks where they belong and make them static. 2008-08-05 Sven Neumann * app/dialogs/tips-dialog.c (tips_dialog_create): added a translator comment for the "Learn more" button. 2008-08-05 Sven Neumann * app/display/gimpdisplayshell-draw.c (gimp_display_shell_draw_guide): draw the guide all across the canvas, not limiting it to the image. * app/tools/gimpdrawtool.[ch]: added new function gimp_draw_tool_draw_guide_line(). * app/tools/gimpmovetool.c (gimp_move_tool_draw): use it. 2008-08-05 Sven Neumann * menus/image-menu.xml.in: moved the Windows menu next to the Help menu. 2008-08-05 Sven Neumann * app/gui/gimpdbusservice.c: open the files from an idle handler. Opening a file may take a while (in particular if it involves asking the user for input) and we need to respond to the D-Bus call before it times out. 2008-08-04 Sven Neumann * app/paint-funcs/scale-region.c: applied patch from Geert Jordaens as attached to bug #464466. Improves quality of scaling, in particular down-scaling. 2008-08-04 Michael Natterer * app/core/gimpimage.[ch] (GimpImage::size-changed-detailed): change double to int in signal parameters. Remove gimp_image_emit_size_changed_signals() and call gimp_viewable_size_changed() in size-changed-detailed's default handler. * app/core/gimpimageundo.[ch] * app/core/gimpimage-undo-push.[ch]: change double to int in previous-origin related code. * app/core/gimpimage-undo.c * app/core/gimpimage-scale.c * app/core/gimpimage-crop.c * app/core/gimpimage-rotate.c * app/core/gimpimage-resize.c: call gimp_image_size_changed_detailed() instead of the removed gimp_image_emit_size_changed_signals() * app/display/gimpdisplayshell-scroll.[ch]: remove gimp_display_shell_handle_size_changed_detailed() because it handles both scrolling and scaling and doesn't belong here. * app/display/gimpdisplayshell-handlers.c: moved its code back to gimp_display_shell_size_changed_detailed_handler() and follow the double -> int change above. 2008-08-04 Michael Natterer * app/core/gimpimagemapconfig.c (gimp_image_map_config_compare): clarify if() condition. 2008-08-04 Martin Nordholts * app/core/gimpimage.c (gimp_image_emit_size_changed_signals): The parameters should be named previous_origin_[xy]. 2008-08-04 Sven Neumann * plug-ins/common/blur-motion.c (mblur_dialog): added translation context to blur-type menu (bug #546204). 2008-08-04 Sven Neumann * plug-ins/common/value-propagate.c: applied patch from Liam Quin as attached to bug #546159. Fixes bad data access for black and white propagation and removes unneeded calls to sqrt(). 2008-08-04 Sven Neumann Applied a slightly modified patch from Róman Joost as attached to bug #545963. This add links to the user manual to the tips dialog: * data/tips/gimp-tips.dtd * data/tips/gimp-tips.xml.in: add optional help IDs to the tips. * app/dialogs/tips-dialog.c * app/dialogs/tips-parser.[ch]: parse the help IDs from the tips file and show a "Learn more" link in the tips dialog. 2008-08-03 Martin Nordholts * app/display/gimpdisplayshell.c (gimp_display_shell_new): Center the image after connecting to it. This is required if the image we connect to is smaller than the initial canvas size. 2008-08-03 Martin Nordholts Further work for completing bug #362915 that makes changes to the image size (e.g when cropping) be much more nicely handled by display shell. * app/core/gimpimage.[ch]: Add new signal GimpImage::size-changed-detailed that is emited whenever GimpViewable::size-changed is. The new signal provides additional information, namely the previous origin relative to the current origin. Cliens choose what specific signal to listen to depending on how much info they need. * app/display/gimpdisplayshell-handlers.c: Connect to GimpImage::size-changed-detailed instead of GimpViewable::size-changed since the shell wants information about the previous image origin. (gimp_display_shell_resolution_changed_handler): Use gimp_display_shell_scale_resize() instead to avoid display garbage. * app/display/gimpdisplayshell-scale.[ch]: Add new utility function gimp_display_shell_center_image_on_next_size_allocate(). * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_handle_size_changed_detailed): New function that replaces logic in gimp_display_shell_handle_size_changed and that takes previous-origin of the image into account and adjusts the offset so that the image content that remains doesn't move. If the window is resized on image resize, just center the image afterwards. * app/core/gimpimage-undo-push.[ch] (gimp_image_undo_push_image_size): Add previous-origin paremeters. * app/core/gimpimageundo.[ch]: Add and manage previous-origin properties so that the display shell offset can be appropriately adjusted also when undoing. * app/core/gimpundo.h * app/core/gimpimage-undo.c: Add previous_origin members to the undo accumulator and emit that information when the size of the image changes due to the undo. * app/core/gimpimage-crop.c (gimp_image_crop) * app/core/gimpimage-scale.c (gimp_image_scale) * app/core/gimpimage-rotate.c (gimp_image_rotate) * app/core/gimpimage-resize.c (gimp_image_resize_with_layers): Supply information about the previous-origin of the image to the size-changed signals and the undo system. 2008-07-31 Sven Neumann * app/core/gimpimage-scale.c (gimp_image_scale): formatting. 2008-07-30 Jakub Steiner * data/images/gimp-splash.png: new devel splash from Aurore Derriennic 2008-07-30 Sven Neumann * app/dialogs/file-open-dialog.c (file_open_dialog_response): attach the URI of the last opened image to the Gimp object. * app/actions/file-commands.c (file_open_dialog_show): use the last opened URI as a fallback for initializing the dialog. 2008-07-29 Sven Neumann * plug-ins/common/Makefile.am * plug-ins/common/plugin-defs.pl * plug-ins/common/psd-save.c: removed psd-save source here ... * plug-ins/psd/Makefile.am * plug-ins/psd/psd-save.c: ... and added it back here. 2008-07-29 Sven Neumann * tools/pdbgen/pdb/vectors.pdb: added the real name of the author of the new PDB function. * app/pdb/vectors-cmds.c: regenerated. 2008-07-28 Sven Neumann * tools/pdbgen/pdb/edit.pdb (edit_stroke_vectors_invoker): check that the passed vectors item is attached. * app/pdb/edit-cmds.c: regenerated. 2008-07-28 Sven Neumann * tools/pdbgen/pdb/vectors.pdb: applied patch from LightningIsMyName adding the new PDB function gimp-vectors-copy (bug #544212). * app/pdb/internal-procs.c * app/pdb/vectors-cmds.c * libgimp/gimpvectors_pdb.[ch]: regenerated. * libgimp/gimp.def: updated. 2008-07-27 Sven Neumann * app/text/gimptext-compat.c (text_get_extents): applied the same workaround for a memory leak in PangoFT2 (bug #143542) as was applied long ago in gimptextlayout.c. 2008-07-27 Sven Neumann * app/text/gimptext-compat.c (text_get_extents) * app/text/gimptextlayout-render.c (gimp_text_layout_render): use the readonly variant of pango_layout_iter_get_line(). 2008-07-27 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_synthesize_motion): Bail out if there is no pending rectangle to synthesize a motion on. Fixes bug #544181. 2008-07-27 Sven Neumann * plug-ins/psd/Makefile.am: renamed executable to 'psd-load'. 2008-07-24 Sven Neumann * app/widgets/gtkscalebutton.c: added missing prototypes. 2008-07-24 Sven Neumann * plug-ins/help/gimphelplocale.c: formatting. 2008-07-24 Sven Neumann * configure.in: minor cleanup of the checks for the URI plug-in. * plug-ins/uri/Makefile.am: changed accordingly. 2008-07-24 Sven Neumann * plug-ins/uri/uri-backend-libcurl.c: use g_fopen(). * plug-ins/uri/uri-backend-gvfs.c: formatting. 2008-07-24 Sven Neumann * app/paint/gimppaintcore-stroke.c (gimp_paint_core_stroke_emulate_dynamics): renamed variables. 2008-07-23 Sven Neumann * app/paint/gimppaintcore-stroke.[ch]: also implement brush dynamics emulation for stroking selections. * app/core/gimpchannel.c: pass the 'emulate-dynamics' parameter to gimp_paint_core_stroke_boundary(). 2008-07-23 Sven Neumann * app/widgets/gimpsessioninfo.c (gimp_session_info_get_geometry): don't report negative offsets, they would be interpreted wrongly. 2008-07-23 Sven Neumann Based on a patch from Alexia Death (bug #543706): * app/paint/gimppaintcore-stroke.[ch] (gimp_paint_core_stroke_vectors): added code to emulate brush dynamics by modifying pressure and velocity along the stroke. * app/vectors/gimpvectors.c (gimp_vectors_stroke): pass the 'emulate-dynamics' parameter to gimp_paint_core_stroke_vectors(). 2008-07-23 Sven Neumann * app/widgets/gimpcontrollerinfo.c * app/widgets/gimpcontrollerlist.c * app/widgets/gimpdasheditor.c * app/widgets/gimpdock.c * app/widgets/gimpeditor.c * app/widgets/gimpgrideditor.c * app/widgets/gimppdbdialog.c * app/widgets/gimppluginaction.c * app/widgets/gimpstrokeeditor.c * app/widgets/gimptemplateeditor.c * libgimpwidgets/gimpcolorprofilecombobox.c: no need to cast the return value of g_value_dup_object(). 2008-07-23 Sven Neumann * app/core/gimpguideundo.c * app/core/gimpitemundo.c * app/core/gimplayermaskundo.c * app/core/gimppdbprogress.c * app/core/gimpstrokedesc.c * app/core/gimptooloptions.c * app/core/gimptoolpresets.c * app/paint/gimppaintoptions.c * app/text/gimpfont.c * app/tools/gimptool.c * app/widgets/gimpaction.c * app/widgets/gimpcontrollereditor.c: no need to cast the return value of g_value_dup_object(). 2008-07-22 Sven Neumann * app/widgets/gimpcellrendererviewable.c: no need to cast the return value of g_value_dup_object(). 2008-07-22 Sven Neumann * plug-ins/help-browser/dialog.c (build_menu): check the return value of webkit_web_history_item_get_title() to guard us against a (reported) bug in WebKit. 2008-07-22 Michael Natterer * app/widgets/gimpviewrendererimagefile.c (gimp_view_renderer_imagefile_get_icon): guard against g_file_query_info() returning NULL (if the file doesn't exist or whatever error). 2008-07-22 Michael Natterer * app/tools/gimpcolortool.c: set scroll_lock to TRUE while moving or creating sample points so the image doesn't scroll while a new sample point is dragged from the rulers and sample points can be deleted by dragging them out of image without scrolling at the same time. 2008-07-22 Sven Neumann * app/tools/gimpvectortool.c: only use the position from the event coordinates when creating or modifying strokes. Initialize all other GimpCoords fields with default values. 2008-07-22 Sven Neumann * app/vectors/gimpbezierstroke.c: formatting. 2008-07-22 Sven Neumann * app/widgets/gimpsessioninfo-aux.c (gimp_session_info_aux_new_from_props): plugged memory leak. 2008-07-22 Sven Neumann * app/widgets/gimphistogramview.c (gimp_histogram_view_set_background): fixed refcounting issue. This plugs the memory leak I tried to fix in GimpHistogramEditor. 2008-07-22 Sven Neumann * app/base/gimphistogram.[ch]: added new method gimp_histogram_duplicate(). * app/widgets/gimphistogrameditor.c (gimp_histogram_editor_frozen_update): instead of recalculating the histogram, use a duplicate for the background histogram. 2008-07-22 Sven Neumann * app/widgets/gimphistogrameditor.c (gimp_histogram_editor_set_image): reverted last change, it did not plug the leak. 2008-07-22 Sven Neumann * app/gui/session.c (session_init): plugged a small memory leak. 2008-07-21 Sven Neumann * app/widgets/gimphistogrameditor.c (gimp_histogram_editor_set_image): always unset and unref the histograms. Plugs a memory leak reported by valgrind. 2008-07-21 Simon Budig * app/core/gimpcoords.c: incorporate the velocity. 2008-07-21 Sven Neumann * app/tools/gimpdrawtool.c (gimp_draw_tool_on_vectors_handle): plugged a not so small memory leak. 2008-07-21 Sven Neumann * app/actions/windows-actions.c (windows_actions_dock_notify): plugged another small memory leak. 2008-07-21 Sven Neumann * app/menus/file-menu.c (file_menu_open_recent_query_tooltip): plugged a small memory leak. 2008-07-21 Sven Neumann * app/core/gimpstrokedesc.[ch]: added boolean property 'emulate-brush-dynamics', in preparation for bug #543706. * app/dialogs/stroke-dialog.c: added a toggle for the new parameter. 2008-07-21 Sven Neumann * configure.in (ALL_LINGUAS): updated note to translators. 2008-07-21 Michael Natterer * app/gui/splash.c * plug-ins/common/*.c: don't use gtk_box_pack_start_defaults(), it got deprecated in GTK+ trunk. 2008-07-21 Sven Neumann * configure.in (ALL_LINGUAS): added 'be' (Belarusian). 2008-07-19 Martin Nordholts * app/widgets/gimpnavigationview.[ch]: Don't expose implementation details and extend the interface with trivial new functions. * app/display/gimpnavigationeditor.c (gimp_navigation_editor_popup): Use the new interface instead of directly accessing the members of the navigation view. 2008-07-18 Sven Neumann * app/core/core-types.h: removed delta_time, delta_x, delta_y, distance and random from the GimpCoords struct. These don't need to be kept here and they can't be properly interpolated. * app/core/gimpcoords.c: changed accordingly. * app/xcf/xcf-load.c (xcf_load_vector): the size of the GimpCoords struct changed. * app/display/gimpdisplayshell.[ch] (struct _GimpDisplayShell): added some members to store values from the last event that are needed in gimp_display_shell_eval_event() and which are not any longer part of GimpCoords. * app/display/gimpdisplayshell-coords.c (gimp_display_shell_eval_event): changed accordingly. * app/paint/gimppaintoptions.c: calculate a random number when one is needed. * app/paint/gimpbrushcore.c (gimp_brush_core_interpolate): GimpCoords doesn't have a "random" field any longer. 2008-07-18 Sven Neumann * app/core/core-types.h (GIMP_COORDS_DEFAULT_VALUES): initialize all members of the GimpCoords struct. 2008-07-17 Sven Neumann * app/core/gimpcoords.c (gimp_coords_mix): also mix in the new members of the GimpCoords struct. 2008-07-17 Sven Neumann * app/core/gimpcoords.c (gimp_coords_mix): formatting. * app/vectors/gimpbezierstroke.c: formatting. 2008-07-17 Sven Neumann * app/tools/gimpcolorizetool.c: fixed typo pointed out by Žygimantas Beručka. 2008-07-17 Sven Neumann * app/paint/gimppaintcore.[ch]: removed 'use_pressure' field from GimpPaintCore. * app/paint/gimppaintoptions.[ch]: removed 'use_pressure' parameter. * app/paint/gimpairbrush.c * app/paint/gimpbrushcore.c * app/paint/gimpclone.c * app/paint/gimpconvolve.c * app/paint/gimpdodgeburn.c * app/paint/gimperaser.c * app/paint/gimpheal.c * app/paint/gimppaintbrush.c * app/paint/gimpsmudge.c * app/tools/gimppainttool.c: changed accordingly. 2008-07-17 Tor Lillqvist * app/Makefile.am (win32_ldflags): Use -Wl,--large-address-aware on Windows so that we can use more that 2 GB user data space (if available; i.e. if running on a 64-bit OS, or a 32-bit OS booted with /3GB). See discussion in bug #522073. 2008-07-17 Sven Neumann * libgimp/gimpui.c: improved the documentation of gimpui_init(). 2008-07-16 Sven Neumann * configure.in: bumped version to 2.5.3. 2008-07-16 Sven Neumann * Made 2.5.2 development release. 2008-07-16 Sven Neumann * plug-ins/help-browser/dialog.c: also start the search when the slash key is pressed. Added a "find-again" feature bound to Ctrl-G. 2008-07-16 Sven Neumann * plug-ins/help-browser/dialog.c: applied patch from Róman Joost as attached to bug #542826 (with some minor modifications). This adds a "Search in this page" feature bound to Ctrl-F. 2008-07-15 Sven Neumann * tools/pdbgen/pdb/edit.pdb: fixed documentation (bug #542972). * app/pdb/edit-cmds.c * libgimp/gimpedit_pdb.c: regenerated. 2008-07-14 Sven Neumann * tools/pdbgen/pdb/palette.pdb: added new PDB function gimp-palette-get-colors that retrieves all colors from a palette in a single call. Based on patches from bug #332206. * app/pdb/palette-cmds.c * app/pdb/internal-procs.c * libgimp/gimppalette_pdb.[ch]: regenerated. * libgimp/gimp.def: updated. 2008-07-14 Sven Neumann * tools/pdbgen/app.pl: added support for color arrays. 2008-07-14 Sven Neumann * app/pdb/gimp-pdb-compat.c (gimp_pdb_compat_arg_type_from_gtype): added mapping from GIMP_TYPE_COLOR_ARRAY to GIMP_PDB_COLORARRAY. 2008-07-14 Sven Neumann Add new PDB data type PDB_COLORARRAY for using arrays of GimpRGB colors as argument or return value. * libgimpbase/gimpbaseenums.[ch] (enum GimpPDBArgType): replaced the unused GIMP_PDB_BOUNDARY with GIMP_PDB_COLORARRAY. * libgimpbase/gimpprotocol.h: increased GIMP_PROTOCOL_VERSION. (struct _GPParam): added d_colorarray entry to the union. * libgimpbase/gimpprotocol.c * libgimp/gimp.[ch] * app/pdb/gimp-pdb-compat.c * app/plug-in/plug-in-params.c * app/plug-in/gimpplugin-message.c * tools/pdbgen/pdb.pl: deal with the new data type. * tools/pdbgen/enums.pl: regenerated. * plug-ins/pygimp/pygimp-pdb.c * plug-ins/script-fu/scheme-wrapper.c: handle the new data type. 2008-07-14 Sven Neumann * app/widgets/gimpcontrollerkeyboard.c: changed cursor key event prefix from "key-" to "cursor-". * etc/controllerrc: changed accordingly. Also removed default bindings for cursor keys without modifiers as many tools use the cursor keys already. 2008-07-14 Sven Neumann * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): added some line breaks to improve readability. 2008-07-13 Martin Nordholts * app/display/gimpdisplayshell-scale.[ch] (gimp_display_shell_center_image): Allow to choose what axes to center on. (gimp_display_shell_scale_fill) (gimp_display_shell_scale_fit_in): Explicitly center on both axes. * app/display/gimpdisplayshell.c (gimp_display_shell_fill): Center the image in the previously empty display shell. Rather hackish, but seems to work fine. 2008-07-13 Sven Neumann * app/widgets/Makefile.am * app/widgets/gimpdbusservice.[ch] * app/widgets/dbus-service.xml: removed here ... * app/gui/Makefile.am * app/gui/gimpdbusservice.[ch] * app/gui/dbus-service.xml: ... and moved here. (gimp_dbus_service_activate): raise the first display instead of the toolbox. * app/gui/gui-unique.c (gui_unique_win32_idle_open): same change here, raise the display instead of the toolbox. * app/unique.c: changed accordingly. 2008-07-13 Sven Neumann * app/unique.c * app/gui/gui-unique.c: on Win32, if the gimp binary is started without filenames, raise the toolbox, just as we do in the DBus code path. 2008-07-13 Aurimas Juška * app/unique.c (gimp_unique_win32_open): check for NULL pointer to prevent crash when there are no filenames provided. 2008-07-13 Martin Nordholts * app/display/gimpdisplayshell.c (gimp_display_shell_new): Get rid of non-intelligent scrollbar stepper sensitivity code. * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll_clamp_offsets): Add intelligent scrollbar stepper sensitivity code. 2008-07-13 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_setup_hscrollbar_with_value): Consistency cleanup. 2008-07-13 Martin Nordholts * app/display/gimpdisplayshell-scale.[ch] (gimp_display_shell_center_image): New function. (gimp_display_shell_scale_fill) (gimp_display_shell_scale_fit_in): Center the image at the end. 2008-07-13 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_setup_hscrollbar_with_value) (gimp_display_shell_setup_vscrollbar_with_value): Use gimp_display_shell_get_scaled_image_size() instead of inaccurately calculate that information locally. 2008-07-13 Martin Nordholts * app/display/gimpnavigationeditor.c (gimp_navigation_editor_popup): BORDER_PEN_WIDTH is a normal constant, no need for voodoo. 2008-07-13 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_get_scaled_image_size): New function that contains logic previously kept in gimp_display_shell_draw_area(). * app/display/gimpdisplayshell-draw.c (gimp_display_shell_draw_area): Use the new function. 2008-07-13 Martin Nordholts * app/display/gimpdisplayshell.c (gimp_display_shell_fill): Don't ask gimp_display_shell_set_initial_scale() for display size, we don't care anyway. 2008-07-12 Martin Nordholts The following change is conceptually based on a patch by Alexia Death and implements the core functionality for bug #362915. * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_scroll_clamp_offsets): Clamp the offsets in such a way that allows to scroll beyond the image border. (gimp_display_shell_setup_hscrollbar_with_value) (gimp_display_shell_setup_vscrollbar_with_value): Put common scrollbar range setup code here. * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): Use above helper functions for setting up scrollbar range. * app/display/gimpdisplayshell-callbacks.c: Handle adjustment of the scrollbar range when they are about to change value. * app/display/gimpdisplayshell.c: Always keep the scrollbar steppers sensitive to user input. 2008-07-12 Martin Nordholts * app/display/gimpdisplayshell-scroll.c: Replace gimp_display_shell_scroll() with gimp_display_shell_center_around_image_coordinate() since that is easier to map to something sensible when we allow to scroll beyond image border. * app/display/gimpnavigationeditor.c (gimp_navigation_editor_marker_changed): Adapt to the new interface. 2008-07-12 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_get_viewport): Remove invalid TODO. 2008-07-12 Martin Nordholts * app/core/gimpmarshal.list: Added VOID__DOUBLE_DOUBLE_DOUBLE_DOUBLE marshaller. * app/widgets/gimpnavigationview.c: Make the "marker-changed" signal also pass the marker width and height as parameters. * app/display/gimpnavigationeditor.c: Updated accordingly. 2008-07-12 Sven Neumann * configure.in: fixed check for babl. 2008-07-12 Martin Nordholts * configure.in: Prefered casing of `babl' is `babl'. 2008-07-12 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): The scrollbars should be setup using the new offset, not the old counterpart. 2008-07-12 Sven Neumann * app/tools/gimprectangletool.c: formatting. 2008-07-12 Sven Neumann * app/core/gimpparamspecs.[ch]: added GIMP_TYPE_COLOR_ARRAY and GIMP_TYPE_PARAM_COLOR_ARRAY in preparation for fixing bug #332206. 2008-07-12 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): Renamed the variables sx and sy to sw and sh. 2008-07-12 Martin Nordholts In this ChangeLog entry, disp_offset means disp_[xy]offset and offset means offset_[xy]. * app/display/gimpdisplayshell.[ch]: Kill disp_offset! We now represent that by a negative offset. * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_scroll_clamp_offsets) (gimp_display_shell_get_scaled_image_viewport_offset): Adjust accordingly to preserve current behaviour. (gimp_display_shell_get_disp_offset): New function to get the old disp_offset based on the new offset. (gimp_display_shell_get_render_start_offset): New function to get the old offset based on the new offset. * app/display/gimpdisplayshell-draw.c * app/display/gimpdisplayshell-scale.c * app/display/gimpdisplayshell-render.c: Get rid of disp_offset and use gimp_display_shell_get_disp_offset() and gimp_display_shell_get_render_start_offset() instead. 2008-07-11 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): Remove #if zeroed debug output. 2008-07-11 Martin Nordholts * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): Restructure the way the rulers are setup, partly by making use of the new nifty gimp_display_shell_get_scaled_image_viewport_offset(). 2008-07-11 Martin Nordholts * app/display/gimpdisplayshell-transform.c (gimp_display_shell_transform_xy_f) (gimp_display_shell_untransform_xy_f): We can use gimp_display_shell_get_scaled_image_viewport_offset() here * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_get_scaled_viewport): and here. 2008-07-11 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_get_viewport) (gimp_display_shell_get_scaled_viewport) (gimp_display_shell_get_scaled_image_viewport_offset): const- and g_return_if_fail-ify. 2008-07-11 Sven Neumann * app/tools/gimprotatetool.c (gimp_rotate_tool_key_press): simplified. 2008-07-11 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_get_scaled_image_viewport_offset): New function to replace any occurance of shell->disp_[xy]offset - shell->offset_[xy] that is just an implementation specific way of saying the same thing. * app/display/gimpdisplayshell-draw.c * app/display/gimpdisplayshell-transform.c: Make the code less implementation dependant by using the new function. 2008-07-11 Martin Nordholts * app/display/gimpdisplayshell-draw.c (gimp_display_shell_draw_area): Update comment. 2008-07-11 Tor Lillqvist * app/app.c: Drop duplicated #include . * app/gui/gui-unique.c (idle_open_data_new): Fix g_slice_new() use. 2008-07-11 Sven Neumann * plug-ins/selection-to-path/pxl-outline.c (append_coordinate): use g_printerr() for debug output. 2008-07-11 Sven Neumann * app/gui/gui-unique.c: dispatch opening to an idle handler. 2008-07-11 Sven Neumann * docs/gimp.1.in: removed reference to gimp-remote(1). 2008-07-11 Sven Neumann * configure.in * docs/Makefile.am: made the build of gimp-remote optional and disable it by default. * INSTALL: document the --enable-gimp-remote configure option. 2008-07-11 Tor Lillqvist * app/unique.c (gimp_unique_filename_to_uri): Check GError being unset correctly. (gimp_unique_win32_open): Add missing semicolon. * app/gui/gui-unique.c: Include on Windows. (gui_unique_win32_init): Drop unused variable. 2008-07-11 Sven Neumann * app/core/gimpscanconvert.c * app/vectors/gimpbezierstroke.c * app/vectors/gimpvectors.c: include instead of . 2008-07-11 Sven Neumann * app/unique.c * app/gui/gui-unique.[ch]: merged code from bug #410439 to provide builtin gimp-win-remote functionality for Win32. This is untested and most probably doesn't even compile. 2008-07-11 Sven Neumann * app/gui/Makefile.am * app/gui/gui-unique.[ch]: new files providing functionality to ensure a unique GUI instance of GIMP. Code split out of gui.c. * app/gui/gui.c: changed accordingly. 2008-07-11 Sven Neumann * app/Makefile.am * app/unique.[ch]: new files containing functionality to check for an already running instance of GIMP of notifying it about files to open. Code split out of main.c. * app/main.c: changed accordingly. 2008-07-11 Sven Neumann * app/main.c (gimp_init_malloc): removed misleading comment. 2008-07-11 Sven Neumann * app/base/color-balance.c (color_balance_create_lookup_tables): formatting, to improve readability. 2008-07-11 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_get_viewport): Extend the interface with this function. * app/display/gimpnavigationeditor.c (gimp_navigation_editor_update_marker): Use it here. 2008-07-10 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch] (gimp_display_shell_get_scaled_viewport): Extend the interface with this function * app/tools/gimprectangletool.c (gimp_rectangle_tool_update_handle_sizes): Forget anything we knew about how to interpret the icky GimpDisplayShell offset variables 2008-07-10 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch]: Make gimp_display_shell_scroll() a sane public interface for scrolling and call the old version gimp_display_shell_scroll_private() * app/display/gimpnavigationeditor.c: Adapt to the saner version of gimp_display_shell_scroll() * app/display/gimpdisplayshell-callbacks.c: * app/display/gimpdisplayshell-autoscroll.c: Use the private version of gimp_display_shell_scroll() * app/display/Makefile.am: Added gimpdisplayshell-private.h 2008-07-10 Martin Nordholts * app/display/gimpdisplayshell-scroll.[ch]: The return value of gimp_display_shell_scroll() is not used anywhere, make it void. 2008-07-10 Manish Singh * plug-ins/pygimp/pygimp-pdb.c: Allow None to be passed for PDB_DISPLAY. 2008-07-10 Sven Neumann * app/tools/gimppaintoptions-gui.c (gimp_paint_options_gui): changed expander title to "Brush Dynamics". 2008-07-10 Sven Neumann * app/widgets/gimphelp.c: some changes to the dialog that is shown if the help browser is missing. 2008-07-10 Sven Neumann * docs/gimp.1.in: document the --help-gegl command-line option. 2008-07-10 Sven Neumann * app/display/gimpdisplayshell-progress.c (gimp_display_shell_progress_message): swallow informational messages if there aren't handled by the statusbar. 2008-07-10 Sven Neumann * app/core/gimpdata.[ch]: renamed gimp_data_name_compare() to gimp_data_compare() and changed it to keep the data in three groups: internal, writable and system resource files. Inside the groups the sorting order is alphabetical. * app/core/gimpdatafactory.c (gimp_data_factory_new): changed accordingly. 2008-07-10 Sven Neumann * app/core/gimpdatafactory.[ch] (gimp_data_factory_new): renamed parameter. 2008-07-09 Sven Neumann * app/core/gimp-user-install.c (gimp_user_install_detect_old): fixed misplaced debug output. 2008-07-09 Sven Neumann * app/display/gimpdisplayshell-close.c (gimp_display_shell_close): if a save dialog is active for this image, then don't allow to close it. Fixes bug #511965. 2008-07-09 Sven Neumann * app/display/gimpstatusbar.c (gimp_statusbar_progress_message): don't accept a progress message if the status bar is already showing a temporary message. 2008-07-09 Sven Neumann * plug-ins/common/tiff-load.c (tiff_warning): send warnings about unknown fields to stderr instead of using the log mechanism. 2008-07-09 Sven Neumann * app/tools/gimppainttool.c (gimp_paint_tool_motion): don't paint while the Shift key is pressed for line drawing (bug #529434). 2008-07-08 Martin Nordholts * plug-ins/pygimp/gimpmodule.c (gimp_methods): Remove duplicate entry of gimp.get_foreground(). 2008-07-08 Sven Neumann * plug-ins/help-browser/dialog.c (build_menu): plugged a memory leak. 2008-07-08 Sven Neumann * plug-ins/help-browser/dialog.c (load_finished): select the current URI in the index. Pointed out by Roman Joost. 2008-07-07 Sven Neumann * app/widgets/gimphelp.c (gimp_help_query_user_manual_online): changed button label and added an icon. 2008-07-07 Sven Neumann * app/paint/gimppaintoptions.c (gimp_paint_options_get_dynamic_hardness): applied patch from Alexia Death fixing a cut'n'paste error. 2008-07-07 Sven Neumann * app/tools/gimppaintoptions-gui.c (tool_has_size_dynamics): check for tools derived from GimpPaintBrushTool just as we do in tool_has_opacity_dynamics(). (tool_has_hardness_dynamics): enable hardness dynamics for the eraser tool (bug #541691). 2008-07-07 Sven Neumann * app/widgets/gimphelp.c (gimp_help_query_user_manual_online): command button labels should be capitalized in header style. 2008-07-07 Sven Neumann * themes/Default/images/stock-user-manual-64.png: recreated from SVG. 2008-07-07 Sven Neumann * app/composite/gimp-composite-*test.c: declared test functions as static. 2008-07-07 Sven Neumann * app/widgets/gimphelp.c: use GIMP_LOG() for debug output. 2008-07-06 Sven Neumann * app/widgets/gimphelp.c: if the user asks for help and the user manual is not locally installed, show a dialog that allows to change the preferences so that the online version is used. 2008-07-06 Sven Neumann * plug-ins/help/gimphelpdomain.c: improved error messages. 2008-07-05 Martin Nordholts * app/display/gimpdisplayshell-scroll.c (gimp_display_shell_scroll_clamp_offsets): Renamed the variables sx and sy to sw and sh. 2008-07-05 Sven Neumann * app/widgets/gimphelp.c (gimp_help_user_manual_is_installed): always return TRUE if GIMP2_HELP_URI environment variable is set. 2008-07-05 Sven Neumann * app/dialogs/preferences-dialog.c * app/widgets/gimphelp.[ch]: improved test for user manual installation and moved the code out of the prefs dialog. 2008-07-05 Martin Nordholts * app/tools/gimprectangletool.c: * app/tools/gimpeditselectiontool.c: Simplify math. 2008-07-05 Martin Nordholts * app/tools/gimprectangletool.c: * app/tools/gimpeditselectiontool.c: Mark the center of rectangles/bounding rectangles so that it is easier to predict and see where snapping occurs. Completes the fix for bug #527659. 2008-07-05 Martin Nordholts * app/tools/gimpeditselectiontool.[ch]: Don't expose the icky implementation details. 2008-07-05 Martin Nordholts * data/tips/gimp-tips.xml.in: Removed tip about how to make a circular selection. It's much more discoverable now than it was in GIMP 2.2, and the current description is faulty. (Bug #486599.) 2008-07-04 Sven Neumann * app/widgets/gimphelp.[ch]: added a function to get the location where the user manual is expected if it is installed locally. * app/dialogs/preferences-dialog.c: inform the user about the presence or absence of the user manual. 2008-07-04 Sven Neumann * plug-ins/help-browser/dialog.c (browser_dialog_make_index_foreach): improved order of index items with alphabetic counters. 2008-07-04 Sven Neumann * plug-ins/help/gimphelpitem.h: document the purpose of the extra struct fields. * plug-ins/help-browser/dialog.c: limit the depth of the index to 4. 2008-07-04 Sven Neumann * app/core/gimpgrid.c: changed default grid to a 10x10 grid of solid lines (bug #539318). 2008-07-03 Sven Neumann * app/actions/dialogs-actions.c (dialogs_toplevel_actions): changed blurb for "dialog-tips". 2008-07-03 Sven Neumann * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_events): don't use Escape to quit full-screen mode, it collides with tools using the Escape key (bug #539949). 2008-07-03 Lars-Peter Clausen * plug-ins/pygimp/pygimp-drawable.c * plug-ins/pygimp/pygimp-vectors.c * plug-ins/pygimp/pygimp-display.c * plug-ins/pygimp/pygimp-image.c: Added checks to ensure that a python object only is created if its id is valid. Fixes bug #536403. * plug-ins/pygimp/pygimp-pdb.c * plug-ins/pygimp/pygimp-tile.c * plug-ins/pygimp/pygimp-colors.c * plug-ins/pygimp/pygimp.h: Fix crashing when pygimp is used with python-2.5 on 64 bit systems. Fixes bug #540629. 2008-07-03 Sven Neumann * app/widgets/gimpsettingsbox.c (gimp_settings_box_constructor) * app/widgets/gimpsettingseditor.c (gimp_settings_editor_constructor): removed trailing period from tooltip texts. * app/config/gimprc-blurbs.h: don't mark USER_MANUAL_ONLINE_BLURB for translation, it is not used in the user interface. 2008-07-03 Sven Neumann * INSTALL: mention the fact that intltool now needs to be installed in order to build from tarball. * HACKING: removed mentioning of intltoolize here. 2008-07-02 Jakub Steiner * themes/Default/images/stock-gegl-16.png * themes/Default/images/stock-gegl-16.svg * themes/Default/images/stock-gegl-22.png * themes/Default/images/stock-gegl-22.svg * themes/Default/images/stock-gegl.svg: tweak icons to comply with tango style guidelines 2008-07-01 Sven Neumann * themes/Default/images/stock-gegl-16.png * themes/Default/images/stock-gegl-22.png: changed GEGL stock icon based on the new GEGL logo. * themes/Default/images/stock-gegl.svg: added SVG version. 2008-06-30 Michael Natterer * app/widgets/gimphistogrambox.c (gimp_histogram_box_high_adj_update): don't call gtk_adjustment_get_value() on a gint. 2008-06-30 Michael Natterer * app/dialogs/file-open-dialog.c (file_open_dialog_response): restore code that sets the dialog back to sensitive when opening fails because it stays open. Fixes bug #540801. 2008-06-29 Michael Natterer * app/tools/gimpgegltool.c (gimp_gegl_tool_dialog): remove size group code because the size group doesn't exist if there is no settings box. 2008-06-29 Michael Natterer * app/dialogs/channel-options-dialog.c * app/dialogs/palette-import-dialog.c * app/display/gimpdisplayshell-callbacks.c * app/display/gimpnavigationeditor.c * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/widgets/gimpbrusheditor.c * app/widgets/gimpbrushfactoryview.c * app/widgets/gimpbrushselect.c * app/widgets/gimpcolormapeditor.c * app/widgets/gimpcontainertreeview-dnd.c * app/widgets/gimpgradienteditor.c * app/widgets/gimphistogrambox.c * app/widgets/gimppaletteeditor.c * app/widgets/gimpscalebutton.c: replace adjustment->value by gtk_adjustment_get_value (adjustment). 2008-06-29 Michael Natterer * plug-ins/color-rotate/color-rotate-callbacks.c * plug-ins/gfig/gfig-grid.c * plug-ins/gimpressionist/general.c * plug-ins/gimpressionist/orientmap.c * plug-ins/gimpressionist/paper.c * plug-ins/gimpressionist/placement.c * plug-ins/gimpressionist/sizemap.c * plug-ins/gimpressionist/utils.c * plug-ins/ifs-compose/ifs-compose.c * plug-ins/imagemap/imap_grid.c * plug-ins/jpeg/jpeg-save.c * plug-ins/print/print-preview.c * plug-ins/win-snap/winsnap.c: use accessors instead of accessing members of GTK+ widgets directly. 2008-06-28 Michael Natterer * pygimp-pdb.c: * pygimp-tile.c: * pygimp-colors.c: revert last patch because Py_ssize_t is undefined in some (older?) pythons. Needs more investigation. 2008-06-28 Michael Natterer * app/widgets/gimpviewrendererimagefile.c (gimp_view_renderer_imagefile_get_icon): add widget parameter so we can get the right icon theme for the screen. If building against GTK+ >= 2.13.4, use GFile to get proper file type icons. (gimp_view_renderer_imagefile_render): pass the widget. (get_icon_fallback): remove this unused function. 2008-06-28 Martin Nordholts * app/widgets/gtkscalebutton.h: Remove uses of GSEAL macro to make the thing compile on systems without bleeding edge GTK+. 2008-06-28 Michael Natterer This is completely evil: * app/widgets/Makefile.am * app/widgets/gtkscalebutton.[ch]: copy GtkScaleButton from GTK+ upstream trunk and hack around until symbol conflicts are gone and it builds. * app/widgets/gimppropwidgets.c * app/widgets/gimpscalebutton.[ch]: use the hacked version instead of the one from GTK+. Set the orientation to horizontal. 2008-06-28 Michael Natterer * plug-ins/common/animation-play.c * plug-ins/common/cml-explorer.c * plug-ins/common/convolution-matrix.c * plug-ins/common/curve-bend.c * plug-ins/common/despeckle.c * plug-ins/common/filter-pack.c * plug-ins/common/gee-zoom.c * plug-ins/common/gee.c * plug-ins/common/lens-flare.c * plug-ins/common/newsprint.c * plug-ins/common/nova.c * plug-ins/common/postscript.c * plug-ins/common/sample-colorize.c * plug-ins/common/sphere-designer.c * plug-ins/common/tile-small.c: use accessors instead of accessing members of GTK+ widgets directly. 2008-06-28 Martin Nordholts * pygimp-pdb.c: * pygimp-tile.c: * pygimp-colors.c: Applied patch from Ed Swartz that makes use of Py_ssize_t:s instead of int:s to better utilize 64-bit systems. (Bug #540629.) 2008-06-28 Michael Natterer * app/widgets/gimpcontainertreeview.[ch]: add new function gimp_container_tree_view_connect_name_edited() which makes the name cell editable and connects a passed "edited" callback. * app/widgets/gimpdatafactoryview.c * app/widgets/gimpitemtreeview.c * app/widgets/gimpsettingseditor.c * app/widgets/gimptemplateview.c: use it instead of having the same code four times. 2008-06-28 Michael Natterer * app/widgets/gimpactionview.c * app/widgets/gimpblobeditor.c * app/widgets/gimpbrushfactoryview.c * app/widgets/gimpbrushselect.c * app/widgets/gimpcellrendererdashes.c * app/widgets/gimpcellrendererviewable.c * app/widgets/gimpcolorbar.c * app/widgets/gimpcoloreditor.c * app/widgets/gimpcolorframe.c * app/widgets/gimpcomponenteditor.c * app/widgets/gimpcontainerbox.c * app/widgets/gimpcontainergridview.c * app/widgets/gimpcontainerpopup.c * app/widgets/gimpcontainertreeview.c * app/widgets/gimpcurveview.c * app/widgets/gimpdasheditor.c * app/widgets/gimpdatafactoryview.c * app/widgets/gimpdock.c * app/widgets/gimpdockable.c * app/widgets/gimpdockseparator.c * app/widgets/gimpfgbgeditor.c * app/widgets/gimpfgbgview.c * app/widgets/gimpgradienteditor.c * app/widgets/gimphandlebar.c * app/widgets/gimphistogrambox.c * app/widgets/gimphistogramview.c * app/widgets/gimpitemtreeview.c * app/widgets/gimpmenudock.c * app/widgets/gimpmessagebox.c * app/widgets/gimppaletteview.c * app/widgets/gimpscalebutton.c * app/widgets/gimpsessioninfo-book.c * app/widgets/gimpsessioninfo-dock.c * app/widgets/gimpsettingseditor.c * app/widgets/gimpstrokeeditor.c * app/widgets/gimptemplateeditor.c * app/widgets/gimptemplateview.c * app/widgets/gimpthumbbox.c * app/widgets/gimptoolbox.c * app/widgets/gimptooloptionseditor.c * app/widgets/gimptoolview.c * app/widgets/gimpuimanager.c * app/widgets/gimpviewabledialog.c * app/widgets/gimpviewrenderervectors.c * app/widgets/gimpwidgets-utils.c: use accessors instead of accessing members of GTK+ widgets directly. 2008-06-28 Michael Natterer * plug-ins/uri/uri-backend-gvfs.c (uri_progress_callback): fix progress display by making sure gimp_progress_update() gets a gdouble passed. 2008-06-28 Michael Natterer * app/actions/layers-commands.c * app/actions/view-actions.c * app/dialogs/about-dialog.c * app/dialogs/layer-options-dialog.c * app/dialogs/preferences-dialog.c * app/display/gimpcanvas.c * app/display/gimpdisplayshell-appearance.c * app/display/gimpnavigationeditor.c * modules/colorsel_water.c: use accessors instead of accessing members of GTK+ widgets directly. 2008-06-28 Michael Natterer * libgimp/gimpgradientselectbutton.c * libgimp/gimpmenu.c * libgimpwidgets/gimpbrowser.c * libgimpwidgets/gimpcellrenderercolor.c * libgimpwidgets/gimpcellrenderertoggle.c * libgimpwidgets/gimpchainbutton.c * libgimpwidgets/gimpcolorarea.c * libgimpwidgets/gimpcolorscale.c * libgimpwidgets/gimpcolorscales.c * libgimpwidgets/gimpcolorselect.c * libgimpwidgets/gimpenumwidgets.c * libgimpwidgets/gimpframe.c * libgimpwidgets/gimphelpui.c * libgimpwidgets/gimpoffsetarea.c * libgimpwidgets/gimppreviewarea.c * libgimpwidgets/gimppropwidgets.c * libgimpwidgets/gimpscrolledpreview.c: use accessors instead of accessing members of GTK+ widgets directly. 2008-06-28 Michael Natterer * app/widgets/gimplanguagestore-parser.c: include "libgimpbase/gimpbase.h" instead of "libgimpbase/gimpenv.h". 2008-06-28 Michael Natterer * app/widgets/gimpdbusservice.c: eek, include "gimpuimanager.h" not "gimpuimanager.c". 2008-06-28 Michael Natterer * app/actions/tools-commands.c (tools_activate_enum_action): simply call gimp_enum_action_selected() instead of poking around in the action's internals and calling gimp_action_activate() 2008-06-28 Michael Natterer * app/widgets/gimpaction.c (gimp_action_set_proxy): simplify the logic of setting "color" or "viewable" previews on menuitems. 2008-06-27 Michael Natterer * app/tools/gimppaintoptions-gui.c (gimp_paint_options_gui): swap the angles of the dynamics matrix' labels in RTL and LTR mode so the beginning of the words are aligned and on bottom. 2008-06-26 Michael Natterer * app/widgets/gimpscalebutton.c (gimp_scale_button_init): hide the popup's plus and minus buttons, they are completely pointless. 2008-06-25 Michael Natterer * app/widgets/gimpsettingsbox.c: make sure the file dialog goes away when the settings box' toplevel is hidden. Set the alternative button order on the file dialog. 2008-06-25 Michael Natterer * app/core/gimpmarshal.list: add marshaller BOOLEAN__STRING for the change below. * app/widgets/gimpsettingsbox.[ch]: add the import/export dialogs here. Add a bunch of parameters to new() to be used by the dialogs, they are not properties yet. Changed import() and export() signals to pass the selected filename and return a boolean indicating success. * app/tools/gimpimagemaptool-settings.c: remove the dialog code here and connect the import/export functions directly to above GimpSettingsBox signals. * app/tools/gimpimagemaptool.[ch]: remove file dialog member. 2008-06-25 Michael Natterer * app/tools/gimpcurvestool.c (gimp_curves_tool_settings_import): parse the first line of the file manually and detect whether we are importing an old curves file or a GimpConfig one. 2008-06-25 Michael Natterer * app/gegl/gimpcurvesconfig.c (gimp_curves_config_load_cruft): set any parsed negative value as -1 in the curves object because that's the only negative value allowed. 2008-06-25 Michael Natterer * app/widgets/gimpsettingseditor.c (gimp_settings_editor_delete_clicked): select a neighboring item after deleting the selected one. 2008-06-25 Michael Natterer * app/widgets/gimpsettingseditor.[ch]: add dummy import and export buttons, give the list a minimum size. * app/widgets/gimpsettingsbox.c: use the correct dialog border. 2008-06-25 Michael Natterer * app/widgets/gimpsettingsbox.c (gimp_settings_box_constructor): tweak buttons to look the same and have no spacing between them. 2008-06-25 Michael Natterer * app/widgets/gimpsettingsbox.c (gimp_settings_box_constructor): move "Add to favorites" out of the menu into a small button showing a '+' icon. Add a separator between the import/export and the manage menu items. 2008-06-24 Michael Natterer * app/widgets/gimpsettingseditor.[ch]: enable renaming the settings objects by editing them directly in the list (renaming a recent setting moves it to the favorites section). Enable deleting settings. None of these changes is saved yet (need to trigger a save by confirming the tool or storing the current settings as favorite). 2008-06-24 Michael Natterer * app/widgets/gimpitemtreeview.c (gimp_item_tree_view_name_edited): don't dereference a NULL GError. 2008-06-24 Michael Natterer * app/widgets/gimpcontainercombobox.[ch]: made the model column enum public and namespaced it. * app/widgets/gimpsettingsbox.c: use the enum value instead of a magic number. * app/widgets/gimpsettingseditor.c: add a separator between recently used settings and favorites. 2008-06-23 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_modifier_key): Make switching selection mode through modifier keys work again. 2008-06-22 Michael Natterer * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/widgets/gimpsettingseditor.[ch]: skeleton of a widget to manage the list of saved settings for the image map tools. Does absolutely nothing yet apart from displaying the list of settings. * app/widgets/gimpsettingsbox.[ch]: add "Manage Settings" menu item and show a dialog containing the new widget. 2008-06-21 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_update_motion): When applying angle constraints on the first segment vertex, base on the last segment vertex rather than not applying any constraint at all. 2008-06-20 Martin Nordholts Make angle constraints with the Free Select Tool by using Ctrl work also when moving vertices, not only when creating new ones. * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_active_modifier_key): Implement. (gimp_free_select_tool_update_motion): Put motion logic here so we can apply it from both _motion and _active_modifier_key. (gimp_free_select_tool_modifier_key): Ignore key presses from another display. 2008-06-20 Martin Nordholts * app/tools/gimpfreeselecttool.c: Don't alloc/free saved_points_(lower|higher)_segment on each move, instead realloc on demand and free on tool destruction, just as we do e.g. for points. 2008-06-20 Martin Nordholts * app/tools/gimpfreeselecttool.c: Remove n_saved_points_(lower|higher)_segment, we don't need them. 2008-06-20 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_finalize): Plug leak. 2008-06-20 Michael Natterer Latest GTK+ trunk deprecations showed some uglyness in gimp: * app/tools/gimpeditselectiontool.h: we were still using GTK_CHECK macros here, use proper G_TYPE type checking instead. * app/widgets/gimpuimanager.c * app/widgets/gimpdockable.c: s/GtkDestroyNotify/GDestroyNotify/. * plug-ins/help-browser/gimpthrobber.c: s/GtkType/GType/. * plug-ins/common/filter-pack.c * plug-ins/common/sample-colorize.c * plug-ins/imagemap/imap_main.c: s/GtkSignalFunc/GCallback/. 2008-06-15 Michael Natterer * configure.in: in the check for xfixes, add "true" as action-if-not-found so it doesn't bail out when xfixes is not found. There seems to be something fishy with the PKG_CHECK_MODULES() macro since adding a simple comma should also count as empty 4th argument. 2008-06-15 Sven Neumann * configure.in: bumped version to 2.5.2. 2008-06-15 Sven Neumann * Made 2.5.1 development release. 2008-06-14 Sven Neumann * INSTALL * configure.in (gegl_required_version) * app/sanity.c (GEGL_REQUIRED_MICRO): depend on the newest released GEGL, version 0.0.18. 2008-06-13 Sven Neumann * app/dialogs/preferences-dialog.c: added a preliminary user interface to control the 'user-manual-online' property. 2008-06-13 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): Correct the improved display of the rectangle ratio. 2008-06-13 Sven Neumann * app/tools/gimptextoptions.c (gimp_text_options_class_init): we need to define the 'highlight' property here as well. 2008-06-13 Michael Natterer * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/widgets/gimpsettingsbox.[ch]: new widget containing the combo and menu button for the image map tool settings plus most of their logic. Has "import" and "export" signals that might go away if I figure a way to nicely abstract that. Contains some minor bugfixes and cosmetic improvements compared to the old code. * app/tools/gimpimagemaptool.[ch] * app/tools/gimpimagemaptool-settings.[ch]: changed accordingly, mostly removal of lots of code that is now in the widget. 2008-06-13 Sven Neumann * configure.in (babl_required_version) * app/sanity.c (BABL_REQUIRED_MICRO): depend on the newest released babl, version 0.0.22. 2008-06-13 Sven Neumann * plug-ins/help-browser/dialog.c: added a toggle action to show/hide the index sidebar, bound to Ctrl-I. 2008-06-12 Sven Neumann Added basic support for using the online user manual: * app/widgets/gimphelp.c * plug-ins/help/gimphelp.c: moved some help logic to the core. The default help domain is now constructed in the core and passed to the help plug-ins just like the plug-in help domains. * app/config/Makefile.am * app/config/gimprc-blurbs.h * app/config/gimpguiconfig.[ch]: added gimprc properties to specify the location of the online user manual and to decide if it should be used instead of a locally installed copy. 2008-06-12 Sven Neumann * app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): try to make the display of the aspect ratio somewhat more obvious. 2008-06-12 Michael Natterer * app/plug-in/plug-in-menu-path.c (menu_path_mappings): also map /File/Acquire to /File/New/Acquire. 2008-06-12 Sven Neumann * plug-ins/help-browser/Makefile.am * plug-ins/help-browser/wilber-reading.svg * plug-ins/help-browser/wilber-reading.png: removed here... * themes/Default/images/Makefile.am * themes/Default/images/stock-user-manual.svg * themes/Default/images/stock-user-manual-16.png * themes/Default/images/stock-user-manual-24.png * themes/Default/images/stock-user-manual-32.png * themes/Default/images/stock-user-manual-64.png * libgimpwidgets/gimpstock.[ch]: ... and added as stock icon. * plug-ins/help-browser/dialog.c * plug-ins/help-browser/gimpthrobber.c: changed accordingly. Set the toolbar style to GTK_TOOLBAR_ICONS. 2008-06-12 Michael Natterer * modules/controller_midi.c: applied patch from S. Fielding which passes the right MIDI channel from the ALSA event to midi_event(). Fixes bug #537960. 2008-06-12 Sven Neumann * plug-ins/help-browser/dialog.c: use GTK_STOCK_HOME for the button that navigates to the index page. * plug-ins/help-browser/gimpthrobber.c (gimp_throbber_construct_contents): deal better with toolbar style GTK_TOOLBAR_ICONS. 2008-06-12 Sven Neumann * plug-ins/help-browser/dialog.c: removed the title combo-box. Instead display the title in the window title. Added "copy-location" action to the right-click menu as a replacement for the drag source that was also removed. 2008-06-11 Sven Neumann * plug-ins/help/help.c (load_help_idle): don't show progress for local help lookups, they are fast enough. * plug-ins/help-browser/help-browser.c: added the same progress code here. Might want to move it to the dialog window later. 2008-06-11 Sven Neumann * configure.in: reverted last change (use of IT_PO_SUBDIR). 2008-06-11 Sven Neumann * desktop/gimp.desktop.in.in: removed deprecated field "Encoding". 2008-06-11 Sven Neumann * app/config/Makefile.am: make test-config link properly. 2008-06-11 Sven Neumann * configure.in: use IT_PO_SUBDIR() to define the extra po directories. Removed extra AC_CONFIG_COMMANDS that became obsolete by this change. 2008-06-11 Sven Neumann * autogen.sh: bumped INTLTOOL_REQUIRED_VERSION to 0.35.5. We actually need 0.40.0 on the system where the tarball is rolled, however 0.35.5 should be good enough for almost everyone. * configure.in: use IT_PROG_INTLTOOL with minimum version instead of the deprecated AC_PROG_INTLTOOL. * Makefile.am (EXTRA_DIST): removed intltool-foo.in files as intltool 0.40.0 does not install these any longer. Removed them from DISTCLEANFILES as well. 2008-06-11 Sven Neumann * configure.in: removed redundant calls to AC_MSG_RESULT() from inside PKG_CHECK_MODULES(). 2008-06-11 Sven Neumann * cursors/Makefile.am (EXTRA_DIST): added missing modifier-select XBM files. 2008-06-11 Sven Neumann * app/gegl/gimpoperationcolorbalance.c * app/gegl/gimpoperationcolorize.c * app/gegl/gimpoperationcurves.c * app/gegl/gimpoperationdesaturate.c * app/gegl/gimpoperationhuesaturation.c * app/gegl/gimpoperationlevels.c * app/gegl/gimpoperationposterize.c * app/gegl/gimpoperationthreshold.c * app/gegl/gimpoperationtilesink.c * app/gegl/gimpoperationtilesource.c: added const to GeglRectangle* argument. 2008-06-11 Sven Neumann * configure.in: fixed check for webkit zoom API. 2008-06-10 Sven Neumann * plug-ins/help-browser/queue.[ch]: removed, we don't need this code any longer. 2008-06-10 Sven Neumann * configure.in: removed check for gtkhtml2 and added a check for wekbit instead. * INSTALL: document the changed dependency. * plug-ins/help-browser/Makefile.am * plug-ins/help-browser/dialog.[ch]: ported the help-browser to webkit. Offers the same functionality as before and some more. * plug-ins/help-browser/help-browser.c: some cleanup. 2008-06-10 Sven Neumann * plug-ins/help/gimphelplocale.c: added some sanity checks. 2008-06-10 Michael Natterer * app/widgets/gimpthumbbox.c (gimp_thumb_box_new): don't set a width request on the info label. It broke horizontal label positioning and didn't serve any purpose I can remember. 2008-06-10 Sven Neumann * plug-ins/help/help.c (load_help_idle): show progress while loading the help index. 2008-06-10 Sven Neumann * app/config/gimpguiconfig.c (DEFAULT_WEB_BROWSER): reverted change for bug #522483. 'xdg-open' doesn't do the right thing for file: URIs. 2008-06-10 Sven Neumann * app/core/gimp-gui.[ch] * app/widgets/gimphelp.[ch] * app/gui/gui-vtable.c * app/gui/gui.c: added a GimpProgress parameter to gimp_help(). * app/actions/help-commands.c * app/widgets/gimpuimanager.c * tools/pdbgen/pdb/help.pdb: changed accordingly. * app/pdb/help-cmds.c: regenerated. 2008-06-10 Sven Neumann * app/plug-in/gimpplugin.c * app/plug-in/gimppluginmanager-call.c * app/widgets/gimphelp.c: formatting. 2008-06-09 Michael Natterer * app/paint/gimppaintoptions.c: set DEFAULT_VELOCITY_SIZE to FALSE so the paint tools behave as before and the brush outline is meaningful at least in the default setup. 2008-06-05 Sven Neumann * app/actions/dialogs-actions.c (dialogs_dockable_actions): added actions to open/focus the brush, gradient and palette editors (bug #436131). 2008-06-04 Sven Neumann * plug-ins/common/red-eye-removal.c: fixed weird handling of the threshold parameter. Some unrelated minor cleanups. 2008-06-04 Sven Neumann * plug-ins/common/tga.c: changed user interface for specifying the origin. Fixed header for origin at top-left (bug #450070). 2008-06-04 Michael Natterer * app/display/gimpdisplayshell-scale.c * app/gegl/gimpoperationdesaturate.h * app/tools/gimprectangletool.c * app/widgets/gimpradioaction.h * app/widgets/gimptoggleaction.h: various fixes to make gtk-doc happy. 2008-06-04 Sven Neumann * app/tools/gimpcropoptions.c * app/tools/gimprectangleoptions.c * app/tools/gimprectangleselectoptions.c: fixed handling of the "highlight" property that needs different default values for the Crop and Rectangle Select tools (bug #536582). 2008-06-04 Sven Neumann * app/paint/gimpairbrushoptions.c: removed trailing whitespace. 2008-06-04 Sven Neumann * app/core/gimpdrawable-operation.c (gimp_drawable_apply_operation): no need to check for the 'dont-cache' property now that we depend on the newer GEGL. 2008-06-04 Sven Neumann * INSTALL: updated GEGL version and also mention babl. * app/gegl/gimp-gegl.c (gimp_gegl_init): configure the GEGL tile size to match the GIMP tile size. 2008-06-04 Michael Natterer * configure.in: depend on GEGL >= 0.0.17, add check for BABL => 0.0.21. * app/sanity.c: bump GEGL sanity check and add BABL check. * app/gegl/gimpoperationcolorbalance.c * app/gegl/gimpoperationcolorize.c * app/gegl/gimpoperationcurves.c * app/gegl/gimpoperationdesaturate.c * app/gegl/gimpoperationhuesaturation.c * app/gegl/gimpoperationlevels.c * app/gegl/gimpoperationposterize.c * app/gegl/gimpoperationthreshold.c: adapt to new process() signature. 2008-06-03 Sven Neumann * libgimp/gimpitemcombobox.c: fixed comments. 2008-06-03 Sven Neumann * app/widgets/widgets-enums.[ch]: changed descriptions for GimpHistogramScale enum. * app/tools/gimpimagemaptool.[ch] * app/tools/gimpimagemaptool-settings.c: added a GtkSizeGroup for aligning with the "Presets" label. Added an accessor for the dialog's vbox. * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimpcurvestool.c * app/tools/gimpdesaturatetool.c * app/tools/gimpgegltool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c: use the new accessor. Minor dialog cleanups in a few places. 2008-06-02 Sven Neumann * app/actions/tools-actions.c: added a few more actions to set tool values to default values. Added "backslash" as the default shortcut for "tools-value-2-set-to-default", which is effectively "Reset Brush Scale" (bug #493030). 2008-06-01 Martin Nordholts * plug-ins/common/gif-load.c (GetCode): Applied patch from Rik Snel that fixes loading of .gif files that contains 1-byte data blocks. (Bug #535888.) 2008-05-31 Martin Nordholts Add keyboard shortcut support for reseting to default value of e.g. brush scale. Fixes bug #493030. * app/actions/actions.[ch]: Make action_select_value() take a default-parameter and add support for it. Also use default_value from gint and gdouble param specs. * app/actions/actions-types.h: Added GIMP_ACTION_SELECT_SET_TO_DEFAULT. * app/actions/tools-actions.c: Add _SET_TO_DEFAULT actions. * app/actions/view-commands.c: * app/actions/layers-commands.c: * app/actions/context-commands.c: Pass defaults to action_select_property(). 2008-05-31 Martin Nordholts * app/tools/gimprotatetool.c (gimp_rotate_tool_key_press): Implemented this function to support rotating with arrow keys. See bug #387779. 2008-05-30 Martin Nordholts Made moving the selection mask in the various ways automatically commit any pending rectangle/ellipse selection. Fixes bug #349340. * app/tools/gimprectangleselecttool.c (gimp_rectangle_select_tool_oper_update): Don't disable support for moving the selection mask. (gimp_rectangle_select_tool_button_press): Handle delegation to the selection tool. (gimp_rectangle_select_tool_delegate_button_press): New helper function. (gimp_rectangle_select_tool_execute): Guard against NULL tool->display:s. 2008-05-30 Sven Neumann * app/dialogs/module-dialog.c: tell the user that a restart is needed for the changes to take effect. 2008-05-30 Sven Neumann * app/dialogs/module-dialog.c: some more internal cleanups. 2008-05-30 Sven Neumann * app/dialogs/module-dialog.c: cleaned up the UI a bit. Removed some information and a button that was not really useful. Only show the error state when there is actually an error. 2008-05-29 Manish Singh * plug-ins/pygimp/gimpshelf.py: fix _vectors_id to return a tuple for the ID. Spotted and fixed by Joao. 2008-05-29 Sven Neumann * app/display/gimpscalecombobox.c (gimp_scale_combo_box_init): reverted last change. 2008-05-29 Sven Neumann * app/display/gimpscalecombobox.c (gimp_scale_combo_box_init): unset the entry's frame instead of reducing the inner border. 2008-05-29 Sven Neumann * themes/Default/images/Makefile.am (STOCK_TOOL_IMAGES): * themes/Default/images/tools/stock-tool-polygon-select-16.png * themes/Default/images/tools/stock-tool-polygon-select-22.png: removed unused tool icon. * libgimpwidgets/gimpstock.[ch]: don't register GIMP_STOCK_TOOL_POLYGON_SELECT. * libgimpwidgets/gimphruler.c * libgimpwidgets/gimpvruler.c: added missing API docs. 2008-05-29 Sven Neumann * plug-ins/common/blur-gauss-selective.c (matrixmult_mmx): avoid division by zero in the grayscale code path (bug #529280). 2008-05-29 Sven Neumann * plug-ins/imagemap/imap_preview.c (scroll_adj_changed): fixed ruler type. 2008-05-29 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): Also show the plain aspect ratio in the status bar along with the rectangle size information. Quickfix for bug #508183. 2008-05-28 Sven Neumann * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_setup): set the display unit on the ruler. * libgimpwidgets/gimphruler.c (gimp_hruler_draw_ticks) * libgimpwidgets/gimpvruler.c (gimp_vruler_draw_ticks): hack around to get nicer subdivisions for rulers showing pixels. 2008-05-28 Sven Neumann * libgimpwidgets/gimpruler.[ch] * libgimpwidgets/gimphruler.c * libgimpwidgets/gimpvruler.c: removed GimpRulerMetric struct from public API. Removed gimp_ruler_draw_pos() and gimp_ruler_draw_ticks() methods. Added a "unit" property with getter and setter. * libgimpwidgets/gimpwidgets.def: updated. 2008-05-28 Sven Neumann * libgimpwidgets/gimpruler.[ch]: started to sanitize the ruler API. * app/dialogs/resolution-calibrate-dialog.c * app/display/gimpdisplayshell-scale.c * plug-ins/gfig/gfig-preview.c * plug-ins/imagemap/imap_preview.c: changed accordingly. * libgimpwidgets/gimpwidgets.def: updated. 2008-05-28 Sven Neumann * libgimpwidgets/gimpruler.[ch] * libgimpwidgets/gimphruler.c * libgimpwidgets/gimpvruler.c: enlarge the array of scales to prevent ruler numbers from overlapping (bug #535039). 2008-05-27 Michael Natterer * plug-ins/help-browser/dialog.c: undef GDK_PIXBUF_DISABLE_SINGLE_INCLUDES around including . 2008-05-27 Sven Neumann * app/display/gimpdisplayoptions.c: reenabled rulers by default. 2008-05-27 Sven Neumann * libgimpwidgets/gimpruler.[ch] * libgimpwidgets/gimphruler.c (gimp_hruler_draw_ticks) * libgimpwidgets/gimpvruler.c (gimp_vruler_draw_ticks): use an extra small font for the tick labels. * themes/Default/gtkrc: don't hardcode a font size for the rulers. 2008-05-27 Michael Natterer * configure.in: add -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES to CPPFLAGS. 2008-05-27 Michael Natterer * app/tools/gimppaintoptions-gui.c: don't add the gradient box for the blend tool. Clean up the code by moving the checks for the tool type out of the utility functions into the main gimp_paint_options_gui() function. * app/tools/gimpblendoptions.c: add the gradient box here. 2008-05-27 Sven Neumann * app/widgets/gimpscalebutton.c: display a tooltip showing the value. 2008-05-27 Sven Neumann * app/widgets/gimpscalebutton.c (gimp_scale_button_image_expose): rotated the button graphics and fixed it for 'right-to-left' rendering. 2008-05-27 Michael Natterer * app/display/gimpdisplayshell-coords.c: revert velocity limit to 1.0, this part of the patch shouldn't have been applied. 2008-05-27 Sven Neumann * app/paint/gimpconvolve.c: make Convolve work with very thin brushes, then convolving only in one direction (bug #533791). 2008-05-26 Sven Neumann * libgimpwidgets/Makefile.am * libgimpwidgets/gimpwidgets.h * libgimpwidgets/gimpwidgetstypes.h * libgimpwidgets/gimpruler.[ch] * libgimpwidgets/gimphruler.[ch] * libgimpwidgets/gimpvruler.[ch]: added ruler widgets. These are mostly copied from GTK+ and work as a drop-in replacement for GtkRuler and friends. * libgimpwidgets/gimpwidgets.def: updated. * app/display/gimpdisplayshell.c * app/display/gimpdisplayshell-scale.c * app/dialogs/resolution-calibrate-dialog.c * plug-ins/imagemap/imap_preview.c * plug-ins/gfig/gfig-preview.c: use the GimpRuler widgets. 2008-05-26 Sven Neumann * libgimp/gimp.def: added gimp_drawable_free_shadow(). 2008-05-26 Michael Natterer * app/widgets/gimpscalebutton.c (gimp_scale_button_new): use GTK_ICON_SIZE_MENU for the scale button. 2008-05-26 Michael Natterer Applied modified patch from Alexia Death. Addresses bug #534770: * app/paint/gimppaintoptions.[ch]: add properties for scaling the effects of pressure, velocity and hardness and honor them in the various get_dynamic_foo() functions. (gimp_paint_options_get_dynamic_size): look at pressure_options->size again, that code got lost in one of the earlier patches. * app/tools/gimppaintoptions-gui.c: add GimpScaleButtons to the table for the new properties. * app/display/gimpdisplayshell-coords.c: don't let "velocity" reach 1.0, use 0.9999 instead. 2008-05-26 Michael Natterer * app/tools/gimppaintoptions-gui.c: remove unused includes. 2008-05-26 Michael Natterer * app/paint/gimppaintoptions.[ch]: replace the identical GimpPressureOptions, GimpVelocityOptions and GimpRandomOptions struct by a single GimpDynamicOptions struct. * app/tools/gimppaintoptions-gui.c: don't pass the various sub-structs to the _options_gui() function because they are not needed. 2008-05-26 Michael Natterer * app/gegl/gimpcolorbalanceconfig.c * app/gegl/gimpcurvesconfig.c * app/gegl/gimphuesaturationconfig.c * app/gegl/gimplevelsconfig.c (equal): sanitize local variable names: s/a_config/config_a/, s/b_config/config_b/. 2008-05-26 Michael Natterer * app/config/gimpbaseconfig.c * app/config/gimpguiconfig.c * app/tools/gimpcolorpickeroptions.[ch]: remove unused compat properties because the config parser silently skips unknown properties now. 2008-05-26 Sven Neumann * app/widgets/gimppropwidgets.c * app/widgets/gimpscalebutton.[ch]: some fiddling to get the step and page sizes right. 2008-05-26 Sven Neumann * app/widgets/gimppropwidgets.[ch]: support for GimpScaleButton. 2008-05-26 Sven Neumann * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/widgets/gimpscalebutton.[ch]: added simple scale button widget derived from GtkScaleButton. 2008-05-26 Sven Neumann * plug-ins/jpeg/jpeg-save.c (save_image): fixed logic that decides if an EXIF block should be written (bug #529469). 2008-05-25 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_revert_to_saved_state): Name cleanup. 2008-05-25 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_prepare_for_move) (gimp_free_select_tool_revert_to_saved_state) (gimp_free_select_tool_move_segment_vertex_to): Handle the special case when there is only one point, so that moving segment vertices works even if there only is one. 2008-05-25 Martin Nordholts * app/tools/gimpfreeselecttool.c: For completeness, comment on some uncommented instance-private variables. 2008-05-25 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_cursor_update): Properly update the cursor. 2008-05-25 Martin Nordholts Added support for supressing handles by holding Shift in the Free Select Tool so that new segments can be created where handles would otherwise obstruct. * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_handle_segment_selection): Renamed, and only select segment vertices if handles are not supressed. (gimp_free_select_tool_modifier_key): Make Shift toggle supressing handles. (gimp_free_select_tool_draw): Don't draw the handles if they are supressed. (gimp_free_select_tool_should_close): Only accept distance from start point as a reason to close the polygon if the handles are not supressed. 2008-05-25 Martin Nordholts Added support for double-clicking in the Free Select Tool. A double-click will commit the selection. * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_get_double_click_info): Helper function to retrive GTK+ double-click settings. (gimp_free_select_tool_should_close): Take double-clicking into account. (gimp_free_select_tool_revert_to_saved_state): Bail out if needed. (gimp_free_select_tool_button_release): Pass on time when clicking. (gimp_free_select_tool_handle_click): Pass time to this function, and modify it to handle double-clicks. 2008-05-25 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_button_release): Remove invalid comment. 2008-05-25 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_handle_click): A click might have slightly adjusted the points, so revert before doing the selection. (gimp_free_select_tool_revert_to_saved_state): Move definition up a bit. 2008-05-25 Martin Nordholts Make moving selection mask/pixels within the selection work for the Free Select Tool, as well as interaction with any resulting floating selection. * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_handle_click): Handle floating selections. (gimp_free_select_tool_status_update): Show the inital instructions until there are 3 or more segment vertices, rather than 3 or more points. (gimp_free_select_tool_oper_update): When there is no active tool, show selection tool status bar help messages instead of the tool specific ones. (gimp_free_select_tool_delegate_button_press): New helper function to decide wether to delgate operation to the selection tool. (gimp_free_select_tool_button_press): Handle delegation to the selection tool. 2008-05-24 Michael Natterer * app/tools/gimppaintoptions-gui.c: fix dynamics grid label positions for RTL mode by attaching the fixed to the table *after* the toggle buttons (eek). See comment in the code. 2008-05-24 Sven Neumann * HACKING: note that we need intltool 0.35.5 or newer. 2008-05-24 Martin Nordholts * menus/image-menu.xml.in: Also Remove the Polygon Select Tool action from here. 2008-05-24 Martin Nordholts Kill the Polygon Select Tool. The Free Select Tool now provides a superset of the old Polygon Select Tool functionality. We still keep the tool icons etc around though, they might come in useful in the future. * app/tools/gimppolygonselecttool.[ch]: Removed. * app/tools/Makefile.am: Removed gimppolygonselecttool.[ch]. * app/tools/gimp-tools.c (gimp_tools_init): Don't register the Polygon Select Tool. * app/widgets/gimphelp-ids.h: Remove GIMP_HELP_TOOL_POLYGON_SELECT. 2008-05-23 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_draw): Draw handles within HANDLE_SIZE * 7 distance from cursor instead of only showing the hovered handle. (gimp_free_select_tool_oper_update): Remember last coordinates given here, so we can do above calculations. 2008-05-23 Michael Natterer Stop including single headers from gtk+ to be prepared for the upcoming GTK_DISABLE_SINGLE_INCLUDES: * configure.in: add -DGTK_DISABLE_SINGLE_INCLUDES to CPPFLAGS. * app/display/gimpcanvas.h * app/display/gimpscalecombobox.h * app/display/gimpstatusbar.h * app/widgets/*.h * libgimp/gimpprogressbar.h * libgimp/gimpselectbutton.h * libgimpwidgets/*.h * libgimpwidgets/gimpstock.c * plug-ins/uri/gimpmountoperation.h: remove inclusion of parent classes and single files from gtk+. * app/widgets/gtkwrapbox.h * libgimp/gimpbrushmenu.c * libgimp/gimpfontmenu.c * libgimp/gimpgradientmenu.c * libgimp/gimppalettemenu.c * libgimp/gimppatternmenu.c * libgimp/gimpselectbutton.c: #include * plug-ins/common/poppler.c: undef GTK_DISABLE_SINGLE_INCLUDES when including . 2008-05-23 Sven Neumann * app/tools/gimpimagemaptool-settings.c: string change. 2008-05-23 Sven Neumann * app/core/gimpchannel-select.c * app/core/gimpdrawable-bucket-fill.c * app/core/gimpdrawable-transform.c * app/core/gimpimage-crop.c * app/dialogs/image-scale-dialog.c * app/tools/gimpbycolorselecttool.c * app/tools/gimpfliptool.c * app/tools/gimpforegroundselecttool.c * app/tools/gimpfreeselecttool.c * app/tools/gimpfuzzyselecttool.c * app/tools/gimpmovetool.c * app/tools/gimpperspectivetool.c * app/tools/gimppolygonselecttool.c * app/tools/gimprotatetool.c * app/tools/gimpscaletool.c * app/tools/gimpsheartool.c * libgimpwidgets/gimpcolorprofilestore.c * plug-ins/gfig/gfig-dialog.c: use C_() instead of Q_() for translations with context. 2008-05-23 Sven Neumann * autogen.sh (GLIB_REQUIRED_VERSION): require glib-gettextize 2.16. * libgimp/libgimp-intl.h * plug-ins/pygimp/pygimp-intl.h: synced with gi18n-lib.h from glib 2.16. This adds support for the C_() macro. * plug-ins/script-fu/script-fu-intl.h: just include gi18n.h instead of duplicating things from this header. 2008-05-23 Michael Natterer * app/tools/gimppaintoptions-gui.c: left-align the labels in the new dynamics matrix. Add some code for RTL layout that doesn't work properly yet. 2008-05-22 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c: Added extra check to stop "(let x 5)" syntax from causing a segfault in Linux. See bug #508020. Removed some excess whitespace. 2008-05-22 Michael Natterer * app/paint/gimpbrushcore.c (gimp_brush_core_interpolate): move generating the random axis to the right place. 2008-05-22 Michael Natterer * app/paint/gimppaintoptions.[ch]: replace the pressure-expanded, velocity-expanded and random-expanded properties by a single dynamics-expanded property. * app/tools/gimppaintoptions-gui.c: pack the toggle matrix into an expander, some cleanup. 2008-05-22 Michael Natterer * app/tools/gimppaintoptions-gui.c: revert accidential change of all occurences of "hardness" to "pressure" in strings and function names. 2008-05-22 Michael Natterer * app/tools/gimppaintoptions-gui.c: factor out a utility function that creates a dynamics check button. 2008-05-22 Michael Natterer * app/tools/gimppaintoptions-gui.c: first version of a matrix of toggles for the dynamics parameters instead of three expanders. 2008-05-22 Martin Nordholts * app/tools/gimpfreeselecttool.c: Base a start of a new segment on the pending point, and enable 15 degree constraints on the pending point when Ctrl is being held down. 2008-05-22 Martin Nordholts * app/core/gimpcurve-load.c (gimp_curve_load) * app/paint/gimppaintbrush.c (_gimp_paintbrush_motion): Remove unused variables. 2008-05-22 Martin Nordholts * app/tools/gimpfreeselecttool.[ch] * app/tools/gimpforegroundselecttool.c: Fix that some gimp_free_select_tool_-functions had the wrong name. 2008-05-22 Michael Natterer Applied slightly modified and fixed patch from Alexia Death which adds a "random" axis to the paint dynamics and fixes some issues in the previous paint dynamics commits. Fixes bug #529431. * app/core/core-types.h: add a "random" axis to GimpCoords. * app/display/gimpdisplayshell-coords.c: set it to a random value. * app/display/gimpdisplayshell-callbacks.c: on button_press, use the dynamics from the last motion event to avoid blotches at the beginning of paint strokes. * app/paint/gimppaintoptions.[ch]: add random properties the same way we do pressure and velocity. Add get_dynamic_size(), get_dynamic_color() and get_dynamic_hardness() functions which look at all dynamic parameters of the passed coords. * app/tools/gimppaintoptions-gui.c: add gui for the random options. * app/paint/gimpbrushcore.[ch]: remove calc_brush_scale() and use gimp_paint_options_get_dynamic_size_instead(). Add "dynamic_hardness" parameters to paste_canvas(), replace_canvas() and get_brush_mask(). * app/paint/gimpairbrushoptions.c * app/paint/gimpclone.c * app/paint/gimpconvolve.c * app/paint/gimpdodgeburn.c * app/paint/gimperaser.c * app/paint/gimpheal.c * app/paint/gimppaintbrush.c * app/paint/gimpsmudge.c: calculate the dynamic hardness and pass it to above brush core functions. Use the get_dynamic_color() to calculate the gradient color. 2008-05-22 Sven Neumann * app/tools/gimpposterizetool.c (gimp_posterize_tool_dialog): use a logarithmic slider. 2008-05-22 Martin Nordholts * app/tools/gimpfreeselecttool.c: Remember the selection operation in use when the tool was started, and use that when doing the selection. Improvements are still to be made with regards to synchronizing the tool options with the selection operation actually used. 2008-05-22 Michael Natterer * app/tools/gimpimagemaptool.c: check if the tool class has the "settings_name" string set to decide whether to add the settings GUI. * app/tools/gimpdesaturatetool.c * app/tools/gimpposterizetool.c: don't set any settings strings. Presets make no sense for tools with just one parameter. 2008-05-22 Sven Neumann * app/core/gimpdrawable-operation.[ch] (gimp_drawable_apply_operation): changed order of parameters to be consistent with gimp_drawable_process(). * app/core/gimpdrawable-process.[ch]: introduced a variant of gimp_drawable_process() for processing a GimpLut with gimp_lut_process(). * app/core/gimpdrawable-brightness-contrast.c * app/core/gimpdrawable-color-balance.c * app/core/gimpdrawable-colorize.c * app/core/gimpdrawable-curves.c * app/core/gimpdrawable-desaturate.c * app/core/gimpdrawable-equalize.c * app/core/gimpdrawable-hue-saturation.c * app/core/gimpdrawable-invert.c * app/core/gimpdrawable-levels.c * app/core/gimpdrawable-posterize.c * app/core/gimpdrawable-threshold.c: changed accordingly. 2008-05-22 Michael Natterer * app/tools/gimpimagemaptool.[ch]: s/save/export/g, s/load/import/g, removed button tooltip members. * app/tools/gimpimagemaptool-settings.[ch] * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimpcurvestool.c * app/tools/gimpdesaturatetool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c: changed accordingly. * app/tools/gimpimagemaptool-settings.c: clean up menu item creation. 2008-05-22 Michael Natterer * app/tools/gimpfreeselecttool.c: delete trailing whitespace. 2008-05-22 Sven Neumann * app/tools/gimp-tools.c (gimp_tools_init): added a call to gimp_tool_options_create_folder(). * app/core/gimp-user-install.c (gimp_user_install_items): no need to create the tool-options folder here if we are doing that on each startup. 2008-05-22 Sven Neumann * app/tools/gimpcurvestool.c (gimp_curves_tool_dialog): use a combo-box for the curve type. 2008-05-22 Sven Neumann * core/gimpdrawable-brightness-contrast.c * core/gimpdrawable-color-balance.c * core/gimpdrawable-colorize.c * core/gimpdrawable-equalize.c * core/gimpdrawable-hue-saturation.c * core/gimpdrawable-posterize.c * core/gimpdrawable-threshold.c: ported to gimp_drawable_process(). 2008-05-22 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_cursor_update): Don't return in the middle of the function. 2008-05-21 Martin Nordholts * app/tools/gimpforegroundselecttool.c (gimp_foreground_select_tool_oper_update): "Draw a rough circle around the object to extract" -> "Rougly outline the object to extract". 2008-05-21 Martin Nordholts * app/tools/gimpfreeselecttool.[ch]: Don't expose implementation details. * app/tools/gimpforegroundselecttool.c (gimp_foreground_select_tool_select): Use new gimp_free_select_get_points() functions since we don't know anything about how the Free Select Tool is implemented any longer. 2008-05-21 Michael Natterer * app/tools/gimpimagemaptool.[ch] * app/tools/gimpimagemaptool-settings.c: turn the ugly row of favorites options buttons into a menu that's attached to an arrow button right of the favorites combo. 2008-05-21 Michael Natterer * app/tools/gimpcurvestool.c: remove unused variable. 2008-05-21 Martin Nordholts * app/core/gimpscanconvert.c (gimp_scan_convert_add_polyline): constify the points argument. 2008-05-21 Michael Natterer * app/base/pixel-processor.h: remove PixelProcessorFunc typedef. * app/base/base-types.h: add it here. * app/config/gimpbaseconfig.c: #include "base/base-types.h" * app/core/gimpdrawable-curves.c * app/core/gimpdrawable-desaturate.c * app/core/gimpdrawable-invert.c: remove pixel processor include. * app/core/gimpdrawable-levels.c: port to gimp_drawable_process(). 2008-05-21 Michael Natterer * app/core/gimpdrawable-process.c (gimp_drawable_process): add missing include and missing call to gimp_drawable_mask_intersect(). 2008-05-21 Michael Natterer * app/gegl/gimpdesaturateconfig.c: use a stock_id that exists. 2008-05-21 Martin Nordholts Made the Foreground Select Tool work again. * app/tools/gimpforegroundselecttool.c (gimp_foreground_select_tool_control): Set tool->display = NULL when halting the tool. (gimp_foreground_select_tool_button_press): Only activate the tool control if it is not active (it might be actived already by the Free Select Tool). * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_commit): Don't _halt explicitly here. If a tool implementation wants to halt in this situation, let them do that in their GimpFreeSelectTool::select() instead. 2008-05-21 Sven Neumann * app/core/Makefile.am * app/core/gimpdrawable-process.[ch]: new file holding code to apply a PixelProcessor to the full drawable. * app/core/gimpdrawable-desaturate.c * app/core/gimpdrawable-invert.c: use the new helper function. * app/core/gimpdrawable-desaturate.[ch] (gimp_drawable_desaturate): take a GimpProgress parameter. * tools/pdbgen/pdb/color.pdb: changed accordingly. * app/pdb/color-cmds.c: regenerated. 2008-05-21 Martin Nordholts * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_status_update): Slightly improve one of the status bar messages. 2008-05-21 Sven Neumann * menus/image-menu.xml.in: moved "tools-desaturate" to the other color tools. Added it to the "tools-color-menu". 2008-05-21 Sven Neumann * app/base/desaturate.[ch]: changed to take a pointer as first argument like all PixelProcessor functions. * app/core/gimpdrawable-desaturate.c: changed accordingly. * app/tools/gimpdesaturatetool.[ch]: added legacy code path. 2008-05-21 Sven Neumann * app/base/Makefile.am * app/base/desaturate.[ch]: moved legacy desaturate code here. * app/core/gimpdrawable-desaturate.c: use the code in app/base. 2008-05-21 Michael Natterer * app/gegl/gimpoperationdesaturate.c (gimp_operation_desaturate_process): bail out if there is no config object. 2008-05-21 Sven Neumann Add Desaturate as an image-map tool with live preview (bug #533808): * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpdesaturateconfig.[ch]: added config object for the desaturate point filter. * app/gegl/gimpoperationdesaturate.[ch]: derive from GimpOperationPointFilter. Unrolled the inner loop. * app/core/gimpdrawable-desaturate.c: changed accordingly. * app/tools/Makefile.am * app/tools/gimpdesaturatetool.[ch]: added desaturate as an imagemap tool. So far only the GEGL code path is implemented. * app/tools/gimp-tools.c: register the new tool. * app/dialogs/dialogs.c: register the new tool dialog. * app/dialogs/Makefile.am * app/dialogs/desaturate-dialog.[ch]: removed the desaturate dialog. * app/actions/drawable-actions.c * app/actions/drawable-commands.[ch]: removed action "drawable-desaturate". * app/widgets/gimphelp-ids.h: changed help IDs accordingly. * menus/image-menu.xml.in: replaced "drawable-desaturate" with "tools-desaturate". * libgimpwidgets/gimpstock.h: added a define for GIMP_STOCK_TOOL_DESATURATE. 2008-05-21 Sven Neumann * plug-ins/jpeg/jpeg-save.c (save_dialog): changed badly chosen mnemonic, resolved a conflicting mnemonic and added some more. 2008-05-20 Michael Natterer * app/core/Makefile.am * app/core/core-types.h * app/core/gimpimagemapconfig.[ch]: new GimpViewable subclass which has a "time" property. Sets the object's name to a date string if a time != 0 gets set. Has a compare function which first sorts the objects with a timestamp in MRU order and then the objects without timestamp by name. * app/gegl/gimpbrightnesscontrastconfig.[ch] * app/gegl/gimpcolorbalanceconfig.[ch] * app/gegl/gimpcolorizeconfig.[ch] * app/gegl/gimpcurvesconfig.[ch] * app/gegl/gimphuesaturationconfig.[ch] * app/gegl/gimplevelsconfig.[ch] * app/gegl/gimpposterizeconfig.[ch] * app/gegl/gimpthresholdconfig.[ch]: derive from GimpImageMapConfig. * app/tools/gimpimagemaptool.c: sort the settings container with above compare function. * app/tools/gimpimagemaptool-settings.c: add utility functions for loading and saving the settings container. In the settings combo, add a separator between MRU items and favorites. * app/Makefile.am: make the thing link. 2008-05-20 Michael Natterer * app/core/gimplist.c (gimp_list_uniquefy_name): don't crash if an object has a NULL name. Move variables to local scopes. Remove redundant casts. 2008-05-20 Martin Nordholts * app/tools/gimpfreeselecttool.c: Increase handle size to 12 pixels (the same size as for the Paths Tool). 2008-05-20 Martin Nordholts Added statusbar help-messages for the Free Select Tool. * app/tools/gimpfreeselecttool.c (gimp_free_select_tool_oper_update): Don't bail out if tool->display is NULL, instead modify the underlying logic to deal with this. 2008-05-20 Michael Natterer * app/tools/gimpimagemaptool.c: remove gimp_image_map_tool_add_recent()... * app/tools/gimpimagemaptool-settings.[ch]: ...and add it here. 2008-05-20 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_add_recent): unref the new settings object after adding it to the recent container. * app/tools/gimpimagemaptool-settings.c: add a "Save to Favorites" button which pops a string entry dialog and saves the current settings to the recent container. 2008-05-20 Michael Natterer * app/tools/Makefile.am * app/tools/gimpimagemaptool-settings.[ch]: new files containing all the recent settings and settings load/save GUI and code. Got rid of shortcut loading/saving using shift+click. Added default implementations of ::settings_load() and ::settings_save(). The GUI is currently horrible, work in progress! * app/tools/gimpimagemaptool.c: removed the settings code here. * app/tools/gimpcurvestool.c * app/tools/gimplevelstool.c: don't pack the load and save buttons, this is done generically for all tools now. * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimphuesaturationtool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c: set the load/save related members of GimpImageMapToolClass. 2008-05-20 Sven Neumann * app/widgets/Makefile.am * app/widgets/gimptoggleaction.[ch] * app/widgets/gimpradioaction.[ch]: added new action types derived from GtkToggleAction and GtkRadioAction. These types override the "connect_proxy" method to enable tooltips in menus. * app/widgets/gimpactiongroup.c: use the new action types. * app/actions/dockable-actions.c: added a tooltip for the "dockable-lock-tab" action. 2008-05-20 Sven Neumann * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimplevelstool.c: fixed grammar. 2008-05-19 Sven Neumann * app/widgets/gimpdockable.[ch] * app/widgets/gimpdockbook.[ch]: added a "locked" propery to GimpDockable. A locked dockable cannot be moved by drag-n-drop. Allows users to protect their dockables from accidental changes, mainly when working with a tablet. * app/widgets/gimpsessioninfo-dockable.[ch]: store the "locked" property in the session info. * app/actions/dockable-actions.c * app/actions/dockable-commands.[ch]: added an action for toggling the "locked" state. * app/widgets/gimphelp-ids.h: new help-id "gimp-dock-tab-lock". * menus/dockable-menu.xml.in: show the new menu item. * app/actions/plug-in-actions.c: formatting. 2008-05-19 Michael Natterer Unabstract image map tool settings load/save a bit before it's turned into generic load/save for all image map tools: * app/gegl/gimpcurvesconfig.[ch] * app/gegl/gimplevelsconfig.[ch]: add GError** to save_cruft() functions. * app/tools/gimpimagemaptool.[ch]: add GError to ::settings_save(), changed "file" parameter of ::settings_load() and ::settings_save() to "filename", removed gimp_image_map_tool_load_save() utility function and moved the code to the settings_load() and settings_save() utility functions. * app/tools/gimpcurvestool.c * app/tools/gimplevelstool.c: changed accordingly. Open and close the settings files here. 2008-05-19 Sven Neumann * plug-ins/common/psd-save.c (save_layer_and_mask): corrected "layer mask disabled" flag in layer mask data section (bug #526811). 2008-05-19 Sven Neumann * app/paint/gimpperspectiveclone.c: removed unused import. 2008-05-19 Sven Neumann * tools/pdbgen/pdb/layer.pdb: corrected description of gimp-layer-set-show-mask procedure. * app/pdb/layer-cmds.c * libgimp/gimplayer_pdb.c: regenerated. 2008-05-19 Michael Natterer * app/core/gimpcurve.c (gimp_curve_set_n_points) (gimp_curve_set_n_samples): set "identity" to TRUE if appropriate. (gimp_curve_calculate): don't set it to TRUE when there are no control points. 2008-05-19 Sven Neumann * app/core/gimpcurve-map.c (gimp_curve_map_pixels): fixed the call to memcpy() in the CURVE_NONE case. 2008-05-18 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c: Reverting previous change. I figured it would break something. It breaks the 'while' macro by preventing use of a named let. 2008-05-18 Michael Natterer * app/core/gimpcurve.c: implement (de)serializing of the points and samples arrays using GValueArray. Set "identity" to FALSE after deserializing. 2008-05-18 Michael Natterer * libgimpconfig/gimpconfig-serialize.[ch] * libgimpconfig/gimpconfig.def: add gimp_config_serialize_property_by_name(). * app/gegl/gimpcolorbalanceconfig.c * app/gegl/gimpcurvesconfig.c * app/gegl/gimphuesaturationconfig.c * app/gegl/gimplevelsconfig.c: implement serialize() and deserialize() and make sure the properties which change when the channel/range property changes are handled correctly. Not too ugly but it's still a hack... 2008-05-18 Michael Natterer * app/tools/gimpimagemaptool.c: made the lists of recent settings persistent. Note that the settings of tools that modify multiple channels or ranges are saved incompletely because their settings still lack custom serialize() implementations. Work in progress. 2008-05-18 Michael Natterer * app/core/gimptoolinfo.[ch]: add gimp_tool_info_build_options_filename() which creates a filename under $GIMPDIR/tool-options/ with an optional suffix. * app/core/gimptooloptions.c * app/core/gimptoolpresets.c: use it and remove own build_filename() functions. 2008-05-18 Michael Natterer * app/core/gimpstrokeoptions.[ch]: renamed public function set_dash_pattern() to take_dash_pattern() to clarify memory management of the passed GArray. * app/widgets/gimpdasheditor.c * app/widgets/gimpstrokeeditor.c: changed accordingly. 2008-05-18 Michael Natterer * app/core/gimpcurve.c: implement the GimpConfig interface and add the code for equal(), reset() and copy() from GimpCurvesConfig. * app/gegl/gimpcurvesconfig.c: remove the copied code and use GimpConfig methods to compare, reset and copy curve objects. 2008-05-18 Michael Natterer * app/paint/gimpbrushcore.c: clean up last patch. 2008-05-18 Martin Nordholts * plug-ins/script-fu/tinyscheme/scheme.c: Commited patch from gymp that removes bogus FIXME (bug #533647). 2008-05-18 Martin Nordholts Applied patch from Alexia Death that makes velocity dynamics controlled scale properly recalculate the brush mask when necessary (bug #533618). * app/paint/gimpbrushcore.[ch] (gimp_brush_core_scale_mask): A change in scale requires a recalculation of the cached brush mask. 2008-05-18 Martin Nordholts Merged the Polygon Select Tool capabilities with the Free Select Tool. Among the things still to do is improved help texts, more suitable graphics, and cursor mangement, but the core functionality is in place. Thanks to Alexia Death for initial testing. It will also be neccesary to do some work to adapt the Foreground Select Tool to the new Free Select Tool implementation. Quick instructions on how the tool works: o A click adds a polygonal segment, a drag adds a free-hand segment o Return-key commits, Escape-key cancels, Backspace-key removes last segment o You can grab and move segment vertices o You can cancel both a move, and the creation of a segment * app/tools/gimpfreeselecttool.[ch]: More or less reimplemented. We keep a sequential array of all the points in the polygon (including the free segments), and we have another array with point indices that we use to represent the segments. On top of this we have a few helper functions that tries to abstract away the pretty raw nature of the implementation. * app/tools/gimpforegroundselecttool.[ch]: Keep track on its own last_coord, and adjust to the new implementation of the Free Select Tool. Still needs some work, for example handling that the Free Select Tool now resets GimpTool::display. (gimp_foreground_select_tool_key_press): Pass on key event to parent class when appropriate. (Bails out too early though...) 2008-05-18 Michael Natterer * app/gegl/gimpcurvesconfig.c (gimp_curves_config_set_property): also copy curve->identity. 2008-05-17 Sven Neumann * app/core/gimpimagemap.c: fixed issues with the profiling code. 2008-05-17 Michael Natterer * app/tools/gimpimagemaptool.[ch]: add gimp_image_map_tool_edit_as(). * app/tools/gimplevelstool.c (levels_to_curves_callback): use it. * app/gegl/gimpbrightnesscontrastconfig.[ch]: add gimp_brightness_contrast_config_to_levels_config(). * app/tools/gimpbrightnesscontrasttool.c: implement "Edit as Levels". 2008-05-17 Øyvind Kolås * app/core/gimpdrawable-operation.c: * app/core/gimpimagemap.c: Make the created GEGL graphs have the "dont-cache" property set to avoid unneeded caches. 2008-05-17 Michael Natterer * app/widgets/gimpwidgets-constructors.[ch]: add new function gimp_stock_button_new() which creates a button with icon and label which is *not* the stock_id's label. * app/dialogs/preferences-dialog.c (prefs_button_add) * app/tools/gimplevelstool.c (gimp_levels_tool_dialog): use it. 2008-05-17 Michael Natterer * app/widgets/gimphelp-ids.h: add help IDs for the stuff in the Windows menu. * app/actions/windows-actions.c: use them. 2008-05-17 Michael Natterer * app/dialogs/file-save-dialog.c (file_save_dialog_response): fix crash (don't dereference dialog after it has been destroyed). Also put back code that sets the dialog back to sensitive if it still exists. 2008-05-17 Michael Natterer * app/core/gimpimagefile.c * app/tools/gimpaligntool.c * app/tools/gimpselectiontool.c * app/tools/gimpvectortool.c * plug-ins/color-rotate/color-rotate-dialog.c * plug-ins/common/noise-rgb.c * plug-ins/common/value-propagate.c * plug-ins/gfig/gfig-dialog.c * plug-ins/gfig/gfig.h * plug-ins/gimpressionist/general.c * plug-ins/gimpressionist/gimpressionist.h * plug-ins/gimpressionist/orientation.c * plug-ins/gimpressionist/size.c * plug-ins/gimpressionist/utils.c * plug-ins/gradient-flare/gradient-flare.c * plug-ins/ifs-compose/ifs-compose.c * plug-ins/imagemap/imap_main.c * plug-ins/imagemap/imap_preferences.c: in latest GLib _() returns "const gchar*" as it should. Add const qualifiers to local utility functions and some explicit casts to fix the warnings caused by this. 2008-05-17 Michael Natterer * app/actions/windows-actions.c: add tooltips to the menu items of open and recently closed docks. * app/widgets/gimpaction.c: connect to "notify::tooltip" and make sure gimp_help_set_help_data() gets called when the action's tooltip changes. 2008-05-17 Michael Natterer * tools/pdbgen/pdb/gradient.pdb: applied patch from Lars-Peter Clausen which adds gimp-gradient-get-number-of-segments. Fixes bug #533474. * app/pdb/gradient-cmds.c * app/pdb/internal-procs.c * libgimp/gimpgradient_pdb.[ch]: regenerated. * libgimp/gimp.def: add the new symbol. 2008-05-17 Michael Natterer * plug-ins/twain/Makefile.am: add -framework options to twain_LDFLAGS instead of AM_LDFLAGS to make whatever layer/version of autofoo happy on all macs. 2008-05-16 Sven Neumann * app/core/gimpimagemap.c: added some basic benchmarking code. Will become optional but for now it is enabled by default. 2008-05-16 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c: Added extra checks to stop bad syntax in LET from causing a segmentation fault in Linux. See bug #508020. 2008-05-16 Michael Natterer * app/Makefile.am: formatting. 2008-05-16 Sven Neumann * app/display/gimpdisplayoptions.c: disable rulers by default as suggested by Peter. Please give feedback. 2008-05-16 Sven Neumann * plug-ins/help/Makefile.am * plug-ins/help/gimphelpprogress.[ch] * plug-ins/help/gimphelpprogress-private.h: new files providing a simple framework for progress indication and cancellation. * plug-ins/help/gimphelp.[ch] * plug-ins/help/gimphelpdomain.[ch] * plug-ins/help/gimphelpitem.[ch] * plug-ins/help/gimphelplocale.[ch] * plug-ins/help/gimphelptypes.h * plug-ins/help/help.c * plug-ins/help/locales.[ch]: changed accordingly (passing NULL as progress for now). Also updated copyright headers. * plug-ins/help-browser/help-browser.c: same here. * plug-ins/help/gimp-help-lookup.c: use the new API and show some progress indication when the --verbose command-line option is used. 2008-05-16 Michael Natterer * app/dialogs/dialogs.c (dialogs_load_recent_docks): reverse the list after loading so it keeps its order. * app/menus/windows-menu.c (windows_menu_setup) (windows_menu_recent_add): keep the recent docks menu in MRU order. 2008-05-16 Michael Natterer Implement the presistent menu of recently closed docks, still somewhat hackish but fully functional. Fixes bug #132744. * app/actions/dialogs-actions.c * app/actions/dialogs-commands.[ch] * menus/image-menu.xml.in: remove the menu items that were creating the hardcoded preconfigured docks. * app/dialogs/dialogs.[ch]: add GimpContainer of recently closed docks and API to load and save it. * app/gui/session.c: call the recent dock load and save functions. * app/widgets/gimpsessioninfo.[ch]: implement the GimpConfig interface and (de)serialize via proper interface methods. * app/gui/session.c * app/widgets/gimpdialogfactory.c: use the GimpConfig API to (de)serialize session infos and added the code that was formerly in the info's (de)serialize functions but didn't belong there. * app/widgets/gimpaction.[ch]: add "max-width-chars" property and set it on proxy menu item labels. * app/actions/windows-actions.[ch] * app/actions/windows-commands.[ch] * app/menus/windows-menu.c: add actions and menu of recently closed docks and code to restore the dock when the menu items are selected. Use above new action property to ensure a minimum width of the menu. * app/widgets/gimpmenudock.c: use '-' instead of '|' for separating notebooks in the window title. Menu items don't like '|'. * app/widgets/gimpdock.c: removed the confirmation dialog when closing docks and simply add them to the recent docks container. This code is totally misplaced and will move to another file soon. 2008-05-14 Sven Neumann * app/core/gimpcurve.c (gimp_curve_plot): don't write over the end of the samples array. Someone should review this code. It looks as if the loop could be rewritten in a safer and cleaner way. 2008-05-14 Sven Neumann * plug-ins/common/blur-gauss-selective.c: formatting. 2008-05-14 Sven Neumann * app/widgets/gimpcurveview.c (gimp_curve_view_motion_notify): fixed use of uninitialized value. 2008-05-14 Sven Neumann * app/actions/windows-actions.c (windows_actions): relabeled submenu to "Recently Closed Docks". 2008-05-14 Michael Natterer * app/menus/windows-menu.c * app/actions/windows-actions.c * menus/image-menu.xml.in: move the list of dockable dialogs and the list of recent docks to submenus and keep the list of open image windows and docks at the "Windows" menu toplevel. The list of recent docks doesn't exist yet, its contents are fake. 2008-05-14 Michael Natterer * app/gegl/gimpcurvesconfig.c (gimp_curves_config_copy): also copy curve->identity. 2008-05-14 Manish Singh * plug-ins/pygimp/gimpfu.py: Add PF_OPTION. Fixes bug #523142. 2008-05-14 Sven Neumann * app/core/gimpbrushclipboard.c (gimp_brush_clipboard_buffer_changed): for an opaque buffer, initialize the brush mask with 255 instead of 0. Fixes bug #532886. 2008-05-14 Sven Neumann * plug-ins/gradient-flare/gradient-flare.c (calc_sample_one_gradient): use G_STRUCT_OFFSET() instead of a hand-made macro which caused a compiler warning (spotted by gymp, bug #532853). 2008-05-14 Michael Natterer * app/widgets/gimpsessioninfo-book.[ch]: remove widget member from struct GimpSessionInfoBook. Return the created GimpDockbook from restore(). * app/widgets/gimpsessioninfo-dock.c (restore): use the returned book instead of the struct member. 2008-05-14 Michael Natterer Made session info serialization independent from widgets so it can be used on stored dock layouts which are not open: * app/widgets/gimpsessioninfo-book.[ch] * app/widgets/gimpsessioninfo-dock.[ch] * app/widgets/gimpsessioninfo-dockable.[ch]: add from_widget() functions which return newly allocated session info structs. Changed serialize() functions to take these structs instead of widgets. Changed deserialize() functions to return the structs instead of appending them to lists in their parent structs. Don't free anything in restore(). * app/widgets/gimpsessioninfo-aux.[ch] (gimp_session_info_aux_serialize): take a GList of aux_info instead of a widget. * app/widgets/gimpsessioninfo.[ch]: add new functions get_info() which collects above session info details from dialogs and clear_info() which clears that info. Call clear_info() from finalize(). Don't free anything in restore(). * app/widgets/gimpdialogfactory.c (gimp_dialog_factories_save_foreach): collect the session info detials from the dialogs before serializing because serialize() doesn't know about the widget any longer. Clear the infos after serializing. (gimp_dialog_factories_restore_foreach): clear the session info details after creating the dialogs because restore() doesn't clear the info by itself any longer. 2008-05-13 Michael Natterer * app/widgets/gimpsessioninfo.c: turn "info != NULL" checks into "GIMP_IS_SESSION_INFO (info)". 2008-05-13 Michael Natterer * app/widgets/gimpsessioninfo.[ch]: turn into a GimpObject subclass. No logical changes yet. * app/widgets/widgets-types.h * app/widgets/gimpdialogfactory.c: changed accordingly. 2008-05-13 Michael Natterer First prototype of a button in the levels tool dialog that will jump the the curves tool with the same settings: * app/gegl/gimplevelsconfig.[ch]: add new function gimp_levels_config_to_curves_config() which converts a GimpLevelsConfig to a GimpCurvesConfig. Still lacks support for gamma. * app/tools/gimplevelstool.c: add "Edit this Settings as Curves" button and jump to curves when clicked. Still ugly. 2008-05-13 Sven Neumann * app/core/gimpcurve-map.c (gimp_curve_map_pixels): use memcpy() for the CURVE_NONE case. 2008-05-13 Sven Neumann * app/core/gimpcurve-map.[ch] (gimp_curve_map_pixels): introduced an enum to clean up the code. Optimize another not so uncommon case. 2008-05-13 Sven Neumann * app/core/gimpcurve-map.c (gimp_curve_map_pixels): create a bitmask that represents the curves that need to be applied and optimize the most common cases. 2008-05-13 Simon Budig * app/vectors/vectors-types.h: add a comment explaining the hack. 2008-05-13 Sven Neumann * app/core/gimpcurve-map.c (gimp_curve_map_value): simplified the general case. 2008-05-13 Sven Neumann * app/core/gimpcurve.[ch]: keep a boolean flag to identify an identity mapping. Set it to TRUE when the curve is reset. * app/core/gimpcurve-map.c (gimp_curve_map_value): optimize for the case where the curve is an identity mapping. 2008-05-12 Simon Budig * app/vectors/gimpvectors.[ch] * app/vectors/gimpstroke.[ch] * app/vectors/gimpbezierstroke.c: Implement functionality to get a bezier description a la moveto/curveto/closepath. * app/vectors/vectors-types.h: implement an evil hack to avoid the inclusion of cairo.h in most C files... * app/vectors/Makefile.am: link against cairo * app/widgets/gimpviewrenderervectors.c: use the new functionality for preview rendering. 2008-05-11 Sven Neumann * app/core/Makefile.am * app/core/gimpcurve.[ch]: * app/core/gimpcurve-map.[ch]: split curve map functions into seperate files. * app/gegl/gimpoperationcurves.c * app/tools/gimpcurvestool.c * app/widgets/gimpcurveview.c: changed accordingly. * app/Makefile.am (AM_LDFLAGS): make it link. 2008-05-11 Sven Neumann * app/core/gimpcurve.[ch]: renamed gimp_curve_map() to gimp_curve_map_value(). Added new function gimp_curve_map_pixels() which will allow for better optimization. * app/gegl/gimpoperationcurves.c (gimp_operation_curves_process): use gimp_curve_map_pixels(). * app/tools/gimpcurvestool.c * app/widgets/gimpcurveview.c: follow API change. 2008-05-11 Martin Nordholts * app/tools/gimpcroptool.[ch]: No need to expose definitions of GimpCropTool or GimpCropToolClass. 2008-05-11 Martin Nordholts * app/tools/gimprectangletool.c: Fix emission of rectangle-change-complete signals. * app/tools/gimpcroptool.c * app/tools/gimprectangleselecttool.c: Use the rectangle-change-complete signal to update the default aspect ratio. Fixes bug #530519. * app/tools/gimpcroptool.c (gimp_crop_tool_button_release) (gimp_crop_tool_options_notify) * app/tools/gimprectangleselecttool.c (gimp_rectangle_select_tool_button_release): No need to explicitly update option defaults since it is handled through the rectangle-change-complete signal now. 2008-05-11 Sven Neumann * app/core/gimpcurve.[ch] (gimp_curve_map): minor cleanup. 2008-05-11 Sven Neumann * plug-ins/common/web-browser.c (browser_open_url): improved error messages as suggested in bug #522483. 2008-05-11 Sven Neumann * app/gegl/gimpoperationlevels.c (gimp_operation_levels_map): optimized for the case where gamma is 1.0. 2008-05-11 Michael Natterer * app/widgets/gimpaction.[ch]: add an "ellipsize" property that is applied to all proxy menu items' labels. * app/actions/windows-actions.c: set the dock actions to PANGO_ELLIPSIZE_END because their labels can be insanely long. 2008-05-11 Michael Natterer * app/widgets/gimpaction.c (gimp_action_set_proxy): small cleanup. 2008-05-11 Michael Natterer * app/actions/windows-commands.[ch] * app/actions/windows-actions.c * app/menus/windows-menu.c: add dynamic actions and menu items for all open docks. Present the dock when the menu item is selected. 2008-05-10 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_button_press): Active the tool control earlier. (gimp_rectangle_tool_synthesize_motion): Bail out if the tool control is active, we don't want to synthesize a motion in this case as it emits unwanted rectangle-changed signals. 2008-05-10 Michael Natterer * app/widgets/gimpdialogfactory.[ch]: add signals "dock-added" and "dock-removed". (gimp_dialog_factory_add_dialog) (gimp_dialog_factory_remove_dialog): emit them when docks get added and removed. 2008-05-10 Michael Natterer * app/actions/windows-actions.c: renamed the "Create New Dock" submenu to simply "Docks". Its contents are about ti change soon. * menus/image-menu.xml.in: changed accordingly. Added a "Docks" placeholder inside and add the "show toolbox" menu item there. 2008-05-10 Michael Natterer * app/core/gimplist.[ch]: add boolean "append" property which makes gimp_container_add() append to the list instead of the default prepend. * app/core/gimp.c: create the display list with append = TRUE so the images menu is in a proper order. 2008-05-10 Michael Natterer * app/actions/windows-actions.c: don't hide the empty images menu, use gimp_image_get_uri() instead of the object's name. 2008-05-10 Michael Natterer * app/widgets/gimpactiongroup.h: fix parameter name. 2008-05-10 DindinX * plug-ins/flame/cmap.c * plug-ins/flame/libifs.c * plug-ins/flame/rect.[ch]: cleaning (mostly code reformating and converting K&R style function declarations to ansi). * plug-ins/common/pcx.c: reformated as well. 2008-05-10 Michael Natterer Start changing the "Dialogs" menu to "Windows", still incomplete. Addresses bug #309707. * app/actions/Makefile.am * app/actions/windows-actions.[ch] * app/actions/windows-commands.[ch]: new files which currently hold the "show toolbox" action and callback and new code which maintains automatically generated actions for accessing (raising) all open images. * app/actions/actions.c: register the new "windows" action group. * app/actions/dialogs-actions.c * app/actions/dialogs-commands.[ch]: remove "show toolbox" action and callback and also the action for the "Disalogs" menu. * app/menus/Makefile.am * app/menus/windows-menu.[ch]: new files which create and destroy the menu items for the image window actions. * app/menus/menus.c: register the "windows" action group with all UI managers that have the "dialogs" action group. * app/menus/image-menu.c (image_menu_setup): call windows_menu_setup(). * app/gui/gui.c: s/dialogs_show_toolbox/windows_show_toolbox/g * menus/image-menu.xml.in: some minor s/dialogs/windows/ and add the "Images" submenu. 2008-05-10 Michael Natterer * app/display/gimpdisplay.c (gimp_display_set_image): emit notify::image. 2008-05-10 Martin Nordholts * app/tools/gimprectangleselecttool.c (gimp_rectangle_select_tool_cancel): Don't forget updating the default aspect ratio when cancelling a rectangle select. 2008-05-10 Sven Neumann * app/tools/gimptexttool.c (gimp_text_tool_confirm_response): rerender the text layer as suggested in bug #532078. (gimp_text_tool_confirm_dialog): minor dialog improvements. 2008-05-10 Sven Neumann * plug-ins/flame/libifs.c: removed trailing whitespace. 2008-05-10 Sven Neumann * app/core/gimpbrush-scale.c: formatting. 2008-05-10 Sven Neumann * app/widgets/gimpviewrenderer.c (gimp_view_renderer_real_draw): reset the translation on the cairo context. Resurrects brush emblems which were drawn in the wrong position. * app/widgets/gimpviewrendererbrush.c (gimp_view_renderer_brush_draw): formatting. 2008-05-10 Michael Natterer * plug-ins/common/gtm.c: renamed... * plug-ins/common/html-table.c: ...to this and cleaned it up. * plugin-defs.pl: changed accordingly. * Makefile.am: regenerated. 2008-05-10 Manish Singh * plug-ins/common/poppler.c: Support poppler 0.8.x. 2008-05-10 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_button_release): Don't forget updating the integer representation when reverting the rectangle after cancelling a rubber-banding. 2008-05-10 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_button_release): Update the tool options after a release; the rectangle might change if a rubber-banding is cancelled. 2008-05-10 Sven Neumann * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_events) (gimp_display_shell_canvas_tool_events): don't reserve Delete for use by tools. Fixes bug #532116. * app/tools/gimpimagemaptool.c * app/tools/gimptransformtool.c: don't use Delete (you can still use the Backspace key to achieve the same). 2008-05-10 Manish Singh * plug-ins/imagemap/Makefile.am: tweak the rules for rebuilding the parser files from lex/yacc source so that they are explicit instead of potentially being run implicitly because the file dates are off. 2008-05-10 Michael Natterer * app/gimp-log.[ch]: add SHADOW_TILES log domain. * app/plug-in/gimpplugin-cleanup.c (gimp_plug_in_cleanup_item): turn commented-out g_printerr() into a GIMP_LOG() 2008-05-10 Michael Natterer Applied modified patch from Alexia Death which adds velocity support to paint tools in the spirit of the pressure support we already have. Fixes bug #529431. * app/display/gimpdisplayshell-coords.c (gimp_display_shell_eval_event): tweak velocity calculation to work in screen coordinates. * app/paint/gimppaintoptions.[ch]: add velocity options in the same way as there are pressure options. Add utility functions which return dynamic opatity and dynamic rate according to the option's settings and some GimpCoords' pressure and velocity. * app/tools/gimppaintoptions-gui.c: add GUI for the velocity options. * app/paint/gimpbrushcore.h: remove PRESSURE_SCALE define, it's now in gimppaintoptions.h. * app/paint/gimpbrushcore.c (gimp_brush_core_interpolate): inerpolate velocity too. (gimp_brush_core_calc_brush_scale): take velocity into account. (gimp_brush_core_get_brush_mask): always pressurize the mask in the GIMP_BRUSH_PRESSURE because there always is velocity (unlike pressure which is only there on tablets). * app/paint/gimpairbrush.c * app/paint/gimpclone.c * app/paint/gimpconvolve.c * app/paint/gimpdodgeburn.c * app/paint/gimperaser.c * app/paint/gimpheal.c * app/paint/gimppaintbrush.c * app/paint/gimpsmudge.c: get opacity and rate from the new paint options utility functions which take both pressure and velocity into account. * app/paint/gimppaintbrush.c: take velocity into account when calculating the gradient color offset. * app/paint/gimpairbrush.c: do some additional fiddling with velocity in the asynchronous airbrush timeout. * app/paint/gimpairbrushoptions.c: override the velocity-size property and have it default to FALSE. 2008-05-10 Martin Nordholts * app/tools/gimpcroptool.c: Add a GimpRectangleTool::cancel() implementation that updates default aspect ratio when cancelling a crop. 2008-05-09 Martin Nordholts * app/tools/gimpcroptool.[ch]: Keep track of the current image and manage a subscription to "size-changed" so that default aspect ratio is properly updated. (Bug #532057.) (gimp_crop_tool_execute): No need to explicitly call gimp_crop_tool_update_option_defaults() any longer. 2008-05-09 Simon Budig * app/core/gimpscanconvert.[ch]: expose the internal most flexible rendering function. Make use of the miter limit again. 2008-05-09 Sven Neumann * configure.in: lowered minimum required cairo version to 1.4.10. 2008-05-09 Simon Budig * app/core/gimpscanconvert.[ch]: kind of resurrect the blending modes, although now implemented as compositing on top of the existing content of a mask. * app/tools/gimpforegroundselecttool.c: changed accordingly 2008-05-09 Simon Budig * app/core/gimpscanconvert.c: resurrect dashed strokes. 2008-05-09 Sven Neumann * configure.in: check for a minimum required cairo version (1.4.14). * app/core/gimpscanconvert.c: copied some code from cairo until we depend on cairo 1.6. 2008-05-09 Sven Neumann * HACKING * INSTALL: removed mentions of libart, added a link for cairo. 2008-05-09 Simon Budig * app/core/gimpscanconvert.[ch]: removed Libart usage, replaced with Cairo. Dashed strokes do not yet work again, will happen tomorrow. Also the blending modes need a second look at. Also removed deprecated API which made it unnecessarily complicated. * app/tools/gimpiscissorstool.c: use the current API. * app/core/Makefile.am * app/Makefile.am * configure.in: removed libart dependency, added cairo dependency where necessary. 2008-05-08 Michael Natterer * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_events): don't call gtk_widget_grab_focus() here. (gimp_display_shell_canvas_tool_events): call it here instead and add comments about how BUTTON_PRESS and FOCUS_IN interact. Return TRUE from BUTTON_PRESS, BUTTON_RELEASE and MOTION_NOTIFY. 2008-05-08 Sven Neumann * themes/Default/gtkrc * themes/Small/gtkrc: further shrink the status-bar widgets. 2008-05-08 Sven Neumann * app/display/gimpscalecombobox.c (gimp_scale_combo_box_init): removed the entry's inner border to save some precious space in the status-bar. 2008-05-08 Sven Neumann * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_events): move the focus to the canvas on button-press events. * app/widgets/gimpwindow.c (gimp_window_key_press_event): removed use of G_UNLIKELY() that was somewhat bogus here. 2008-05-08 Sven Neumann * app/widgets/gimpfiledialog.[ch]: added infrastructure to access and set some state information of the GtkFileChooser. * app/dialogs/file-open-dialog.c * app/dialogs/file-save-dialog.c: don't keep the file-chooser dialogs around. Instead keep the state attached to the Gimp object (one state for load, one for save dialogs). Closes bug #528811. 2008-05-08 Sven Neumann * app/widgets/widgets-types.h * app/widgets/gimpfiledialog.c: formatting. 2008-05-07 Martin Nordholts * app/tools/gimpcroptool.c (gimp_crop_tool_image_changed): Make it feel like a class member function by G_CONNECT_SWAPPED-izing it. 2008-05-07 Sven Neumann * app/plug-in/gimpplugin-cleanup.c (gimp_plug_in_cleanup_item): commented out debug message. 2008-05-07 Sven Neumann * plug-ins/common/blur-gauss-selective.c: allocate temporary memory on the stack. Minor code cleanups. 2008-05-06 Michael Natterer * app/plug-in/gimpplugin-message.c: split gimp_plug_in_handle_tile_request() into two functions: gimp_plug_in_handle_tile_put() and gimp_plug_in_handle_tile_get(). 2008-05-06 Michael Natterer * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_install): show an error message instead of crashing when a plug-in registers a prodecure with a NULL argument or return value name. Also introduce two macros which make the utf-8 validation of all strings much more readable. 2008-05-06 Sven Neumann * plug-ins/common/gbr.c: improved procedure blurb and help. * libgimpcolor/gimpcolorspace.c: inline gimp_hsl_value() and gimp_hsl_value_int(). 2008-05-06 Sven Neumann * plug-ins/script-fu/scripts/3d-outline.scm: applied patch from Ulf-D. Ehlert. Makes the vacated region, which is created when specifying a non-zero shadow offset, to be filled with the background color (white) instead of transparency (bug #530216). 2008-05-06 Sven Neumann * libgimpwidgets/gimpcolorprofilestore.c (gimp_color_profile_store_load_profile): check if the file exists before adding it to the history. Fixes bug #528958. 2008-05-05 Michael Natterer * app/actions/drawable-commands.c (drawable_levels_stretch_cmd_callback): the second parameter of gimp_drawable_levels_stretch() is now a GimpProgress. 2008-05-05 Sven Neumann * plug-ins/common/unsharp-mask.c (gen_convolve_matrix): fixed algorithm to calculate the center value. Fixes bug #530077. 2008-05-05 Sven Neumann * plug-ins/common/blinds.c (MAX_FANS): increased the maximum number of blinds to 100. 2008-05-05 Sven Neumann * app/tools/gimppainttool.c * app/display/gimpdisplayshell-coords.c: applied patch from Alexia Death which changes the maximum smoothing for paint tools to a more conservative default and adds velocity dependent smooth suppression. 2008-05-05 Sven Neumann * configure.in (ALL_LINGUAS): added Icelandic (is). 2008-05-02 Martin Nordholts * gimptexttool.[ch] * gimprectangletool.[ch] * gimprectangleselecttool.c: Renamed the "rectangle-changed" signal to "rectangle-change-complete" which is much better name since the signal is not emited when the rectangle is changed, but when the change is complete. 2008-05-02 Martin Nordholts * plug-ins/flame/libifs.c: Use g_random_int() instead of rand(). 2008-05-01 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_active_modifier_key): Minor simplification. 2008-04-30 Martin Nordholts * app/tools/gimpcroptool.c: Align static function prototpyes. 2008-04-30 Sven Neumann * app/display/gimpscalecombobox.c (gimp_scale_combo_box_entry_key_press): also handle the Tab keys and call the "activate" handler when Tab is pressed. 2008-04-30 Sven Neumann * app/display/gimpscalecombobox.c: install a "key-press-event" handler and reset the entry when the Escape key is pressed. 2008-04-29 Sven Neumann * themes/Default/gtkrc * themes/Small/gtkrc: reduce the minimum array size for GtkComboBox widgets in the image window. 2008-04-29 Sven Neumann * app/display/gimpscalecombobox.[ch]: added signal "entry-activated". * app/display/gimpstatusbar.c (gimp_statusbar_new): connect to the new signal and move the focus to the canvas. * app/display/gimpdisplayshell.c (gimp_display_shell_new): comment. 2008-04-29 Sven Neumann * app/widgets/gimpwindow.c (gimp_window_key_press_event): formatting. 2008-04-28 Sven Neumann * app/display/gimpscalecombobox.c: keep the current scale value, beep and reset the entry when the user input cannot be parsed. Also changed the input parser to interpret a single number as a percentage. 2008-04-28 Joao S. O. Bueno * app/pdb/drawable-transform-cmds.c * app/pdb/vectors-cmds.c: regenerated 2008-04-28 Sven Neumann * app/display/gimpscalecombobox.[ch]: derive from GtkComboBoxEntry. Needs some more work with respect to input validation and focus handling... 2008-04-28 Sven Neumann * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/widgets/gimpwindow.[ch]: added GimpWindow class and moved key-press-event handler from GimpDock to this class. * app/widgets/gimpdock.[ch]: * app/display/gimpdisplayshell.[ch]: derive from GimpWindow. 2008-04-28 Sven Neumann * app/base/hue-saturation.c (hue_saturation): applied patch from Michael Deal that fixes use of the overlap option (bug #527085). 2008-04-28 Sven Neumann * menus/image-menu.xml.in: removed GEGL tool from the Colors menu and also moved it out of the color tools menu. 2008-04-26 João S. O. Bueno * AUTHORS * authors.xml * tools/pdb/stddefs.pdb: Fix my name back to single name in most important files. 2008-04-26 Michael Natterer * app/tools/gimpgegltool.c: clean up last commit. 2008-04-26 Martin Nordholts * plug-ins/flame/libifs.c: Applied patch from Aurimas Juška. Use the standard rand() instead of random(). 2008-04-26 Øyvind Kolås * app/tools/gimpgegltool.c: (gimp_get_subtype_classes), (gimp_gegl_tool_compare_operation_names), (gimp_get_geglopclasses), (gimp_gegl_tool_dialog): made the GEGL tool only show ops from relevant categories, the list of relevant categories is hard coded for now. 2008-04-26 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_options_notify): No need to bail out if there is no display. 2008-04-26 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_options_notify): Some more simplifications and cleanups. 2008-04-26 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_options_notify): Simplifications and cleanups. 2008-04-26 Michael Natterer * menus/image-menu.xml.in: the gegl tool was missing from the "Tools" menu. 2008-04-26 Martin Nordholts * plug-ins/flame/flame.c * plug-ins/flame/libifs.[ch]: Applied modified patch from Luis Barrancos that adds 22 new variations to the flame plugin (bug #389004). 2008-04-25 Michael Natterer * app/paint/gimppaintoptions.c (gimp_paint_options_get_jitter): add g_return_if_fail(). * app/paint/gimpheal.c (gimp_heal_motion) * app/paint/gimpdodgeburn.c (gimp_dodge_burn_motion): free stuff right after it's not used any longer, instead of at the end of the function. * app/paint/gimppaintbrush.c (_gimp_paintbrush_motion): move a statement to improve consistency with other motion() functions. 2008-04-25 Michael Natterer * plug-ins/print/print.c (query): fix help string of the page setup procedure. 2008-04-25 Sven Neumann * app/app.c * app/gegl/gimp-gegl.c: reverted change from 2008-01-31. Use the GEGL option group again now that GEGL provides some commmand-line options. 2008-04-25 Michael Natterer * app/paint/gimppaintoptions.[ch]: reorder jitter options stuff to be consistently ordered all over the place. 2008-04-25 Michael Natterer * app/widgets/gimpdock.c * libgimpwidgets/gimpcellrenderertoggle.c: minor cosmetics. 2008-04-25 Sven Neumann * app/widgets/gimptoolbox.c: do not any longer accept middle-mouse-button paste on the toolbox buttons but use the toolbox drop area for that. 2008-04-25 Sven Neumann * app/actions/dock-actions.c (dock_actions): removed default keyboard shortcut for "dock-close". 2008-04-24 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_options_notify): Do appropriate equal and not-equal comparisons for floting point numbers. Fixes bug #527863. 2008-04-23 Sven Neumann * libgimpwidgets/gimpnumberpairentry.c (gimp_number_pair_entry_modify_font): formatting. 2008-04-22 Michael Natterer * app/actions/view-actions.c (view_actions_update): simplify call to window_actions_update() (we already have a local "shell" variable that is NULL when there is no display). 2008-04-22 Michael Natterer * app/sanity.c: add check for the GEGL version. 2008-04-22 Sven Neumann * app/display/gimpstatusbar.c (gimp_statusbar_frame_size_request): take vertical padding into account to avoid resizing the statusbar. 2008-04-21 Michael Natterer * app/plug-in/gimpplugin-cleanup.c: do the actual cleanup in utility functions and reduce gimp_plug_in_cleanup() to merely iterating the cleanup lists. 2008-04-21 Michael Natterer Move the shadow tiles from the image to the drawable. Fixes bug #100469. * app/core/Makefile.am * app/core/gimpdrawable-shadow.[ch]: new files implementing the shadow tiles. * app/core/gimpimage.[ch]: remove the shadow tile manager from the GimpImage struct. Remove gimp_image_get_shadow_tiles() and _free_shadow_tiles(). * app/core/gimpdrawable.[ch]: add the shadow tile manager here. Remove get_shadow_tiles() and merge_shadow(). Free the shadow tiles in finalize and when the drawable gets removed from the image. * app/core/gimpdrawable-brightness-contrast.c * app/core/gimpdrawable-color-balance.c * app/core/gimpdrawable-colorize.c * app/core/gimpdrawable-curves.c * app/core/gimpdrawable-desaturate.c * app/core/gimpdrawable-equalize.c * app/core/gimpdrawable-hue-saturation.c * app/core/gimpdrawable-invert.c * app/core/gimpdrawable-levels.c * app/core/gimpdrawable-operation.c * app/core/gimpdrawable-posterize.c * app/core/gimpdrawable-threshold.c * app/core/gimpimagemap.c: changed accordingly. Free the shadow tiles after using them. * app/plug-in/gimpplugin-cleanup.[ch]: add gimp_plug_in_cleanup_add_shadow() and _remove_shadow() which keep track of whether shadow tiles were created on behalf of a plug-in procedure. (gimp_plug_in_cleanup): free shadow tiles which were created but not destroyed by a plug-in procedure. * app/plug-in/gimpplugin-message.c (plug_in_handle_tile_request): call gimp_plug_in_cleanup_add_shadow() whenever a plug-in requests shadow tiles. * tools/pdbgen/pdb/drawable.pdb: use the new drawable shadow API. Add new procedure gimp-drawable-free-shadow. Call gimp_plug_in_cleaup_remove_shadow() when it gets called. * tools/pdbgen/pdb/image.pdb: deprecate gimp-image-free-shadow. Calling it has no effect any longer. * app/pdb/drawable-cmds.c * app/pdb/image-cmds.c * app/pdb/internal-procs.c * libgimp/gimpimage_pdb.[ch] * libgimp/gimpdrawable_pdb.[ch]: regenerated. 2008-04-21 Sven Neumann * plug-ins/common/psp.c: applied patch from Christoph Brill which adds enum values and typedefs used in newer versions of the PSP file format (see bug #120757). 2008-04-21 Michael Natterer * libgimpmath/gimpmd5.c (gimp_md5_get_digest): moving a cast to the right parameter fixes two warnings. 2008-04-21 Sven Neumann * plug-ins/common/curve-bend.c (run): fixed handling of "argc-lower-val-y" PDB parameter. 2008-04-20 Michael Natterer * app/core/gimpdrawable-levels.[ch]: replaced unused parameter "context" by "progress" and pass the progress on internally. Factor common code out to gimp_drawable_levels_internal(). * tools/pdbgen/pdb/color.pdb: pass progress instead of context. * app/pdb/color-cmds.c: regenerated. 2008-04-19 Sven Neumann * plug-ins/common/psp.c: untabified. 2008-04-19 Michael Natterer * app/core/gimpdata.c: prototype indentation and minor declatation and function reordering for the sake of consistency. 2008-04-18 Sven Neumann * app/tools/gimpblendtool.c (gimp_blend_tool_draw): don't draw the handles on pixel centers, we don't blend between pixel centers. 2008-04-17 Michael Natterer Add some infrastructure that will be used soon: * app/plug-in/gimppluginprocframe.[ch]: replace "cleanup" list by two lists "image_cleanups" and "item_cleanups" and call gimp_plug_in_cleanup() if any of them is non-NULL. * app/plug-in/gimpplugin-cleanup.c: add private new() and free() functions for GimpPlugInCleanupImage structs and add the same infrastructure for GimpPlugInCleanupItem structs which are currently unused. 2008-04-17 Michael Natterer * configure.in: add G_DISABLE_SINGLE_INCLUDES to CPPFLAGS. 2008-04-17 Michael Natterer * configure.in: remove AC_HEADER_DIRENT, we use GDir all over the place now. 2008-04-16 Michael Natterer * app/display/gimpdisplayshell-coords.c (gimp_display_shell_eval_event): remove local "inertia" variable and simply modify the passed "inertia_factor" when needed. 2008-04-16 Sven Neumann * app/config/test-config.c: initialize the units vtable in libgimpbase instead of trying to override symbols from it. Fixes bug #528160. 2008-04-15 Michael Natterer * app/display/gimpdisplayshell-coords.c (gimp_display_shell_eval_event): fix calculation of filter distance, it was missing a 1 / zoom_factor. Moved variables to local scope. Remove redundant thistime variable. Turned const gdouble into a #define. 2008-04-14 Sven Neumann * plug-ins/pygimp/gimpfu.py (_query.make_params): strip mnemonics from parameter names before passing them to gimp.install_procedure(). 2008-04-14 Sven Neumann * app/plug-in/gimpplugin-message.c: renamed gimp_plug_in_handle_tile_req() to gimp_plug_in_handle_tile_request(). 2008-04-14 Michael Natterer * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_tile_req): made messages about killed plug-ins due to invalid tile requests more verbose. They are good for debugging only and not translated, so more info can't hurt. Also fail (kill the plug-in) if a tile is requested that lives on the undo stack. 2008-04-14 Sven Neumann * app/tools/gimppolygonselecttool.c: formatting. 2008-04-14 Michael Natterer * app/tools/gimppolygonselecttool.c (gimp_polygon_select_tool_button_release): simplify and fix logic to do the "right" thing. Hard to describe, try youself ;) 2008-04-14 Sven Neumann * app/display/gimpstatusbar.c: introduced a #define for the spacing between the icon and the statusbar label. 2008-04-14 Michael Natterer * libgimpbase/gimpmemsize.c: #undef GIMP_DISABLE_DEPRECATED so gimp_memsize_to_string() sees its own prototype. 2008-04-14 Sven Neumann * app/display/gimpstatusbar.c (gimp_statusbar_label_expose): fixed icon placement for right-to-left render direction. 2008-04-14 Sven Neumann * app/display/gimpstatusbar.[ch]: rewritten the code that draws the icon in the statusbar label. The new code gives nicer spacing. 2008-04-14 Sven Neumann * plug-ins/jpeg/jpeg.h * plug-ins/jpeg/jpeg-exif.c * plug-ins/jpeg/jpeg-load.c: rotate the thumbnail according to the EXIF orientation as required by the updated thumbnail spec. 2008-04-14 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_show_tooltip) * app/display/gimpstatusbar.c (gimp_statusbar_progress_start) * app/gui/gui.c (gui_menu_show_tooltip): push a NULL stock-id. 2008-04-14 Sven Neumann * app/display/gimpstatusbar.c (gimp_statusbar_label_expose): added a sanity check. * app/display/gimpdisplayshell-layer-select.c: formatting. 2008-04-14 Sven Neumann * app/display/gimpstatusbar.[ch]: added stock-id parameters to all statusbar setters. * app/display/gimpdisplayshell-title.c: pass NULL as stock-id. * app/tools/gimptool.c: pass the tool icon to the statusbar. * app/tools/gimpeditselectiontool.c (gimp_edit_selection_tool_start): inherit the tool-info from the parent tool. 2008-04-13 Sven Neumann * app/tools/gimptool.h: formatting. 2008-04-13 Sven Neumann * app/widgets/gimpunitcombobox.c: added "label-scale" style property. * app/display/gimpscalecombobox.[ch]: ditto. Also removed the support for extra action items. * app/display/gimpstatusbar.c: changed accordingly. * themes/Default/gtkrc * themes/Small/gtkrc: use a smaller font for the combo-box labels in the statusbar. 2008-04-13 Michael Natterer * app/tools/gimpiscissorstool.c: minor cosmetics. * cursors/gimp-tool-cursors.xcf: add the new SELECT modifier. 2008-04-12 Martin Nordholts Applied modified patch from Daniel Hornung that changes the mouse cursor to a "clicking will create a selection"-icon when hovering the center of a pending Scissors Select Tool selection (bug #493370) * app/tools/gimpiscissorstool.c (gimp_iscissors_tool_cursor_update): Use the new cursor icon. * cursors/modifier-select.png * cursors/xbm/modifier-select.xbm * cursors/xbm/modifier-select-mask.xbm: New cursor icon. * cursors/makefile.msc * cursors/Makefile.am * app/widgets/gimpcursor.c * app/widgets/widgets-enums.h: Changed accordingly. 2008-04-12 Martin Nordholts * plug-ins/script-fu/scripts/3d-outline.scm * plug-ins/script-fu/scripts/alien-glow-logo.scm * plug-ins/script-fu/scripts/alien-neon-logo.scm * plug-ins/script-fu/scripts/basic1-logo.scm * plug-ins/script-fu/scripts/basic2-logo.scm * plug-ins/script-fu/scripts/blended-logo.scm * plug-ins/script-fu/scripts/bovinated-logo.scm * plug-ins/script-fu/scripts/chalk.scm * plug-ins/script-fu/scripts/chip-away.scm * plug-ins/script-fu/scripts/chrome-logo.scm * plug-ins/script-fu/scripts/comic-logo.scm * plug-ins/script-fu/scripts/coolmetal-logo.scm * plug-ins/script-fu/scripts/frosty-logo.scm * plug-ins/script-fu/scripts/glossy.scm * plug-ins/script-fu/scripts/glowing-logo.scm * plug-ins/script-fu/scripts/gradient-bevel-logo.scm * plug-ins/script-fu/scripts/neon-logo.scm * plug-ins/script-fu/scripts/script-fu-util.scm * plug-ins/script-fu/scripts/starburst-logo.scm * plug-ins/script-fu/scripts/starscape-logo.scm * plug-ins/script-fu/scripts/t-o-p-logo.scm * plug-ins/script-fu/scripts/textured-logo.scm: Applied patch from Ulf-D. Ehlert that makes the Alpha to Logo-filters more gracefully handle images with many layers (bug #498480). 2008-04-12 Martin Nordholts * app/core/gimpimage-snap.c (gimp_image_snap_rectangle): Applied patch from Mark Locascio that makes the center point of rectangles snap (bug #527659). 2008-04-11 Michael Natterer * app/display/gimpdisplayshell-appearance.c (gimp_display_shell_appearance_update): don't call gtk_widget_set_name() on a NULL menubar. 2008-04-11 Sven Neumann * libgimpwidgets/gimppropwidgets.c (gimp_prop_size_entry_new): reduced spacing between entry and unit menu. 2008-04-11 Sven Neumann * app/tools/gimptextoptions.c (gimp_text_options_gui): tweaked the layout to save a few pixels. 2008-04-11 Michael Natterer * app/display/gimpdisplayshell.c (gimp_display_shell_empty): unfullscreen the window before doing anything else. 2008-04-11 Michael Natterer * app/display/gimpdisplayshell-appearance.c (gimp_display_shell_appearance_update): don't show the status bar's resize grip in fullscreen mode. 2008-04-11 Michael Natterer * plug-ins/print/print-preview.c: unset the move cursor in GtkWidget::leave_notify_event() so it always gets unset when the pointer leaves the widget. 2008-04-10 Sven Neumann * plug-ins/script-fu/script-fu-scripts.c (script_fu_add_script): fixed compilation on Win32 (bug #527300). 2008-04-10 Sven Neumann * app/display/gimpstatusbar.[ch] (gimp_statusbar_progress_message): improved the check if the message can be shown in the statusbar. Do not show messages that don't fit into the given space. * app/gui/gui-message.c (gui_message_error_dialog): if there's already an error dialog associated with a progress, then use it. 2008-04-10 Michael Natterer * app/widgets/gimpcomponenteditor.c: implement GimpDocked::set_context() and set the GimpViewRenderers' contexts. Unclear how this could have been missed since it warned badly about NULL contexts. 2008-04-10 Michael Natterer * plug-ins/pygimp/plug-ins/python-console.py * plug-ins/script-fu/scripts/ts-helloworld.scm: fix new menu paths. 2008-04-09 Sven Neumann * data/images/gimp-splash.png: flattened splash image. 2008-04-09 Sven Neumann * configure.in: bumped version to 2.5.1. 2008-04-09 Sven Neumann * Made 2.5.0 development release. 2008-04-09 Sven Neumann * app/config/Makefile.am: fixed build of test-config. 2008-04-09 Sven Neumann * plug-ins/script-fu/scripts/ts-helloworld.scm * plug-ins/script-fu/scripts/test-sphere.scm * plug-ins/script-fu/scripts/contactsheet.scm: register in new menu locations. 2008-04-09 Sven Neumann * plug-ins/common/border-average.c: corrected parameter description. 2008-04-09 Sven Neumann * plug-ins/pygimp/plug-ins/benchmark-foreground-extract.py * plug-ins/pygimp/plug-ins/python-console.py * plug-ins/pygimp/plug-ins/sphere.py: register in new menu locations. 2008-04-09 Sven Neumann * plug-ins/twain/twain.c: register in new menu location. 2008-04-09 Sven Neumann * app/plug-in/plug-in-menu-path.c (plug_in_menu_path_map): removed function name from debug output. 2008-04-09 Sven Neumann * plug-ins/win-snap/winsnap.c * plug-ins/common/screenshot.c * plug-ins/script-fu/script-fu.c * plug-ins/script-fu/scripts/*.scm: register in new menu locations. 2008-04-09 Michael Natterer * app/plug-in/plug-in-menu-path.c (plug_in_menu_path_map): enable and improve debug output for mapped menu paths. 2008-04-09 Sven Neumann * app/core/core-enums.[ch] (enum GimpUndoType): changed descriptions for the GIMP_UNDO_FS_RIGOR and GIMP_UNDO_FS_RELAX undo types again. 2008-04-09 Sven Neumann * app/widgets/gimptexteditor.c (gimp_text_editor_new): disabled the language entry until it works. 2008-04-09 Sven Neumann * app/core/core-enums.[ch] (enum GimpUndoType): better descriptions for the GIMP_UNDO_FS_RIGOR and GIMP_UNDO_FS_RELAX undo types. * app/core/gimplayer-floating-sel.c: corrected a comment. 2008-04-09 Sven Neumann * app/actions/edit-actions.c (edit_actions): added mnemnic for "edit-paste-as-new" menu item. 2008-04-09 Michael Natterer * menus/image-menu.xml.in: add "File/New" submenu and an "Acquire" placeholder inside it. Removed "File/Acquire". Removed the "Xtns" menu. * app/plug-in/plug-in-menu-path.[ch] (plug_in_menu_path_map): add "menu_label" parameter and add support for mapping around individual menu items while preserving their translation and mnemonics. Add mappings for the known menus from "Xtns" and map them to "File/New". Map everything else in "Xtns" to "Filters/Extensions". * app/plug-in/gimppluginmanager-menu-branch.c (gimp_plug_in_manager_add_menu_branch): pass the menu_label so menu branches can be mapped with their translation. * app/plug-in/gimppluginprocedure.c (gimp_plug_in_procedure_add_menu_path): pass NULL because mapping menu items which have no submenu makes no sense and is redundant. * app/actions/image-actions.c: remove the "Xtns" menu action. * app/actions/file-actions.c: add action for the "File/New" menu and removed the "File/Acquire" action. * app/actions/edit-actions.c: rename "Paste as New" to "From Clipboard". * menus/image-menu.xml.in: add the "From Clipboard" action to the "File/New" menu. 2008-04-09 Sven Neumann * app/core/gimpcontainer.[ch]: added new methods gimp_container_get_{first,last}_child(). * app/actions/file-actions.c (file_actions_close_all_update) * app/dialogs/layer-add-mask-dialog.c (layer_add_mask_dialog_new) * app/dialogs/palette-import-dialog.c (palette_import_image_callback) * app/gui/gui-vtable.c (gui_get_empty_display): * app/widgets/gimpmenudock.c (gimp_menu_dock_image_changed): use the new GimpContainer methods. * app/core/gimpundostack.c: use the new GimpContainer methods and cleaned up the code. 2008-04-09 Sven Neumann * plug-ins/script-fu/scripts/Makefile.am * plug-ins/script-fu/scripts/sphere.scm: removed Sphere script. It's a nice simple example but it has no real value. * plug-ins/script-fu/script-fu.c (script_fu_extension_init): removed "/Xtns/Misc". 2008-04-09 Sven Neumann * plug-ins/script-fu/script-fu-scripts.c (script_fu_add_script): marked a message for translation. Declare 'val' as const and use an extra variable where a not const variable is needed. 2008-04-09 Sven Neumann * menus/image-menu.xml.in: moved Languages to the bottom. Removed separator from the Filters list as there was really no rule as to what goes above and what goes below. * app/actions/plug-in-actions.c: added Filters->Decor submenu. * plug-ins/script-fu/script-fu.c (script_fu_extension_init): removed registration of redundant menu branches. 2008-04-08 Michael Natterer * menus/image-menu.xml.in: add placeholder "Help/Programming" * plug-ins/common/plugin-browser.c * plug-ins/common/procedure-browser.c: move the plug-in and procedure browsers there. * menus/image-menu.xml.in: moved the (now by default empty) "Extensions" placeholder from "Xtns" to "Filters". Let's see what cruft shows up there. * app/plug-in/plug-in-menu-path.c: map "Xtns/Extensions" to "Filters/Extensions". 2008-04-08 Michael Natterer Start getting rid of the "Xtns" menu: * app/actions/dialogs-actions.c (dialogs_toplevel_actions): renamed "Module Manager" to "Modules". * menus/image-menu.xml.in: move it to "Edit/Preferences" for the time being so it doesn't block the removal of the "Xtns" menu. Move "Languages" placeholder from "Xtns" to "Filters". * app/plug-in/plug-in-menu-path.c (menu_path_mappings): map "Xtns/Languages" to "Filters/Languages". 2008-04-08 Sven Neumann * plug-ins/common/mng.c (myalloc): removed a redundant (and wrong) cast. 2008-04-08 Sven Neumann * plug-ins/pygimp/plug-ins/Makefile.am * plug-ins/pygimp/plug-ins/happy-valley-relief.py: renamed to ... * plug-ins/pygimp/plug-ins/python-eval.py: ... this. * plug-ins/pygimp/plug-ins/gimpcons.py: renamed to ... * plug-ins/pygimp/plug-ins/python-console.py: ... this. 2008-04-08 Michael Natterer * app/widgets/gimpdialogfactory.c (gimp_dialog_factory_set_user_pos): set GDK_HINT_MIN_SIZE on dialogs which had no previous sessionrc entry. Fixes the minimum size of the very first empty display of a new GIMP installation and shouldn't have any ill effects on other windows. 2008-04-07 Sven Neumann * app/composite/gimp-composite-3dnow-test.c * app/composite/gimp-composite-altivec-test.c * app/composite/gimp-composite-mmx-test.c * app/composite/gimp-composite-sse-test.c * app/composite/gimp-composite-sse2-test.c * app/composite/gimp-composite-vis-test.c: include 2008-04-07 Michael Natterer * plug-ins/common/neon.c: renamed to... * plug-ins/common/edge-neon.c: ...this. Some formatting cleanup. * plug-ins/common/plugin-defs.pl: changed accordingly. * plug-ins/common/Makefile.am: regenerated. 2008-04-07 Sven Neumann * app/gegl/Makefile.am (libappgegl_a_SOURCES): added missing file. * app/tools/tools-enums.c: regenerated. 2008-04-07 Sven Neumann * app/version.c (gimp_show_library_version): tweaked verbose version output. 2008-04-07 Sven Neumann * app/tools/gimprectangletool.[ch] * app/tools/gimptexttool.c: removed 'force-narrow' mode as it is hard to use and just looks broken. 2008-04-07 Sven Neumann * app/tools/gimprectangletool.c: formatting. 2008-04-07 Bill Skaggs * app/tools/gimprectangletool.[ch]: add "force_narrow" parameter. * app/tools/gimptexttool.c: Force rectangle to always be narrow, and squash a few bugs. 2008-04-07 Sven Neumann * plug-ins/common/compose.c: use gimp_drawable_is_valid() to check if a drawable ID is valid. 2008-04-07 Sven Neumann * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-coords.[ch] * app/tools/gimppainttool.c * app/tools/gimptool.[ch]: applied patch from Alexia Death as attached to bug #508639. This change makes the smoothing depend on the active tool. 2008-04-07 Sven Neumann * app/actions/templates-actions.c * app/actions/templates-commands.c: when creating an image from a template, skip the New Image dialog as suggested in bug #480802. 2008-04-07 Sven Neumann * plug-ins/map-object/map-object-main.c (query): fixed description of 'lighttype' parameter (bug #526679). 2008-04-07 Sven Neumann * app/display/gimpdisplay-handlers.c (gimp_display_saved_handler): use gimp_statusbar_push_temp() directly instead of going through gimp_message(). Use the GTK_STOCK_SAVE icon for the statusbar message. 2008-04-07 Sven Neumann * plug-ins/print/print.[ch]: set the number of pages to one before showing the dialog. Not that it would make a difference, but it could... 2008-04-07 Sven Neumann * tools/pdbgen/pdb/procedural_db.pdb (procedural_db_proc_exists): canonicalize the procedure name and also try compat names. * app/pdb/procedural-db-cmds.c: regenerated. 2008-04-06 Sven Neumann * tools/pdbgen/pdb/procedural_db.pdb: added new procedure gimp-procedural-db-proc-exists. * app/pdb/internal-procs.c * app/pdb/procedural-db-cmds.c * libgimp/gimpproceduraldb_pdb.[ch]: regenerated. * libgimp/gimp.def: updated. * plug-ins/print/print.c (page_setup): use the new procedure. 2008-04-06 Sven Neumann * plug-ins/print/print.c (page_setup): do a query for the temporary procedure installed by the 'file-print-gtk' procedure. Temporary solution until bug #344818 has been addressed. 2008-04-06 Sven Neumann * app/display/gimpstatusbar.c: resurrected the icon in statusbar messages. 2008-04-05 Sven Neumann * app/display/gimpdisplay.[ch]: added new function gimp_display_close() which decides if gimp_display_delete() or gimp_display_empty() needs to be called. * app/display/gimpdisplay-foreach.[ch]: added new function gimp_displays_close() and removed the 'do_quit' parameter from gimp_displays_delete(). * app/gui/gui.c (gui_exit_callback): changed accordingly. * app/display/gimpdisplayshell-close.c: removed gimp_display_shell_really_close() and call gimp_display_close() instead. * app/display/gimpdisplayshell.c (gimp_display_shell_empty): moved code to update the ui managers here. * app/actions/file-commands.c (file_save_cmd_callback) (file_close_cmd_callback) * app/dialogs/file-save-dialog.c (file_save_dialog_response) * app/dialogs/quit-dialog.c (quit_close_all_dialog_response): close displays instead of deleting them. * app/gui/gui-vtable.c (gui_display_delete): call gimp_display_close(). 2008-04-05 Sven Neumann * app/widgets/gimpcolormapeditor.c (gimp_colormap_editor_draw): corrected fix for bug #511926. 2008-04-04 Michael Natterer * tools/pdbgen/pdb/text_layer.pdb: reorder functions so getters and setters are together, rename fontsize() functions to font_size(), fix get_color() implementation. * app/pdb/text-layer-cmds.c * libgimp/gimptextlayer_pdb.[ch]: regenerated. * libgimp/gimp.def: changed accordingly. 2008-04-04 Sven Neumann * tools/pdbgen/pdb/vectors.pdb: added gimp_vectors_new_from_text_layer(). * app/pdb/internal-procs.c * app/pdb/vectors-cmds.c * libgimp/gimpvectors_pdb.[ch]: regenerated. * libgimp/gimp.def: updated. 2008-04-04 Sven Neumann * app/core/gimpselection.c (gimp_selection_float): clear the selection as gimp_selection_extract() doesn't do this for us any longer (see bug #510534). 2008-04-04 Sven Neumann * plug-ins/psd/psd-load.c: marked string for translation (the same string exists in the TIFF loader already). 2008-04-04 Sven Neumann * app/core/gimp.c: follow renaming of internal_procs.h. 2008-04-04 Sven Neumann * HACKING: updated for name change of generated files. 2008-04-04 Sven Neumann * tools/pdbgen/pdb/drawable.pdb: added missing include. * app/pdb/drawable-cmds.c: regenerated. 2008-04-04 Sven Neumann * tools/pdbgen/app.pl: changed the names of the generated files. * app/pdb/Makefile.am * app/pdb/*cmds.c: renamed. 2008-04-04 Sven Neumann * tools/pdbgen/app.pl: cosmetic change in the generated code. * app/pdb/*_cmds.c: regenerated. 2008-04-04 Sven Neumann * tools/pdbgen/pdb/plug_in.pdb: cosmetics. * app/pdb/plug_in_cmds.c: regenerated. 2008-04-04 Sven Neumann * app/pdb/gimppdb-utils.[ch]: added test for floating items. * tools/pdbgen/pdb/image.pdb: use it to improve error handling. * app/pdb/image_cmds.c: regenerated. 2008-04-04 Sven Neumann * tools/pdbgen/pdb/image.pdb: improved error handling. * app/pdb/image_cmds.c: regenerated. 2008-04-04 Sven Neumann * app/pdb/gimppdb-utils.[ch]: added utility functions to check the image base type. * tools/pdbgen/pdb/convert.pdb: use it so that we get a proper error set on failure. * app/pdb/convert_cmds.c: regenerated. 2008-04-04 Sven Neumann * app/core/gimpimage-convert.[ch] (gimp_image_convert_set_dither_matrix): minor cleanup. * tools/pdbgen/pdb/convert.pdb: changed accordingly. * app/pdb/convert_cmds.c: regenerated. 2008-04-03 Michael Natterer * app/pdb/gimppdb-utils.c * tools/pdbgen/pdb/text_layer.pdb: GIMP_PDB_CALLING_ERROR and GIMP_PDB_EXECUTION_ERROR are not from the GimpPdbErrorCode enum. Use GIMP_PDB_INVALID_ARGUMENT instead. * app/pdb/text_layer_cmds.c: regenerated. 2008-04-03 Michael Natterer * plug-ins/help/gimphelpdomain.h: fix include guards. 2008-04-03 Michael Natterer * app/core/gimpimage-convert.c (gimp_image_convert): don't accept palettes with more than 256 colors. * tools/pdbgen/pdb/convert.pdb: fail here too for palettes with > 256 colors. Fixes bug #525471. * app/pdb/convert_cmds.c: regenerated. 2008-04-03 Jordi Mallach * configure.in (ALL_LINGUAS): Add Valencian-Catalan (ca@valencia). 2008-04-02 Bill Skaggs * app/text/gimptextlayout.c * app/tools/gimptexttool.[ch] * app/tools/gimprectangletool.[ch] * app/tools/gimptextoptions.c: allow resizing of text box. This is work in progress, and needs some tweaks and fixes. See bug #122707. 2008-04-02 Sven Neumann * libgimp/gimp.def: added new symbols. 2008-04-02 Sven Neumann * tools/pdbgen/Makefile.am * tools/pdbgen/pdb/text_layer.pdb: new text layer PDB API created by Marcus Heese (see bug #164539). * app/pdb/Makefile.am * app/pdb/text_layer_cmds.c: new generated file. * libgimp/Makefile.am * libgimp/gimptextlayer_pdb.[ch]: new generated files. * app/pdb/internal_procs.[ch] * libgimp/gimp_pdb.h * tools/pdbgen/groups.pl: regenerated. 2008-04-02 Sven Neumann * tools/pdbgen/app.pl: special treatment for gimppdberror.h to get a saner include order. * app/pdb/floating_sel_cmds.c * app/pdb/image_cmds.c: regenerated. 2008-04-02 Sven Neumann * app/pdb/gimppdb-utils.[ch]: added gimp_pdb_layer_is_text_layer(). 2008-04-02 Sven Neumann * tools/pdbgen/stddefs.pdb: fixed bug in last commit. * app/pdb/drawable_cmds.c * libgimp/gimpdrawable_pdb.c: regenerated. 2008-04-02 Sven Neumann * tools/pdbgen/stddefs.pdb: added shortcut for contributions from Marcus Heese. * tools/pdbgen/pdb/drawable.pdb: added gimp_drawable_is_text_layer(), taken from the patch attached to bug #164539. * app/pdb/internal_procs.c * app/pdb/drawable_cmds.c * libgimp/gimpdrawable_pdb.[ch]: regenerated. * libgimp/gimp.def: updated. 2008-04-02 Sven Neumann * app/tools/gimpperspectiveclonetool.c: removed frame around the mode radio buttons (bug #525747). * app/tools/gimpdodgeburntool.c: relabelled "Mode" frame to "Range". 2008-04-02 Sven Neumann * app/gui/splash.c: use gimp_pango_layout_set_weight(). 2008-04-02 Sven Neumann * plug-ins/help/gimp-help-lookup.c: fixed typos in descriptions of the command-line options. 2008-04-02 Sven Neumann * plug-ins/help-browser/Makefile.am (LDADD): added GIO_LIBS. 2008-04-02 Sven Neumann * app/actions/file-actions.c: don't set a help-id on items in the Open Recent menu. * app/menus/file-menu.c (file_menu_setup): show a larger thumbnail in the tooltips for recently used images. 2008-04-02 Sven Neumann * plug-ins/help/Makefile.am * plug-ins/help/gimphelpdomain.[ch] * plug-ins/help/gimphelplocale.[ch] * plug-ins/help/gimphelp.[ch] * plug-ins/help/gimp-help-lookup.c: use GIO to access the help index. 2008-04-01 Sven Neumann * app/display/gimpdisplayshell-title.c (gimp_display_shell_update_title_idle): no need to translate the empty string. 2008-03-31 Sven Neumann * app/text/text-enums.[ch] * libgimpbase/gimpbaseenums.[ch]: as a first step towards a new text PDB API, moved GimpTextDirection and GimpTextJustification enums to libgimpbase. * libgimp/gimpenums.c.tail * tools/pdbgen/enums.pl: regenerated. * libgimpbase/gimpbase.def: updated. 2008-03-31 Michael Natterer * plug-ins/maze/*: renamed most files and added proper headers instead of duplicating the prototypes in each .c file that uses them. Indentation, spacing, formatting, some general cleanup. 2008-03-31 Michael Natterer * app/widgets/gimpbrusheditor.c (gimp_brush_editor_notify_brush): Add missing code for the "spacing" property. Spotted by Jerry Baker. 2008-03-30 Martin Nordholts * app/widgets/gimpcontainertreeview-dnd.c (gimp_container_tree_view_drag_drop): Make all code paths result in a call to gtk_drag_finish() if we return TRUE. Fixes bug #317992. 2008-03-30 Sven Neumann * app/core/gimparea.c (gimp_area_list_process): code cleanup. 2008-03-30 Sven Neumann * app/core/gimparea.c (gimp_area_list_free): don't leak the memory allocated for the GSList. 2008-03-30 Sven Neumann * app/widgets/gimpcontainertreeview.c: added a finalizer that frees the memory allocated for the cell lists. 2008-03-30 Sven Neumann * app/xcf/xcf-load.c (xcf_load_image): don't leak the grid. 2008-03-30 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_scale_changed): never set the dest_inc and src_dec variables to zero. 2008-03-30 Sven Neumann * app/display/gimpdisplayshell-cursor.[ch]: added new function gimp_display_shell_unset_cursor(). (gimp_display_shell_real_set_cursor): deal with cursor_type -1 and change the cursor to the default desktop cursor. Fixes warnings on image load. * app/display/gimpdisplayshell.c (gimp_display_shell_empty): use gimp_display_shell_unset_cursor(). 2008-03-30 Sven Neumann * gimpheal.c (gimp_heal_motion): applied the same cleanups as in the gimp-2-4 branch (see bug #521433). 2008-03-30 Michael Natterer * app/display/gimpcanvas.c * app/widgets/gimpcoloreditor.c * app/widgets/gimpcolorframe.c * app/widgets/gimpcursorview.c * app/widgets/gimpcurveview.c * app/widgets/gimpdataeditor.c * app/widgets/gimpdock.c * app/widgets/gimpdockable.c * app/widgets/gimpdockbook.c * app/widgets/gimpdockseparator.c * app/widgets/gimpeditor.c * app/widgets/gimplayertreeview.c * app/widgets/gimpmenudock.c * app/widgets/gimpsamplepointeditor.c * app/widgets/gimptoolbox.c: chain up unconditionally in GtkWidget::style_set() because it has a default implementation. 2008-03-29 Michael Natterer * app/widgets/gimpmenudock.c (gimp_menu_dock_auto_clicked): when the "Auto" button gets enabled, always copy both display and image to the local context (because there can be displays without image now). 2008-03-29 Michael Natterer * app/gui/gui-vtable.c (gui_display_create): remove temporary "object" variable, it's prefectly fine to say GIMP_DISPLAY() on a NULL pointer. 2008-03-29 Michael Natterer * configure.in: add -Wold-style-definition to CFLAGS. 2008-03-29 Sven Neumann * libgimp/gimpprocview.c (gimp_proc_view_new): code cleanup. 2008-03-29 Sven Neumann * libgimpmath/gimpmd5.[ch]: removed implementation of the MD5 algorithm and delegate to GChecksum instead. * libgimpmath/Makefile.am * libgimpmath/test-md5.c: removed test of the MD5 implementation. 2008-03-29 Sven Neumann * plug-ins/common/lcms.c (lcms_calculate_checksum): fixed use of GChecksum. 2008-03-29 Michael Natterer * libgimpmath/gimpmd5.c: undef GIMP_DISABLE_DEPRECATED. 2008-03-29 Michael Natterer * app/gui/gui-vtable.c: needs #ifdef GDK_WINDOWING_X11. * app/gui/gui.c: remove the include i accidentially added here. 2008-03-29 Mukund Sivaraman * app/core/gimpdrawable-operation.c: Use #warning only if compiler is gcc. 2008-03-29 Mukund Sivaraman * plug-ins/imagemap/imap_cmd_move.c * plug-ins/imagemap/imap_cmd_object_up.c * plug-ins/imagemap/imap_cmd_move_up.c * plug-ins/imagemap/imap_cmd_move_selected.c * plug-ins/imagemap/imap_cmd_move_sash.c * plug-ins/imagemap/imap_cmd_object_move.c * plug-ins/imagemap/imap_cmd_object_down.c * plug-ins/imagemap/imap_object.c * plug-ins/imagemap/imap_cmd_move_down.c * plug-ins/map-object/map-object-shade.c * plug-ins/map-object/map-object-apply.c * plug-ins/maze/maze.h * plug-ins/maze/maze_face.c * plug-ins/selection-to-path/selection-to-path.c * plug-ins/selection-to-path/edge.c * plug-ins/selection-to-path/pxl-outline.c * plug-ins/selection-to-path/fit.c * plug-ins/xjt/xjt.c * plug-ins/metadata/xmp-parse.c * plug-ins/print/print-draw-page.c * plug-ins/print/print-settings.c * plug-ins/lighting/lighting-preview.c: Cleanups / fixes for issues reported by Sparse. 2008-03-28 Mukund Sivaraman * plug-ins/common/sinus.c * plug-ins/common/compose.c * plug-ins/common/screenshot.c * plug-ins/common/mng.c * plug-ins/common/wind.c * plug-ins/common/gif-save.c * plug-ins/common/video.c * plug-ins/common/sphere-designer.c * plug-ins/common/hot.c * plug-ins/common/red-eye-removal.c * plug-ins/common/tile-small.c * plug-ins/common/gbr.c * plug-ins/common/jigsaw.c * plug-ins/common/glob.c * plug-ins/common/despeckle.c * plug-ins/common/noise-randomize.c * plug-ins/common/convolution-matrix.c * plug-ins/common/gif-load.c * plug-ins/common/psd-save.c * plug-ins/common/emboss.c * plug-ins/common/csource.c * plug-ins/common/cml-explorer.c * plug-ins/common/grid.c * plug-ins/common/pcx.c * plug-ins/common/engrave.c * plug-ins/common/curve-bend.c: Cleanups / fixes for issues reported by Sparse. 2008-03-28 Mukund Sivaraman * plug-ins/common/lcms.c: gimp_md5_get_digest() is deprecated; using GChecksum instead. 2008-03-28 Mukund Sivaraman Fixes for some Sparse reported issues in app, libgimp*/ * app/gui/gui-vtable.c: Included * libgimp/gimpprocview.c: author, date, copyright are pointers. * libgimpwidgets/gimpcolorprofilestore.c: Last argument of g_scanner_scope_add_symbol() is a pointer. 2008-03-28 Mukund Sivaraman Fixes for some Sparse reported issues in app/ * app/core/gimpdrawable-operation.c: Added prototype for gegl_node_add_child(). * app/core/gimpcurve.c: Remove C99 code * app/tools/gimpcurvestool.c * app/tools/gimpperspectiveclonetool.c * app/vectors/gimpstroke.c: Mark functions as static. * app/base/siox.c: state is a pointer. * app/plug-in/gimppluginprocframe.c: values is a pointer. * app/plug-in/plug-in-rc.c: plug_in_rc_parse() returns a pointer. * app/plug-in/gimpinterpreterdb.c: Check program[0] for '\0' instead of the pointer program itself. 2008-03-28 Mukund Sivaraman * plug-ins/common/png.c: Fixed a bug where a pointer to a gint is passed to a function which expects gsize, which can cause out of bounds access. 2008-03-28 Michael Natterer * app/gui/gui.c: #include 2008-03-28 Michael Natterer * plug-ins/script-fu/scripts/guides-from-selection.scm * plug-ins/script-fu/scripts/guides-new-percent.scm * plug-ins/script-fu/scripts/guides-new.scm * plug-ins/script-fu/scripts/guides-remove-all.scm: use "*" as image type (not "") so the menu item is disabled when there is no image. 2008-03-28 Sven Neumann * libgimpmath/gimpmd5.[ch]: deprecate gimp_md5_get_digest() in favor of GCheckSum. * libgimpmath/test-md5.c: undef GIMP_DISABLE_DEPRECATED. 2008-03-28 Sven Neumann * libgimpthumb/gimpthumb-utils.c (gimp_thumb_png_name): use GCheckSum instead of the MD5 routine from libgimpmath. * gimpthumb.pc.in * libgimpthumb/Makefile.am: removed libgimpmath dependency from libgimpthumb. 2008-03-28 Sven Neumann * app/sanity.c (sanity_check_glib): bumped glib version. 2008-03-28 Sven Neumann * libgimpbase/gimpmemsize.[ch]: deprecate gimp_memsize_to_string() in favor of g_format_size_for_display(). * app/actions/edit-commands.c * app/core/gimpimagefile.c * app/dialogs/image-new-dialog.c * app/dialogs/image-scale-dialog.c * app/display/gimpdisplayshell-title.c * app/widgets/gimpimagepropview.c * app/widgets/gimptemplateeditor.c * app/widgets/gimpthumbbox.c * plug-ins/uri/uri-backend-gnomevfs.c * plug-ins/uri/uri-backend-gvfs.c * plug-ins/uri/uri-backend-libcurl.c * plug-ins/uri/uri-backend-wget.c: use g_format_size_for_display() instead of gimp_memsize_to_string(). 2008-03-28 Sven Neumann * configure.in: put GIO check back in as we need it to initialize GIO_CFLAGS and GIO_LIBS. Renamed --without-gio to --without-gvfs. * INSTALL: changed accordingly. * plug-ins/uri/Makefile.am * plug-ins/uri/uri-backend-gio.c * plug-ins/uri/uri-backend-gvfs.c: renamed the gio backend to gvfs. 2008-03-28 Michael Natterer * plug-ins/script-fu/scripts/line-nova.scm (script-fu-line-nova): move the call to gimp-selection-save inside the undo group. (script-fu-register): use "*" as image type (not "") so the menu item is disabled when there is no image. 2008-03-28 Michael Natterer * configure.in: require glib >= 2.16.1. Don't warn about deprecations for glib >= 2.19.0 and gtk+ >= 2.15.0. Remove check for GIO but keep the --without-gio option for the URI plugin. 2008-03-28 Sven Neumann * libgimpwidgets/gimphelpui.c: show a custom tooltip for menu items and inform the user that she can get more help by pressing F1. 2008-03-28 Sven Neumann * libgimpwidgets/gimphelpui.c: updated documentation. 2008-03-28 Sven Neumann * app/dialogs/tips-parser.[ch] * app/dialogs/tips-dialog.c: improved the creation of fallback tips in case of an error parsing the tips file. (tips_dialog_create): simplified dialog layout. * app/dialogs/preferences-dialog.c: removed the check button for the "show-tips" option. 2008-03-28 Sven Neumann * data/tips/gimp-tips.dtd * data/tips/gimp-tips.xml.in * app/dialogs/tips-parser.[ch]: reverted some of the changes from yesterday. The simplification went too far and we inadvertently lost an important feature. 2008-03-27 Sven Neumann * plug-ins/common/pnm.c (load_image): changed message to say "Unsupported maximum value" instead of "Invalid maximum value" as suggested in bug #149723. 2008-03-27 Sven Neumann * data/tips/gimp-tips.dtd * data/tips/gimp-tips.xml.in: simplified the gimp-tips XML format as we do not any longer need a special welcome tip. * app/dialogs/tips-dialog.c * app/dialogs/tips-parser.[ch]: changed accordingly. 2008-03-27 Sven Neumann * app/config/gimprc-blurbs.h: removed SHOW_TIPS_BLURB. 2008-03-27 Sven Neumann Preparing for a revamp of the "Tip of the Day" feature: * app/config/gimpguiconfig.[ch]: removed "show-tips" property. * app/gui/gui.[ch]: removed gui_post_init() as it's only purpose was to show the tips dialog. * app/app.c: changed accordingly. * app/dialogs/tips-dialog.c: removed some stuff that we are not going to need any longer. 2008-03-27 Sven Neumann * libgimp/gimp.c: minor improvements to the API docs. 2008-03-27 Sven Neumann Properly pass the focus from the core to plug-in dialogs: * libgimpbase/gimpprotocol.[ch]: added a user_time member to the GimpConfig struct. Bumped the protocol version to 0x0012. * app/core/gimp-gui.[ch] * app/gui/gui-vtable.c: added gimp_get_user_time() to get the timestamp of the last user interaction. * app/plug-in/gimppluginmanager-call.c (gimp_plug_in_manager_call_run): pass the timestamp to in the GimpConfig message. * libgimp/gimp.[ch]: * libgimp/gimp.def: added method to access the timestamp as set in the config message. * libgimp/gimpui.c (gimp_ui_init): construct a fake startup ID and set the DESKTOP_STARTUP_ID environment variable. 2008-03-27 Sven Neumann * app/widgets/gimpdockable.c (gimp_dockable_detach): open the new dock window at the mouse pointer position. 2008-03-27 Sven Neumann * app/display/gimpdisplayshell-dnd.c (gimp_display_shell_drop_uri_list): don't flush if there's no image. (gimp_display_shell_dnd_flush): use gtk_window_present() instead of gdk_window_focus(). 2008-03-27 Sven Neumann * app/display/gimpstatusbar.c: use a button with icon for the progress cancel button. 2008-03-27 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_style_set): added an arbitrary number to the minimum height. 2008-03-27 Sven Neumann * app/display/gimpstatusbar.c: make sure that the statusbar frame requests enough space to hold it's children, also the invisible ones. * app/display/gimpdisplayshell.c (gimp_display_shell_style_set): don't add 1 pixel here, this spacing is gone. 2008-03-27 Sven Neumann * app/display/gimpstatusbar.[ch]: derive GimpStatusbar from GtkStatusbar. Use the normal statusbar label for statusbar messages and only show the progressbar when progress is active. * app/display/gimpdisplayshell.c (gimp_display_shell_new): removed spacing from the main vertical box. 2008-03-27 Sven Neumann * plug-ins/common/dicom.c (dicom_loader): cosmetic changes. 2008-03-27 Mukund Sivaraman * plug-ins/common/dicom.c: Validated samples_per_pixel, changed the loop counter data type, and patched code to work on big endian CPUs. 2008-03-27 Sven Neumann * app/gui/gui.c (gui_init): disable automatic startup notification. (gui_restore_after_callback): notify the display enviroment that the application has finished loading. * app/gui/splash.c: no need to deal with startup notification here any longer. 2008-03-26 Mukund Sivaraman * plug-ins/common/dicom.c: Forget about negative values in signed data and scale positive values appropriately. Also fixed signed values in the 8 bpp case, and added some comments. 2008-03-26 Mukund Sivaraman * plug-ins/common/dicom.c: made the dicom plug-in a bit better. 1. Parse the default little-endian encoding correctly. 2. Handle signed pixel data. 3. Support "bits stored" and "high bit" meta data fields. 4. Throw away the bogus "max" value based metering. 2008-03-26 Michael Natterer * app/widgets/gimptoolbox.c: make the wilber area a bit smaller. 2008-03-26 Michael Natterer * app/widgets/gimptoolbox.[ch]: store the toolbox area's vbox in the widget struct. * app/widgets/gimptoolbox-dnd.c (gimp_toolbox_dnd_init): use it as DND target instead of the wbox with the tool buttons. 2008-03-26 Michael Natterer * app/widgets/gimptoolbox.[ch]: big wilber is watching you from the toolbox! Removed forgotten menubar cruft. 2008-03-26 Sven Neumann * app/widgets/gimpcairo-wilber.[ch]: * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): hide ugly details behind a sane API. 2008-03-26 Michael Natterer * app/display/gimpdisplayshell.c (gimp_display_shell_empty): improve tooltip here too. 2008-03-26 Sven Neumann * app/widgets/gimpcairo-wilber.c: include a better Wilber path, thanks to Jimmac. * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): undid scaling "fix", instead take the offset into account. Draw with transparency. 2008-03-26 Michael Natterer * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): fix scaling. 2008-03-26 Sven Neumann * app/widgets/Makefile.am * app/widgets/gimpcairo-wilber.[ch]: new files that renders a Wilber image as a Cairo path. Or at least it is supposed to do this at some point... * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): use the scalable Wilber path. Needs more work... 2008-03-26 Sven Neumann * data/images/Makefile.am: install wilber.png. * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): try to load "wilber.png" from $prefix/share/gimp/2.0/images. * app/display/gimpdisplayshell.c (gimp_display_shell_new): improved tooltip. 2008-03-26 Michael Natterer * app/display/gimpcanvas.[ch]: improve wilber scaling and remove the drop zone layout. * app/display/gimpdisplayshell.c: add a tooltip instead. 2008-03-26 Michael Natterer * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_realize): don't set an initial cursor so we get the desktop default cursor after starting GIMP. 2008-03-26 Sven Neumann * plug-ins/common/gif-save.c * plug-ins/common/psd-save.c (save_image): improved error messages. 2008-03-26 Michael Natterer * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): add wilber image to figure the proper scale behavior. Proper image still missing :) 2008-03-26 Sven Neumann * app/display/gimpdisplayshell-icon.[ch] * app/display/gimpdisplayshell-handlers.c: moved more icon code to its new home. 2008-03-25 Mukund Sivaraman * plug-ins/common/mng.c: Cleaned up the rest of the plug-in. 2008-03-25 Mukund Sivaraman * plug-ins/common/mng.c: More code cleanups. 2008-03-25 Mukund Sivaraman * plug-ins/common/mng.c: More code cleanups. 2008-03-25 Mukund Sivaraman * plug-ins/common/mng.c: More code cleanups. 2008-03-25 Sven Neumann * app/display/Makefile.am * app/display/gimpdisplayshell-icon.[ch]: split icon code to its own file. * app/display/gimpdisplay.c * app/display/gimpdisplayshell.c * app/display/gimpdisplayshell-handlers.c: changed accordingly. 2008-03-25 Sven Neumann * app/display/gimpstatusbar.c (gimp_statusbar_peek): fixed parameter checks. * app/display/gimpdisplayshell-callbacks.c: formatting. 2008-03-25 Sven Neumann * app/display/gimpstatusbar.[ch]: added gimp_statusbar_peek(), a method to access the contents of the statusbar. * app/display/gimpdisplayshell.c (gimp_display_shell_window_state_event): when the iconfied state changes, call gimp_display_shell_progress_window_state_changed(). * app/display/gimpdisplayshell-progress.[ch]: if the image window is iconified, display the progress message in the window title so that it appears in the task bar. * app/menus/plug-in-menus.c: formatting. 2008-03-25 Michael Natterer * app/display/gimpdisplayshell-callbacks.[ch]: remove the window state callback here... * app/display/gimpdisplayshell.c: ...add it here and turn it into a GtkWidget::window_state_event() implementation instead of a signal callback. 2008-03-25 Sven Neumann * menus/image-menu.xml.in: added a placeholder "Menus" where plug-ins like GAP can register a top-level menu. 2008-03-25 Sven Neumann * app/display/gimpdisplayshell-callbacks.[ch]: * app/display/gimpdisplayshell.c (gimp_display_shell_init): moved handling of window state events to a separate callback. 2008-03-25 Sven Neumann * app/display/gimpdisplayshell.h: formatting. 2008-03-25 Sven Neumann * app/core/gimp-gui.[ch] * app/gui/gui-vtable.c: added gimp_get_empty_display() to the vtable. * app/file/file-open.c (file_open_from_command_line): use the empty display as progress window when opening an image from the command-line or via the DBus interface. 2008-03-25 Michael Natterer * app/actions/image-actions.c: remove "image-new-from-image" action. * app/actions/image-commands.[ch]: remove its callback and made the "image-new" callback use the current image's dimensions instead. * menus/image-menu.xml.in: use the "image-new" action. 2008-03-25 Michael Natterer * app/display/gimpdisplayshell.c (gimp_display_shell_style_set): fix to work without menubar, don't reset GDK_HINT_USER_POS. 2008-03-25 Sven Neumann * app/gui/gui.c (gui_restore_after_callback): focus the image window after all docks have been created. * app/widgets/gimpdock.c (gimp_dock_init): unset focus-on-map on all dock windows. * app/widgets/gimpdialogfactory.c (gimp_dialog_factories_show_foreach): removed the focus hacks here as they are not any longer needed. 2008-03-25 Sven Neumann * app/actions/file-actions.c * app/actions/file-commands.[ch]: renamed file_last_opened_cmd_callaback() to file_open_recent_cmd_callback(). Use the empty display as progress object. 2008-03-25 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_new): center the empty image window on first startup. 2008-03-25 Sven Neumann * app/gui/gui-vtable.c (gui_recent_list_load): sort the list into MRU order on load. 2008-03-25 Sven Neumann * app/actions/documents-commands.c: only fiddle with GtkRecentManager when "save-document-history" is enabled. * app/config/gimprc-blurbs.h * app/dialogs/preferences-dialog.c: changed description and label for the "save-document-history" option. 2008-03-24 Sven Neumann * app/widgets/gimplanguagestore.[ch] * app/widgets/gimplanguageentry.[ch]: code cleanup. 2008-03-24 Mukund Sivaraman * plug-ins/common/mng.c: Code cleanups. 2008-03-24 Michael Natterer * plug-ins/bmp/* * plug-ins/fits/* * plug-ins/sgi/*: renamed files. 2008-03-24 Mukund Sivaraman * plug-ins/common/mng.c: * plug-ins/jpeg/jpeg.c: Changed name of author. 2008-03-24 Sven Neumann * plug-ins/gradient-flare/Makefile.am: fixed variable that was forgotten during the renaming. 2008-03-24 Michael Natterer * plug-ins/fractal-explorer/*: renamed all files. 2008-03-24 Michael Natterer * plug-ins/ico/*: renamed all files. 2008-03-24 Michael Natterer The icon plugin should simply be "ico" just as the other file plug-ins. * plug-ins/win-icon -> ico * configure.in * plug-ins/Makefile.am: changed accordingly. 2008-03-24 Michael Natterer * plug-ins/color-rotate/*: renamed all files and also changed function names and stuff in some files. Only the filename change is 100% complete. 2008-03-24 Michael Natterer There is no colormap involved in this plug-in, rename it again... * plug-ins/colormap-rotate -> color-rotate. * configure.in * plug-ins/Makefile.am: changed accordingly. 2008-03-24 Michael Natterer * plug-ins/map-object * plug-ins/gradient-flare * plug-ins/ifs-compose * plug-ins/selection-to-path * plug-ins/lighting * plug-ins/help-browser * plug-ins/fli: rename files in these folders to have no underscores and match new names of the plug-ins. * configure.in: changed accordingly. 2008-03-24 Sven Neumann * app/core/gimp-user-install.c (user_install_migrate_files): don't migrate "documents". * app/actions/documents-commands.c (documents_remove_cmd_callback) (documents_remove_dangling_foreach): remove from GtkRecentManager before removing the item from the documents list. 2008-03-24 Sven Neumann * libgimpthumb/gimpthumbnail.c: don't reset the mime-type info when we can't load a thumbnail. * app/core/gimpimagefile.c (gimp_imagefile_get_new_pixbuf): don't set a stock-id depending on the state. * app/widgets/gimpviewrendererimagefile.[ch]: removed commented out hack that used to access semi-private API from GtkFilesystem. Instead lifted some code from GtkRecentManager that looks up icons by mime-type. 2008-03-24 Michael Natterer Renamed folders in plug-ins/. Unfortunately it's impossible to rename the files inside at the same time, so this is just part one... * plug-ins/FractalExplorer -> fractal-explorer * plug-ins/Lighting -> lighting * plug-ins/MapObject -> map-object * plug-ins/gflare -> gradient-flare * plug-ins/gfli -> fli * plug-ins/helpbrowser -> help-browser * plug-ins/ifscompose -> ifs-compose * plug-ins/rcm -> colormap-rotate * plug-ins/sel2path -> selection-to-path * plug-ins/winicon -> win-icon * plug-ins/winsnap -> win-snap * configure.in * plug-ins/Makefile.am: changed accordingly. 2008-03-24 Michael Natterer Renamed tons of plug-ins to make more sense and to be consistent: * plug-ins/common/AlienMap2.c -> alien-map.c * plug-ins/common/CEL.c -> cel.c * plug-ins/common/CML_explorer.c -> cml-explorer.c * plug-ins/common/align_layers.c -> align-layers.c * plug-ins/common/animationplay.c -> animation-play.c * plug-ins/common/animoptimize.c -> animation-optimize.c * plug-ins/common/apply_lens.c -> lens-apply.c * plug-ins/common/autocrop.c -> crop-auto.c * plug-ins/common/autostretch_hsv.c -> contrast-stretch-hsv.c * plug-ins/common/borderaverage.c -> border-average.c * plug-ins/common/bumpmap.c -> bump-map.c * plug-ins/common/c_astretch.c -> contrast-stretch.c * plug-ins/common/ccanalyze.c -> color-cube-analyze.c * plug-ins/common/channel_mixer.c -> channel-mixer.c * plug-ins/common/color_enhance.c -> color-enhance.c * plug-ins/common/colortoalpha.c -> color-to-alpha.c * plug-ins/common/convmatrix.c -> convolution-matrix.c * plug-ins/common/curve_bend.c -> curve-bend.c * plug-ins/common/depthmerge.c -> depth-merge.c * plug-ins/common/dog.c -> edge-dog.c * plug-ins/common/exchange.c -> color-exchange.c * plug-ins/common/flarefx.c -> lens-flare.c * plug-ins/common/fp.c -> filter-pack.c * plug-ins/common/fractaltrace.c -> fractal-trace.c * plug-ins/common/gauss.c -> blur-gauss.c * plug-ins/common/gee_zoom.c -> gee-zoom.c * plug-ins/common/glasstile.c -> tile-glass.c * plug-ins/common/gqbist.c -> qbist.c * plug-ins/common/gradmap.c -> gradient-map.c * plug-ins/common/laplace.c -> edge-laplace.c * plug-ins/common/lens.c -> lens-distortion.c * plug-ins/common/lic.c -> van-gogh-lic.c * plug-ins/common/max_rgb.c -> max-rgb.c * plug-ins/common/mblur.c -> blur-motion.c * plug-ins/common/nlfilt.c -> nl-filter.c * plug-ins/common/noisify.c -> noise-rgb.c * plug-ins/common/normalize.c -> contrast-normalize.c * plug-ins/common/papertile.c -> tile-paper.c * plug-ins/common/polar.c -> polar-coords.c * plug-ins/common/randomize.c -> noise-randomize.c * plug-ins/common/redeye.c -> red-eye-removal.c * plug-ins/common/retinex.c -> contrast-retinex.c * plug-ins/common/sample_colorize.c -> sample-colorize.c * plug-ins/common/scatter_hsv.c -> noise-hsv.c * plug-ins/common/sel_gauss.c -> blur-gauss-selective.c * plug-ins/common/semiflatten.c -> semi-flatten.c * plug-ins/common/smooth_palette.c -> smooth-palette.c * plug-ins/common/snoise.c -> noise-solid.c * plug-ins/common/sobel.c -> edge-sobel.c * plug-ins/common/spheredesigner.c -> sphere-designer.c * plug-ins/common/spread.c -> noise-spread.c * plug-ins/common/struc.c -> apply-canvas.c * plug-ins/common/threshold_alpha.c -> threshold-alpha.c * plug-ins/common/tileit.c -> tile-small.c * plug-ins/common/tiler.c -> tile-seamless.c * plug-ins/common/uniteditor.c -> unit-editor.c * plug-ins/common/unsharp.c -> unsharp-mask.c * plug-ins/common/vinvert.c -> value-invert.c * plug-ins/common/vpropagate.c -> value-propagate.c * plug-ins/common/webbrowser.c -> web-browser.c * plug-ins/common/whirlpinch.c -> whirl-pinch.c * plug-ins/common/zealouscrop.c -> crop-zealous.c * plug-ins/common/plugin-defs.pl: changed accordingly. * plug-ins/common/Makefile.am: regenerated. 2008-03-24 Sven Neumann * app/actions/documents-commands.c (documents_remove_dangling_foreach): also remove the dangling item from GtkRecentManager. 2008-03-24 Sven Neumann Do not any longer keep the document history in two places. We only use GtkRecentManager now: * app/core/Makefile.am * app/core/gimp-documents.[ch]: removed these files. * app/core/gimpdocumentlist.c: removed code to load and save the "documents" file. (gimp_document_list_add_uri): call gimp_recent_list_add_uri() here. * app/core/gimpimagefile.[ch]: added function to set the mime-type. * app/core/gimp.c (gimp_restore): removed code to load the document history. (gimp_real_exit): removed code to save it. * app/core/gimp-gui.[ch]: extended the vtable with a method to populate the document list. * app/gui/gui-vtable.c: added code to populate the document history from the list of recently used files kept by GtkRecentManager. * app/gui/gui.c (gui_restore_callback): load the recent files here. * app/file/file-open.c * app/file/file-save.c: no need to call gimp_recent_list_add_uri() any longer as gimp_document_list_add_uri() does that for us now. * app/actions/documents-commands.c (documents_clear_cmd_callback): purge the items from GtkRecentManager. Also changed the dialog to emphasize that this operation now affects the document history in all applications. * docs/gimp.1.in: removed reference to "documents" file. 2008-03-23 Mukund Sivaraman * HACKING: Updated section on getting dependencies, as we don't want to encourage using deps from svn for building GIMP. 2008-03-24 Sven Neumann * plug-ins/common/dicom.c (dicom_loader): fixed potential crash on empty 16 bit images. 2008-03-23 Michael Natterer * app/widgets/gimpdialogfactory.c (gimp_dialog_factory_add_dialog): don't set the dialog's window geometry if it is already visible. Fixes empty display moving and shouldn't affect anything else since we always want to position dialogs before they are shown. 2008-03-23 Michael Natterer * app/display/gimpdisplayshell.c (gimp_display_shell_new): use the right GimpDisplayOptions to set the initial visibility of the shell's widgets. 2008-03-23 Michael Natterer * app/display/gimpstatusbar.c: implement GtkWidget::size_request() and also consider the children which can be invisible when the display is empty. * app/display/gimpdisplayshell.c (gimp_display_shell_style_set): set the minimum height of the display to menubar + statusbar height. 2008-03-23 Sven Neumann * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_expose): return TRUE after calling gimp_display_shell_canvas_expose_image(). 2008-03-23 Sven Neumann * app/dialogs/dialogs.c * app/display/gimpdisplayshell.c: changed "gimp-no-image-window" to "gimp-empty-image-window". 2008-03-23 Michael Natterer * app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale_resize): always need to fully expose the canvas now that "redisplay" was removed. 2008-03-23 Michael Natterer Never shrink the empty display when filling it, only grow: * app/display/gimpdisplayshell.[ch] * app/display/gimpdisplayshell-scale.[ch]: add "gboolean grow_only" parameters to shrink_wrap() APIs which restricts resizing of the window to growing. * app/display/gimpdisplayshell-scale.[ch] (gimp_displaY_shell_scale_resize): remove boolean "redisplay" parameter because is was always passed as TRUE. Add boolean "grow_only" instead and pass it on to shrink_wrap() * app/actions/view-commands.c * app/display/gimpdisplayshell-handlers.c: pass grow_only = FALSE. * app/display/gimpdisplayshell.c (gimp_display_shell_idle_fill): pass grow_only = TRUE. 2008-03-23 Michael Natterer * app/dialogs/dialogs.[ch]: added a dialog factory for displays and register "gimp-no-image-window" with it. * app/display/gimpdisplay.[ch]: add a GimpDialogFactory parameter to gimp_display_new() and pass it on to gimp_display_shell_new(). * app/display/gimpdisplayshell.[ch]: keep the passed GimpDialogFactory around. When the shell becomes empty, add it to the dialog factory and resize it to the remembered size; when it becomes non-empty, remove it from the dialog factory again. * app/gui/gui-vtable.c: pass the display dialog factory to gimp_display_new(). 2008-03-23 Michael Natterer * app/widgets/gimpdialogfactory.c: cleanup (move variables to local scopes), improve debugging outout. (gimp_dialog_factory_remove_dialog): disconnect signal handlers and unset any session management data which is attached to the widget, so this function can really be used to remove a dialog from the factory. 2008-03-23 Michael Natterer * app/widgets/gimpsessioninfo.c (gimp_session_info_get_geometry): use gdk_drawable_get_size() instead of looking at widget->allocation since the latter is not yet updated if this function is called from the dialog factory's "configure-event" callback. Fixes remembering of dialog sizes within one session. 2008-03-23 Michael Natterer * app/core/gimpcontext.c (gimp_context_real_set_display): set the image also if it is NULL. 2008-03-22 Sven Neumann * libgimp/gimppixbuf.c: fixed gtk-doc syntax. 2008-03-22 Sven Neumann * themes/Default/gtkrc * app/widgets/gimpmenudock.c: reduced minimum dock width to 200 pixels. * etc/sessionrc: use -0 instead of -1, just like in X geometry strings. Changed default dock sizes to be taller but less wide. * app/widgets/gimpsessioninfo.c: changed code to parse -0 from the sessionrc file and to deal more correctly with negative offsets. 2008-03-22 Sven Neumann * app/widgets/gimpsessioninfo.c (gimp_session_info_set_geometry): deal with negative positions read from the sessionrc file and interpret them as a hint to align the window with the right, respective bottom edge of the screen. * etc/sessionrc: position the toolbox in the upper left, the additional dock in the upper right corner of the screen. 2008-03-21 Sven Neumann * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): tweaked opacity calculation so that the opacity is only increased with smaller font sizes. 2008-03-21 Sven Neumann * app/core/gimptemplate.[ch]: moved defines to the header file and changed to 640x400 which is actually almost the golden mean as claimed by the comment. * app/display/gimpdisplayshell.c: use the defines here. 2008-03-21 Sven Neumann * app/core/gimptemplate.c: increased the size of the default image (to the next Fibonacci number for the development version and to 600x480 for GIMP 2.6). 2008-03-21 Sven Neumann * etc/controllerrc: bind Alt-Cursor Key to tools-value-1 instead of context-opacity (tools-value-1 is equivalent to context-opacity for paint tools). 2008-03-21 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_fill_idle): gtk_window_present() the image window to make sure that images aren't opened into a minimized image window. 2008-03-21 Michael Natterer * configure.in: revert new glib dependency. 2008-03-21 Michael Natterer * configure.in: require glib >= 2.16.1. Don't warn about deprecations for glib >= 2.19.0. Also forgot to commit the removal of --enable-toolbox-menu. 2008-03-21 Sven Neumann * app/gimp-log.[ch]: introduced log domain "menus". * app/menus/plug-in-menus.c: use gimp-log for debug output. 2008-03-21 Michael Natterer * app/display/gimpdisplayshell-close.c (gimp_display_shell_close): invoke the quit action instead of calling gimp_exit() so its sensitivity is taken into account. 2008-03-21 Michael Natterer Remove the toolbox menu: * configure.in: remove --enable-toolbox-menu option. * menus/Makefile.am * menus/toolbox-menu.xml.in: removed. * menus/image-menu.xml.in: add the debug menu here. * menus/menus.xsl: remove transformations depending on whether there is a toolbox menu or not. * app/menus/Makefile.am * app/menus/toolbox-menu.[ch]: removed. * app/menus/menus.c: remove the toolbox menu but keep the UI manager around so we can configure its actions separate from normal docks. * app/actions/image-actions.c (image_actions): remove the action for the toolbox menubar. * app/widgets/gimptoolbox.c: remove all menu code. * app/plug-in/plug-in-menu-path.c: map plug-in registered toolbox menu items to their new location in the image menu unconditionally. * plug-ins/common/screenshot.c * plug-ins/common/uniteditor.c * plug-ins/script-fu/script-fu.c * plug-ins/script-fu/scripts/web-browser.scm * plug-ins/twain/twain.c * plug-ins/winsnap/winsnap.c: remove menu registrations under /File and change /Help to /Help. Leave /Xtns untouched until its final location and name are decided. 2008-03-21 Michael Natterer * app/widgets/gimpdock.h (struct GimpDock): added member "ID" for themeing. * app/widgets/gimpdock.c (gimp_dock_init): assign unique IDs and set unique widget names based on the ID. (gimp_dock_style_set): set individual styles for each dock based on the widget name so docks on different screens get the correct font size. Use PANGO_SCALE_SMALL instead of a hardcoded factor of 0.8. 2008-03-21 Sven Neumann * themes/Default/images/Makefile.am * themes/Default/images/stock-gegl-24.png: removed... * themes/Default/images/stock-gegl-22.png: ... and added a cropped version that goes better with the other tool icons. * libgimpwidgets/gimpstock.c: changed accordingly. 2008-03-21 Michael Natterer * app/widgets/gimpdock.c (gimp_dock_style_set): some experimental and pretty evil code which reduces the font size in docks by 20%. 2008-03-21 Michael Natterer * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): make sure the drop label's opacity scales with its size so we don't end up with tiny text at 10% opacity. 2008-03-20 Michael Natterer * app/gui/gui-vtable.c (gui_display_create): add back code that made sure the newly created display/image combo is the user context's active one. 2008-03-20 Martin Nordholts * app/display/gimpdisplayshell-close.c (gimp_display_shell_close): gimp_exit() when closing the "no image" window. 2008-03-20 Martin Nordholts * app/gui/gui-vtable.c: Fix stupid mistake in previous commit... 2008-03-20 Martin Nordholts * app/gui/gui-vtable.c (gui_display_create): Make the logic clearer. (gui_get_empty_display): New helper function. 2008-03-20 Sven Neumann * app/gui/gui.c (gui_restore_after_callback): create the empty display before the other windows. * app/display/gimpdisplayshell.c (gimp_display_shell_new): center the empty window and create additional image windows under the mouse cursor. Just an experiment ... 2008-03-20 Sven Neumann * app/config/gimpguiconfig.c: changed default values for "toolbox-window-hint" and "dock-window-hint" to "utility". * app/widgets/gimptoolbox.c (gimp_toolbox_new): changed window title to "Toolbox". 2008-03-20 Michael Natterer * app/display/gimpdisplayshell.c (gimp_display_shell_new): make it work when called with display->image == NULL. Use a randomly picked canvas size for now, more later. (gimp_display_shell_fill): add missing call to gimp_display_shell_scale_changed(). * app/gui/gui.c (gui_restore_after_callback): create an empty display. 2008-03-20 Sven Neumann * plug-ins/uri/uri-backend-gio.c (get_protocols): guard against g_vfs_get_supported_uri_schemes() returning NULL. 2008-03-20 Sven Neumann * app/plug-in/gimppluginprocedure.c (gimp_plug_in_procedure_set_file_proc): don't allow "file:" to be registered as prefix. This seems to happen with the uri-gio plug-in when no gvfs backends are installed. 2008-03-20 Michael Natterer * app/display/gimpdisplayshell.[ch]: shrink-wrap the newly filled empty display in an idle function. 2008-03-20 Sven Neumann * plug-ins/uri/gimpmountoperation.c: make the dialogs transient to the progress window if no parent or screen has been set. 2008-03-20 Sven Neumann * plug-ins/common/gif-save.c: added a sanity check and abort when the image is too large. 2008-03-19 Michael Natterer * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_tool_events): enable the right click menu on the empty display. 2008-03-19 Michael Natterer * app/display/gimpdisplayshell.c (gimp_display_shell_empty): use the desktop default cursor for the empty display. 2008-03-19 Michael Natterer * app/display/gimpdisplayshell.c (gimp_display_shell_empty): the code to reset the cursor got lost when introducing this function. * app/display/gimpdisplayshell-dnd.c (gimp_display_shell_dnd_init): remove redundant casts. 2008-03-19 Michael Natterer * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): make the scale factor of the label 4/5 instead of 2/3 of the canvas and move the factor out of the MIN(). 2008-03-19 Michael Natterer * app/display/gimpdisplay-foreach.[ch] (gimp_displays_delete): add boolean "quit" parameter and leave the empty display open when it is FALSE. * app/dialogs/quit-dialog.c * app/actions/file-commands.c: pass quit = FALSE for "close all". * app/gui/gui.c: pass quit = TRUE when quitting. * app/actions/file-actions.c: fix sensitivity of "Close all". * app/actions/view-actions.c: fix sensitivity of "Close". 2008-03-19 Sven Neumann * app/display/gimpdisplayshell-callbacks.c: clean up after Martin. 2008-03-19 Michael Natterer * app/actions/view-commands.c: remove useless include. 2008-03-19 Martin Nordholts * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_expose): Refactor to emphasize logic. (gimp_display_shell_canvas_expose_image) (gimp_display_shell_canvas_expose_drop_zone): New helper functions. 2008-03-19 Sven Neumann * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_expose): return FALSE so that the default drag highlighting works. * app/display/gimpdisplayshell-dnd.c: only set the canvas as drop target, not the whole shell. * app/display/gimpdisplayshell.c: delay the call to gimp_display_shell_dnd_init() until after the canvas has been created. 2008-03-19 Sven Neumann * app/core/gimppalette-load.c (gimp_palette_load): skip empty lines. 2008-03-19 Sven Neumann * app/display/gimpdisplayshell.c * app/display/gimpdisplayshell-title.c * app/display/gimpstatusbar.[ch]: hide/show the cursor label and the unit and scale combo-boxes. 2008-03-19 Michael Natterer * app/display/gimpdisplay.[ch]: add gimp_display_empty()/fill() which turns it into an empty display and back. * app/display/gimpdisplayshell.[ch]: add same api here. * app/display/gimpdisplayshell-close.c * app/gui/gui-vtable.c: use the new functions instead of having the code here. * app/display/gimpdisplayshell-selection.c (gimp_display_shell_selection_control): stop the timeout and free the segments when this function is called on an empty display. 2008-03-19 Sven Neumann * plug-ins/uri/uri-backend-gio.c (copy_uri): fixed stupid bug. 2008-03-19 Sven Neumann * app/paint-funcs/paint-funcs.c: minor formatting cleanup. 2008-03-19 Sven Neumann * app/display/gimpdisplayshell-title.c: changed to only append GIMP_ACRONYM in the window title and not affect the status-bar. 2008-03-19 Sven Neumann * app/display/gimpdisplayshell.[ch] * app/display/gimpdisplayshell-scale.[ch]: moved gimp_display_shell_set_initial_scale() to gimpdisplayshell-scale.c. * app/display/gimpdisplayoptions.c: reverted last change, we want to keep the status-bar around. 2008-03-19 Michael Natterer * app/display/gimpdisplayshell.[ch] (gimp_display_shell_set_initial_scale): factored out this function which calculates the zoom factor for new images. Also returns the size of the canvas for that zoom factor. * app/gui/gui-vtable.c (gui_display_create): use it to set the initial scale of images loaded into the empty display, but don't set the display's size yet. 2008-03-19 Sven Neumann * app/display/gimpdisplayoptions.c (gimp_display_options_no_image_class_init): hide the status-bar, at least for now. 2008-03-19 Sven Neumann * app/widgets/gimpdockable.c * app/widgets/gimpwidgets-utils.[ch]: moved utility function for setting attributes on a PangoLayout out of gimpdockable.c. * app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): use a bold font and paint the layout with transparency. 2008-03-19 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_update_icon): deal with NULL image and unset the icon. * app/display/gimpdisplay.c (gimp_display_set_image): unset the icon when no image is set. * app/display/gimpdisplayshell-title.c (gimp_display_shell_format_title): use GIMP_NAME as the window title when no image is set. Append GIMP_ACRONYM otherwise. 2008-03-18 Michael Natterer * app/display/gimpdisplayoptions.[ch]: add new options object for the "no image" display appearance. * app/display/gimpdisplayshell.[ch]: keep one of them around. * app/display/gimpdisplayshell-appearance.[ch]: use the options object when the display is empty. Add guards against no image to some functions. Add gimp_display_shell_appearance_update() which sets all options according to the current display state (normal, fullscreen, no image). * app/actions/view-actions.c: don't allow to configure the GUI of the empty display. * app/display/gimpdisplayshell-callbacks.c: use the new appearance update function instead of doing it all here. * app/display/gimpdisplayshell-close.c * app/gui/gui-vtable.c: update the appearance when clearing or filling the display. * app/display/gimpdisplayshell-selection.c: forgot some guards against empty displays. 2008-03-18 Michael Natterer First draft of the "no image open" window, which is implemented as a display without image (a view with NULL model). Didn't change the display's appearance yet so I can first make sure the display without image works properly in all details before hiding these details. * app/core/gimp-gui.[ch]: add "gimp" parameter to display_create() and allow "image" to be NULL. * app/core/gimpcontext.c (gimp_context_real_set_display): a display's image can be NULL now. * app/display/gimpdisplay.[ch]: add Gimp and GimpDisplayConfig members. Add Gimp parameter to gimp_display_shell_new(). Changed gimp_display_reconnect() to gimp_display_set_image() and allow to set a NULL image. * app/gui/gui-vtable.c (gui_display_create): if there is a single display without an image, call gimp_display_set_image() on that display instead of creating a new one. * app/display/gimpdisplayshell-close.c: if the last display is closed, don't close it but make it empty. Factored out that code to gimp_display_shell_really_close(). * app/display/gimpdisplayshell-dnd.c: when dropping uris on an empty display, open the first one into that display and the other ones as layers of the newly opened image. This is consistent with dropping on an existing image but maybe needs some discussion. * app/display/gimpdisplayshell-callbacks.c: bail out early in the tool event callback so tools never have to deal with empty displays. In expose(), draw the drop zone on the empty display. * app/display/gimpdisplayshell-title.c: set the empty display's title to "Gimp - Drop Files". * app/display/gimpdisplay-foreach.c * app/display/gimpdisplay-handlers.c * app/display/gimpdisplayshell-appearance.c * app/display/gimpdisplayshell-autoscroll.c * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-cursor.c * app/display/gimpdisplayshell-dnd.c * app/display/gimpdisplayshell-draw.c * app/display/gimpdisplayshell-filter-dialog.c * app/display/gimpdisplayshell-handlers.c * app/display/gimpdisplayshell-layer-select.c * app/display/gimpdisplayshell-preview.c * app/display/gimpdisplayshell-render.c * app/display/gimpdisplayshell-scale.c * app/display/gimpdisplayshell-scroll.c * app/display/gimpdisplayshell-selection.c * app/display/gimpdisplayshell-title.c * app/display/gimpdisplayshell.c * app/display/gimpnavigationeditor.c * app/display/gimpstatusbar.c: use display->gimp and display->config instead of going via the image. Guard against empty displays in some few places (most places can't be called). Where needed, use the canvas' dimensions instead of the image's dimensions so scroll offsets and scrollbars still have sane values instead of the last image's ones. * app/actions/actions.c (action_data_get_gimp) (action_data_get_context): use display->gimp instead of display->image->gimp. * app/actions/edit-commands.c (edit_paste_cmd_callback): redirect to "paste as new" if there is an empty display. * app/actions/tools-commands.c (tools_select_cmd_callback): don't initialize the new tool on an empty display. * app/actions/view-actions.c (view_actions_update): changed lots of sensitivity settings to be insensitive when there is no image (instead of no display). * app/actions/view-commands.c: use the display's config object instead of gimp's. 2008-03-18 Michael Natterer * app/display/gimpcanvas.[ch]: add gimp_canvas_draw_drop_zone() which simply renders a big "Drop Here" on the canvas. Replaced Gimp member and construct property by GimpDisplayConfig. * app/display/gimpdisplayshell.c (gimp_display_shell_new): changed accordingly. 2008-03-18 Sven Neumann * plug-ins/uri/uri-backend-gio.c (uri_progress_callback): corrected last change. 2008-03-18 Sven Neumann * app/config/gimpguiconfig.c (DEFAULT_WEB_BROWSER): changed default web-browser to xdg-open. Fixes bug #522483. 2008-03-18 Sven Neumann * plug-ins/uri/uri-backend-gio.c: only update the progress up to ten times per second. 2008-03-18 Sven Neumann * plug-ins/uri/gimpmountoperation.c: set alternative button order on the password dialog (same change done in GTK+). 2008-03-18 Sven Neumann * plug-ins/uri/Makefile.am * plug-ins/uri/gimpmountoperation.[ch]: added a temporary copy of GtkMountOperation until we depend on the next stable GTK+ release. Converted to GIMP namespace to avoid symbol collisions. * plug-ins/uri/uri-backend-gio.c: use the new mount operation. 2008-03-17 Sven Neumann * plug-ins/common/png.c: formatting. 2008-03-13 Michael Natterer * plug-ins/common/tiff-load.c (load_image): set the original filename only if all pages were loaded as layers; if a subset was loaded, set the filename to ".tiff-n-of-m-pages" so a simple "save" won't overwrite the original file without the user changing the filename explicitely. 2008-03-13 Sven Neumann * plug-ins/common/tiff-load.c (load_image): set a filename on the image, even when not all images are imported as layers (bug #521436). 2008-03-12 Sven Neumann * plug-ins/uri/uri-backend-gio.c: improved password dialog. 2008-03-12 Michael Natterer * app/actions/data-commands.c * app/actions/debug-commands.c * app/actions/dockable-commands.c * app/dialogs/stroke-dialog.c * app/display/gimpdisplayshell-handlers.c * app/gui/gui-message.c * app/gui/gui.c * app/tools/gimpforegroundselectoptions.c * app/tools/gimpinkoptions-gui.c * app/widgets/gimpcolordialog.c * app/widgets/gimpcontainerpopup.c * app/widgets/gimpcontainerview-utils.c * app/widgets/gimpdock.c * app/widgets/gimpdockable.c * app/widgets/gimpsessioninfo-book.c * app/widgets/gimpsessioninfo-dock.c * app/widgets/gimptoolbox.c * app/widgets/gimpunitcombobox.c * app/widgets/gimpviewablebox.c * libgimp/gimpexport.c * libgimpmodule/gimpmodule.h * libgimpwidgets/gimpenumwidgets.c * libgimpwidgets/gimpframe.c * libgimpwidgets/gimpoldwidgets.c * libgimpwidgets/gimpwidgets.c * plug-ins/MapObject/mapobject_ui.c * plug-ins/common/papertile.c * plug-ins/common/sinus.c * plug-ins/flame/flame.c * plug-ins/helpbrowser/gimpthrobber.c * plug-ins/script-fu/scheme-wrapper.c * plug-ins/script-fu/script-fu-console.c: use accessors instead of accessing GtkBin.child and GtkPaned.child1,2 directly. 2008-03-12 Sven Neumann * plug-ins/uri/uri-backend-gio.c: added password and question dialogs needed for mounting volumes. This code is untested. 2008-03-12 Åsmund Skjæveland * configure.in: Added nn to ALL_LINGUAS. 2008-03-12 Sven Neumann * plug-ins/uri/uri.c: updated copyright. * plug-ins/uri/uri-backend-gio.c: ask the GVfs backend for the supported URI schemes. 2008-03-11 Sven Neumann * plug-ins/uri/uri-backend-gio.c: improved error handling. 2008-03-11 Sven Neumann * INSTALL * configure.in: added --without-gio configure option. * plug-ins/uri/Makefile.am: prefer the GIO backend. * plug-ins/uri/uri-backend-gio.c * plug-ins/uri/uri-backend-libcurl.c * plug-ins/uri/uri-backend-gnomevfs.c: improved progress messages. 2008-03-11 Sven Neumann * configure.in: added a check for gio-2.0. * plug-ins/uri/Makefile.am * plug-ins/uri/uri-backend-gio.c: added a first draft of an URI plug-in based on GIO/GVfs. 2008-03-11 Michael Natterer * app/core/gimpbrushgenerated.c: reorder and rename local functions and prototypes to be consistent with other objects. Misc minor cleanup. 2008-03-10 Sven Neumann * app/widgets/gimpdockable.[ch] * app/widgets/gimpdockbook.c: moved code for the drag widget to GimpDockable. Use semi-bold text for the drag widget also. 2008-03-10 Sven Neumann * app/paint/gimpink.c (gimp_ink_motion): formatting. 2008-03-10 Michael Natterer * app/vectors/gimpanchor.c (gimp_anchor_copy): use g_slice_dup() instead of copying the struct contents manually. 2008-03-09 Michael Natterer Fix mishandling of the "antialias" GParamSpec. Fixes bug #521069: * app/tools/gimpselectionoptions.c: remove gimp_selection_options_reset() which used to set the default for "antialias" depending on the tool type (which is impossible since the antialias GParamSpec only exists once, and not once for each subclass). * app/tools/gimpforegroundselectoptions.c: override the antialias property here and default to FALSE. 2008-03-09 Michael Natterer * app/tools/gimprectangleselecttool.[ch] * app/tools/gimprectangleselectoptions.[ch] * app/tools/gimpellipseselecttool.[ch] * app/tools/gimp-tools.c: s/Rect/Rectangle/ and s/rect/rectangle/ in types and function names. 2008-03-09 Michael Natterer * app/tools/Makefile.am * app/tools/gimpiscissorsoptions.[ch] * app/tools/gimpregionselectoptions.[ch]: new options classes. * app/tools/gimpselectionoptions.[ch]: remove the options here. Also remove some leftover rectangle options cruft that is in its own files since long ago. * app/tools/gimpbycolorselecttool.c * app/tools/gimpfuzzyselecttool.c * app/tools/gimpiscissorstool.[ch] * app/tools/gimpregionselecttool.[ch] * app/widgets/gimpselectioneditor.c: changed accordingly. 2008-03-09 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_setup_snap_offsets): Make the GimpCoords used for snap calculations depend on the precision mode of the rectangle. This gives a more pleasant experience when resizing and moving the rectangle with an image zoom factor larger than 100%. 2008-03-08 Sven Neumann Experimental attempt to gain a little more horizontal space for the tool options: * app/widgets/gimptooloptionseditor.c: removed the shadow from the viewport and the border from the vbox. * app/widgets/gimpdockable.c: use a semibold label for the title. 2008-03-08 Sven Neumann * app/tools/gimpflipoptions.c * app/tools/gimpmoveoptions.c * app/tools/gimpselectionoptions.c * app/tools/gimptransformoptions.c: don't add the label into the stock box, use an extra hbox with 2 pixels spacing. 2008-03-08 Martin Nordholts * app/tools/gimppolygonselecttool.c: Don't draw the handle for a vertex while it is being moved. 2008-03-08 Martin Nordholts * app/tools/gimprectangletool.c: Added TODO on how to improve the code by changing the way the rectangle is represented internally. 2008-03-07 Sven Neumann * etc/controllerrc: changed default mouse-wheel bindings to act on the active tool instead of controlling the context. 2008-03-07 Sven Neumann * app/display/gimpdisplayshell-preview.c: minor optimization. 2008-03-06 Michael Natterer * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_tool_events): minor formatting fixes. 2008-03-06 Michael Natterer * app/pdb/gimppdb-utils.[ch]: add gimp_pdb_get_vectors_stroke() which is a replacement for gimp_vectors_stroke_get_by_ID() and sets an error message if the stroke doesn't exist. * tools/pdbgen/pdb/vectors.pdb: use it. * app/pdb/vectors_cmds.c: regenerated. 2008-03-06 Sven Neumann * app/actions/tools-actions.c * app/actions/tools-commands.[ch] * app/tools/gimptransformtool.c: allow to control the preview opacity by actions (defaults to < to > keys). 2008-03-06 Sven Neumann * app/tools/gimptransformtool.c * app/tools/gimptransformoptions.[ch] * app/display/gimpdisplayshell-preview.c: take the preview opacity from the transform tool options. Based on a patch from Tom Lechner. Closes bug #520690. 2008-03-06 Sven Neumann * app/display/gimpdisplayshell-preview.c: don't do the blending here, just apply the opacity on the pixbuf's alpha channel. 2008-03-05 Sven Neumann * app/display/gimpdisplayshell-preview.c: applied a modified and further optimized version of the patch from Tom Lechner as attached to bug #167926. This makes the transform preview take the layer opacity into account. Needs some more work... 2008-03-05 Sven Neumann * app/tools/gimptransformtool.[ch]: applied some unrelated cleanups from a patch from Tom Lechner (from bug #167926). 2008-03-05 Michael Natterer * app/display/gimpdisplayshell.h: changed PROJ_ROUND() macros to use RINT() so they work correctly with negative numbers. * app/tools/gimpdrawtool.c (gimp_draw_tool_draw_line) (gimp_draw_tool_draw_dashed_line) (gimp_draw_tool_draw_rectangle) (gimp_draw_tool_draw_arc) (gimp_draw_tool_draw_boundary): use floating-point coordinate transform functions again. These functions were changed to use integer transform functions in 2004 (!!) which broke sub-pixel precision drawing for stuff like straight-line and blend tool and also sub-pixel drawing of the brush outline. Should be backported to 2.4 after it has shown no ill effects in trunk. 2008-03-04 Sven Neumann * app/actions/edit-commands.c (edit_copy_visible_cmd_callback) (edit_cut_cmd_callback): added statusbar messages informing the user that pixels have been transferred to the clipboard. 2008-03-04 Sven Neumann * app/core/gimpdrawable-transform.c (gimp_drawable_transform_cut): clear the selection after cutting it as gimp_selection_extract() doesn't do this for us any longer. See bug #510534. 2008-03-02 Sven Neumann * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-coords.c (gimp_display_shell_eval_event): applied slightly modified patch from Alexia Death as attached to bug #508639. 2008-03-01 Martin Nordholts * app/tools/gimppolygonselecttool.c (gimp_polygon_select_tool_draw): Only draw the grabbed point, not all points. Drawing all points adds unnecessary clutter to the user interface. (gimp_polygon_select_tool_select_closest_point): Handle drawing of grabbed points. 2008-02-29 Michael Natterer * app/gui/ige-mac-menu.[ch]: synced copies from upstream. 2008-02-28 Michael Natterer * app/core/gimpcurve.[ch]: get rid of fixed-size arrays and allocate the points and curve arrays dynamically. Added "n-points" and "n-samples" CONSTRUCT_ONLY properties. Renamed member "curve" to "samples". Lots of code changes to work with dynamic limits rather than 17 and 256. * app/core/gimpdrawable-curves.c * app/gegl/gimpcurvesconfig.c * app/tools/gimpcurvestool.c * app/widgets/gimpcurveview.c: changed accordingly. 2008-02-28 Michael Natterer * cursors/Makefile.am * cursors/gimp-tool-cursors.xcf * cursors/tool-polygon-select.png * cursors/xbm/tool-polygon-select.xbm * cursors/xbm/tool-polygon-select-mask.xbm * app/widgets/widgets-enums.h * app/widgets/gimpcursor.c: new cursor for polygon select. * app/tools/gimppolygonselecttool.c: use it. 2008-02-27 Sven Neumann * INSTALL * configure.in: depend on GEGL 0.0.16 or newer. 2008-02-27 Sven Neumann * app/core/gimpdrawable-transform.c (gimp_drawable_transform_affine): pass the direction parameter down to gimp_drawable_transform_tiles_affine() instead of hardcoding it to GIMP_TRANSFORM_FORWARD. Fixes bug #518910. 2008-02-27 Sven Neumann * app/gui/gui-vtable.c (gui_display_create): added a sanity check which might help to catch the problem reported in bug #518905. 2008-02-26 Sven Neumann * app/Makefile.am (gimp_2_5_LDFLAGS): don't assume that global AM_LDFLAGS and per-target LD_FLAGS would sum up and explicitly add AM_LDFLAGS to gimp_2_5_LDFLAGS. 2008-02-26 Sven Neumann * plug-ins/print/print.h (struct PrintData): removed unused field. * plug-ins/print/print-page-layout.c: set a minimum size of 1/100 of the paper size. 2008-02-26 Michael Natterer * app/tools/gimppolygonselecttool.c: draw handles at the corners and use the MOVE cursor modifier when we are moving them. Fix draw tool pause/resume in button_press() plus some minor cleanup. 2008-02-26 Sven Neumann * plug-ins/print/print-page-layout.[ch] * plug-ins/print/print.c: pressing F1 on the "Image Settings" tab calls the GIMP help browser. 2008-02-26 Sven Neumann * libgimpwidgets/gimpchainbutton.c: use a private inner class directly derived from GtkWidget for drawing the lines. This saves us two input windows. 2008-02-26 Sven Neumann * plug-ins/print/print-preview.c: take the reading direction into account and do the right thing for RTL languages. 2008-02-26 Kevin Cozens * plug-ins/script-fu/scripts/frosty-logo.scm: Commited slightly modified patch from LightningIsMyName. Fixes bug #472316. The appearance of the sparkle layer could be better. 2008-02-26 Michael Natterer * app/display/gimpdisplayshell-transform.[ch] (gimp_display_shell_transform_points) * app/tools/gimpdrawtool.[ch] (gimp_draw_tool_draw_lines): take arrays of GimpVector2 instead of arrays of gdouble to represent the input points. * app/display/gimpdisplayshell-draw.c * app/tools/gimppolygonselecttool.c * app/tools/gimpfreeselecttool.c: don't cast the GimpVector2 arrays to double arrays when passing them to above functions. * app/tools/gimpiscissorstool.c: create a temporary GimpVector2 array instead of a temporary gdouble array. 2008-02-26 Michael Natterer * app/tools/gimppolygonselecttool.c: rename member num_points to n_points and various small cleanups all over the place. 2008-02-26 Sven Neumann * configure.in: use AM_PROG_CC_C_O to fix warning with automake 1.10. Removed obsolete call to AM_PROG_CC_STDC. 2008-02-26 Sven Neumann * app/version.c (gimp_show_library_version): made the library version information easier to translate. 2008-02-26 Tor Lillqvist * app/version.c (gimp_show_library_versions): Show also GEGL version. 2008-02-26 Sven Neumann * plug-ins/print/print-preview.c: create a Cairo image surface from the data returned from gimp_drawable_get_thumbnail() instead of using an intermediate GdkPixbuf. This code should eventually end up in libgimpui. 2008-02-26 Sven Neumann * docs/gimp.1.in: document the "--version --verbose" option. 2008-02-26 Tor Lillqvist * app/version.[ch]: New files. Rename gimp_show_version() to gimp_version_show() and move here. When given both --version and --verbose, print build-time and run-time versions of the most important dependencies. * app/Makefile.am: Add them. * app/main.c: Call gimp_version_show(). * app/Makefile.am: Use -mwindows only for the GUI gimp, not for gimp-console. 2008-02-26 Sven Neumann * plug-ins/print/print-preview.c * plug-ins/print/print-page-layout.c: let the preview widget allocate a reasonable size. 2008-02-26 Sven Neumann * plug-ins/print/print-preview.c: use a different cursor when dragging, just like GimpScrolledPreview. 2008-02-26 Sven Neumann * libgimpwidgets/gimpchainbutton.c: use event boxes without visible window instead of drawing areas for the lines besides the button. Fixes the background which was drawn wrongly for many themes. 2008-02-26 Sven Neumann * plug-ins/print/print-preview.[ch]: derive from GtkEventBox and draw on the parent window. * plug-ins/print/print-page-layout.c: tweaked dialog layout. 2008-02-25 Sven Neumann * plug-ins/print/Makefile.am * plug-ins/print/print-utils.[ch]: added new files with utility functions. * plug-ins/print/print-settings.c: use the new utility functions for loading and saving GKeyFile. * plug-ins/print/print-page-setup.[ch] * plug-ins/print/print.c: also store the page setup in an image parasite. Fixes most of what remained to be done for bug #513291. 2008-02-25 Sven Neumann * plug-ins/print/print-settings.[ch] * plug-ins/print/print.c: code cleanup. 2008-02-25 Sven Neumann * plug-ins/print/print.c (end_print): use g_timeout_add_seconds(). 2008-02-24 Sven Neumann * app/actions/edit-actions.c: removed default keyboard shortcuts from actions that work with named buffers. Use Ctrl-Shift-V as the default keyboard shortcut for "Paste As New Image" and Ctrl-Shift-C for "Copy Visible". 2008-02-24 Sven Neumann * plug-ins/print/print.c (print_image): added missing call to gtk_print_operation_set_unit(). 2008-02-22 Sven Neumann * plug-ins/print/print.c: use GTK_STOCK_PAGE_SETUP when compiled against GTK+ >= 2.13.0. 2008-02-22 Sven Neumann * plug-ins/print/print-draw-page.c: added support for grayscale images so we don't need to go through an extra export step. 2008-02-22 Sven Neumann * plug-ins/print/print.c * plug-ins/print/print-draw-page.[ch]: code cleanup. 2008-02-22 Sven Neumann * plug-ins/common/tileit.c * plug-ins/common/warp.c * plug-ins/common/struc.c: fixed the same problem as in the Wind plug-in here as well (see bug #516369). 2008-02-22 Sven Neumann * plug-ins/print/print-draw-page.c (draw_page_cairo): when printing an image with alpha channel, use a Cairo surface with alpha channel instead of doing a blend on a white background. 2008-02-22 Sven Neumann * plug-ins/print/print-draw-page.c (draw_page_cairo): access the pixels tile-by-tile instead of row-by-row. 2008-02-22 Sven Neumann * plug-ins/common/wind.c (render_wind) (render_blast): fixed calls to gimp_drawable_mask_intersect() which was causing a crash as reported in bug #516369. 2008-02-21 Michael Natterer * app/actions/plug-in-actions.c (plug_in_actions_history_changed): don't call plug_in_actions_update() because that updated the sensitivity of *all* plug-in actions according to the properties of the *current* image. Instead, look up the original GtkAction of the history items of *this* action group and copy the sensitivity from that action. Fixes bug #517683. 2008-02-21 Sven Neumann * tools/pdbgen/app.pl (marshal_outargs): insert a missing newline for procedures without additional return values. * tools/pdbgen/pdb/display.pdb: cosmetics. * app/pdb/brushes_cmds.c * app/pdb/context_cmds.c * app/pdb/display_cmds.c * app/pdb/fonts_cmds.c * app/pdb/gradients_cmds.c * app/pdb/palettes_cmds.c * app/pdb/patterns_cmds.c: regenerated. 2008-02-21 Sven Neumann * plug-ins/print/print-preview.[ch]: code cleanup. 2008-02-21 Sven Neumann * plug-ins/print/print-preview.[ch]: provide feedback when hovering over the preview. 2008-02-21 Sven Neumann * plug-ins/print/print-preview.c (gimp_print_preview_expose_event): changed drawing so that strokes are not scaled. 2008-02-20 Michael Natterer * app/core/gimpcurve.c: add precondition checks. * app/core/gimpdrawable-curves.c (gimp_drawable_curves_spline): divide values by 255 before setting them on the curve. Fixes crash when using curves from the PDB. 2008-02-19 Sven Neumann * plug-ins/print/print-preview.c (gimp_print_preview_expose_event): code cleanup. Always draw the preview. 2008-02-19 Bill Skaggs * plug-ins/jpeg/jpeg-exif.c: correctly record dimensions when saving an image. Fixes bug #517077. 2008-02-19 Sven Neumann * app/app.c * app/batch.c * app/core/gimp.c * app/gui/gui.c: use G_STRFUNC instead of hardcoding the function name in verbose output. 2008-02-19 Sven Neumann * plug-ins/script-fu/scripts/glossy.scm: actually use the "Default Bumpmap Settings" parameter. Problem spotted by Ulf-D. Ehlert. 2008-02-19 Sven Neumann * plug-ins/script-fu/scripts/glossy.scm: applied patch from Ulf-D. Ehlert that fixes a bug in the Glossy script when used with a pattern instead of a gradient blend (bug #517285). 2008-02-19 Manish Singh * plug-ins/pygimp/gimpmodule.c: add gimp.exit(), a wrapper around the PDB function gimp-quit. 2008-02-18 Sven Neumann * app/batch.c (batch_exit_after_callback): synced cleanup procedure with app_exit_after_callback() and documented its purpose. 2008-02-18 Michael Natterer * app/tools/gimpgegltool.c (gimp_gegl_tool_config_get_property): clean up generic property handling of generated settings classes. 2008-02-18 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_initialize): don't create the recent settings menu if the tool did not set a config object. * app/tools/gimpgegltool.[ch]: pack the operation's settings in a frame and add a label when there is no operation selected. 2008-02-16 Michael Natterer * app/display/gimpdisplayshell-callbacks.c * app/tools/gimpforegroundselecttool.c * app/tools/gimpimagemaptool.c * app/tools/gimpiscissorstool.c * app/tools/gimppolygonselecttool.c * app/tools/gimprectangletool.c * app/tools/gimptransformtool.c * app/tools/gimpvectortool.c * app/widgets/gimpcontainerpopup.c * app/widgets/gimppaletteview.c * libgimpwidgets/gimpcolorhexentry.c * libgimpwidgets/gimpnumberpairentry.c * plug-ins/script-fu/script-fu-console.c: Unify the handling of various "Enter" and "Space" keysyms all over the place. Fixes bug #516544 (also see gtk bug #515047). 2008-02-15 Kevin Cozens * configure.in: Adding a ; to the end of the list of mime types in the gimp.desktop file. Fixes 'make dist'. 2008-02-14 Michael Natterer * libgimpwidgets/Makefile.am * libgimpwidgets/gimpscaleentry.[ch]: cleanup. 2008-02-14 Bill Skaggs Merged from weskaggs branch at Mitch's request. Will need to update devel docs. Place scale entry code into separate files, no functional changes. * libgimpwidgets/gimpscaleentry.c * libgimpwidgets/gimpscaleentry.h: new files. * libgimpwidgets/gimpwidgets.[ch] * libgimpwidgets/Makefile.am: changed accordingly. 2008-02-14 Sven Neumann * app/text/gimpfont.c (gimp_font_get_sample_string): check if the font has the glyphs from the sample string. Fixes bug #514021. 2008-02-13 Bill Skaggs * plug-ins/common/vpropagate.c: change "darker" to "lighter" in blurb, in response to comment #24 in bug #156545. 2008-02-13 Bill Skaggs * app/widgets/gimpcolormapeditor.c: change wording of new hint for non-indexed images. 2008-02-12 Michael Natterer * app/gegl/gimpoperationcolorbalance.c * app/gegl/gimpoperationcolorize.c * app/gegl/gimpoperationcurves.c * app/gegl/gimpoperationdesaturate.c * app/gegl/gimpoperationhuesaturation.c * app/gegl/gimpoperationlevels.c * app/gegl/gimpoperationposterize.c * app/gegl/gimpoperationthreshold.c * app/gegl/gimpoperationtilesink.c * app/gegl/gimpoperationtilesource.c: added categories and very lame descriptions. Dunno if the categories are good that way but at least they are not NULL now. 2008-02-12 Sven Neumann * app/widgets/gimpcolormapeditor.[ch]: show a hint on non-indexed images. Based on a patch from Olof Frahm. Closes bug #438217. 2008-02-12 Sven Neumann * plug-ins/gfli/fli.c: applied patch from David Capello that fixes loading of fli files that specify width and height as zero (interpreting this as 320x200). It also fixes a problem in an unused code path (writing of differential color chunks). 2008-02-12 Sven Neumann * app/widgets/gimplanguagestore-parser.c: inverted logic; #ifdef is IMO easier to read than #ifndef. 2008-02-12 Tor Lillqvist * app/widgets/gimplanguagestore-parser.c (gimp_language_store_populate): Don't use the compile-time paths to iso-codes on Windows. Instead assume iso-codes is installed in the same location as GIMP. Make sure translated language names are in UTF-8 by calling bind_textdomain_codeset(). 2008-02-11 Sven Neumann * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/widgets/gimplanguageentry.[ch] * app/widgets/gimptexteditor.c: turned language entry into a widget. 2008-02-11 Michael Natterer * app/widgets/gimptexteditor.c (gimp_text_editor_new): enable wrapping so the text doesn't scroll out horizontally. 2008-02-11 Sven Neumann * plug-ins/pygimp/plug-ins/pyconsole.py: formatting. 2008-02-11 Michael Natterer * app/core/gimpcurve.[ch]: add gimp_curve_get_point(). * app/gegl/gimpcurvesconfig.c * app/widgets/gimpcurveview.c: use it instead of accessing the points array directly. 2008-02-11 Sven Neumann * libgimpthumb/Makefile.am (libgimpthumb_2_0_la_LIBADD): explicitly added GLIB_LIBS. Fixes bug #515566. 2008-02-11 Øyvind Kolås * app/gegl/gimpoperationtilesource.c: context_id argument was removed from the process() call of GeglOperationSource. 2008-02-10 Michael Natterer * app/widgets/gimpeditor.c: add button-relief style property which defaults to NONE. 2008-02-10 Bill Skaggs * app/widgets/gimpeditor.c: draw editor buttons without relief, see bug #515621. 2008-02-09 Bill Skaggs * plug-ins/common/ripple.c: add a "phase shift" control, for interactive use only. Fixes bug #515144. 2008-02-09 Michael Natterer * tools/pdbgen/pdb/color.pdb: don't include * app/pdb/color_cmds.c: regenerated. 2008-02-09 Øyvind Kolås * app/gegl/gimpoperationtilesource.c: %s/get_defined_region/get_bounding_box/ %s/adjust_result_region/get_cached_region/ 2008-02-09 Michael Natterer * app/core/gimpcurve.[ch]: keep the anchor points as an array of GimpVector2 instead of plain doubles. * app/gegl/gimpcurvesconfig.c * app/widgets/gimpcurveview.c: changed accordingly. 2008-02-09 Michael Natterer * app/widgets/gimpcurveview.c (gimp_curve_view_draw_point): cleanup. 2008-02-09 Michael Natterer * app/widgets/gimpcurveview.[ch]: port internal cursor stuff to gdouble, fix off-by-one in curve drawing, fix drawing artefact in handle drawing by starting drawing on the handle's outline and not its center. 2008-02-09 Michael Natterer * app/widgets/gimpcurveview.[ch]: port the "xpos" API to [0.0..1.0] doubles too. * app/tools/gimpcurvestool.[ch]: rename "col_value" member to "picked_color" and use gdouble instead of gint. Also use GimpCurve API to map the values instead of accessing the curve directly. Fixes setting curve anchor points by color picking. 2008-02-09 Michael Natterer * app/core/gimpcurve.[ch]: changed all values to be [0.0..1.0] doubles instead of [0..255] integers. Also changed the API to use doubles instead of ints. Still have the fixed-size arrays though. (gimp_curve_map): new function to map values. * app/gegl/gimpoperationcurves.c: remove private map() function and use the one from GimpCurve. * app/gegl/gimpcurvesconfig.c * app/core/gimpdrawable-curves.c: port to the new gdouble API. * app/tools/gimpcurvestool.c: use gimp_curve_get_uchar() to get the arrays for the color bars. * app/widgets/gimpcurveview.[ch]: port to gdouble and some cleanup. 2008-02-08 Sven Neumann * app/widgets/gimptexteditor.c: use an entry with completion for language selection. Still not functional. 2008-02-08 Sven Neumann * app/widgets/gimplanguagestore.[ch] * app/widgets/gimplanguagestore-parser.c: actually populate the language store. Still work in progress... * app/widgets/gimptexteditor.c: added a combo-box for language selection. Not functional yet; just something to play with. 2008-02-08 Sven Neumann * app/widgets/gimplanguagestore-parser.c: implemented the parser. * app/dialogs/tips-parser.c: minor cleanup. 2008-02-08 Tor Lillqvist * libgimpconfig/gimpconfig.def: Add gimp_config_copy. 2008-02-07 Michael Natterer * tools/pdbgen/app.pl: add some perl evilness to make the includes in the generated files look almost like they should. * tools/pdbgen/pdb/*.pdb: remove inclusion of "core/gimp.h" where not needed, clean up lists of includes and functions and reorder some functions to make more sense. Zero logic changed. * app/pdb/*_cmds.c * libgimp/gimpcontext_pdb.[ch] * libgimp/gimpbrush_pdb.[ch]: regenerated. 2008-02-07 Sven Neumann * configure.in: added configure checks for the iso-codes package. * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/widgets/gimplanguagestore.[ch]: * app/widgets/gimplanguagestore-parser.[ch]: added rough outline of GtkListStore for language selection. 2008-02-07 Michael Natterer * app/base/base-utils.[ch]: add get_pid() which returns getpid(). * app/base/base.c * app/base/tile-swap.c * app/core/gimp-utils.c * app/plug-in/gimppluginshm.c * app/widgets/gimpselectiondata.c * tools/pdbgen/pdb/misc.pdb: use it instead of getpid() and remove all the #ifdef'ed includes getpid() needs. * tools/pdbgen/app.pl: remove support for these includes. Also remove some perl cruft in the include handling which is not needed any longer. * app/pdb/misc_cmds.c: regenerated. 2008-02-07 Michael Natterer * app/app.c: #include instead of 2008-02-07 Sven Neumann * app/text/gimptext-parasite.c: formatting. 2008-02-06 Michael Natterer * app/tools/gimpgegltool.c (gimp_param_spec_duplicate) * app/widgets/gimppropwidgets.c (gimp_prop_table_new): add support for GParamSpecEnum. * app/core/gimpimagemap.c (gimp_image_map_apply): add even better checks for input and output pads of the passed operation. 2008-02-06 Michael Natterer * app/paint/gimpclone.c * app/paint/gimpheal.c * app/paint/gimpink.c * app/widgets/gimphistogrameditor.c: remove includes that are not needed any longer. 2008-02-06 Michael Natterer * app/gegl/gimpoperationposterize.c * app/gegl/gimpoperationhuesaturation.c (process): don't crash if there is no config object. 2008-02-06 Michael Natterer * app/core/gimpimagemap.c (gimp_image_map_apply): when using a source operation, blend its output over the original image using "over" instead of simply replacing the original image. 2008-02-06 Michael Natterer * app/tools/gimpgegltool.c (gimp_param_spec_duplicate) * app/widgets/gimppropwidgets.c (gimp_prop_table_new): support multiline text and file paths. The multiline support is hacked up and needs some proper solution. 2008-02-05 Michael Natterer * app/tools/gimpgegltool.c: don't include any longer. 2008-02-05 Michael Natterer * app/widgets/gimppropwidgets.c (gimp_prop_table_new): don't forget the label for entry widgets. 2008-02-05 Martin Nordholts Applied patch from Olof Frahm which makes loading of data files (brushes and so on) happen recursively (bug #514160). * app/core/gimpdatafactory.c (gimp_data_factory_data_load): Recursively search sub directories for data files using the new helper function (gimp_data_factory_load_data_recursive) 2008-02-05 Sven Neumann * app/tools/gimpgegltool.c: spelling fix. 2008-02-05 Michael Natterer * app/core/gimpimagemap.c (gimp_image_map_apply): use gegl_node_get_pad() instead of gegl_node_find_property() to find out whether the node has an "input" pad. * app/tools/gimpgegltool.c: #include "core/gimpimagemap.h" 2008-02-05 Sven Neumann * themes/Default/images/stock-gegl-24.png * themes/Default/images/stock-gegl-16.png: replaced placeholder icon by a crappy drawing of a genetically engineered goat, large. 2008-02-05 Michael Natterer * app/core/gimpimagemap.c (gimp_image_map_apply): do the right thing for operations without "input" pad so we can use all source operations too. * app/tools/gimpimagemaptool.[ch]: make gimp_image_map_tool_create_map() public for the time being. * app/tools/gimpgegltool.c (gimp_gegl_tool_operation_changed): recreate the GimpImageMap so we can switch from filter to source operations and back. 2008-02-05 Michael Natterer * app/widgets/gimppropwidgets.[ch] (gimp_prop_table_new): new function which creates a table of prop widgets for all properties of an object (pretty incomplete, does exactly what's needed in GimpGeglTool, or even less). * app/tools/gimpgegltool.c: create a proxy config class for each GegĺOperation and create a prop table on the config class' properties as GUI for the GEGL operation. Write the proxy object's properties back to the GeglNode in map(). 2008-02-05 Sven Neumann * app/display/gimpdisplayshell-transform.c: changed coordinate transformation for floats. Fixes bug #510294. 2008-02-05 Sven Neumann * app/dialogs/image-new-dialog.c (image_new_create_image): use the user context when creating the new image. Fixes bug #514082. 2008-02-05 Sven Neumann * plug-ins/common/mail.c: simplified code and user interface by removing the uuencode option and the comment field which only duplicated the message body. (to64): fixed a bug in the base64 encoding. 2008-02-05 Sven Neumann * plug-ins/common/mail.c: changed menu label and dialog title to "Send by Email". 2008-02-05 Sven Neumann * plug-ins/print/print.c: removed ellipsis from "Page Setup" menu entry as specified in the HIG. 2008-02-05 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_response): don't try to add a NULL config to the recent settings menu. 2008-02-05 Michael Natterer * themes/Default/images/Makefile.am * themes/Default/images/stock-gegl-16.png * themes/Default/images/stock-gegl-24.png * libgimpwidgets/gimpstock.[ch]: new stock icon to be replaced by somebody who can draw ;) * app/tools/gimpgegltool.c: use it. 2008-02-05 Michael Natterer * app/tools/Makefile.am * app/tools/gimpgegltool.[ch]: add experimental GEGL tool which will allow to try arbitrary GEGL operations. 100% unusable at the moment. * app/tools/gimp-tools.c: register it. * app/dialogs/dialogs.c: register its dialog. * menus/image-menu.xml.in: add it to the tools menu. 2008-02-05 Sven Neumann * plug-ins/common/psd-save.c (write_pixel_data): check if drawable is a layer before trying to access the layer mask. 2008-02-04 Sven Neumann * app/display/gimpdisplayshell-preview.c (gimp_display_shell_trace_tri_edge): use a gint for direction, not a gchar which might be unsigned. Patch from Giuliano Pochini; fixes bug #340965. 2008-02-04 Sven Neumann * plug-ins/print/print-page-layout.c: only connect to page layout changes for the lifetime of the dialog. * plug-ins/print/print-page-setup.[ch] * plug-ins/print/print.c: use a temporary procedure to notify the Print procedure about changes to the page setup. 2008-02-04 Michael Natterer * app/base/gimphistogram.[ch]: add refcounting and replace free() API by ref() and unref(). * app/core/gimpdrawable-equalize.c * app/core/gimpdrawable-levels.c * app/widgets/gimphistogrameditor.c * tools/pdbgen/pdb/color.pdb: replace calls to gimp_histogram_free() by gimp_histogram_unref(). * app/pdb/color_cmds.c: regenerated. * app/widgets/gimphistogramview.c: reference the histograms so we don't need the widget's users to keep them around while the widget exists. * app/tools/gimpcurvestool.[ch]: remove the histogram from the tool struct and just create one locally to set it on the histogram view widget. Unrelated: * app/tools/gimplevelstool.[ch] * app/tools/gimpthresholdtool.[ch]: renamed "hist" members to "histogram" plus some cleanup. 2008-02-04 Michael Natterer * plug-ins/script-fu/script-fu.c: rename "Script-Fu Console" menu item to simply "Console". 2008-02-04 Michael Natterer * app/pdb/gimppdb-utils.[ch]: add gimp_pdb_item_is_attached() which is a replacement for gimp_item_is_attached() and returns a proper error message. * tools/pdbgen/pdb/color.pdb * tools/pdbgen/pdb/drawable.pdb * tools/pdbgen/pdb/drawable_transform.pdb * tools/pdbgen/pdb/edit.pdb * tools/pdbgen/pdb/floating_sel.pdb * tools/pdbgen/pdb/layer.pdb * tools/pdbgen/pdb/paint_tools.pdb * tools/pdbgen/pdb/selection.pdb * tools/pdbgen/pdb/text_tool.pdb * tools/pdbgen/pdb/transform_tools.pdb: use it. * app/pdb/color_cmds.c * app/pdb/drawable_cmds.c * app/pdb/drawable_transform_cmds.c * app/pdb/edit_cmds.c * app/pdb/floating_sel_cmds.c * app/pdb/layer_cmds.c * app/pdb/paint_tools_cmds.c * app/pdb/selection_cmds.c * app/pdb/text_tool_cmds.c * app/pdb/transform_tools_cmds.c: regenerated. 2008-02-04 Sven Neumann * plug-ins/print/Makefile.am * plug-ins/print/print-page-setup.[ch]: new files. * plug-ins/print/print-page-layout.c * plug-ins/print/print-settings.c * plug-ins/print/print.c: first draft of a Page Setup menu entry instead of the "Adjust Page Size" button (bug #513291). * plug-ins/print/print.h * plug-ins/print/print-draw-page.c: removed unused code. 2008-02-04 Sven Neumann * app/paint/gimpbrushcore.c (gimp_brush_core_create_bound_segs): changed workaround to look at the brush size instead (bug #514309). 2008-02-04 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_add_recent): use localtime() instead of localtime_r() and don't use %F in strftime(). Fixes bug #513966. 2008-02-04 Michael Natterer * app/core/Makefile.am * app/core/gimpdrawable-brightness-contrast.[ch] * app/core/gimpdrawable-color-balance.[ch] * app/core/gimpdrawable-colorize.[ch] * app/core/gimpdrawable-curves.[ch] * app/core/gimpdrawable-hue-saturation.[ch] * app/core/gimpdrawable-posterize.[ch] * app/core/gimpdrawable-threshold.[ch]: new files containing all the code that was in pdb/color_cmds.c. Cleaned up and GEGL-enabled everyting. * tools/pdbgen/pdb/color.pdb: remove almost all code and simply call the new functions. * app/pdb/color_cmds.c: regenerated. 2008-02-04 Sven Neumann * app/paint/gimpbrushcore.c (gimp_brush_core_create_bound_segs): only smooth the inner area of the mask so that we don't enlarge the boundary for hard brushes (bug #304798). 2008-02-04 Michael Natterer * app/tools/gimplevelstool.[ch] * app/tools/gimpcurvestool.[ch]: remove boolean "color" and "alpha" members from the tool structs and ask the drawable instead when needed. 2008-02-04 Michael Natterer * app/gegl/gimpthresholdconfig.[ch]: add "gboolean color" parameter to gimp_threshold_config_to_cruft() and set the "color" boolean in the Threshold cruft struct. * app/tools/gimpthresholdtool.c: don't fiddle with the cruft struct any longer and pass gimp_drawable_is_rgb() to above function instead. 2008-02-02 Martin Nordholts * INSTALL: Update GEGL dependency to GEGL trunk. 2008-02-02 Martin Nordholts * app/tools/gimppolygonselecttool.c (gimp_polygon_select_tool_commit): Only create a selection from the polygon if there are 3 or more vertices. 2008-02-02 Martin Nordholts * app/tools/gimppolygonselecttool.c (gimp_polygon_select_tool_oper_update): Don't hide the pending point line if we are grabbing the first point. (gimp_polygon_select_tool_motion): Also update the pending point if we are moving the first point. 2008-02-02 Martin Nordholts * app/tools/gimppolygonselecttool.c (gimp_polygon_select_tool_remove_last): Properly halt the tool when there are no vertices left. 2008-02-02 Martin Nordholts * app/tools/gimppolygonselecttool.c (gimp_polygon_select_tool_commit): Add a call to gimp_image_flush() so that the undo state gets updated. 2008-02-01 Martin Nordholts * themes/Default/images/tools/stock-tool-polygon-select-22.png: Lower opacity of shadow to mimic appearance of other tool icons. 2008-02-01 Michael Natterer * app/tools/gimpcurvestool.c: fix various curves tool brokenness. Should behave (TM) now. 2008-02-01 Michael Natterer * app/core/core-types.h * app/gegl/gegl-types.h: have app/gegl know app/core's namespace. * app/gegl/gimpoperationcurves.h: remove temp hack includes. * app/gegl/gimpoperationcurves.c: include "core/gimpcurve.h" * app/gegl/gimpbrightnesscontrastconfig.[ch] * app/gegl/gimpcolorbalanceconfig.[ch] * app/gegl/gimpcolorizeconfig.[ch] * app/gegl/gimpcurvesconfig.[ch] * app/gegl/gimphuesaturationconfig.[ch] * app/gegl/gimplevelsconfig.[ch] * app/gegl/gimpoperationcurves.[ch] * app/gegl/gimpposterizeconfig.[ch] * app/gegl/gimpthresholdconfig.[ch]: derive from GimpViewable, install properties using the GimpConfig macros, add implementations of GimpConfigInterface::equal() and ::copy() where needed. * app/tools/gimpimagemaptool.[ch]: add prototype of a menu of recently used settings so the same color correction can easily be applied to many images. 2008-02-01 Michael Natterer * app/widgets/gimpcontainerview.c (gimp_container_view_set_container): refuse containers if their children are not GimpViewables instead of crashing later. 2008-02-01 Michael Natterer * app/tools/gimppolygonselecttool.h: fix include guards. 2008-02-01 Michael Natterer * libgimpconfig/gimpconfig-iface.[ch]: add new method GimpConfigInterface::copy() which by default calls gimp_config_sync() but is overridable for objects which are not entirely property-defined or otherwise evil. Freeze/thaw property notifications in deserialize() and reset(). * libgimpconfig/gimpconfig-utils.c (gimp_config_sync): freeze/thaw property notifications on the dest object. 2008-02-01 Sven Neumann * plug-ins/print/print.c: some minor cleanups and preparation for adding a dedicated Page Setup menu entry (bug #513291). 2008-01-31 Sven Neumann * plug-ins/common/mail.c: string change. 2008-01-31 Sven Neumann Delay GEGL initialisation until after the command-line parsing so that we can detect an already running GIMP instance and delegate to that without going through the GEGL and babl initialisation. * app/app.c (app_libs_init): don't add the GEGL options group here. GEGL doesn't add any command-line options and it doesn't look as if it would do that anytime soon. * app/gegl/gimp-gegl.c (gimp_gegl_init): initialize GEGL here. 2008-01-31 Sven Neumann * plug-ins/common/iwarp.c: choose a better tile cache size. 2008-01-31 Martin Nordholts * app/tools/gimppolygonselecttool.[ch]: Code formating overhaul. 2008-01-31 Martin Nordholts * app/tools/gimppolygonselecttool.[ch]: Made object instance struct definition completely a private implementation detail. 2008-01-31 Martin Nordholts * app/tools/gimppolygonselecttool.c (gimp_polygon_select_tool_real_select): Correct undo description. 2008-01-30 Martin Nordholts Added a Polygon Select Tool which is a primitive selection tool based on Free Select Tool. Code filtered through David Gowers who also made the tool icon. This version of the tool is a for-now solution to bug #119646. * app/tools/gimppolygonselecttool.[ch]: The new tool. * app/tools/gimp-tools.c: Add the tool. * app/tools/Makefile.am: Add tool source. * app/widgets/gimphelp-ids.h: Add help id for the tool. * libgimpwidgets/gimpstock.[ch]: Setup for the new tool icon. * menus/image-menu.xml.in: Add action entry for the tool. * themes/Default/images/tools/stock-tool-polygon-select-{16,22}.png: Tool icon graphics. * themes/Default/images/Makefile.am: Add tool icon graphics. 2008-01-30 Michael Natterer * app/tools/gimpimagemaptool.[ch]: add "GObject **config" return value to GimpImageMapTool::get_operation() and memory-manage the config object here. Add default implementation of GimpImageMapTool::reset() which calls gimp_config_reset() on the config object. * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimpcurvestool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c: return the config object in get_operation() and don't unref it in finalize(). Connect to the config object's "notify" signal and update the GUI in the callback. Also call gimp_image_map_tool_preview() there. Removed all other GUI update functions and all calls to preview(). Removed reset() implementations which only called gimp_config_reset(). 2008-01-30 Michael Natterer * app/widgets/gimphistogramview.c (gimp_histogram_view_set_channel) (gimp_histogram_view_set_scale) (gimp_histogram_view_set_range): don't emit signals/notifications if the setting didn't change. 2008-01-30 Øyvind Kolås * app/gegl/gimpoperationcolorbalance.c: * app/gegl/gimpoperationcolorize.c: * app/gegl/gimpoperationcurves.c: * app/gegl/gimpoperationdesaturate.c: * app/gegl/gimpoperationhuesaturation.c: * app/gegl/gimpoperationlevels.c: * app/gegl/gimpoperationposterize.c: * app/gegl/gimpoperationthreshold.c: * app/gegl/gimpoperationtilesink.c: * app/gegl/gimpoperationtilesource.c: * app/gegl/gimpoperationdesaturate.c: stop using gegl_operation_class_set_name() for gimp gegl ops. 2008-01-30 Michael Natterer * app/gegl/gimpcolorbalanceconfig.c * app/gegl/gimpcurvesconfig.c * app/gegl/gimphuesaturationconfig.c * app/gegl/gimplevelsconfig.c: add missing notifications on property changes. 2008-01-28 Michael Natterer * app/gegl/gimpoperationtilesink.c * app/gegl/gimpoperationtilesource.c (process): return FALSE when there is no tile manager. 2008-01-28 Sven Neumann * plug-ins/gimpressionist/*.[ch]: added missing copyright header. 2008-01-28 Michael Natterer * app/gegl/gimpoperationcolorbalance.c * app/gegl/gimpoperationcolorize.c * app/gegl/gimpoperationcurves.c * app/gegl/gimpoperationdesaturate.c * app/gegl/gimpoperationhuesaturation.c * app/gegl/gimpoperationlevels.c * app/gegl/gimpoperationposterize.c * app/gegl/gimpoperationthreshold.c: replace for() loops over the samples by while() loop counting down the passed "samples" parameter. 2008-01-28 Michael Natterer * app/gegl/gimpcolorbalanceconfig.c * app/gegl/gimpcolorizeconfig.c * app/gegl/gimpcurvesconfig.c * app/gegl/gimphuesaturationconfig.c * app/gegl/gimplevelsconfig.c * app/gegl/gimpoperationdesaturate.c * app/gegl/gimpoperationtilesink.c * app/gegl/gimpoperationtilesource.c * app/gegl/gimpposterizeconfig.c * app/gegl/gimpthresholdconfig.c: coding style paranoia: changed one byte per file. 2008-01-28 Michael Natterer * libgimpconfig/gimpconfig-serialize.c (gimp_config_serialize_property): fix API docs. 2008-01-28 Michael Natterer * app/gegl/gegl-types.h * app/gegl/Makefile.am * app/gegl/gimpbrightnesscontrastconfig.[ch]: new config object. * app/tools/gimpbrightnesscontrasttool.[ch]: use it. 2008-01-28 Sven Neumann * plug-ins/common/lcms.c (lcms_dialog): fixed crash on missing profile (bug #512529). 2008-01-28 Sven Neumann * plug-ins/common/lcms.c (lcms_load_profile) * plug-ins/common/wmf.c (load_image): fixed error messages. 2008-01-28 Michael Natterer * app/dialogs/keyboard-shortcuts-dialog.c (keyboard_shortcuts_dialog_new): don't show the horizontal scrollbar if it's not needed. 2008-01-28 Sven Neumann * app/display/gimpdisplayshell.[ch] (gimp_display_shell_snap_coords): removed redundant GimpCoords parameter that use to cause valgrind warnings about overlapping memory regions in memcpy(). * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-autoscroll.c: changed accordingly. 2008-01-28 Sven Neumann * plug-ins/common/cubism.c: minor cleanups. 2008-01-28 Michael Natterer * app/base/tile-manager.c * plug-ins/common/lcms.c: use G_STRLOC instead of G_GNUC_FUNCTION (which is now deprecated). 2008-01-28 Tor Lillqvist * modules/controller_dx_dinput.c: Make it compile again. 2008-01-28 Sven Neumann * plug-ins/gimpressionist/gimp.c: minor cleanup. 2008-01-27 Michael Natterer * app/gegl/gimpcolorbalanceconfig.[ch] * app/gegl/gimpcolorizeconfig.[ch] * app/gegl/gimpcurvesconfig.[ch] * app/gegl/gimphuesaturationconfig.[ch] * app/gegl/gimplevelsconfig.[ch] * app/gegl/gimpposterizeconfig.[ch] * app/gegl/gimpthresholdconfig.[ch]: implement the GimpConfig interface and remove public reset() functions except special ones which reset only parts of the objects. Add lots of property notifications. * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimpcurvestool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c: use gimp_config_reset(), misc. related changes and cleanups. 2008-01-27 Kevin Cozens * plug-ins/imagemap/imap_cern.[ly] * plug-ins/imagemap/imap_csim.[ly] * plug-ins/imagemap/imap_ncsa.[ly]: Dynamically allocate space to hold comments, links, strings, and co-ordinate lists. Fixes bug #511072. * plug-ins/imagemap/imap_cern_lex.c * plug-ins/imagemap/imap_cern_parse.[ch] * plug-ins/imagemap/imap_csim_lex.c * plug-ins/imagemap/imap_csim_parse.[ch] * plug-ins/imagemap/imap_ncsa_lex.c * plug-ins/imagemap/imap_ncsa_parse.[ch]: Regenerated. 2008-01-27 Sven Neumann * plug-ins/gimpressionist/gimp.c (gimpressionist_main): transfer the pixels to the core on a tile-by-tile basis. 2008-01-27 Sven Neumann * plug-ins/gimpressionist/gimp.c (grabarea): changed code that retrieves the source drawable to iterate over the data tile-by-tile. Improves GIMPressionist startup time (bug #512126). 2008-01-26 Manish Singh * plug-ins/pygimp/pygimp-colors.c (pygimp_rgb_from_pyobject): no need to use a temporary in tuple translation, and clamp the result. * plug-ins/pygimp/gimpmodule.c (pygimp_set_background, pygimp_set_foreground): restore support for passing in 3 args for color components, for backward compatibility. 2008-01-26 Joao S. O. Bueno * plug-ins/pygimp/pygimp-colors.c (pygimp_rgb_from_pyobject): fix subsequent error (calculated parameters where not used) 2008-01-26 Manish Singh * plug-ins/pygimp/pygimp-colors.c (pygimp_rgb_from_pyobject): fix error reporting. 2008-01-25 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpoperationpointfilter.[ch]: new parent class for all image map operations. Features a "config" member and "public" get_property() and set_property() functions to be used by subclasses. * app/gegl/gimpoperationcolorbalance.[ch] * app/gegl/gimpoperationcolorize.[ch] * app/gegl/gimpoperationcurves.[ch] * app/gegl/gimpoperationhuesaturation.[ch] * app/gegl/gimpoperationlevels.[ch] * app/gegl/gimpoperationposterize.[ch] * app/gegl/gimpoperationthreshold.[ch]: derive from GimpOperationPointFilter, remove "config" members, remove finalize(), get_property() and set_property() implementations and use the ones provided by the parent class. 2008-01-25 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpposterizeconfig.[ch]: new config object. * app/gegl/gimpoperationposterize.[ch] * app/tools/gimpposterizetool.[ch]: use it. 2008-01-25 Michael Natterer * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimpcurvestool.c * app/tools/gimphuesaturationtool.c * app/tools/gimpimagemaptool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c: remove includes which are no longer needed. 2008-01-25 Michael Natterer * app/gegl/gimpcurvesconfig.[ch] * app/gegl/gimplevelsconfig.[ch]: add load_cruft() and save_cruft() functions which load/save the old (current) curves and levels file formats. * app/tools/gimpcurvestool.c * app/tools/gimplevelstool.c: use them here and remove a lot of includes. 2008-01-25 Michael Natterer * app/tools/gimphuesaturationtool.[ch]: removed the GimpHueRange member from the tool struct and use the one from the config object instead. Also did a global s/partition/range/. 2008-01-25 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpthresholdconfig.[ch]: new config object. * app/gegl/gimpoperationthreshold.[ch]: use it. * app/tools/gimpthresholdtool.[ch]: ditto. 2008-01-25 Michael Natterer * app/tools/gimpcurvestool.[ch] * app/tools/gimplevelstool.[ch]: remove the "channel" member from the tool struct and use the channel from the options object instead. 2008-01-25 Sven Neumann * app/widgets/gimpcolormapeditor.c (gimp_colormap_editor_draw): avoid crashing when the widget allocation is small (bug #511926). 2008-01-24 Sven Neumann * app/about.h (GIMP_COPYRIGHT): updated copyright. 2008-01-24 Sven Neumann * themes/Default/images/stock-wilber-48.png: removed unused image. * themes/Default/images/Makefile.am * themes/Default/images/stock-wilber-22.png: moved here from libgimpwidgets. * libgimpwidgets/gimpstock.c: register Wilber icon in button size. * data/images/wilber.png: moved 256x256 icon here from libgimpwidgets. 2008-01-24 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpcolorbalanceconfig.[ch]: new config object. * app/gegl/gimpoperationcolorbalance.[ch]: use it. * app/tools/gimpcolorbalancetool.[ch]: port to GimpColorBalanceConfig and use the old ColorBalance cruft only in map(). The effect of the GEGL operator is now even more different from the cruft code because I removed a hack that was applying an additional factor when mapping between the ColorBalance values and the new properties, but that was only a workaround to make it look more similar anyway. Will have to fix this properly. * app/base/color-balance.[ch]: remove API that is now obsolete. 2008-01-24 Sven Neumann * app/core/gimpimage.c * app/core/gimpimage-undo.c: fixed handling of the image undo counter for the case where the user has undone the image to a state before the last save and then pushes a new undo. Fixes bug #509822. 2008-01-24 Michael Natterer * app/gegl/gimpcolorizeconfig.[ch]: added reset() and to_cruft() functions. * app/tools/gimpcolorizetool.c: use them. 2008-01-23 Martin Nordholts * app/tools/gimprectangleselecttool.c (gimp_rect_select_tool_execute): Reset the automatic undo/redo mechanism so that commiting pending rectangles with Return works (bug #511599). 2008-01-23 Sven Neumann * app/display/gimpdisplayshell-selection.c: show the selection, even if the window is flagged as invisible, but don't start the animation. Addresses bug #505758. 2008-01-23 Michael Natterer * app/gegl/gimphuesaturationconfig.[ch] (gimp_hue_saturation_config_to_cruft): call hue_saturation_calculate_transfers() here... * app/tools/gimphuesaturationtool.c (gimp_hue_saturation_tool_map): ...instead of here. 2008-01-23 Michael Natterer * app/gegl/gimplevelsconfig.[ch]: to_levels_cruft() -> to_cruft(). * app/core/gimpdrawable-levels.c * app/tools/gimplevelstool.c: changed accordingly. 2008-01-23 Michael Natterer * app/tools/gimphuesaturationtool.c: change signature of widget callbacks to take a GimpHueSaturationTool pointer instead of "gpointer data". * app/tools/gimpposterizetool.c: remove redundant GTK_ADJUSTMENT() casts. 2008-01-23 Sven Neumann * app/sanity.c * app/gui/gui.c (gui_sanity_check): minor cleanup. 2008-01-23 Sven Neumann * app/dialogs/about-dialog.c (about_dialog_create): removed obsolete version check. 2008-01-23 Sven Neumann * plug-ins/imagemap/imap_mru.c (mru_remove_link): gracefully handle a NULL link. (mru_destruct): plugged a memory leak. * plug-ins/imagemap/imap_about.c: use "program-name" instead of "name". 2008-01-23 Michael Natterer * app/tools/gimpimagemaptool.h: don't #include * app/actions/tools-commands.c * app/display/gimpdisplayshell-callbacks.c * app/tools/gimp-tools.c: include it here. Whenever the build breaks because of some GEGL change in GIMP, please inlcude instead of or before in the affected .c files. 2008-01-23 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpcurvesconfig.[ch] * app/gegl/gimpoperationcurves.[ch]: add curves operation and its config object. Hack around badly to be able to use GimpCurve from app/core. * app/gegl/gimp-gegl.c: register the curves operation. * app/tools/gimpcurvestool.[ch]: added get_operation() implementation and use the new config object instead of keeping around 5 curves. 2008-01-23 Michael Natterer * app/gegl/gimpoperationlevels.[ch] (gimp_operation_levels_map_input): new utility function which maps a single value. * app/tools/gimplevelstool.[ch] (levels_update_adjustments): use the new function to create the input arrays for gimp_color_bar_set_buffer(). Removed the Levels struct from the GimpLevelsTool struct and only use it in map() when needed. * app/base/levels.[ch]: remove obsolete API and struct members. 2008-01-22 Sven Neumann * app/core/gimpprojection.c (gimp_projection_idle_render_init): decreased the priority of the projection idle renderer to 150, halfway between G_PRIORITY_HIGH_IDLE and G_PRIORITY_DEFAULT_IDLE. Fixes bug #511214. 2008-01-22 Sven Neumann * app/paint/gimpbrushcore.c (gimp_brush_core_create_bound_segs): smooth the mask instead of dilating. 2008-01-22 Sven Neumann * app/paint/gimpbrushcore.c (gimp_brush_core_create_bound_segs): dilate the brush mask in order to obtain a simpler boundary. Addresses bug #304798. * app/tools/gimpbrushtool.c (gimp_brush_tool_draw_brush): removed redundant casts. 2008-01-22 Sven Neumann * app/base/boundary.c: minor cleanups. 2008-01-22 Sven Neumann * plug-ins/imagemap/imap_csim.y: increased buffer size. Addresses bug #511072. * plug-ins/imagemap/imap_csim_parse.[ch]: regenerated. 2008-01-22 Sven Neumann * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-coords.[ch]: applied patch from Alexia Death with further event filter improvements (bug #508639). 2008-01-22 Sven Neumann * plug-ins/common/pcx.c: corrected check of the bytesperline field which caused monochrome PCX images to be rejected (bug #510658). 2008-01-22 Sven Neumann * app/core/gimp.[ch]: added new function gimp_use_gegl(). * app/core/gimpdrawable-desaturate.c * app/core/gimpdrawable-levels.c * app/core/gimpdrawable-invert.c * app/tools/gimpimagemaptool.c * app/pdb/color_cmds.c * tools/pdbgen/pdb/color.pdb: use it instead of accessing the GimpCoreConfig struct directly. 2008-01-22 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimphuesaturationconfig.[ch]: new config object. * app/gegl/gimpoperationhuesaturation.[ch]: remove all properties and add a "config" property. Also add API to map a single GimpRGB needed by the hue-saturation tool's color areas. * app/tools/gimphuesaturationtool.[ch]: switch to using GimpHueSaturationConfig, use the old HueSaturation struct only in map(). * app/base/hue-saturation.[ch]: remove API that's no longer needed. 2008-01-22 Øyvind Kolås * app/gegl/gimpoperationcolorbalance.h: * app/gegl/gimpoperationcolorize.h: * app/gegl/gimpoperationdesaturate.h: * app/gegl/gimpoperationhuesaturation.h: * app/gegl/gimpoperationlevels.h: * app/gegl/gimpoperationposterize.h: * app/gegl/gimpoperationthreshold.h: * app/gegl/gimpoperationtilesink.h: * app/gegl/gimpoperationtilesource.h: #include 2008-01-21 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_set_other_side_coord): Don't foget to update the integer representation of the rectangle. 2008-01-21 Martin Nordholts * app/tools/gimpeditselectiontool.[ch]: Moved the logic in _motion to a new helper function _update_motion that is also called in _active_modifier_key. Makes toggling Ctrl immediately apply/remove movement constraints for the Move Tool when a move has been initiated. This completes the fix for bug #78730. 2008-01-21 Sven Neumann * app/core/gimpselection.c (gimp_selection_extract): don't clear the selection as a side-effect of "Edit->Cut" (bug #510534). 2008-01-21 Michael Natterer * app/widgets/gimpcolorbar.c (gimp_color_bar_class_init): fix the ID of the "histogram-channel" property. 2008-01-21 Michael Natterer * app/core/gimpdrawable-levels.c: port to GEGL and use the new code path when use-gegl is TRUE. * app/base/levels.[ch]: remove stretch and pick APIs which are not used any longer. 2008-01-21 Michael Natterer * app/gegl/gimplevelsconfig.[ch]: add utility function gimp_levels_config_to_levels_cruft() which fills the old Levels struct from a GimpLevelsConfig object. * app/tools/gimplevelstool.c: use it. 2008-01-21 Michael Natterer * app/gegl/gimpcolorizeconfig.h * app/gegl/gimpoperationcolorize.h: add missing type macros. 2008-01-19 Martin Nordholts * app/tools/gimpeditselectiontool.c (gimp_edit_selection_tool_motion): Reformat a bit, essentially just removed one pointless level of indentation. 2008-01-18 Øyvind Kolås Removed copies of GEGL headers from GIMP source, depend on installed headers instead. GIMP trunk still depends on GEGL trunk but we're moving towards a time when GIMP can depend on a GEGL tarball instead. * app/gegl/gegl/gegl-operation-filter.h: * app/gegl/gegl/gegl-operation-point-filter.h: * app/gegl/gegl/gegl-operation-sink.h: * app/gegl/gegl/gegl-operation-source.h: * app/gegl/gegl/gegl-operation.h: * app/gegl/gegl/gegl-types.h: * app/gegl/gegl/: removed. * app/gegl/gimpoperationcolorbalance.h: * app/gegl/gimpoperationcolorize.h: * app/gegl/gimpoperationdesaturate.h: * app/gegl/gimpoperationhuesaturation.h: * app/gegl/gimpoperationlevels.h: * app/gegl/gimpoperationposterize.h: * app/gegl/gimpoperationthreshold.h: * app/gegl/gimpoperationtilesink.h: * app/gegl/gimpoperationtilesource.h: modified path to parent class' header file. 2008-01-18 Bill Skaggs * app/base/lut-funcs.c (equalize_lut_func): Don't equalize the alpha channel. Fixes bug #510210. 2008-01-18 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpcolorizeconfig.[ch]: new config object. * app/gegl/gimpoperationcolorize.[ch]: remove all properties and add a "config" property. * app/tools/gimpcolorizetool.[ch]: port to GimpColorizeConfig, use the old Colorize struct only in map(). 2008-01-18 Michael Natterer * app/gegl/gimplevelsconfig.[ch]: ported the stretch and pick functions from base/levels.c. * app/tools/gimplevelstool.[ch]: use them instead of the old stuff. Also switch to GimpLevelsConfig as primary storage for all settings and fill the old Levels struct only when needed in map(). Remove all hackish fiddling with levels_tool->channel because it is now always what is set in the menu. 2008-01-18 Michael Natterer * app/gegl/gimpoperationtilesink.c (class_init) * app/gegl/gimpoperationcolorize.c (class_init): cosmetic. 2008-01-17 Øyvind Kolås * app/gegl/gimpoperationtilesink.c: * app/gegl/gimpoperationtilesource.c: Some changes due to changed location of where the various GEGL headers get installed on the system. * app/gegl/gegl/gegl-operation.h: synced from GEGL. 2008-01-17 Martin Nordholts * app/tools/gimpeditselectiontool.c (gimp_edit_selection_tool_get_active_item): Use this new helper function instead of duplicating its logic. 2008-01-17 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimplevelsconfig.[ch]: new config object for the levels operation's settings. * app/gegl/gimpoperationlevels.[ch]: remove all properties and add a "config" property instead. * app/tools/gimplevelstool.[ch]: keep a GimpLevelsConfig around. 2008-01-17 Michael Natterer * app/gegl/gimpoperationcolorize.c * app/gegl/gimpoperationhuesaturation.c (process): move some calculations and assignments out of the inner loop. 2008-01-17 Michael Natterer * app/tools/gimpimagemaptool.c: create the operation in GObject::constructor() so it's available during the entire tool life time (needed soon). 2008-01-17 Michael Natterer * app/gegl/gegl/gegl-operation.h * app/gegl/gegl/gegl-operation-filter.h: synced from GEGL. 2008-01-17 Sven Neumann * app/core/Makefile.am * app/core/core-types.h * app/core/gimptagged.[ch]: define a simple interface for tagged objects. * app/core/gimpdata.[ch]: implement the GimpTagged interface. 2008-01-17 Sven Neumann * app/core/gimpviewable.h: formatting. 2008-01-16 Øyvind Kolås * app/gegl/gegl/gegl-operation.h: synced from GEGL. * app/gegl/gegl/graph/gegl-node-context.h: removed, since none of it's provided functionlity is any longer used by the GIMP implemented ops. * app/gegl/gegl/graph/: removed. 2008-01-16 Øyvind Kolås * app/gegl/gegl/buffer/gegl-buffer-types.h: removed. * app/gegl/gegl/buffer/: removed. * app/gegl/gegl/gegl-operation.h: synced from GEGL. Now includes the installed gegl-buffer.h which contains the public typedefs needed for implementing operations anyways. 2008-01-16 Sven Neumann * app/base/boundary.c: minor cleanup. 2008-01-16 Michael Natterer Fix gegl types and includes so we can include operations from app/gegl in other gimp files (needed soon): * app/gegl/gegl/gegl-types.h: not copied from gegl any longer. Now contains only two typedefs needed by the copied operation headers. * app/gegl/gegl-types.h: include above types file. * app/gegl/gimp-gegl.c * app/gegl/gimpoperationcolorbalance.c * app/gegl/gimpoperationcolorize.c * app/gegl/gimpoperationdesaturate.c * app/gegl/gimpoperationhuesaturation.c * app/gegl/gimpoperationlevels.c * app/gegl/gimpoperationposterize.c * app/gegl/gimpoperationthreshold.c * app/gegl/gimpoperationtilesink.c * app/gegl/gimpoperationtilesource.c: include only and "gegl-types.h" from this directory, which is much more gimpish now. Include "gegl/buffer/gegl-buffer.h" in the source and sink operations. * app/tools/gimpimagemaptool.h: warn about inclusion of only if it hasn't been included before, so it only warns in the files where we still have to address this issue. 2008-01-16 Sven Neumann * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-coords.c: applied parts of a change from Alexia Death. This improves the event smoothing (bug #508639). 2008-01-15 Martin Nordholts * app/tools/tools-utils.h: Added symbolic constants for common values to the n_snap_lines parameter of gimp_tool_motion_constrain. * app/tools/gimpblendtool.c: * app/tools/gimpeditselectiontool.c: * app/tools/gimpmeasuretool.c: * app/tools/gimppainttool.c: Use these new symbolic constants. 2008-01-15 Martin Nordholts * app/tools/gimpeditselectiontool.[ch]: Made it possible to constrain movement with the Move Tool in 45 degree angles by holding Ctrl when a move has been initiated. This fixes the essential part of bug #78730. 2008-01-15 Michael Natterer * app/gegl/gimpoperationcolorize.[ch] * app/gegl/gimpoperationlevels.[ch] * app/gegl/gimpoperationthreshold.[ch]: changed all properties from float to double. * app/gegl/gimpoperationcolorize.c: normalized property ranges to [0.0..1.0] or [-1.0..1.0] resp. * app/tools/gimpcolorizetool.c: changed accordingly. 2008-01-15 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_notify_preview): check for image_map_tool->image_map also when the preview is switched on, not only when it's switched off. 2008-01-15 Sven Neumann * plug-ins/common/bumpmap.c * plug-ins/script-fu/scripts/swirltile.scm: applied patch from Ulf-D. Ehlert that catches a potential division by zero in the Bumpmap plug-in and adjusts the range of the Depth parameter in the Swirl-Tile script (bug #509608). 2008-01-15 Kevin Cozens * plug-ins/script-fu/scripts/3d-outline.scm * plug-ins/script-fu/scripts/add-bevel.scm * plug-ins/script-fu/scripts/burn-in-anim.scm * plug-ins/script-fu/scripts/camo.scm * plug-ins/script-fu/scripts/circuit.scm * plug-ins/script-fu/scripts/clothify.scm * plug-ins/script-fu/scripts/coffee.scm * plug-ins/script-fu/scripts/contactsheet.scm * plug-ins/script-fu/scripts/distress-selection.scm * plug-ins/script-fu/scripts/flatland.scm * plug-ins/script-fu/scripts/font-map.scm * plug-ins/script-fu/scripts/fuzzyborder.scm * plug-ins/script-fu/scripts/glossy.scm * plug-ins/script-fu/scripts/land.scm * plug-ins/script-fu/scripts/lava.scm * plug-ins/script-fu/scripts/old-photo.scm * plug-ins/script-fu/scripts/predator.scm * plug-ins/script-fu/scripts/rendermap.scm * plug-ins/script-fu/scripts/ripply-anim.scm * plug-ins/script-fu/scripts/script-fu-set-cmap.scm * plug-ins/script-fu/scripts/select-to-brush.scm * plug-ins/script-fu/scripts/select-to-image.scm * plug-ins/script-fu/scripts/select-to-pattern.scm * plug-ins/script-fu/scripts/speed-text.scm * plug-ins/script-fu/scripts/spinning-globe.scm * plug-ins/script-fu/scripts/test-sphere.scm * plug-ins/script-fu/scripts/text-circle.scm * plug-ins/script-fu/scripts/unsharp-mask.scm * plug-ins/script-fu/scripts/xach-effect.scm: Variables in a let block must be of the form (variable value) per the R5RS. 2008-01-14 Kevin Cozens * plug-ins/script-fu/scripts/script-fu-compat.init: Fixed definition of 'prog1' due to recent fixes enforcing R5RS syntax for 'let'. 2008-01-15 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_preview): don't call map() if image_map_tool->image_map is NULL. 2008-01-14 Martin Nordholts * app/tools/tools-utils.[ch] (gimp_tool_motion_constrain): Generalized to allow a variable number of lines for snapping, and rewritten to make snapping happen more intuitively; snap the shortest distance rather than only horizontally or vertically. (gimp_tool_utils_point_to_line_distance): New helper function. * app/tools/gimpblendtool.c * app/tools/gimpmeasuretool.c * app/tools/gimppainttool.c: Adjust to the new function signature. 2008-01-14 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpoperationhuesaturation.[ch]: new operation. * app/gegl/gimp-gegl.c: register it. * app/tools/gimphuesaturationtool.c: use it. 2008-01-14 Sven Neumann * app/core/core-types.h * app/display/gimpdisplayshell-callbacks.c * app/display/gimpdisplayshell-coords.[ch] * app/display/gimpdisplayshell.h * app/paint/gimpink.[ch] * app/paint/gimpinkundo.[ch]: applied patch from Alexia Death that adds an event evaluation function that decides if an event is needed or can be discarded. As a side-product some useful dynamics parameters like velocity are added to the GimpCoords struct. The Ink tool is changed to use this information. See bug #508639. 2008-01-13 Michael Natterer * modules/colorsel_cmyk_lcms.c (colorsel_cmyk_config_changed): set a tooltip on the profile name label because it's often ellipsized. 2008-01-12 Michael Natterer * app/base/color-balance.c: minor formatting fix. 2008-01-11 Michael Natterer * modules/gimpinputdevicestore.h * modules/gimpinputdevicestore-hal.c * modules/gimpinputdevicestore-dx.c: use G_DEFINE_DYNAMIC_TYPE(). * modules/controller_dx_dinput.c * modules/controller_linux_input.c: changed accordingly. 2008-01-10 Manish Singh * plug-ins/pygimp/pygimp-pdb.c (pdb_getattro): Handle __members__ specially to return the current PDB procedure list, and pass-through any attributes that start with "_" without looking them up in the PDB. 2008-01-10 Sven Neumann * app/widgets/gimpuimanager.c (gimp_ui_manager_ui_popup): gracefully deal with a NULL return value from gtk_ui_manager_get_widget(). This happens when the XML menu definitions are not found. 2008-01-10 Sven Neumann * plug-ins/pygimp/plug-ins/gimpcons.py: fixed spelling of GIMP. 2008-01-10 Sven Neumann * plug-ins/jpeg/Makefile.am: fixed conditional build of the JPEG plug-in. 2008-01-10 Bill Skaggs * libgimpbase/gimpenv.c: fix editing error in documentation. 2008-01-10 Michael Natterer Simplify things a bit and enable gegl-only color correction tools (without legacy functions). * app/tools/gimpimagemaptool.c (gimp_image_map_tool_create_map): always create the operation if ::get_operation() is implemented and always use it when creating the GimpImageMap if there is no legacy apply_func. * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c (map): set the operation's properties unconditionally since it always exists now if we also implement ::get_operation(). 2008-01-10 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpoperationcolorbalance.[ch]: new operator. * app/gegl/gimp-gegl.c: register it. * app/tools/gimpcolorbalancetool.c: use it. 2008-01-09 Joao S. O. Bueno * plug-ins/pygimp/pygimp-vectors.c: Allow Vectors.remove_stroke method to accept VectorStroke objects besides stroke IDs. Fix method names in error strings. 2008-01-09 Michael Natterer * modules/cdisplay_colorblind.c * modules/cdisplay_gamma.c * modules/cdisplay_highcontrast.c * modules/cdisplay_lcms.c * modules/cdisplay_proof.c * modules/colorsel_cmyk.c * modules/colorsel_triangle.c * modules/colorsel_water.c * modules/controller_dx_dinput.c * modules/controller_linux_input.c * modules/controller_midi.c: use G_DEFINE_DYNAMIC_TYPE() instead of boilerplate code. 2008-01-09 Sven Neumann * modules/colorsel_cmyk_lcms.c (colorsel_cmyk_class_init): don't abort on errors in lcms. 2008-01-09 Sven Neumann * app/gegl/gimpoperationtilesink.c: use the marshaller from GLib; don't include gimpmarshal.h from app/core. 2008-01-09 Michael Natterer * app/tools/gimplevelstool.c (gimp_levels_tool_map): fix alpha handling on greyscale images. 2008-01-09 Sven Neumann * plug-ins/common/convmatrix.c (convolve_image): round the result of the convolution. Fixes bug #508114. 2008-01-09 Michael Natterer * app/core/core-types.h: add typedef GimpImageMapApplyFunc here. * app/core/gimpimagemap.[ch] (gimp_image_map_new): add apply_func and apply_data parameters. (gimp_image_map_apply): remove them here and add a GeglRectangle parameter which is the visible area of the affected drawable. * app/tools/gimpimagemaptool.[ch]: keep apply_func and apply_data around in the GimpImageMapTool struct. (gimp_image_map_tool_create_map): pass them to gimp_image_map_new(). (gimp_image_map_tool_map): call gimp_image_map_apply() here and pass the drawable's visible rectangle. * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimpcurvestool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c (init): set apply_func and apply_data in the parent instance. (map): remove calls to gimp_image_map_apply(). 2008-01-08 Sven Neumann * plug-ins/psd/psd-image-res-load.[ch] * plug-ins/psd/psd-layer-res-load.[ch] * plug-ins/psd/psd-load.c * plug-ins/psd/psd-thumb-load.c * plug-ins/psd/psd-util.[ch] * plug-ins/psd/psd.[ch]: applied a patch from John Marshall that improves error handling of the new PSD load plug-in (bug #448181). 2008-01-08 Øyvind Kolås * app/gegl/gimpoperationtilesink.c: removed no longer needed context_id. * app/gegl/gegl/gegl-operation-sink.h: resynced from GEGL. * app/gegl/gegl/gegl-types.h: resynced from GEGL. 2008-01-08 Sven Neumann * app/core/gimpitem.[ch]: removed "add_alpha" parameter from gimp_item_duplicate() and gimp_item_convert(). This is a relict from the time when only the bottom layer was allowed to have no alpha channel. * app/actions/channels-commands.c * app/actions/layers-commands.c * app/actions/vectors-commands.c * app/core/gimpchannel.c * app/core/gimpdrawable.c * app/core/gimpimage-duplicate.c * app/core/gimpimage-merge.c * app/core/gimpimage-quick-mask.c * app/core/gimplayer.c * app/core/gimplayermask.c * app/core/gimpselection.c * app/display/gimpdisplayshell-dnd.c * app/file/file-open.c * app/pdb/channel_cmds.c * app/pdb/layer_cmds.c * app/text/gimptextlayer.c * app/vectors/gimpvectors.c * app/vectors/gimpvectorsmodundo.c * app/widgets/gimpchanneltreeview.c * app/widgets/gimpitemtreeview.c * app/widgets/gimplayertreeview.c * app/widgets/gimptoolbox-dnd.c * tools/pdbgen/pdb/channel.pdb * tools/pdbgen/pdb/layer.pdb: changed accordingly. 2008-01-08 Sven Neumann * app/file/file-open.c (file_open_layers): moved code to a utility function, in preparation for a possible fix for bug #507116. 2008-01-08 Kevin Cozens * plug-ins/script-fu/ftx/ftx.c (foreign_filetype): Test for symlink before testing for other file types. Spotted by David Martin. 2008-01-07 Michael Natterer * app/gegl/gimpoperationlevels.[ch]: add properties, some cleanup. * app/tools/gimplevelstool.c: use gegl_node_set() instead of accessing the operation directly. 2008-01-07 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpoperationlevels.[ch]: new operator. * app/gegl/gimp-gegl.c: register it. * app/tools/gimplevelstool.c: use it, 2008-01-07 Michael Natterer * app/gegl/gimpoperationcolorize.c (process): add some comments about how this code is different from base/colorize.c 2008-01-07 Michael Natterer * app/core/core-types.h: include gegl/gegl-types.h instead of base/base-types.h. * app/gegl/gegl/gegl-types.h: add ugly #ifdefs so we can include gegl.h and this file at the same time. 2008-01-07 Michael Natterer * app/core/gimplayer.c (gimp_layer_transform_color): reordered and renamed parameters to make more sense. 2008-01-07 Michael Natterer * app/gegl/Makefile.am (INCLUDES): remove GTK_CFLAGS. 2008-01-07 Øyvind Kolås * app/tools/gimpbrightnesscontrasttool.c: make the mapping between slider values and gegl-op properties more closely resemble gimp for the brightness property. 2008-01-07 Michael Natterer * app/gegl/gegl/gegl-operation.h: updated from GEGL. * app/gegl/gimpoperationtilesource.c: use the passed buffer in process() and add prepare() implementation which sets the format. 2008-01-05 Joao S. O. Bueno * plug-ins/pygimp/pygimp-vectors.c: fixed incorrect function name in error message for vs_flip 2008-01-07 Øyvind Kolås * app/gegl/gimpoperationtilesink.c: * app/gegl/gimpoperationtilesource.c: modified to match newer API in GEGL. * app/gegl/gegl/gegl-operation-sink.h: * app/gegl/gegl/gegl-operation-source.h: updated from GEGL. 2008-01-06 Michael Natterer * app/gegl/gegl/buffer/gegl-buffer-types.h * app/gegl/gegl/gegl-operation-filter.h * app/gegl/gegl/gegl-operation-point-filter.h * app/gegl/gegl/gegl-operation-sink.h * app/gegl/gegl/gegl-operation-source.h * app/gegl/gegl/gegl-operation.h: updated from GEGL. 2008-01-06 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_create_map): don't call a NULL GimpImageMapToolClass::get_operation(). 2008-01-06 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_gegl_notify): toggle the image map mode only if an image map currently exists. Fixes crash when toggling "Use GEGL" while the tool is not active. 2008-01-06 Sven Neumann * configure.in: compile a list of MIME types that GIMP can read. * desktop/gimp.desktop.in.in: use the list of MIME types as compiled by the configure script. Fixes bug #507318. * desktop/Makefile.am * desktop/gimp.applications.in * desktop/gimp.keys.in: removed; the gimp.applications and gimp.keys files are obsolete. * plug-ins/psd/psd.c (MAIN): corrected MIME type in unused code. 2008-01-06 Sven Neumann * configure.in: applied patch from Matt Smith that adds a --without-hal configure option (bug #507595). * INSTALL: document the new option. 2008-01-06 Sven Neumann * configure.in * plug-ins/Makefile.am: fixed --without-jpeg configure option (bug #507572). 2008-01-06 Michael Natterer * app/gegl/gimpoperationtilesource.c * app/gegl/gimpoperationtilesink.c: formatting. 2008-01-06 Sven Neumann * libgimpbase/gimpchecks.c * libgimp/gimpunitcache.c * libgimpwidgets/gimppageselector.c * libgimpwidgets/gimpcolorscales.c: removed redundant checks for enum values (which are unsigned) >= 0. 2008-01-06 Sven Neumann * plug-ins/common/convmatrix.c (convolve_image): fixed out-of-bounds array access. 2008-01-06 Sven Neumann * libgimpwidgets/gimpmemsizeentry.c: use G_GUINT64_CONSTANT() instead of a cast. 2008-01-06 Sven Neumann * plug-ins/common/tile.c (tile): update the progress less often. 2008-01-05 Manish Singh * plug-ins/pygimp/pygimp-image.c: new Image.new_layer() method, which is convenience for creating, filling, and attaching a new layer onto an image. Based on a idea and patch by João S. O. Bueno in bug #505982. 2008-01-05 Manish Singh * app/core/gimpimagemap.c: hardcode a declaration of gegl_node_add_child() in here for now. 2008-01-05 Øyvind Kolås * app/gegl/gegl/gegl-operation-sink.h: * app/gegl/gegl/gegl-operation-source.h: * app/gegl/gegl/gegl-operation.h: * app/gegl/gegl/gegl-types.h: * app/gegl/gegl/graph/: * app/gegl/gegl/graph/gegl-node-context.h: synchronoised with GEGL headers. * app/gegl/gimpoperationtilesink.c: * app/gegl/gimpoperationtilesource.c: updated to new API, where a GeglNodeContext is used in process methods instead of gpointer context_id. 2008-01-04 Øyvind Kolås * app/gegl/gegl/gegl-operation-sink.h: * app/gegl/gegl/gegl-operation-source.h: * app/gegl/gegl/gegl-operation.h: synchronised with GEGL headers. * app/gegl/gimpoperationtilesink.c: * app/gegl/gimpoperationtilesource.c: added const GeglRectangle *result to arguments of _process(). 2008-01-04 Sven Neumann * app/config/gimpdisplayconfig.c: changed the default marching ants speed to 200. 2008-01-04 Hans Breuer **/makefile.msc app/gimpcore.def : updated so it compiles and links (almost, see bug #507298) 2008-01-04 Sven Neumann Merged from gimp-2-4 branch: * app/display/gimpdisplayshell-selection.c: draw marching ants with G_PRIORITY_DEFAULT_IDLE; fixes bug #479875. 2008-01-04 Michael Natterer * tools/pdbgen/pdb/color.pdb: optionally use gegl where we already have operations (breaking the indentation to keep the diff small and readable). * app/pdb/Makefile.am: add GEGL_CFLAGS. * app/pdb/color_cmds.c: regenerated. 2008-01-04 Michael Natterer * app/config/gimpcoreconfig.[ch]: add "use-gegl" property but don't serialize it. * app/widgets/gimptoolbox.c: add super ugly "Use GEGL" toggle to the toolbox so we don't need to have prefs open all the time when experimenting with gegl. * app/tools/gimpimagemaptool.[ch]: remove "Use GEGL" toggle from the tool dialogs and connect to the config property instead. * app/core/gimpdrawable-desaturate.c * app/core/gimpdrawable-invert.c: made them runtime-switchable by looking at the config property. 2008-01-04 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpoperationcolorize.[ch] * app/gegl/gimpoperationposterize.[ch]: new operators which still use a lot of gimp stuff they shouldn't use, but at least the infrastructure for improving them is there now. * app/gegl/gimp-gegl.c: register them. * app/tools/gimpcolorizetool.c * app/tools/gimpposterizetool.c: use them. 2008-01-04 Michael Natterer * app/core/gimpimagemap.c (gimp_image_map_apply): switch tile sources and sinks to assume linear data. 2008-01-04 Michael Natterer * app/tools/gimpimagemaptool.c (gimp_image_map_tool_create_map): enable disabling gegl again, which i broke with my last commit. 2008-01-04 Jakub Steiner * data/images/wilber-devel-icon.png * data/images/wilber-icon.png * data/images/wilber-devel.png * data/images/gimp-logo.png: sync to the latest wilber version. 2008-01-04 Jakub Steiner * libgimpwidgets/wilber-16.png: * libgimpwidgets/wilber-22.png: * libgimpwidgets/wilber-32.png: * libgimpwidgets/wilber-48.png: * libgimpwidgets/wilber-64.png: * libgimpwidgets/wilber-256.png: update app icon. Add 256x256px for OS X and Vista 2008-01-04 Sven Neumann * app/tools/gimprotatetool.c (rotate_angle_changed): also update trans_info[REAL_ANGLE]. Fixes bug #507167. 2008-01-03 Bill Skaggs committing patch by Simon Budig to give an indication when working on a layer mask, updated to fix staleness and respond to "edit-changed". Might fix bug #132204. * app/core/core-enums.[ch]: add GIMP_SELECTION_LAYER_ON. * app/core/gimplayermask.c: add handler for "edit-changed". * app/core/gimpcanvas.[ch]: add new style GIMP_CANVAS_STYLE_LAYER_MASK_ACTIVE. * app/display/gimpdisplayshell-selection.c: use new style when layer mask is active. 2008-01-03 Michael Natterer * app/tools/gimpimagemaptool.[ch]: keep the central processing node around here... * app/tools/gimpbrightnesscontrasttool.[ch] * app/tools/gimpthresholdtool.[ch]: ...instead of here. 2008-01-03 Michael Natterer * app/core/gimpimagemap.c: quite some cleanup (use GeglRectangle more globally and don't leave stuff around if we abort for whatever reason). 2008-01-03 Michael Natterer * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpoperationthreshold.[ch]: gimpish threshold operator which has "low" and "high" properties. * app/gegl/gimp-gegl.c: register it. * app/gegl/gimpoperationdesaturate.[ch]: fix copyright. * app/tools/gimpthresholdtool.[ch]: use the new operator. 2008-01-03 Michael Natterer Some more gegl code to have some playground for experimenting. * app/gegl/Makefile.am * app/gegl/gegl-types.h * app/gegl/gimpoperationdesaturate.[ch]: ported desaturate. * app/gegl/gimp-gegl.c: register it. * app/gegl/gimpoperationtilesink.h: fix name of parent class member. * app/core/gimpdrawable-desaturate.c: use the new operator, but keep the old code around (prepared for runtime switching). * app/core/gimpdrawable-invert.c: prepare for runtime switching here too. 2008-01-03 Michael Natterer * app/gegl/gegl/gegl-operation-sink.h * app/gegl/gegl/gegl-operation-source.h: updated copies from gegl. * app/gegl/gegl/gegl-operation-filter.h * app/gegl/gegl/gegl-operation-point-filter.h: new files from gegl. 2008-01-03 Bill Skaggs * plug-ins/common/randomize.c: added previews for hurl, pick, and slur. 2008-01-02 Michael Natterer * app/core/Makefile.am * app/core/gimpdrawable-operation.[ch]: new files containing gimp_drawable_apply_operation() which applies a gegl operation to a drawable's selected pixels using shadow tiles. Will soon be used in more places than just invert. * app/core/gimpdrawable-invert.c: use it here, makes gimp_drawable_invert() a 3-liner. 2008-01-01 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_start): Use × instead of x when initializing the rectangle size in the status bar. 2007-12-30 Sven Neumann * app/gegl/gimp-gegl-utils.[ch]: added new function gimp_bpp_to_babl_format_linear(). * app/gegl/gimpoperationtilesink.[ch] * app/gegl/gimpoperationtilesource.[ch]: added boolean property to toggle between linear and gamma-corrected data. * app/core/gimpdrawable-invert.c: assume linear data to be closer to the original definition of the invert operation in GIMP. Enable the GEGL code path per default. 2007-12-30 Sven Neumann * app/core/gimpdrawable-invert.c (gimp_drawable_invert): moved processing in the GEGL code path back to the main loop. 2007-12-30 Michael Natterer * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimpcurvestool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c: #include . Fixes the build. 2007-12-30 Michael Natterer First actual image processing with GEGL! Wheeeee :-) * app/core/gimpimagemap.[ch]: added code to use gegl instead of the old apply_func and apply_data. (gimp_image_map_new): add GeglNode parameter that, if passed, switches the whole thing to using a gegl graph with this node as central processing node. * app/tools/gimpimagemaptool.[ch]: add virtual function get_operation() which, if implemented, returns a GeglNode to pass to gimp_image_map_new(). Added a "Use GEGL" toggle so we can switch between legacy and gegl code for the migration period. * app/tools/gimpbrightnesscontrasttool.[ch]: implement get_operation() and return a brightness-contrast node. (gimp_briughtness_contrast_tool_map): set the node's properties from the GUI. 2007-12-30 Sven Neumann * app/display/gimpstatusbar.[ch] * app/widgets/gimpprogressbox.[ch]: only update the GtkProgressBar if that would cause a visible change. 2007-12-30 Manish Singh * plug-ins/pygimp/pygimp-tile.c: subscript API for PixelFetcher. 2007-12-30 Michael Natterer * app/gegl/gimpoperationtilesource.c: minor cleanup. * app/gegl/gimpoperationtilesink.[ch]: add "data-written" signal that is emitted whenever pixels have been written to the tile manager. 2007-12-30 Øyvind Kolås * app/core/Makefile.am: added GEGL_CFLAGS. * app/core/gimpdrawable-invert.c: added an alternate GEGL code path that can be enabled by uncommenting ENABLE_GEGL in the file. 2007-12-30 Manish Singh * plug-ins/pygimp/gimpmodule.c * plug-ins/pygimp/pygimp-pdb.c * plug-ins/pygimp/pygimp-colors.c * plug-ins/pygimp/pygimpcolor-api.h * plug-ins/pygimp/pygimpcolor.h: Move pygimp_rgb_from_pyobject into the gimpcolor module, and make it handle translation of sequences into colors too. Make the GimpParam translation code use it. * plug-ins/pygimp/gimpcolormodule.c: Initial wrapping of gimp_bilinear color functions. * plug-ins/pygimp/gimpenumsmodule.c * plug-ins/pygimp/gimpmodule.c * plug-ins/pygimp/pygimp.h * plug-ins/pygimp/pygimp-tile.c: Basic wrapping of GimpPixelFetcher. 2007-12-30 Øyvind Kolås reviewed by: * app/core/Makefile.am: * app/core/gimpdrawable-invert.c: (idle_fun), (gimp_drawable_invert): 2007-12-30 Øyvind Kolås * app/gegl/gimpoperationtilesink.c: specify that this operation does not need the full buffer available before "flushing" the sink. * app/gegl/gegl/gegl-operation-sink.h: * app/gegl/gegl/gegl-operation.h: updated copy of headers. 2007-12-30 Sven Neumann * plug-ins/jpeg/jpegqual.c (quant_info): added entry for Canon Digital Ixus v2 and removed duplicate entry. 2007-12-30 Sven Neumann * plug-ins/jpeg/jpegqual.c: use G_OPTION_REMAINING to access the filenames passed as command-line arguments. 2007-12-30 Sven Neumann * plug-ins/script-fu/scripts/chip-away.scm: applied another patch from Ulf-D. Ehlert for the parameter range (bug #506110). 2007-12-29 Øyvind Kolås * app/gegl/gimpoperationtilesource.c: override the default behaviour of GeglOperationSource to expand the result rect to the full have rect with a NULL (nop) implementation. 2007-12-30 Sven Neumann * app/core/gimpdrawable-invert.[ch]: let gimp_drawable_invert() take a GimpProgress parameter. * tools/pdbgen/pdb/color.pdb * app/pdb/color_cmds.c * app/actions/drawable-commands.c: changed accordingly. 2007-12-29 Michael Natterer * app/actions/Makefile.am * app/core/Makefile.am * app/display/Makefile.am * app/tools/Makefile.am: use GEGL_CFLAGS. 2007-12-29 Sven Neumann * app/gegl/gimpoperationtilesink.c * app/gegl/gimpoperationtilesource.c: formatting. 2007-12-29 Øyvind Kolås * app/gegl/gimpoperationtilesource.c: do not fetch the full extent of the TileManager but only the needed pixels. Pass rowstride correctly when fecting subregions. 2007-12-29 Øyvind Kolås * configure.in: depend on GEGL 0.0.15 (version ends in odd, thus depending on svn trunk of GEGL). * app/gegl/gimpoperationtilesource.c: (gimp_operation_tile_source_process): just use GEGL_AUTO_ROWSTRIDE for the rowstride in gegl_buffer_set for now. 2007-12-29 Michael Natterer * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorizetool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpthresholdtool.c: more cleanup in preparation of migrating to gegl. 2007-12-29 Michael Natterer * app/gegl/gimp-gegl.c * app/gegl/gimpoperationtilesource.c * app/gegl/gimpoperationtilesink.c: fixup includes a bit. 2007-12-29 Øyvind Kolås * app/gegl/gegl/buffer/: added. * app/gegl/gegl/buffer/gegl-buffer-types.h: added from GEGL trunk. * app/gegl/gegl/gegl-operation.h: .. * app/gegl/gegl/gegl-types.h: updated copy from GEGL trunk. * app/gegl/gimp-gegl.c: * app/gegl/gimpoperationtilesink.c: * app/gegl/gimpoperationtilesource.c: Modified to build with direct copies of GEGL headers. 2007-12-29 Michael Natterer * app/base/tile-manager.[ch]: add boxed type GIMP_TYPE_TILE_MANAGER. * app/gegl/gimpoperationtilesink.c * app/gegl/gimpoperationtilesource.c: use GParamSpecBoxed instead of GParamSpecPointer for the tile-manager properties and ref them properly. Some cleanup. 2007-12-29 Sven Neumann * app/gegl/gimp-gegl-utils.h: declare gimp_bpp_to_babl_format() as G_GNUC_CONST. 2007-12-29 Michael Natterer * app/gegl/gimpoperationtilesink.c (tile_sink_process): add some const that should also be in the gegl api *cough*. 2007-12-29 Michael Natterer * app/gegl/gimp-gegl-utils.c (gimp_bpp_to_babl_format): use g_return_val_if_fail() instead of g_warning(). 2007-12-29 Michael Natterer * app/gegl/gimp-gegl-utils.c: new files containing gimp_bpp_to_babl_format(). * app/gegl/gimpoptilesink.[ch] * app/gegl/gimpoptilesource.[ch]: renamed.. * app/gegl/gimpoperationtilesink.[ch] * app/gegl/gimpoperationtilesource.[ch]: ...to these. Cleaned them up quite a bit more. * app/gegl/Makefile.am * app/gegl/gimp-gegl.c: changed accordingly. 2007-12-29 Michael Natterer Some cleanup... * app/Makefile.am: change linking order. * app/main.c: move gegl initialization from here... * app/app.c: ...to here. * app/gegl/gimpops.c: removed. * app/gegl/gimp-gegl.[ch] * app/gegl/gegl-types.h: added. * app/gegl/Makefile.am: changed accordingly. * app/gegl/gimpoptilesink.[ch] * app/gegl/gimpoptilesource.[ch]: made more gimpish. 2007-12-29 Øyvind Kolås Added adapter GEGL operations for reading and writing to TileManagers. * configure.in: * app/Makefile.am: added gegl subdir. * app/gegl/Makefile.am: added. * app/gegl/gimpops.c: (gimp_gegl_ops_init): * app/gegl/gimpoptilesink.[ch]: adapter GEGL operation for writing to GIMP tile managers. * app/gegl/gimpoptilesource.[ch]: adapter GEGL operation for reading from GIMP tile managers. * app/main.c: (main): call gimp_gegl_ops_init() * app/gegl/gegl/: added some headers from GEGL that are not installed since they are not public API yet. 2007-12-29 Simon Budig * app/display/gimpdisplayshell.c: don't use ceil, use SCALEX. * app/display/gimpdisplayshell-transform.c: Round hopefully more properly. This probably exchanges one set of artefacts for another one... * app/display/gimpdisplayshell-render.c: minor fixes. * app/display/gimpdisplayshell-selection.c: whitespace fix 2007-12-28 Sven Neumann * app/widgets/gimprender.h: removed GIMP_RENDER_BUF_WIDTH and GIMP_RENDER_BUF_HEIGHT definitions. * app/display/gimpdisplayshell.h: define the size of the display render buffer here. * app/display/gimpdisplayshell.c * app/display/gimpdisplayshell-draw.c * app/widgets/gimprender.c: changed accordingly. 2007-12-28 Sven Neumann * app/widgets/gimpcolormapeditor.c: don't use the render buffer. Use a white background until this widget is rewritten. 2007-12-28 Michael Natterer * app/widgets/gimpsamplepointeditor.c (gimp_sample_point_editor_points_changed): fix my last commit to this file (don't access sample points of NULL images). 2007-12-28 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_update_highlight): When setting the highlight, use the external rectangle representation, not the internal one. 2007-12-28 Sven Neumann * libgimpwidgets/gimpcairo-utils.[ch]: addec const qualifiers to GimpRGB parameters. * app/widgets/gimprender.[ch]: removed global variables for checkerboard colors and introduced functions to get the checkerboard colors as pointers to GimpRGB structs. * app/actions/view-actions.c * app/display/gimpdisplayshell-appearance.c * app/widgets/gimpviewrenderer.c * app/widgets/gimpcolormapeditor.c: changed accordingly. 2007-12-28 Sven Neumann * libgimpwidgets/gimpcairo-utils.[ch]: added light and dark check color parameters to gimp_cairo_checkerboard_create(). * libgimpwidgets/gimpcellrenderercolor.c * app/widgets/gimpviewrenderer.c (gimp_view_renderer_real_draw): changed accordingly. 2007-12-28 Sven Neumann * plug-ins/script-fu/scripts/chip-away.scm: applied patch from Ulf-D. Ehlert that fixes the range of the "Chip amount" parameter (bug #506110). 2007-12-28 Sven Neumann * app/widgets/gimpviewrenderer.c: cache the checkerboard pattern. 2007-12-28 Sven Neumann * app/widgets/gimpviewrenderer.c (gimp_view_renderer_real_draw): if the surface has CAIRO_CONTENT_COLOR_ALPHA, render it on a checkerboard background. * app/widgets/gimpviewrenderergradient.[ch]: just draw the gradient with alpha-transparency instead of doing the blend on the checkerboard here. * app/widgets/gimpcolormapeditor.c: formatting. 2007-12-27 Michael Natterer * app/tools/gimpcolorbalancetool.c: remove the same cruft here. 2007-12-27 Michael Natterer * app/tools/gimpbrightnesscontrasttool.c: remove unused cruft. 2007-12-27 Sven Neumann * app/widgets/gimpthumbbox.c (gimp_thumb_box_new): enable line wrapping on the info label. 2007-12-26 Michael Natterer * app/actions/image-commands.c * app/actions/select-commands.c * app/core/gimp-edit.c * app/core/gimpdrawable-stroke.c * app/core/gimpimage-duplicate.c * app/core/gimpimage-preview.c * app/core/gimpimage-rotate.c * app/core/gimpimageundo.c * app/core/gimpitem-preview.c * app/dialogs/grid-dialog.c * app/dialogs/layer-options-dialog.c * app/dialogs/offset-dialog.c * app/dialogs/stroke-dialog.c * app/display/gimpdisplayshell-scale.c * app/display/gimpdisplayshell-title.c * app/display/gimpdisplayshell.c * app/display/gimpstatusbar.c * app/paint/gimppaintoptions.c * app/tools/gimpmagnifytool.c * app/tools/gimpmeasuretool.c * app/tools/gimppainttool.c * app/tools/gimprectangletool.c * app/tools/gimprotatetool.c * app/tools/gimpscaletool.c * app/tools/gimptexttool.c * app/vectors/gimpvectors-export.c * app/vectors/gimpvectors-import.c * app/widgets/gimpcursorview.c * app/widgets/gimpimagepropview.c * app/widgets/gimptoolbox-dnd.c * app/widgets/gimpviewrendererdrawable.c * app/widgets/gimpviewrendererimage.c * app/xcf/xcf-load.c * app/xcf/xcf-save.c: use gimp_image_get/set_resolution() instead of accessing the GimpImage members directly. 2007-12-26 Sven Neumann * app/paint/gimpbrushcore.c: sprinkled with const qualifiers. 2007-12-25 Michael Natterer * app/core/gimpimage-guides.[ch] * app/core/gimpimage-sample-points.[ch]: add accessors for the lists of guides and sample points. * app/core/gimpimage-crop.c * app/core/gimpimage-duplicate.c * app/core/gimpimage-flip.c * app/core/gimpimage-resize.c * app/core/gimpimage-rotate.c * app/core/gimpimage-scale.c * app/core/gimpimage-snap.c * app/core/gimpimage.c * app/display/gimpdisplayshell-appearance.c * app/display/gimpdisplayshell-draw.c * app/display/gimpdisplayshell.c * app/widgets/gimpsamplepointeditor.c * app/xcf/xcf-save.c: use the new accessors. 2007-12-25 Michael Natterer * app/core/gimpimage.h (struct GimpImage):: renamed "cmap" to "colormap" and "num_cols" to "n_colors". * app/core/gimpimage.c * app/core/gimpimage-colormap.[ch] * app/widgets/gimpcolormapeditor.c: changed accordingly. 2007-12-25 Michael Natterer * app/actions/channels-commands.c * app/actions/colormap-actions.c * app/actions/colormap-commands.c * app/actions/image-commands.c * app/core/gimp-edit.c * app/core/gimpdrawable-preview.c * app/core/gimpimage-colorhash.c * app/core/gimpimage-colormap.c * app/core/gimpimage-convert.c * app/core/gimpimage-crop.c * app/core/gimpimage-duplicate.c * app/core/gimpimage-flip.c * app/core/gimpimage-guides.c * app/core/gimpimage-merge.c * app/core/gimpimage-preview.c * app/core/gimpimage-quick-mask.c * app/core/gimpimage-resize.c * app/core/gimpimage-rotate.c * app/core/gimpimage-sample-points.c * app/core/gimpimage-scale.c * app/core/gimpimage-snap.c * app/core/gimpimage.c * app/core/gimpimagefile.c * app/core/gimpimageundo.c * app/core/gimpitem-preview.c * app/core/gimpitem.c * app/core/gimplayer.c * app/core/gimppalette-import.c * app/core/gimpprojection-construct.c * app/core/gimpprojection.c * app/core/gimpselection.c * app/core/gimpundo.c * app/dialogs/layer-options-dialog.c * app/dialogs/print-size-dialog.c * app/display/gimpdisplay.c * app/display/gimpdisplayshell-draw.c * app/display/gimpdisplayshell-scale.c * app/display/gimpdisplayshell-scroll.c * app/display/gimpdisplayshell-title.c * app/display/gimpdisplayshell-transform.c * app/display/gimpdisplayshell.c * app/display/gimpstatusbar.c * app/file/file-open.c * app/paint/gimppaintoptions.c * app/tools/gimpaligntool.c * app/tools/gimpcolortool.c * app/tools/gimpeditselectiontool.c * app/tools/gimpiscissorstool.c * app/tools/gimpmeasuretool.c * app/tools/gimpmovetool.c * app/tools/gimpperspectiveclonetool.c * app/tools/gimprectangleselecttool.c * app/tools/gimprectangletool.c * app/tools/gimprotatetool.c * app/vectors/gimpvectors-export.c * app/vectors/gimpvectors-import.c * app/vectors/gimpvectors.c * app/widgets/gimpimagepropview.c * app/widgets/gimpnavigationview.c * app/widgets/gimpselectioneditor.c * app/widgets/gimpviewrendererdrawable.c * app/widgets/gimpviewrendererimage.c * app/xcf/xcf-load.c * app/xcf/xcf-save.c * tools/pdbgen/pdb/guides.pdb * tools/pdbgen/pdb/image.pdb: use accessors for many image properties. * app/pdb/guides_cmds.c * app/pdb/image_cmds.c: regenerated. 2007-12-25 Michael Natterer * app/dialogs/file-save-dialog.c: forgot to port some debug output to GIMP_LOG(). 2007-12-23 Michael Natterer * app/actions/layers-commands.c * app/core/gimpchannel-combine.c * app/core/gimpchannel-select.c * app/core/gimpchannel.c * app/core/gimpdrawable-convert.c * app/core/gimpdrawable.c * app/core/gimpdrawablemodundo.c * app/core/gimpfloatingselundo.c * app/core/gimpimage-convert.c * app/core/gimpimage-merge.c * app/core/gimpimage-resize.c * app/core/gimpimage.c * app/core/gimpitem-preview.c * app/core/gimpitem.c * app/core/gimplayer-floating-sel.c * app/core/gimplayer.c * app/core/gimplayermask.c * app/core/gimplayerundo.c * app/core/gimpmaskundo.c * app/core/gimppalette-import.c * app/core/gimpprojection-construct.c * app/core/gimpselection.c * app/dialogs/offset-dialog.c * app/text/gimptextlayer-xcf.c * app/text/gimptextlayer.c * app/vectors/gimpvectors-compat.c * app/vectors/gimpvectors.c * app/vectors/gimpvectorsmodundo.c * app/widgets/gimplayertreeview.c * app/widgets/gimpviewrendererdrawable.c * app/widgets/gimpviewrenderervectors.c: use accessors for item, layer, channel and mask attributes. 2007-12-22 Sven Neumann * app/core/gimpimage-sample-points.c (gimp_image_add_sample_point_at_pos): corrected undo description. 2007-12-22 Sven Neumann * data/palettes/Tango.gpl: removed duplicate entry ("Untitled"). 2007-12-21 Michael Natterer * app/tools/gimpeditselectiontool.c * app/tools/gimpiscissorstool.c * app/tools/gimptexttool.c * app/tools/gimptransformtool.c: use accessors for drawable and item properties. 2007-12-21 Michael Natterer * app/xcf/xcf-save.c * app/xcf/xcf-load.c: use accessors for colormap, parasites and more item, layer, channel and mask properties instead of accessing the object structs directly. Some minor style cleanups. 2007-12-20 Sven Neumann * app/plug-in/gimppluginmanager-menu-branch.[ch]: added accessor for the list of menu branches. * app/actions/plug-in-actions.c (plug_in_actions_setup): use it. 2007-12-20 Sven Neumann * configure.in: readded some AC_SUBST() that were removed under the wrong assumption they would not be needed any longer. Consistently use # to mark comments in configure.in. 2007-12-20 Sven Neumann * app/app.c: call gegl_exit() on shutdown. 2007-12-20 Sven Neumann * INSTALL * configure.in: require GEGL >= 0.0.14. * app/Makefile.am * app/app.c: initialize the GEGL library. 2007-12-20 Sven Neumann * app/paint/gimpink.c: minor cleanup. 2007-12-20 Sven Neumann * authors.xml: updated last-active attribute for recent contributors. 2007-12-20 Sven Neumann * configure.in * plug-ins/Makefile.am * plug-ins/psd: added new PSD load plug-in written by John Marshall. This plug-in adds a couple of features. See bug #448181 for details. * plug-ins/common/Makefile.am * plug-ins/common/plugin-defs.pl * plug-ins/common/psd-load.c: removed old psd-load plug-in. 2007-12-20 Sven Neumann * app/widgets/gimpprofilechooserdialog.c: added code for adding a shortcut to the default ICC profile location on Windows. Based on a patch by John Marshall (bug #503410). 2007-12-20 Sven Neumann * app/actions/documents-commands.c (documents_clear_cmd_callback): adapt to changed gimp_documents_save() API. 2007-12-19 Michael Natterer * app/core/gimp-contexts.[ch] * app/core/gimp-documents.[ch]: add GErrors to save() and load(). * app/core/gimp.c * app/tools/gimp-tools.c: handle the returned errors. 2007-12-18 Sven Neumann * plug-ins/common/psd-load.c: applied patch from John Marshall that fixes handling of PSD files with blank layer names (bug #504149). 2007-12-18 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c: Added extra checks to stop bad syntax in LET*, LET, and LETREC from causing a segmentation fault in Linux. See SourceForge bug #1817986. 2007-12-18 Bill Skaggs * libgimpwidgets/gimpstock.h: fix typo that probably caused bug #503834. 2007-12-18 Michael Natterer * app/xcf/xcf-load.c * app/xcf/xcf-save.c: use the proper APIs to get/set many item, layer, channel and vectors properties instead of reading/writing their struct members directly. 2007-12-18 Sven Neumann * libgimpwidgets/gimpscrolledpreview.c * libgimpwidgets/gimpcolorselect.c: don't rely on the pointer position in the GdkEventMotion struct, query the pointer instead. 2007-12-18 Sven Neumann * app/widgets/gimpgradienteditor.c: don't rely on the pointer position in the GdkEventMotion struct, query the pointer instead. 2007-12-18 Sven Neumann * app/display/gimpnavigationeditor.c: minor cleanup. * app/widgets/gimpnavigationview.c (gimp_navigation_view_motion_notify): fixed handling of motion events that broke when I introduced the call to gdk_event_request_motions(). 2007-12-18 Sven Neumann * app/core/gimppalette-import.c * app/core/gimppalette-load.[ch]: applied slightly modified patch from Nicola Archibald that adds import of colors from CSS files (bug #464480). * app/core/gimppalette.c (gimp_palette_find_entry): allow to call this function on an empty palette. 2007-12-18 Sven Neumann * app/base/tile-pyramid.c: use the coordinate parameters in tile_data_pointer() instead of adjusting the pointer manually. 2007-12-18 Sven Neumann * app/base/tile-pyramid.c * app/paint-funcs/paint-funcs.c: sprinkled with const qualifiers. 2007-12-18 Sven Neumann * app/base/tile-manager.[ch]: renamed tile_manager_validate() to tile_manager_validate_tile(). If no validate_proc is set, initialize the tile data to all zero when validating it. This way we never hand out uninitialized data and valgrind doesn't need to complain any longer. * app/base/tile.c: changed accordingly. * app/core/gimpselection.c: no need to set an extra validate_proc here as the default implementation now does the job for us. 2007-12-18 Sven Neumann * app/core/gimpdrawable.[ch]: made get_tiles() a method of GimpDrawable. 2007-12-18 Sven Neumann * app/display/gimpdisplayshell-render.c (render_image_tile_fault_nearest): added code for 1 and 3 bytes per pixel. Fixes bug #504115. 2007-12-16 Bill Skaggs * plug-ins/common/edge.c: reverted to state pre-12/16. 2007-12-17 Sven Neumann * app/core/gimpprojection-construct.c (project_intensity): minor cleanup. 2007-12-17 Sven Neumann * libgimp/gimpregioniterator.c: code cleanup; reduced number of progress updates. 2007-12-16 Bill Skaggs * plug-ins/common/edge.c: name reverted to "Edge", label in combo reverted to "Prewitt", other changes kept. 2007-12-16 Bill Skaggs * plug-ins/common/edge.c: renamed to "Sharp Edges", added "invert" option, other usability tweaks. 2007-12-16 Bill Skaggs * menus/image-menu.xml.in: missed this yesterday 2007-12-16 Sven Neumann * plug-ins/common/plugin-defs.pl * plug-ins/common/Makefile.am: re-added psd-load. Looks like Bill accidentally removed it. 2007-12-16 Sven Neumann * libgimpwidgets/gimpcairo-utils.[ch]: added new function gimp_cairo_set_focus_line_pattern(). * libgimpwidgets/gimpcellrenderercolor.c (gimp_cell_renderer_color_render): use the focus line pattern to emphasize the selected entry. * app/widgets/gimppaletteview.c (gimp_palette_view_expose): use the new utility function. * libgimpwidgets/gimpwidgets.def: updated. 2007-12-15 Bill Skaggs * app/widgets/gimphelp-ids.h * app/display/gimpdisplayshell-scale.[ch] * app/display/gimpnavigationeditor.[ch] * app/actions/view-commands.[ch] * app/actions/view-commands.c: Changed "Fit Image to Window" to "Fill Window", and changed "fit-to" to "fill" in all the related things. Fixes bug #490364. 2007-12-15 Bill Skaggs * plug-ins/common/mapcolor.c: removed * plug-ins/common/plugin-defs.pl * plug-ins/common/Makefile.am: updated accordingly See bug #436145 for the reasons for removing this plug-in. 2007-12-14 Sven Neumann * app/widgets/gimpfiledialog.c: added utility function to reduce code duplication. 2007-12-14 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c (eqv): Only return true when numbers are of equal value AND of the same type (ie. both exact or inexact). R5RS compliance fix. 2007-12-14 Martin Nordholts Reverted the changes that made GimpRectangleTool keep track of its active display in GimpRectangleToolPrivate, the approach is broken. 2007-12-14 Michael Natterer * tools/pdbgen/pdb/edit.pdb: use gimp_pdb_get_buffer() which sets a proper error instead of looking up the buffers manually. * app/pdb/edit_cmds.c * libgimp/gimpedit_pdb.c: regenerated. 2007-12-14 Michael Natterer * app/core/gimp-edit.[ch]: added GErrors when functions can fail. * app/actions/edit-commands.c: handle the returned errors. * tools/pdbgen/pdb/edit.pdb: same here (*don't* pass the error as usual since these functions never fail but have a boolean return value indicating success instead; ugly, but better than having the gimp_message() calls in the core). Also changed the named buffer cut and copy functions to do the same (never fail but return a NULL buffer name on failure), so they behave as documented. * app/pdb/edit_cmds.c: regenerated. 2007-12-14 Sven Neumann * app/base/tile-pyramid.c: reduced rounding errors. 2007-12-13 Martin Nordholts * app/tools/gimprectangletool.[ch]: Changed name of `gimp_rectangle_tool_is_active_at' to `gimp_rectangle_tool_is_active_on_display'. * app/tools/gimpcroptool.c * app/tools/gimprectangleselecttool.c: Use the new name. 2007-12-13 Martin Nordholts * app/tools/gimprectangletool.[ch]: Don't use the `display' member of GimpTool for keeping track of what display the rectangle is active on. Instead store the active display in GimpRectangleToolPrivate. This change is based on a patch by Bill Skaggs. (gimp_rectangle_tool_is_active) (gimp_rectangle_tool_is_active_at) (gimp_rectangle_tool_get_active_display): New public functions for GimpRectangleTool active-display interaction. * app/tools/gimpcroptool.c * app/tools/gimprectangleselecttool.c * app/tools/gimpellipseselecttool.c: Use the active display of GimpRectangleTool instead of tool->display. 2007-12-13 Bill Skaggs * app/widgets/gimpfiledialog.c (gimp_file_dialog_new): add shortcut to user's DOCUMENTS dir, fixes bug #325294. 2007-12-13 Sven Neumann * app/base/temp-buf.c (temp_buf_demultiply): corrected formula for demultiplying the alpha value. 2007-12-13 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_button_release): Make canceling work a bit better. 2007-12-13 Sven Neumann * app/base/tile-pyramid.c (tile_pyramid_write_quarter) * app/display/gimpdisplayshell-render.c (render_image_tile_fault_nearest): corrected formula used for pre-multiplying the alpha value. 2007-12-13 Sven Neumann Speed up our display rendering code paths by keeping data with pre-multiplied alpha where possible. The projection tile-manager at 100 % zoom is not affected. So we can still always get the non-pre-multiplied pixel data. * app/core/gimpprojection.[ch]: removed gimp_projection_get_opacity(), the projection is always opaque. * app/base/tile-pyramid.[ch]: use pre-multiplied alpha for the upper levels of the pyramid. This speeds up validation of the upper levels significantly. * app/base/temp-buf.[ch]: added temp_buf_demultiply(). * app/core/gimpimage-preview.c: demultiply the preview temp-buf obtained from the projection's tile tyramid. * app/display/gimpdisplayshell-draw.c * app/display/gimpdisplayshell-render.c: added code to deal with pre-multiplied data. In fact all data returned by render_image_tile_fault() is now pre-multiplied so that render_image_rgb_a() and render_image_gray_a() don't need to use the large lookup tables from gimprender.[ch] any longer. 2007-12-13 Sven Neumann * app/widgets/gimprender.[ch]: export the light and dark check color so that places that just need this information don't have to access the gimp_render_blend_{dark,light}_check arrays. * app/actions/view-actions.c * app/display/gimpdisplayshell-appearance.c * app/widgets/gimpcolormapeditor.c: changed accordingly. 2007-12-13 Sven Neumann * app/gimp-log.h: code cleanup. 2007-12-13 Sven Neumann * app/base/tile-manager-crop.c (tile_manager_crop): code cleanup. 2007-12-12 Tor Lillqvist * libgimpbase/gimpenv.c (gimp_locale_directory) [Win32]: Use g_win32_locale_filename_from_utf8() instead of duplicating its code. 2007-12-12 Martin Nordholts * app/tools/gimprectangletool.[ch]: Extended public interface a bit. (gimp_rectangle_tool_point_in_rectangle): New convenience function to test if a point is within the rectangle (if active). (gimp_rectangle_tool_rectangle_is_new): New function so that clients can determine if the rectangle currently being rubber-banded was created from scatch or not. 2007-12-12 Sven Neumann * libgimpwidgets/gimpcairo-utils.[ch]: renamed gimp_cairo_set_source_color() to gimp_cairo_set_source_rgb() and added an RGBA variant. * libgimpwidgets/gimpcellrenderercolor.c (gimp_cell_renderer_color_render) * app/widgets/gimpviewrenderer.c (gimp_view_renderer_draw): changed accordingly. * libgimpwidgets/gimpwidgets.def: updated. 2007-12-12 Sven Neumann * libgimpwidgets/gimpcairo-utils.[ch]: added new function gimp_cairo_checkerboard_create() and renamed gimp_cairo_create_surface_from_pixbuf() to gimp_cairo_surface_create_from_pixbuf(). * libgimpwidgets/gimpcellrenderercolor.c (gimp_cell_renderer_color_render): use Cairo utils here. * app/widgets/gimpviewrenderer.c (gimp_view_renderer_create_pattern): changed accordingly. * libgimpwidgets/gimpwidgets.def: updated. 2007-12-12 Sven Neumann * app/widgets/Makefile.am * app/widgets/gimpcairo-utils.[ch]: removed here... * libgimpwidgets/Makefile.am * libgimpwidgets/gimpcairo-utils.[ch]: and added here after some cleanup. * libgimpwidgets/gimpwidgets.h: include gimpcairo-utils.h. * app/widgets/gimpviewrenderer.c * app/widgets/gimpviewrenderergradient.c * app/widgets/gimpviewrendererpalette.c: changed accordingly. * libgimpwidgets/gimpwidgets.def: updated for Cairo utils. * libgimp/gimp.def: added gimp_image_get_vectors_by_tattoo. 2007-12-12 Michael Natterer * app/core/gimpitem.[ch]: added GError to GimpItem::rename(). * app/core/gimplayer.c * app/core/gimplayermask.c: set errors when renaming is impossible. * app/text/gimptextlayer.c * app/core/gimpimage-quick-mask.c: changed accordingly. * app/actions/channels-commands.c * app/actions/layers-commands.c * app/actions/vectors-commands.c * app/widgets/gimpitemtreeview.c: handle the returned errors. * tools/pdbgen/pdb/drawable.pdb * tools/pdbgen/pdb/vectors.pdb: pass the error. * app/pdb/drawable_cmds.c * app/pdb/vectors_cmds.c: regenerated. 2007-12-12 Michael Natterer * app/paint/gimpheal.c: no need to declare init() and class_init(), these declarations come for free with G_DEFINE_TYPE(). 2007-12-12 Michael Natterer * app/core/gimplayer-floating-sel.c (floating_sel_to_layer): add missing return value, this is no void function any more. 2007-12-12 Sven Neumann * plug-ins/common/whirlpinch.c: extended the range allowed for the whirl angle (bug #499398). 2007-12-12 Sven Neumann * INSTALL * configure.in * app/gui/gui.c (GTK_REQUIRED_MICRO): bumped minimum required version of gtk+ to 2.12.1. * app/widgets/gimpdockbook.c (gimp_dockbook_tab_drag_motion): removed unused parameter that was needed for gtk+ < 2.12.1. 2007-12-12 Tor Lillqvist * libgimpbase/gimpenv.c (gimp_toplevel_directory) [Win32]: Use the location of the libgimpbase DLL and not that of the main executable (which will be the Python interpreter in the case of python-fu) to determine the top-level GIMP installation folder. (#502506) (gimp_locale_directory) [Win32]: Guard against the possibility that we can't get the system codepage form of the locale directory, in case the installation folder contains characters not in the system codepage. In that case use the short name instead. 2007-12-12 Sven Neumann * libgimpwidgets/gimpcellrenderercolor.c: draw using Cairo. 2007-12-12 Tor Lillqvist * app/base/tile-private.h * app/base/tile-swap.c: Move the LARGE_SEEK and LARGE_TRUNCATE macros from tile-private.h to tile-swap.c as they aren't used anywhere else, and the helper function used on Windows was static in tile-swap.c anyway. (#503124) 2007-12-11 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c (get_consecutive_cells): Fix to prevent reporting out of memory when there should be plenty of cells still available. See SourceForge bug #1794369. 2007-12-11 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c: Don't abort the top-level s-exp when loading a file. See SourceForge bug #1589711. 2007-12-11 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme.c: Applied changes from official version of TinyScheme which fix is_integer(). See SourceForge bug #1593861. 2007-12-11 Bill Skaggs * app/paint/gimpheal.c: heal from edge of brush mask instead of edges of paint area. * app/paint/gimpbrushcore.[ch]: export gimp_brush_core_get_brush_mask() to enable use of mask. 2007-12-11 Michael Natterer * app/pdb/Makefile.am * app/pdb/gimppdb-utils.[ch]: new utility functions which look up brushes, patterns etc. and set appropriate error messages if the objects are not found. * tools/pdbgen/pdb/brush.pdb * tools/pdbgen/pdb/brushes.pdb * tools/pdbgen/pdb/buffer.pdb * tools/pdbgen/pdb/context.pdb * tools/pdbgen/pdb/convert.pdb * tools/pdbgen/pdb/gradient.pdb * tools/pdbgen/pdb/gradients.pdb * tools/pdbgen/pdb/paint_tools.pdb * tools/pdbgen/pdb/palette.pdb * tools/pdbgen/pdb/palettes.pdb * tools/pdbgen/pdb/pattern.pdb * tools/pdbgen/pdb/patterns.pdb: use them here. Also set non_empty to TRUE for all brush, pattern etc. names. * app/pdb/brush_cmds.c * app/pdb/brushes_cmds.c * app/pdb/buffer_cmds.c * app/pdb/context_cmds.c * app/pdb/convert_cmds.c * app/pdb/gradient_cmds.c * app/pdb/gradients_cmds.c * app/pdb/paint_tools_cmds.c * app/pdb/palette_cmds.c * app/pdb/palettes_cmds.c * app/pdb/pattern_cmds.c * app/pdb/patterns_cmds.c: regenerated. 2007-12-11 Sven Neumann * app/plug-in/gimpplugin-message.c: added sanity checks to message handlers. This doesn't keep us from crashing on invalid input, but we will at least get some warnings before that happens. * libgimpbase/gimpprotocol.c: made the code more robust against errors on the wire protocol level. 2007-12-11 Sven Neumann * libgimpbase/gimpwire.c (_gimp_wire_read_string): use g_try_new() so a plug-in can't easily crash the core by sending an invalid string message. 2007-12-11 Sven Neumann * libgimpbase/gimpwire.c (gimp_wire_register): allocate GimpWireHandler structs using GSlice. 2007-12-11 Sven Neumann * libgimpbase/gimpwire.c (_gimp_read_read_string): NULL-terminate all strings coming in over the wire protocol. Should help with bug #498207. (gimp_wire_register): 2007-12-10 Sven Neumann * plug-ins/pygimp/gimpmodule.c (pygimp_set_background) (pygimp_set_foreground): allow the use of CSS color names and hexadecimal color notation. 2007-12-10 Bill Skaggs * app/paint/gimpheal.c: make the healing brush work properly when dragged. Fixes bug #492575. 2007-12-09 Hans Breuer * app/gimp-log.h : an ugly but working variant for no varargs macros * app/base/base-utils.c(get_physical_memory_size) : fallback to GetMemoryStatus() for older compiler/sdk * app/core/gimplayer-floating-sel.c : second argument to g_set_error() is an uint32, not a pointer * **/makefile.msc : updated and removed -GD to let msvc9 complain less 2007-12-09 Martin Nordholts * app/tools/gimprectangletool.[ch]: Added gimp_rectangle_tool_init() (and minor code cleanup). * app/tools/gimprectangleselecttool.c (gimp_rect_select_tool_init): Call gimp_rectangle_tool_init(). * app/tools/gimpcroptool.c (gimp_crop_tool_init): Call gimp_rectangle_tool_init(). 2007-12-08 Sven Neumann * plug-ins/pygimp/gimpfu.py (_run): fixed logic that decides if a dialog should be shown or not. 2007-12-07 Bill Skaggs * app/core/gimpimage-snap.c: fix typo in previous commit. 2007-12-07 Bill Skaggs * app/display/gimpdisplayshell-draw.c: draw grid correctly when non-integer spacing is combined with a large offset. Fixes bug #502374. * app/core/gimpimage-snap.c: make snapping to grid work when coord is less than the grid offset. 2007-12-07 Sven Neumann * configure.in: fixed indentation of --help output. 2007-12-07 Sven Neumann * plug-ins/pygimp/pygimp-colors.c * plug-ins/pygimp/gimpcolormodule.c: removed calls to PyMem_Free(). 2007-12-07 Sven Neumann * libgimpcolor/test-color-parser.c: removed unused import. 2007-12-07 Michael Natterer * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_tool_events): if a device change happens, make sure we update the new active tool's focus display and modifier state. Fixes most of bug #493176. 2007-12-07 Michael Natterer * app/gimp-log.[ch]: renamed log domain TOOLS to TOOL_EVENTS and added domain TOOL_FOCUS. * app/display/gimpdisplayshell-callbacks.c: s/TOOLS/TOOL_EVENTS/ * app/tools/gimptool.c: port focus debug output to GIMP_LOG(). 2007-12-07 Michael Natterer * app/core/gimpselection.[ch]: added GErrors to gimp_selection_extract() and gimp_selection_float(). * app/core/gimp-edit.c * app/tools/gimpeditselectiontool.c * app/actions/select-commands.c: handle the returned error. * app/core/gimpdrawable-transform.c: pass NULL errors since this file knows what it does and won't get errors. * tools/pdbgen/pdb/selection.pdb: pass the error. * app/pdb/selection_cmds.c: regenerated. 2007-12-07 Sven Neumann * plug-ins/pygimp/gimpui.py (ColorSelector.__init__): accept a string and parse it using gimpcolor.rgb_parse_css(). * plug-ins/pygimp/plug-ins/sphere.py: show off the new feature. 2007-12-07 Sven Neumann * plug-ins/pygimp/plug-ins/foggify.py: push/pop a context instead of manually restoring the background color. 2007-12-07 Sven Neumann * app/batch.c (batch_run): only show the message about using the default batch interpreter when running in verbose mode. 2007-12-06 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_set_property): Also update the integer representation of the rect when the GObject properties has been set. 2007-12-06 Michael Natterer * app/core/gimpimage-merge.[ch] * app/core/gimpimage-convert.[ch]: added GError parameters. * app/dialogs/convert-dialog.c * app/actions/image-commands.c * app/actions/vectors-commands.c: handle the returned error. * tools/pdbgen/pdb/convert.pdb: pass the error. * app/pdb/convert_cmds.c: regenerated. 2007-12-06 Michael Natterer * app/core/gimpdrawable-bucket-fill.[ch]: add GError parameter. * app/tools/gimpbucketfilltool.c: handle the returned error. * tools/pdbgen/pdb/edit.pdb: pass the error. * app/pdb/edit_cmds.c: regenerated. 2007-12-06 Michael Natterer * app/paint/gimppaintcore-stroke.[ch]: added GError arguments and fixed all functions to abort when the first call to gimp_paint_core_start() fails (it won't succeed either for the next path or whatever segemts). * app/core/gimpitem.[ch]: added GError to gimp_item_stroke() * app/core/gimpselection.c * app/core/gimpchannel.c * app/vectors/gimpvectors.c: don't gimp_message() in GimpItem::stroke() but set the error. * app/dialogs/stroke-dialog.c * app/actions/vectors-commands.c * app/actions/select-commands.c: handle the returned errors. * tools/pdbgen/pdb/edit.pdb * tools/pdbgen/pdb/paths.pdb * tools/pdbgen/pdb/paint_tools.pdb: pass the error to the stroke functions. * app/pdb/paint_tools_cmds.c * app/pdb/edit_cmds.c * app/pdb/paths_cmds.c: regenerated. 2007-12-06 Michael Natterer Move some gimp_message() calls where they belong: * app/core/gimplayer-floating-sel.[ch]: removed unreachable gimp_message() in floating_sel_anchor() and added GError parameter to floating_sel_to_layer(). * app/core/gimplayer.c * app/core/gimpimage-quick-mask.c * app/actions/layers-commands.c: pass NULL or an error as appropriate and show the error message. * tools/pdbgen/pdb/floating_sel.pdb: set the error when the passed layer was no floating selection. * app/pdb/floating_sel_cmds.c: regenerated. 2007-12-05 Martin Nordholts * app/actions/tool-options-commands.c (tool_options_save_to_cmd_callback) (tool_options_restore_from_cmd_callback): Only care about GIMP_CONFIG_PARAM_SERIALIZE properties, fixes bug #498948. 2007-12-05 Michael Natterer * tools/pdbgen/pdb/fileops.pdb: pass the error also to file_utils_filename_to_uri(). * app/pdb/fileops_cmds.c: regenerated. 2007-12-05 Sven Neumann * modules/gimpinputdevicestore-dx.c * modules/gimpinputdevicestore-hal.c: the code for !HAVE_LIBHAL ended up in the wrong file. 2007-12-05 Michael Natterer * tools/pdbgen/pdb/image.pdb (set_resolution): set the error instead of using gimp_message(). * app/pdb/image_cmds.c: regenerated. 2007-12-05 Michael Natterer * app/pdb/gimppdb-query.[ch]: added GError arguments and reduce number of labels: to one by simply checking if the regex exists before unreffing it. * tools/pdbgen/pdb/procedural_db.pdb: pass the error to the query functions. * app/pdb/procedural_db_cmds.c: regenerated. 2007-12-05 Michael Natterer * configure.in: disable deprecated API also for the current develoment versions of glib, pango and gtk+, so we can fix new deprecations as soon as they pop up. 2007-12-04 Bill Skaggs * tools/pdbgen/pdb/image.pdb: pass "error" instead of NULL. * app/pdb/image_cmds.c: regenerated. 2007-12-04 Bill Skaggs * tools/pdbgen/pdb/gradient.pdb * tools/pdbgen/pdb/palette.pdb * tools/pdbgen/pdb/brush.pdb: use the new error arg instead of creating a GError and handling it internally. * app/pdb/palette_cmds.c * app/pdb/gradient_cmds.c * app/pdb/brush_cmds.c: regenerated. 2007-12-04 Michael Natterer * app/core/gimpdrawable.[ch]: added new API gimp_drawable_estimate_memsize() and virtual function GimpDrawable::estimate_memsize() which estimate the memsize of a drawable after scaling/resizing. * app/core/gimplayer.c: implement the virtual function and take the layer mask into account. * app/core/gimpimage-item-list.[ch] (gimp_image_item_list_get_list): added const qualifiers. * app/core/gimpimage-scale.c (gimp_image_scale_check): use the new function to correctly estimate the new size instead of scaling the drawables' memsizes including all constant parts. Fixes bug #329468. * app/gimp-log.[ch]: added IMAGE_SCALE log domain. * app/core/gimpimage-scale.c: use it here for debugging output. 2007-12-04 Sven Neumann * modules/Makefile.am * modules/gimpinputdevicestore.c: split into two new files: * modules/gimpinputdevicestore-dx.c: DirectX Input implementation * modules/gimpinputdevicestore-hal.c: HAL implementation 2007-12-03 Michael Natterer * tools/pdbgen/pdb/fileops.pdb: pass the new error down to all file functions which take GError arguments. * app/pdb/fileops_cmds.c: regenerated. 2007-12-02 Manish Singh * app/dialogs/about-dialog.c (about_dialog_load_url): pass NULL GError arg to gimp_pdb_execute_procedure_by_name. * app/xcf/xcf.c * app/xcf/xcf-load.[ch] * app/xcf/xcf-save.[ch]: throw GErrors from load/save invokers instead of gimp_messages. 2007-12-02 Sven Neumann * tools/pdbgen/app.pl: use GError for error reporting in PDB invoker methods. * tools/pdbgen/pdb/vectors.pdb: use the GError for the procedures introduced for bug #497159. * tools/pdbgen/pdb/fileops.pdb: use the GError from file-load and file-save procedures. * app/pdb/*_cmds.c: regenerated. * app/pdb/Makefile.am * app/pdb/gimppdberror.[ch]: new file introducing the GIMP_PDB_ERROR domain. * app/actions/plug-in-commands.c * app/actions/vectors-commands.c * app/batch.c * app/core/gimpimagefile.c * app/core/gimppdbprogress.c * app/file/file-open.[ch] * app/file/file-save.c * app/plug-in/gimpplugin-message.c * app/plug-in/gimppluginmanager-restore.c * app/plug-in/gimppluginprocedure.c * app/plug-in/gimptemporaryprocedure.c * app/plug-in/plug-in-icc-profile.c * app/widgets/gimpbrushselect.c * app/widgets/gimpfontselect.c * app/widgets/gimpgradientselect.c * app/widgets/gimphelp.c * app/widgets/gimppaletteselect.c * app/widgets/gimppatternselect.c * app/widgets/gimppdbdialog.[ch]: changed accordingly. 2007-12-02 Sven Neumann * plug-ins/common/tiff-load.c (load_image): removed pointless and untranslated warning. 2007-12-02 Sven Neumann * plug-ins/jpeg/jpeg-load.c (jpeg_load_resolution): only set the resolution if X_density and Y_density are not zero. Otherwise the default resolution would be used anyway and the user sees an annoying and confusion warning. 2007-12-01 Sven Neumann * app/core/gimpviewable.h: changed GIMP_VIEWABLE_PRIORITY_IDLE to G_PRIORITY_LOW. The reason for the very low priority was to keep it lower than the projection idle renderer. 2007-12-01 Martin Nordholts * docs/Makefile.am: Applied patch from Jesper de Jong that removes an errant leading space in a command. Fixes bug #500826. 2007-11-30 Sven Neumann * app/core/gimpprojection.c (gimp_projection_idle_render_init): raised the idle renderer priority even higher (bug #499150). 2007-11-30 Sven Neumann * app/base/tile-manager.c (tile_manager_invalidate_area): if no tiles have been allocated, there's no need to invalidate any. Should fix bug #500178. 2007-11-29 Sven Neumann * app/core/gimpprojection.c (gimp_projection_idle_render_init): raise the priority of the idle renderer to G_PRIORITY_DEFAULT_IDLE. Should fix bug #499150. 2007-11-29 Bill Skaggs * plug-ins/Lighting/lighting_ui.c: make sure to update bumpmap when combo is changed. Addresses bug #500317. 2007-11-28 Sven Neumann * app/actions/drawable-commands.c (drawable_flip_cmd_callback): fixed orientation type used for linked items (bug #499161). * app/core/gimpdrawable-transform.c (gimp_drawable_transform_tiles_flip): fixed typo in if condition and added more sanity checks. 2007-11-27 Bill Skaggs * app/tools/gimprectangletool.c: initialize vars to quiet stupid compile warnings. 2007-11-26 Sven Neumann * app/widgets/gimpwidgets-utils.c (gimp_widget_accel_changed): escape text before using it in Pango text markup. 2007-11-26 Sven Neumann * plug-ins/common/wmf.c (load_image): improved error reporting. 2007-11-26 Sven Neumann * plug-ins/common/wmf.c: avoid filename encoding problems by not using wmf_file_open() but mapping the file into memory with GMappedFile. Fixes bug #499329. 2007-11-26 Sven Neumann * app/widgets/gimpblobeditor.c (gimp_blob_editor_draw_blob): corrected rendering of the blob (bug #499281). 2007-11-24 Martin Nordholts * app/tools/gimprectangleoptions.c (gimp_rectangle_options_iface_base_init): Fix indentation. 2007-11-24 Martin Nordholts * app/tools/gimprectangletool.[ch]: Renamed RECT_* identifiers of the GimpRectangleFunction enum to GIMP_RECTANGLE_TOOL_*. * app/tools/gimprectangleselecttool.c: Use the new names. 2007-11-24 Martin Nordholts * app/tools/gimprectangletool.[ch]: Ported the internal representation of the rectangle to gdouble:s instead of gint:s. This solves problems like not being able to swap portrait for landscape on very small rectangles and bug #442027, as well as provides a nice base to solve other similar problems when they are discovered. It is possible to choose what precision the GimpRectangleTool:s will appear to have externally through a new GimpRectanglePrecision enum and property, but the gdouble mode still requires some work in order to be useful. Internally the rectangle always is represented using gdouble:s of course. In the processes quite some refactoring has taken place, mostly restructuring code and splitting larger functions into smaller more managable ones. (gimp_rectangle_tool_rect_rubber_banding_func) (gimp_rectangle_tool_setup_snap_offsets) (gimp_rectangle_tool_apply_fixed_rule) (gimp_rectangle_tool_update_int_rect) (gimp_rectangle_tool_get_public_rect): New helper functions. * app/tools/tools-enums.h: Added GimpRectanglePrecision. 2007-11-23 Sven Neumann * plug-ins/flame/rect.c: reduced progress updates based on a patch from Tobias Jakobs (bug #499255). Untabified. 2007-11-23 Sven Neumann * tools/pdbgen/pdb/procedural_db.pdb: removed outdated information from comment. * app/pdb/procedural_db_cmds.c * libgimp/gimpproceduraldb_pdb.c: regenerated. 2007-11-22 Michael Natterer * app/widgets/gimpcolorbar.[ch]: derive from GtkEventBox instead of GtkMisc, but use an input-only window. * app/tools/gimplevelstool.c: redirect the events of the color bars to the handle bars. The histogram dialog has this change already. Functionality should be 100% restored now. 2007-11-22 Sven Neumann * libgimpwidgets/gimphelpui.[ch]: use gtk_widget_set_tooltip_text() from gimp_help_set_help() and added gimp_help_set_help_data_with_markup() for the cases where markup is needed. * libgimpwidgets/gimpwidgets.def: updated. * app/tools/gimpselectionoptions.c * app/widgets/gimpeditor.c * app/widgets/gimpwidgets-utils.c: use the new function where markup in tooltips is being used. * app/widgets/gimptoolbox-color-area.c: no need to escape the ampersand any longer. 2007-11-22 Jakub Steiner * data/images/gimp-splash.png: New unstable splash * data/images/gimp-splash-2.4.png: looks like we keep stable splashes around 2007-11-22 Michael Natterer * app/tools/gimplevelstool.[ch]: use a GimpHandleBar also for the input frame, added a second adjustment for gamma and map between the linear and logarithmic gamma values in the adjustment callbacks, get rid of one GtkFrame just as in the histogram dialog. Still not finished since mouse events on the color bars are currently not handled. 2007-11-21 Sven Neumann * app/config/gimpguiconfig.c: use "open %s" as the default web-browser command on Mac OS X. 2007-11-21 Sven Neumann * HACKING * autogen.sh: dropped support for automake 1.8 and require automake >= 1.9.6. Require libtool 1.5 for all platforms. 2007-11-20 Michael Natterer * app/widgets/gimpcontainercombobox.c: set the combo insensitive when it has no items. Fixes bug #498511. 2007-11-20 Michael Natterer * app/tools/gimplevelstool.[ch]: use a GimpHandleBar widget for the output sliders. Removes a bunch of code already, more to come... 2007-11-20 Sven Neumann * plug-ins/script-fu/scripts/t-o-p-logo.scm: applied patch from Ulf-D. Ehlert that fixes the background color used in the Particle Trace filter (bug #498282). 2007-11-20 Sven Neumann * app/widgets/gimpcolorbar.c (gimp_color_bar_expose): added const qualifiers. 2007-11-20 Michael Natterer * app/widgets/widgets-types.h * app/widgets/Makefile.am * app/widgets/gimphandlebar.[ch]: new widget implementing the slider bar known from histogram and levels. * app/widgets/gimphistogrambox.[ch]: use the new widget. General cleanup and UI streamlining. 2007-11-20 Michael Natterer * app/widgets/gimpcolorbar.c * app/widgets/gimphistogramview.c: cosmetic. 2007-11-19 Sven Neumann * app/widgets/gimpcurveview.[ch]: draw a base-line with the grid. Not sure if this should stay enabled for the Curves tool... 2007-11-19 Tor Lillqvist * libgimpwidgets/gimpcolorscale.c (gimp_color_scale_render_stipple): Don't write past end of buffer (bug #399484). 2007-11-18 Martin Nordholts * app/tools/gimprectangleselecttool.c: Cosmitics. More strictly align static function prototypes and consistently use the name rect_sel_tool for pointers to GimpRectSelectTool. 2007-11-18 Bill Skaggs * libgimp/gimp.def: forgot in previous commit 2007-11-18 Bill Skaggs * tools/pdbgen/pdb/vectors.pdb: add code for vectors-export-to-file and vectors-export-to-string, as requested in bug #497159. * app/pdb/vectors_cmds.c * app/pdb/internal_procs.c * libgimp/gimpvectors_pdb.c * libgimp/gimpvectors_pdb.h: rebuilt accordingly. 2007-11-18 Sven Neumann * gimptool-2.0.in: removed. * configure.in: removed leftover references to the gimptool script. 2007-11-18 Michael Natterer * app/gimp-log.[ch]: add SAVE_DIALOG log domain. * app/dialogs/file-save-dialog: port debug output to GIMP_LOG(). 2007-11-18 Michael Natterer * app/gimp-log.[ch]: add DIALOG_FACTORY log domain. * app/widgets/gimpdialogfactory.c: port debug output to GIMP_LOG(). 2007-11-18 Michael Natterer * app/gimp-log.[ch]: changed to work with different compiler-specific ways of doing macro varargs. Also cope with no macro vararg support at all. Pointed out by Hans Breuer. 2007-11-18 Michael Natterer * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_canvas_tool_events): improve debug output. 2007-11-17 Sven Neumann * app/base/base-utils.c (get_physical_memory_size): added a cast to avoid an integer overflow on 32bit machines. 2007-11-17 Sven Neumann * tools/gimptool.c: minor cleanup, hopefully not breaking anything. 2007-11-17 Sven Neumann * app/base/base-utils.[ch]: changed to get_physical_memory_size() and added an implementation for POSIX.2 platforms. 2007-11-17 Tor Lillqvist * tools/gimptool.c: Ignore --msvc-syntax unless on Windows. Put some Windows-only stuff inside ifdef. 2007-11-16 Tor Lillqvist Use the gimptool program on Unix, too, instead of the gimptool script. * configure.in * Makefile.am: Drop gimptool script and gimptool-win32.c(.in) * tools/gimptool.c * tools/Makefile.am: Move gimptool-win32.c.in here and call it just gimptool.c. Build and install on all platforms. * tools/gimptool.c: Change accordingly. * doc/gimptool.1.in: Document the --msvc-syntax option. 2007-11-16 Michael Natterer * app/gimp-log.[ch]: add HELP log domain. * app/widgets/gimphelp.c: port debug output to GIMP_LOG() and improve it. 2007-11-16 Tor Lillqvist * app/base/base-utils.c * app/base/base-utils.h (get_physical_memory_size_megabytes): New function that Sven asked for. Somebody please fill in Unix implementation(s). Feel free to change the name, change to return as bytes in a gint64, etc. 2007-11-16 Michael Natterer * app/base/temp-buf.c * app/base/tile-manager.c * app/core/gimpobject.c: accept NULL in all get_memsize() functions. * app/core/gimp-utils.[ch]: ditto. Added gimp_string_get_memsize(). * app/core/gimp.c * app/core/gimpbrush.c * app/core/gimpbuffer.c * app/core/gimpcontainer.c * app/core/gimpcontext.c * app/core/gimpdata.c * app/core/gimpdrawable.c * app/core/gimpdrawablemodundo.c * app/core/gimpdrawableundo.c * app/core/gimpimage.c * app/core/gimpitempropundo.c * app/core/gimplayer.c * app/core/gimpmaskundo.c * app/core/gimppalette.c * app/core/gimpparasitelist.c * app/core/gimppattern.c * app/core/gimppreviewcache.c * app/core/gimpundo.c * app/core/gimpundostack.c * app/core/gimpviewable.c * app/pdb/gimpprocedure.c * app/plug-in/gimpplugindef.c * app/plug-in/gimppluginmanager.c * app/plug-in/gimppluginprocedure.c * app/text/gimptext.c * app/text/gimptextlayer.c * app/text/gimptextundo.c * app/vectors/gimpvectorsmodundo.c: simplify GimpObject::get_memsize() implementations accordingly. * app/core/gimpimageundo.c: ditto. Always keep around colormaps in chunks of GIMP_IMAGE_COLORMAP_SIZE to be coonsistent with the other colormap handling code. 2007-11-16 Sven Neumann * app/base/lut-funcs.c (equalize_lut_setup): make sure we don't get stuck in a loop if all pixels are transparent (bug #497291). 2007-11-16 Sven Neumann * libgimpconfig/gimpcolorconfig.c: changed default value for using the system monitor profile. Many users seem to have broken monitor profiles and it's hard to figure out how to fix this (bug #496890). 2007-11-15 Sven Neumann * app/tools/gimpselectionoptions.c (gimp_selection_options_gui): plugged a memory leak. * libgimpwidgets/gimpintstore.c (gimp_int_store_add_empty): initialize the iter to avoid using uninitialized memory. 2007-11-15 Sven Neumann * plug-ins/common/screenshot.c: don't call gimp_edit_clear() if the selection mask is empty after selecting the window shape and inverting that selection. Fixes bug #493182. 2007-11-15 Sven Neumann * plug-ins/common/tiff-save.c (save_image): fixed bug in colormap handling (bug #497103). 2007-11-15 Michael Natterer * app/display/gimpdisplayshell-dnd.c * app/widgets/gimpdnd-xds.c * app/widgets/gimpselectiondata.c: use GIMP_LOG(DND) here too. 2007-11-15 Michael Natterer * app/gimp-log.[ch]: add DND log domain. * app/widgets/gimpdnd.c: use GIMP_LOG(). 2007-11-15 Sven Neumann * app/core/gimpcurve-save.c: added sanity checks. 2007-11-15 Michael Natterer * app/Makefile.am * app/gimp-log.[ch]: new files implementing a log facility which can be enabled using the GIMP_LOG environment variable. * app/main.c: initialize it. * app/display/gimpdisplayshell-callbacks.c: use it instead of private debugging macros that need to be enabled at compile time. 2007-11-15 Michael Natterer * app/core/gimpviewable.[ch]: add read-only property "frozen" and new API gimp_viewable_preview_is_fozen(). Emit property notifications. * app/widgets/gimphistogramview.[ch]: add API to show a second histogram in the background. Remove member "light_histogram" from the GimpHistogramViewClass struct. * app/widgets/gimpcurveview.c: don't set "light_histogram". * app/tools/gimpcurvestool.c: set the background histogram instead. * app/widgets/gimphistogrameditor.[ch]: connect to "notify::frozen" of the drawable and show its histogram at the freezing point in the background. This way the original histogram is visible while we are doing color corrections. 2007-11-14 Michael Natterer * app/display/gimpcanvas.c * app/widgets/gimpcurveview.c: free the cached PangoLayouts in GtkWidget::style_set(). * app/widgets/gimppaletteview.c: draw the focus rectangle in hardcoded black/white since we also hardcode the grid color to black. * app/display/gimpstatusbar.c * app/widgets/gimpdockable.c: small cleanups while reviewing layout code. 2007-11-14 Michael Natterer * app/widgets/gimpcolorframe.[ch]: replaced the number label with a big Cairo-drawn number below the color value labels. 2007-11-14 Michael Natterer * app/widgets/gimppaletteview.[ch]: port to Cairo drawing. 2007-11-13 Martin Nordholts * app/tools/gimprectangletool.c: Avoid GimpRectangleTool internals to make use of its own public interface by making gimp_rectangle_tool_get_other_side() work on pointers to members instead of GObject property names. (gimp_rectangle_tool_set_other_side_coord) (gimp_rectangle_tool_get_other_side_coord): Use gimp_rectangle_tool_get_other_side() in the new way. 2007-11-13 Martin Nordholts Fixed warnings about negative rectangle widths/heights when toggling 'Fixed center' while rubber banding a rectangle. * app/tools/gimprectangletool.c (gimp_rectangle_tool_set_other_side_coord): Finnishing off with a call to gimp_rectangle_tool_check_function() as changing the coordinates of the opposite side might swap the orientation of the rectangle. 2007-11-13 Sven Neumann * app/core/gimpimage-merge.c (gimp_image_merge_layers): when we encounter an unsupported merge operation (merging an opaque indexed layer onto an indexed layer with alpha channel), then add an alpha channel and try again. Fixes bug #496437. 2007-11-13 Michael Natterer * app/widgets/gimpviewrenderer.c (gimp_view_renderer_draw): use cairo_save()/cairo_restore() around calling the virtual function instead of restoring the clipping area manually. 2007-11-13 Michael Natterer * app/widgets/gimpviewrenderervectors.c (gimp_view_renderer_vectors_draw): naive port to Cairo. Somebody should check if this isn't better done with proper curve_to() drawing using the original vectors data instead of interpolation. * app/widgets/gimpviewrenderer.c (gimp_view_renderer_draw): reset clipping before drawing the border because a subclass' draw() might have done additional clipping. 2007-11-13 Tor Lillqvist * gimptool-win32.c.in: Some cleanups, more coming. 2007-11-13 Sven Neumann Fix for bug #494049 (painting doesn't update the histogram): * app/paint/gimppaintcore.c: freeze the drawable preview while we are painting. Update the drawable instead of the image. * app/widgets/gimphistogrameditor.c: use a short timeout instead of an idle handler to update the histogram. 2007-11-13 Tor Lillqvist * gimp-zip.in: Drop the timestamp from the zip file names. Add the .pc files to the developer package. 2007-11-13 Michael Natterer Enable brush scaling for smudge (but only before, not while painting). Fixes bug #471348. * app/paint/gimpbrushcore.[ch] (struct GimpBrushCoreClass): rename member "use_scale" to "handles_scaling_brush". (gimp_brush_core_calc_brush_scale): apply pressure scale only if both "handles_scaling_brush" and "use_pressure" are TRUE, and apply the scaling from the options unconditionally. (gimp_brush_core_get_paint_area): don't re-fetch core->scale if "handles_scaling_brush" is FALSE to keep the brush from scaling *while* painting. (gimp_brush_core_create_bound_segs): use the brush scale from the options unconditionally since that's always used now. * app/paint/gimpsmudge.c (gimp_smudge_brush_coords): use gimp_brush_scale_size() to figure the accum_buffer's size instead of using the brush mask's size directly. * app/tools/gimppaintoptions-gui.c (gimp_paint_options_gui): show the brush scale controls for all brush tools. 2007-11-12 Sven Neumann * app/core/gimp-utils.c (gimp_get_default_unit): return GIMP_UNIT_MM in case that we can't query the locale. * plug-ins/common/postscript.c: use gboolean for boolean variables. 2007-11-12 Sven Neumann * app/core/gimpimage-merge.c (gimp_image_merge_layers): corrected the size of the pixel region passed to color_region() in case of an indexed image. Fixes bug #495990. 2007-11-12 Michael Natterer * app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_ruler_button_press): don't let GimpImageMapTools move sample points. They fail badly and leave the display in a paused state. 2007-11-12 Michael Natterer * app/sanity.c: added Pango version sanity check. 2007-11-12 Sven Neumann * plug-ins/common/tiff-load.c (run): properly handle a failure of TIFFFdOpen() instead of crashing on TIFF files we can't handle. 2007-11-12 Michael Natterer * app/display/gimpdisplayshell.c (gimp_display_shell_new): don't crash if gimp_display_shell_filter_new() returns NULL. Fixes bug #495863. 2007-11-11 Kevin Cozens * plug-ins/script-fu/scripts/script-fu-compat.init: Return a list from cons-array when type is 'string. 2007-11-11 Martin Nordholts * app/tools/gimprectangletool.[ch]: Removed gimp_rectangle_tool_get_press_coords() as it doesn't make sense for a rectangle tool interface to provide this functionality. Clients should take care of that themselves. Also adjusted internal code accordingly. * app/tools/gimprectangleselecttool.c: Remember the pressed coordinates on _button_press instead of asking GimpRectangleTool about it. 2007-11-11 Michael Natterer * configure.in: depend on pango 1.18 * app/text/gimpfontlist.c (gimp_font_list_add_font): remove workaround for old pango appending "Non-Rotated" to font names. 2007-11-11 Martin Nordholts * app/tools/gimprectangleselecttool.[ch]: Don't expose private instance members, use g_type_class_add_private() instead. 2007-11-11 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_update_with_coord): Updated comments to reflect current behaviour. 2007-11-11 Martin Nordholts * app/tools/gimprectangletool.c: Lessen code bloat by removing code that manages center-[xy] properies of GimpRectangleOptions. Instead use x1, y1 and x2, y2 when working with the rectangle center. * app/tools/gimprectangleoptions.[ch]: Removed "center-x" and "center-y" properties. 2007-11-10 Sven Neumann * libgimpwidgets/gimppageselector.c: formatting. 2007-11-10 Sven Neumann * app/actions/view-actions.c (view_zoom_explicit_actions): fixed incorrect tooltip (bug #495564). * app/dialogs/preferences-dialog.c (prefs_display_options_frame_add): adapt to the changed return value of gimp_prop_enum_combo_box_new(). 2007-11-10 Michael Natterer * libgimpwidgets/gimppropwidgets.c (gimp_prop_file_chooser_button_*): remove all sorts of workarounds for bugs of GtkFileChooserButton in GTK+ versions prior to 2.12. 2007-11-10 Michael Natterer * libgimpwidgets/gimppropwidgets.c: remove event boxes that were only there for the old tooltips. * modules/cdisplay_lcms.c: ditto. Also remove some code that was only needed because of the event box hack. 2007-11-10 Michael Natterer * app/tools/gimpairbrushtool.c (gimp_airbrush_tool_init) * app/tools/gimppenciltool.c (gimp_pencil_tool_init): don't enable color picking, it already gets enabled by the parent class. 2007-11-10 Sven Neumann * plug-ins/helpbrowser/dialog.c (browser_dialog_make_index_foreach): deal gracefully with NULL titles. 2007-11-09 Sven Neumann * app/widgets/gimpcurveview.c (gimp_curve_view_expose): align the overlay with the pixel grid. 2007-11-09 Sven Neumann * app/widgets/gimpcurveview.c: draw the selected point filled and outlines for the unselected points. 2007-11-09 Sven Neumann * app/widgets/gimpcurveview.c (gimp_curve_view_expose): draw the center grid lines slightly stronger than the other grid lines. 2007-11-09 Sven Neumann * app/widgets/gimpcurveview.c (gimp_curve_view_expose): draw the cursor position using a translucent overlay. 2007-11-09 Sven Neumann * app/widgets/gimpcurveview.[ch]: added construct-only properties to control the number of grid rows and columns. Increased the default values to 8. 2007-11-09 Michael Natterer * libgimpwidgets/gimphelpui.[ch]: use the new tooltip API instead of the old deprecated one. Removed _gimp_help_init(). Remember whether tooltips are enabled or not in a local variable that can only be altered at startup time and not after. The API now expects markup instead of plain text which might cause warnings and perhaps needs to be changed. * libgimpwidgets/gimpwidgets-private.c: don't call _gimp_help_init(). * app/config/gimpguiconfig.c: made show-tooltips a GIMP_CONFIG_PARAM_RESTART property. * app/widgets/gimptoolbox-color-area.c: don't add the tooltip here... * app/widgets/gimptoolbox.c: ...but here (as for all other indicators). Also escape '&' properly because we now use markup. * app/tools/gimpselectionoptions.c * app/widgets/gimpeditor.c * app/widgets/gimpwidgets-utils.c: print modifiers and shortcuts in bold instead of in (). * app/widgets/gimpcontainertreeview.c: show tooltips on rows if gimp_viewable_get_description() returns a tip. * app/dialogs/preferences-dialog.c * plug-ins/jpeg/jpeg-save.c * plug-ins/MapObject/mapobject_ui.c * plug-ins/Lighting/lighting_ui.c * plug-ins/common/animationplay.c * plug-ins/common/warp.c: no need to add event boxes just to have tooltips, the new ones work on all widgets. 2007-11-08 Sven Neumann * app/display/gimpstatusbar.c (gimp_statusbar_vprintf): also cut the message at a '\r' character. Fixes the remaining aspect of bug #492718. 2007-11-08 Michael Natterer * libgimp/gimpenums.c.tail: replaced by generated version. 2007-11-08 Sven Neumann * app/display/gimpdisplayshell.c (gimp_display_shell_show_tooltip): don't directly pass a message to gimp_statusbar_push(), it expects a format string and printf-like varargs. Fixes the crash reported in bug #492718. 2007-11-08 Michael Natterer * app/core/gimpimage.c (gimp_image_clean_all): pass GIMP_DIRTY_ALL to the "clean" signal instead of uninitialized memory. 2007-11-06 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_update_handle_sizes): don't use any dead areas in narrow-mode, and enter narrow-mode earlier. * app/tools/gimpdrawtool.c (gimp_draw_tool_draw_corner): adjusted to always draw side handles in narrow mode without dead areas. 2007-11-06 Michael Natterer * configure.in: remove check for putenv(). * app/composite/gimp-composite-3dnow-test.c * app/composite/gimp-composite-altivec-test.c * app/composite/gimp-composite-mmx-test.c * app/composite/gimp-composite-sse-test.c * app/composite/gimp-composite-sse2-test.c * app/composite/gimp-composite-vis-test.c * libgimp/gimpui.c * plug-ins/uri/uri-backend-wget.c * tools/gimp-remote-x11.c: use g_setenv() instead of putenv(). 2007-11-06 Sven Neumann * tools/pdbgen/pdb/plug_in.pdb: improved documentation for gimp-plugin-menu-register. * app/pdb/plug_in_cmds.c * libgimp/gimpplugin_pdb.c: regenerated. 2007-11-06 Sven Neumann * app/widgets/gimpblobeditor.c: ported to Cairo drawing. 2007-11-05 Michael Natterer * app/widgets/gimpcurveview.c (gimp_curve_view_expose): translate by 0.5,0.5 instead of adding 0.5 to all coordinates (we always want to draw on pixel centers here). Some cleanup. 2007-11-05 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): Bail out early if the rectangle function is RECT_DEAD. This prevents flickering. 2007-11-05 Martin Nordholts * app/tools/gimprectangletool.c: also don't show the shell highlight when a rectangle is being moved. Achieved through slightly modifying code logic and renaming variables and functions a bit. 2007-11-05 Sven Neumann * app/widgets/gimpgradienteditor.[ch]: use Cairo to draw the controls. 2007-11-05 Sven Neumann * configure.in: don't bail out if the XFixes extension is not available. 2007-11-05 Sven Neumann * tools/pdbgen/pdb/image.pdb: create a libgimp C wrapper for gimp-image-get-vectors-by-tattoo; this function was accidentally forgotten in the 2.4 libgimp API. * app/pdb/image_cmds.c * libgimp/gimpimage_pdb.[ch]: regenerated. 2007-11-05 Sven Neumann * app/widgets/gimpcairo-utils.h: introduced macros to set a single pixel in a Cairo surface without having to worry about endianness. * app/widgets/gimpcairo-utils.c * app/widgets/gimpviewrenderer.c * app/widgets/gimpviewrenderergradient.c * app/widgets/gimpviewrendererpalette.c: use the new macros. 2007-11-05 Michael Natterer * app/widgets/gimpcurveview.c (gimp_curve_view_expose): port to Cairo. 2007-11-05 Michael Natterer * app/core/gimpcurve.[ch]: don't recalculate the curve if the data object is frozen. Recalculate on thaw instead. Made gimp_curve_calculate() private and emit some GimpData::dirty signals where appropriate. * app/tools/gimpcurvestool.c * app/widgets/gimpcurveview.c * tools/pdbgen/pdb/color.pdb: changed accodingly (connect to "dirty" instead of "notify" and added some freeze/thaw where approproate). * app/pdb/color_cmds.c: regenerated. 2007-11-05 Sven Neumann * app/core/gimpimagemap.c (gimp_image_map_clear): update the drawable, not the image. This change was missing in the fix for bug #490182. Fixes bug #493639. 2007-11-05 Michael Natterer * app/widgets/gimpcurveview.[ch]: added event handling and completely edit the curve here. * app/tools/gimpcurvestool.[ch]: remove all event handling and curve editing code and only listen to curve signals. 2007-11-04 Martin Nordholts Do not do shell darkening while GimpRectangleTool rectangles are being rubber-banded. * app/tools/gimprectangletool.c (gimp_rectangle_tool_button_press) (gimp_rectangle_tool_button_release): Maintain a variable keeping track of if the rectangle is being rubber banded or not. (gimp_rectangle_tool_update_highlight): Do not set a shell highligt if the rectangle is being rubber-banded. (gimp_rectangle_tool_rubber_banding_func): New helper function. 2007-11-04 Sven Neumann * app/widgets/gimpviewrendererbrush.c: implement GimpViewRenderer::draw and draw the overlays with Cairo. * app/widgets/gimpviewrenderer.[ch] * app/widgets/gimpviewrenderervectors.c: minor cleanups. 2007-11-04 Sven Neumann * app/widgets/gimpviewrenderer.[ch]: replaced the RGB buffer with a Cairo surface. * app/widgets/gimpviewrendererbuffer.c * app/widgets/gimpviewrendererbrush.c * app/widgets/gimpviewrendererdrawable.c * app/widgets/gimpviewrenderergradient.c * app/widgets/gimpviewrendererimage.c * app/widgets/gimpviewrendererpalette.c * app/widgets/gimpviewrenderervectors.c: changed accordingly. There are some loose ends here that will be fixed over the next days. * app/widgets/gimprender.c: removed gimp_render_temp_buf; it is not any longer needed. * app/core/gimpgradient.c (gimp_gradient_get_preview_size) * app/core/gimppalette.c (gimp_palette_get_preview_size): return an odd preview height to make the border align with the pixel grid. 2007-11-04 Sven Neumann * app/tools/gimplevelstool.c (levels_input_area_event): minor cleanup. 2007-11-04 Martin Nordholts * app/tools/gimprectangletool.c: Consistently use the name `rect_tool' instead of `rectangle' or `rectangle_tool' for pointers to GimpRectangleTool. 2007-11-04 Martin Nordholts Put GimpRectangleTool handles on the outside of the rectangle when it has a small width or height. Some polishing left to do but the base functionality works nicely. * app/tools/gimpdrawtool.[ch] (gimp_draw_tool_draw_corner): Add a put_outside boolean parameter that if true draws the handles on the outside of the rectangle. * app/tools/gimprectangletool.c (gimp_rectangle_tool_update_handle_sizes) (gimp_rectangle_tool_coord_on_handle) (gimp_rectangle_tool_draw): Take into account if the rectangle is in narrow-mode or not. 2007-11-04 Sven Neumann * app/widgets/gimpgradienteditor.c * app/widgets/gimpnavigationview.c: use gdk_event_request_motions() to handle motion hint events. 2007-11-04 Michael Natterer * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/widgets/gimpcurveview.[ch]: new GimpHistogramView subclass which does all the curve stuff. * app/widgets/gimphistorgramview.[ch]: removed all curve code again. * app/tools/gimpcurvestool.c: changed accordingly. 2007-11-04 Sven Neumann * libgimpwidgets/gimpcolorselect.c * libgimpwidgets/gimpscrolledpreview.c: use gdk_event_request_motions() to handle motion hint events. 2007-11-04 Sven Neumann * INSTALL * configure.in: bumped required version of GTK+ to 2.12.0. * app/sanity.c (sanity_check_glib) * app/gui/gui.c (gui_sanity_check): updated sanity checks. 2007-11-02 Michael Natterer * app/widgets/gimphistogramview.[ch]: added API to set the selected point. * app/tools/gimpcurvestool.c: use it. 2007-11-02 Michael Natterer * app/core/gimpcurve.[ch]: added API to modify free-form curves and properties to listen to curve changes. * app/widgets/gimphistogramview.[ch]: added everything that's needed for rendering a curve with all its color and cursor indicators on top of a histogram. This code will move to a subclass soon. * app/tools/gimpcurvestool.[ch]: removed all curve rendering here. Also removed all explicit updating by connecting to curve signals and updating in the callback. 2007-11-02 Sven Neumann * app/widgets/gimpcairo-utils.[ch]: added utility function to create a Cairo surface from a GdkPixbuf. * app/widgets/gimpviewrenderer.c (gimp_view_renderer_create_pattern): use it from here. 2007-11-02 Sven Neumann * core/gimplist.h: formatting. 2007-11-02 Michael Natterer * app/core/Makefile.am * app/core/core-types.h * app/core/gimpcurve-save.[ch] * app/core/gimpcurve-load.[ch] * app/core/gimpcurve.[ch]: new GimpData subclass which keeps a curve as known from the curves tool. Pretty much unfinished, but can do everything that used to be done by base/curves.c and more. * app/base/curves.[ch]: stripped down to plain arrays of uchar (the actual curve) and the LUT setup function. All the rest is done by GimpCurve now. * app/tools/gimpcurvestool.[ch]: use an array of GimpCurves instead of the old Curves cruft. Use Curves only for the last step of creating the LUT. Pretty much unfinished migration here too. * tools/pdbgen/pdb/color.pdb: use a GimpCurve here too. * app/pdb/color_cmds.c: regenerated. 2007-11-02 Sven Neumann * app/widgets/gimpcairo-utils.c (gimp_cairo_set_source_color): also use the color's alpha channel. Added gtk-doc documentation. 2007-11-02 Sven Neumann * app/widgets/Makefile.am * app/widgets/gimpcairo-utils.[ch]: new files holding Cairo utility functions. * app/widgets/gimpviewrenderer.[ch]: ported partly to Cairo drawing. * app/widgets/gimpcomponenteditor.c * app/widgets/gimpcontainercombobox.c * app/widgets/gimpcontainertreeview.c * app/widgets/gimplayertreeview.c * app/widgets/gimpview.c: removed calls to gimp_view_renderer_unrealize() which are not needed anymore because we don't allocate a GC in the renderer any longer. * app/widgets/gimpcellrendererdashes.c: removed a redundant cast. 2007-11-01 Sven Neumann * app/widgets/gimpviewrenderer.c (gimp_view_renderer_draw): removed code that draws a diagonal line across a renderer without context. Emit a warning instead; this shouldn't happen any longer. 2007-11-01 Sven Neumann * app/widgets/gimpdasheditor.c (gimp_dash_editor_expose): draw using Cairo. 2007-11-01 Sven Neumann * app/widgets/gimpcellrendererdashes.c (gimp_cell_renderer_dashes_render): draw using Cairo. 2007-11-01 Sven Neumann * plug-ins/script-fu/scripts/Makefile.am (scripts): * plug-ins/script-fu/scripts/hsv-graph.scm: removed this script. Fixes bug #491311. 2007-11-01 Sven Neumann * libgimpwidgets/gimpscrolledpreview.c: changed move cursor to GDK_HAND1 and switch to GDK_FLEUR while the mouse button is down. 2007-11-01 Tor Lillqvist * app/base/base-utils.c * app/base/base-utils.h: New files, with just one function so far, get_number_of_processors(). Include implementation also for Win32. * app/base/Makefile.am (libappbase_a_SOURCES): Add new files. * app/config/gimpbaseconfig.c (gimp_base_config_class_init): Use get_number_of_processors(). 2007-11-01 Manish Singh * app/core/gimpcontainer-filter.c * app/pdb/gimppdb-query.c * app/plug-in/gimppluginmanager-query.c: replace usage of POSIX regex API with GRegex. * configure.in: remove check for regex support in glibc. * app/Makefile.am * plug-ins/script-fu/Makefile.am: remove REGEXREPL references. * tools/pdbgen/app.pl: remove code that references HAVE_GLIBC_REGEX. * regexrepl/* * makefile.msc * Makefile.am: remove regexrepl directory. 2007-10-31 Sven Neumann * app/core/gimp-user-install.c: improved detection of old gimp user directories and handle migration from 2.4. 2007-10-31 Michael Natterer * app/core/gimpparamspecs.[ch] (GimpParamSpecString): remove member "null_ok" and use GParamSpecString's "ensure_non_null" instead. 2007-10-31 Tor Lillqvist * README.win32: Remove. This kind of information belongs in the wiki. * Makefile.am (EXTRA_DIST): Drop from here, too. 2007-10-31 Michael Natterer * libgimpbase/Makefile.am * libgimpbase/xdg-user-dir.[ch]: removed. * libgimpbase/gimpbaseenums.[ch]: deprecate enum GimpUserDirectory. * libgimpbase/gimpenv.[ch]: deprecate gimp_user_directory() and make the implementation call g_get_user_special_dir(). * libgimp/Makefile.am: #undef GIMP_DISABLE_DEPRECATED in gimpenums.c * app/widgets/gimpfiledialog.c: use g_get_user_special_dir() instead. * plug-ins/pygimp/gimpmodule.c: #undef GIMP_DISABLE_DEPRECATED. 2007-10-31 Michael Natterer * configure.in * app/Makefile.am * tools/Makefile.am: bump some more hardcoded 2.4 to 2.5 2007-10-31 Sven Neumann * app/display/gimpdisplayshell-close.c (gimp_display_shell_close_dialog): use g_timeout_source_new_seconds(). 2007-10-31 Sven Neumann * INSTALL * README * NEWS: updated for 2.5. 2007-10-31 Michael Natterer * configure.in: depend on glib 2.14.1 * app/tools/gimpdrawtool.c * app/vectors/gimpvectors-import.c: use g_slice_dup() instead of g_slice_new() and memcpy(). 2007-10-31 Sven Neumann * plug-ins/common/retinex.c: use a combo-box instead of radio buttons (bug #484838). 2007-10-31 Michael Natterer * app/tools/gimprectangletool.c: some general indentation, spacing and coding style convention paranoia cleanups. (gimp_rectangle_tool_get_constraints): set all return values also when bailing out early to avoid valgrind warnings about uninitialized memory. 2007-10-31 Sven Neumann * configure.in: check for the XFIXES extension. * plug-ins/common/plugin-defs.pl * plug-ins/common/Makefile.am: use XFIXES_CFLAGS for compiling the screenshot plug-in. * plug-ins/common/screenshot.c: optionally add the mouse cursor image on an extra layer. Work in progress... (bug #490779). 2007-10-31 Sven Neumann * configure.in: bumped version to 2.5.0. Created branch gimp-2-4 for bug-fixes in the stable 2.4 series. 2007-10-31 Sven Neumann * Made 2.4.1 release. 2007-10-30 Sven Neumann * app/display/gimpdisplayshell-render.c (box_filter): shift only by 4 bits instead of 8. Should still keep us from overflowing 32 bit integers but reduces the rounding error and seems to really fix bug #491503. 2007-10-30 Martin Nordholts * app/tools/gimprectangleselecttool.c (gimp_rect_select_tool_round_corners_notify): Update the selection when Rounded corners is toggled or the radius is changed as discussed in bug #418284. 2007-10-30 Michael Natterer * modules/cdisplay_lcms.c: applied patch from Sven Neumann and Marianne Gagnon which adds support for getting the system monitor profile on OS/X. Fixes bug #488170. 2007-10-30 Sven Neumann * app/display/gimpdisplayshell-handlers.c: reverted change that was made for bug #490785. 2007-10-30 Sven Neumann Fix drawing of straight lines using the Shift key and a tablet (bug #164240): * app/tools/gimppainttool.c (gimp_paint_tool_button_press): set use_pressure to FALSE when drawing a straight line. * app/paint/gimppaintbrush.c (_gimp_paintbrush_motion): respect the use_pressure flag. 2007-10-30 Sven Neumann * app/display/gimpdisplayshell-render.c (box_filter): reduce rounding errors. Fixes bug #491503. * app/base/tile-pyramid.c (tile_pyramid_write_quarter): reduce rounding errors. 2007-10-29 Sven Neumann * libgimpcolor/gimpadaptivesupersample.c (gimp_adaptive_supersample_area): return with a warning if called with NULL render_func or put_pixel_func. 2007-10-29 Sven Neumann Fix bug #491272 (no cursor drawn for small brush sizes): * app/tools/gimpbrushtool.[ch] (gimp_brush_tool_draw_brush): don't draw the brush outline if it becomes too small. Instead draw a small cross, but only if "draw_fallback" was passed as TRUE. (gimp_brush_tool_draw_brush): pass TRUE for "draw_fallback" if cursor drawing is disabled for the paint tools. * app/tools/gimpsourcetool.c (gimp_source_tool_draw): pass FALSE for "draw_fallback". * app/tools/gimpdrawtool.c (gimp_draw_tool_draw_cross_by_anchor): draw a symmetric cross for odd handle sizes. 2007-10-29 Sven Neumann * app/tools/gimprectangletool.c (gimp_rectangle_tool_coord_on_handle): initialize variables to suppress a compiler warning. 2007-10-28 Sven Neumann * app/pdb/gimppdb.c (gimp_pdb_execute_procedure_by_name): also call va_end() in the error cases. 2007-10-28 Sven Neumann * libgimpwidgets/gimpcolorscales.c (gimp_color_scales_set_channel): fixed range check. 2007-10-28 Sven Neumann * libgimpwidgets/gimpscrolledpreview.c (gimp_scrolled_preview_nav_button_press): use small-checks for the navigation popup and inherit the check-type from the preview. 2007-10-27 Sven Neumann * app/widgets/gimpwidgets-utils.c (gimp_text_buffer_load): close the file handle. 2007-10-27 Sven Neumann * libgimpbase/gimpmemsize.c (string_to_memsize): don't just crash right away if the impossible happens. 2007-10-27 Sven Neumann * app/dialogs/preferences-dialog.c (prefs_resolution_source_callback): g_object_get_data() should always return a size-entry here. Return with a warning if it doesn't. 2007-10-27 Sven Neumann * libgimpconfig/gimpscanner.c (gimp_scanner_parse_color): initialize GimpRGB, just to be sure. 2007-10-27 Sven Neumann * app/display/gimpdisplayshell-handlers.c: removed code that syncs the padding color with the default values set in the preferences. Fixes bug #490785. 2007-10-27 Sven Neumann * plug-ins/common/pnm.c (pnm_load_ascii): fixed handling of truncated ascii files. Fixes bug #490827. 2007-10-27 Sven Neumann * plug-ins/common/pnm.c: formatting. (pnm_load_ascii): 2007-10-27 Sven Neumann * plug-ins/common/mkgen.pl: set the svn:ignore property instead of writing a .cvsignore file. 2007-10-27 Sven Neumann * libgimpconfig/gimpcolorconfig.h (struct _GimpColorConfig): declared the fields as public so that they show up in the API documentation. 2007-10-27 Hans Breuer * app/base/makefile.msc app/file/makefile.msc app/gimpcore.def app/gui/makefile.msc app/plug-in/makefile.msc libgimpwidgets/makefile.msc : updated msvc build * config.h.win32 : add ENABLE_TOOLBOX_MENU, it should only vanish on Mac OSX (Quartz build) 2007-10-27 Tor Lillqvist * libgimpbase/gimpenv.c (gimp_toplevel_directory): Drop the Win9x code path here, too. * libgimpbase/gimpenv.c (gimp_locale_directory): On Windows return the pathname in system codepage and not UTF-8. 2007-10-26 Sven Neumann * app/text/gimptext.c: increased default font size to 24. 2007-10-26 Martin Nordholts * app/tools/gimprectangletool.c (struct GimpRectangleToolPrivate): Renamed handle_[wh] to corner_handle_[wh] since that are the appropriate names. 2007-10-26 Martin Nordholts * app/tools/gimprectangletool.c (gimp_rectangle_tool_oper_update): Use new helper functions to decide if the cursor is on a handle (or outside of the rectangle + handle bounds) to ease the introduction of having handles on the outside of the pending rectangle. (gimp_rectangle_tool_coord_outside) (gimp_rectangle_tool_coord_on_handle): New helper functions. 2007-10-26 Sven Neumann * app/pdb/gimpprocedure.c (gimp_procedure_validate_args): don't pass NULL strings to gimp_message(). Fixes bug #490617. 2007-10-26 Sven Neumann Reenabled update of the histogram while doing color corrections (bug #490182): * app/core/gimpviewable.[ch]: added new methods preview_freeze() and preview_thaw(). * app/core/gimpimagemap.c (gimp_image_map_new): freeze the drawable preview. (gimp_image_map_dispose): thaw the drawable preview. (gimp_image_map_do): update the drawable, not the image. * app/tools/gimpimagemaptool.c (gimp_image_map_tool_response): no need to invalidate the drawable preview any longer. 2007-10-26 Michael Natterer * app/xcf/xcf-load.c (xcf_load_image_props): never allocate image->cmap smaller than GIMP_IMAGE_COLORMAP_SIZE. Fixes bug #490048. 2007-10-26 Sven Neumann * app/widgets/gimphistogrameditor.c (gimp_histogram_editor_layer_changed): connect to GimpDrawable::update instead of GimpViewable::invalidate-preview. 2007-10-25 Kevin Cozens * plug-ins/script-fu/tinyscheme/scheme-private.h * plug-ins/script-fu/tinyscheme/scheme.c: Allow a maximum of two calls to backchar() needed by the "case '.'" part of the switch statement in token(). Fixes bug #490198. 2007-10-25 Martin Nordholts * app/tools/gimprectangletool.c: Aligned static function prototypes. 2007-10-25 Martin Nordholts * app/tools/gimprectangletool.c: Tiny cosmetic change on the ClampedSide enum definition. 2007-10-25 Sven Neumann * tools/Makefile.am * tools/gimp-remote.[ch] * tools/gimp-remote-x11.c: split gimp-remote into common and X11 specific code. 2007-10-25 Michael Natterer * configure.in: made all tests consistently use 'test "x$foo" = xbar' instead of 5 variants of which some were broken. Spotted by Peter Breitenlohner, fixes bug #490068. 2007-10-25 Sven Neumann * configure.in: bumped version to 2.4.1 (interface age 1). 2007-10-25 Sven Neumann * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_install): set the procedure name before parsing the image types. Fixes bug #490055. 2007-10-25 Sven Neumann * app/display/gimpcanvas.c (gimp_canvas_gc_new): use INVERT instead of XOR if the xor-color is configured as white. 2007-10-24 Manish Singh * plug-ins/common/compose.c * plug-ins/common/decompose.c: generate PDB docs from the same source as the UI. 2007-10-24 Kevin Cozens * Makefile.am: Applied patch from Stanislav Brabec which adds NEWS.pre-2-4, ChangeLog.pre-2-2 and ChangeLog.pre-2-4 to EXTRA_DIST. Fixes bug #489813. 2007-10-24 Simon Budig * app/display/gimpdisplayshell.h: change the PROJ_ROUND macro to do proper rounding. Seems to work well. 2007-10-24 Sven Neumann Michael Natterer * Made 2.4.0 release.