2006-05-21 Michael Natterer <mitch@gimp.org>
* app/tools/tool_manager.c (tool_manager_image_clean_dirty): don't
try to reset the active tool by destroying and re-creating it
because this doesn't work while gimp->busy is TRUE. Call
tool_manager_control_active(HALT) instead, which is the right way
to do it anyway. Fixes bug #330083.
Sprinkled some local variables all over the place to get rid of a
gazillion tool_manager->active_tool.
2006-05-21 Michael Natterer <mitch@gimp.org>
One of the following changes fixes a crash on exit when there is a
cut buffer and a clipboard manager is runnig. I don't care which,
since they are all the right thing to do:
* app/widgets/gimpdialogfactory.c (gimp_dialog_factory_finalize):
don't remove the factory from the hash table of all factories here...
(gimp_dialog_factory_dispose): ...but here. Use the right key for
the toolbox factory.
(gimp_dialog_factories_set_busy)
(gimp_dialog_factories_unset_busy): check the return value of
g_type_class_ref() before using it.
Unrelated:
(gimp_dialog_factory_dispose): free the list of open dialogs here,
not in dispose(). Don't leak all the factory's session infos.
2006-05-21 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpimage-item-list.[ch]: new files with functions to
translate, flip, rotate, transform and align a list of items
inside an undo group.
(gimp_image_item_list_get_list): returns a list of items matching
any combination of GimpItemTypeMask and GimpItemSet.
* app/core/gimpitem.[ch]: added new function gimp_item_is_in_set().
* app/core/gimpitem-linked.[ch]: use the new functions. Removed
gimp_item_linked_get_list().
* app/tools/gimpeditselectiontool.c: use
gimp_image_item_list_get_list() instead of
gimp_item_linked_get_list().
* app/core/gimpimage-resize.c
* app/tools/gimpaligntool.c: use the new functions instead of
creating and iterating the lists manually.
2006-05-20 Manish Singh <yosh@gimp.org>
Fixes to address -ansi -pedantic compilation (bug #342390).
Thanks goes to Daniel Richard G. for noticing and suggesting
fixes.
* libgimpbase/gimpsignal.c: #include "config.h" and define
__POSIX_SOURCE for sigaction stuff.
* app/base/tile-swap.c (tile_swap_test): use more portable
S_IRUSR and S_IWUSR, instead of S_IREAD and S_IWRITE.
* plug-ins/common/ripple.c
* plug-ins/imagemap/imap_main.c: use C89 comments.
* plug-ins/Lighting/lighting_preview.h: don't define spin widget
variables here...
* plug-ins/Lighting/lighting_ui.[ch]: ... and instead take care
of them here.
2006-05-19 Sven Neumann <sven@gimp.org>
* app/tools/gimpscaletool.c (gimp_scale_tool_dialog_update,
gimp_scale_tool_size_notify): use the same rounding to determine
width and height from the TransInfo struct.
2006-05-19 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/image.pdb: do not use enum values in C syntax
to describe the image mode.
* app/pdb/convert_cmds.c
* app/pdb/image_cmds.c
* libgimp/gimpconvert_pdb.c
* libgimp/gimpimage_pdb.c: regenerated.
2006-05-19 Sven Neumann <sven@gimp.org>
* app/tools/gimptransformoptions.[ch]: removed one of the two
constrain properties.
* app/tools/gimprotatetool.c
* app/tools/gimptransformtool.c: changed accordingly.
* app/tools/gimpscaletool.c: sync "constrain" with the size-box's
"keep-aspect" property.
2006-05-19 Sven Neumann <sven@gimp.org>
* app/widgets/gimpsizebox.c: connect to the chain-button and
update the "keep-aspect" property when it is toggled.
2006-05-18 Sven Neumann <sven@gimp.org>
* app/core/gimpparamspecs-desc.c: use the enum's name instead of
the nick, strip the "GIMP_" prefix and canonicalize it.
2006-05-18 Sven Neumann <sven@gimp.org>
* tools/pdbgen/app.pl
* tools/pdbgen/lib.pl: removed code that used to fiddles with
the
argument descriptions.
* tools/pdbgen/pdb/*.pdb: removed %%desc%% placeholder, added
some
missing argument descriptions.
* app/pdb/*_cmds.c
* libgimp/gimpdrawabletransform_pdb.c
* libgimp/gimpfloatingsel_pdb.c
* libgimp/gimpgradient_pdb.c
* libgimp/gimppainttools_pdb.c: regenerated.
* app/core/Makefile.am
* app/core/gimpparamspecs-desc.[ch] (gimp_param_spec_get_desc):
new function that creates a parameter description for the PDB.
* app/pdb/gimppdb-query.c
* app/pdb/procedural_db_cmds.c: use the new function to create
the
descriptions on the fly.
2006-05-18 Michael Natterer <mitch@gimp.org>
* app/tools/gimphuesaturationtool.c: add tooltips to all hue
partition radio buttons.
* app/tools/gimptextoptions.[ch]
* app/tools/gimpvectoroptions.[ch]: add the widgets that are
needed by the tools as members to the options structs instead of
attaching them with g_object_set_data().
* app/tools/gimptexttool.c
* app/tools/gimpvectortool.c: access the struct members instead of
using g_object_get_data().
* themes/Default/images/tools/stock-tool-align-16.png
* themes/Default/images/tools/stock-tool-align-22.png
* libgimpwidgets/gimpstock.c
* libgimpwidgets/gimpstock.h
* themes/Default/images/Makefile.am: add new (ugly) icon
for alignment tool.
* app/tools/gimpaligntool.c: use the new icon; change
"pressed" to "clicked" for buttons.
2006-05-17 Michael Natterer <mitch@gimp.org>
* app/tools/gimpvectortool.c (gimp_vector_tool_set_vectors): use
the same method as the newly added text tool code for finding a
suitable display for the vectors.
2006-05-17 Michael Natterer <mitch@gimp.org>
* app/core/gimpbrushclipboard.c
(gimp_brush_clipboard_buffer_changed)
* app/core/gimppatternclipboard.c
(gimp_pattern_clipboard_buffer_changed): limit the size of
clipboard brushes and patterns to 512x512 pixels to prevent OOM
conditions when copying from huge drawables.
* app/tools/gimpaligntool.[ch]: major change in ui, to make
this tool behave like alignment tools found in vector apps.
now you select items by clicking or drawing a rubber-band
rectangle, add items by holding down shift, and then press
a button to align all the selected items.
2006-05-17 Michael Natterer <mitch@gimp.org>
* app/actions/plug-in-commands.c: moved the collection of plug-in
args to a utilty function. Add another function that is called
when the plug-in lives in <Brushes>, <Palettes> etc. and pass the
active object's name to the plug-in.
* plug-ins/pygimp/plug-ins/Makefile.am
* 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: added new
scripts written by Joao S. O. Bueno Calligaris and fixed by Carol
Spears. Changed them myself again. The stuff doesn't work as
expected because python-fu has too much asumptions in its
register() code, and the sort script doesn't implement all modes
of Adrian's palette sorting perl script. Addresses bug #104639.
2006-05-17 Michael Natterer <mitch@gimp.org>
* app/core/gimpbrushclipboard.c
(gimp_brush_clipboard_buffer_changed)
* app/core/gimppatternclipboard.c
(gimp_pattern_clipboard_buffer_changed): remove calls to
gimp_data_dirty() because the emission of "name-changed" takes
care of that.
2006-05-17 Sven Neumann <sven@gimp.org>
* app/core/gimpbrushclipboard.c
(gimp_brush_clipboard_buffer_changed)
* app/core/gimppatternclipboard.c
(gimp_pattern_clipboard_buffer_changed): emit "name-changed" so that
the description is being updated.
2006-05-17 Michael Natterer <mitch@gimp.org>
* app/core/gimp.c (gimp_real_initialize): add a clipboard pattern
to the pattern factory (forgot to commit this file).
2006-05-16 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimppatternclipboard.[ch]: new GimpPattern subclass
that auto-updates its contents from gimp->global_buffer.
* app/core/gimp.c (gimp_real_initialize): add a clipboard pattern
to the pattern factory.
* app/widgets/gimpaction.c (gimp_action_set_proxy): replace the
GimpView by a new one if the viewable type changes, instead of
running into a warning (didn't happen before because this is only
used for imagefiles and patterns, which didn't have subclasses).
2006-05-16 Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.[ch]: implement copy_color() and
copy_color_pixels() which copy only the color bytes into a dest
that has one byte less than src. Renamed component_pixels() to
copy_component_pixels().
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpbrushclipboard.[ch]: new GimpBrush subclass that
auto-updates its contents from gimp->global_buffer.
* app/core/gimp.c (gimp_real_initialize): add a clipboard brush to
the brush factory. Fixes bug #111082.
2006-05-16 Sven Neumann <sven@gimp.org>
* app/app_procs.c (app_run): indentation.
* app/core/gimp.c (gimp_real_initialize)
* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
moved a call to status_callback() to the plug-in manager.
2006-05-14 Michael Natterer <mitch@gimp.org>
Allow to initialize a new layer mask with any of the image's
channels. Fixes bug #310207.
* libgimpbase/gimpbaseenums.h (enum GimpAddMaskType): added
value GIMP_ADD_CHANNEL_MASK.
* libgimpbase/gimpbaseenums.c
* tools/pdbgen/enums.pl: regenerated.
* app/core/gimplayer.[ch] (gimp_layer_create_mask): added
GimpChannel* parameter. Hacked the GIMP_ADD_SELECTION_MASK code a
bit so it can handle GIMP_ADD_CHANNEL_MASK too. Cleaned up the
function a bit.
* app/dialogs/layer-add-mask-dialog.[ch]: added a menu of the
image's channels.
* app/actions/layers-commands.c (layers_add_mask_response): pass
the channel selected in the menu to gimp_layer_create_mask().
* tools/pdbgen/pdb/layer.pdb (layer_create_mask): use the image's
active channel when GIMP_ADD_CHANNEL_MASK is passed. Fail if there
is no active channel.
* app/pdb/layer_cmds.c: regenerated.
2006-05-14 Michael Natterer <mitch@gimp.org>
* app/tools/gimptexttool.c (gimp_text_tool_set_layer): find a
suitable display and fully set up the tool (just as the vector
tool does). Fixes bug #322182.
(gimp_text_tool_button_press): chain up to activate the tool.
(gimp_text_tool_set_drawable): removed redundant check.
2006-05-13 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer.c (gimp_layer_transform): add an alpha
channel if the layer has none and interpolation is requested.
Works around bug #315048, the real fix would be to implement
interpolation on layers without alpha.
2006-05-13 Michael Natterer <mitch@gimp.org>
Added some new text layer actions and menu items (bug #316299).
* app/actions/layers-actions.c: added actions for "Text to Path",
"Text along Path" and "Text to Selection" (use the alpha to
selection callback for text to selection)
* app/actions/layers-commands.[ch]: added
layers_text_to_vectors_cmd_callback() and
layers_text_along_vectors_cmd_callback().
* app/widgets/gimphelp-ids.h: help IDs for the new actions.
* menus/image-menu.xml.in
* menus/layers-menu.xml: added them to the layers menus in the
image window and the layers dialog.
2006-05-13 Hans Breuer <hans@breuer.org>
* **/makefile.msc app/gimpcore.def : updated
* app/core/gimp-util.c : dont include "config/gimpbaseconfig.c", it
gives an redefinition error with msvc. Instead include
config/gimpbaseconfig.h and libgimpconfig/gimpconfig-path.h
* plug-ins/common/psd_save.c : fix c99isms (declarations only at the
start of a block)
2006-05-12 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpview.h: save 20 bytes per instance by using
single bits instead of 6 gbooleans.
* app/widgets/gimpview.c: some code cleanup.
* app/widgets/gimpviewrendererbrush.c: don't #include "gimpbrush.h".
* app/widgets/gimpviewrendererbuffer.c: #include "gimpviewable.h"
instead of "gimpbuffer.h".
* app/widgets/gimpviewrenderergradient.c
* app/widgets/gimpviewrendererimagefile.c
* app/widgets/gimpviewrendererimagefile.h: micro cosmetics.
2006-05-11 Michael Natterer <mitch@gimp.org>
* app/pdb/gimppdb-query.c (gimp_pdb_proc_info): restored old
version of this function, it was correct after all (spotted by
Kevin Cozens).
2006-05-11 Michael Natterer <mitch@gimp.org>
Applied modified patch from Michael J. Hammel which allows to
remove all keyboard shortcuts from the menus (fixes bug #331839):
* app/dialogs/preferences-dialog.c: added "Remove all keyboard
shortcuts" button to the "Interface" section.
* app/menus/menus.[ch]: added menus_remove() which does the
shortcut removal.
2006-05-10 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpviewrendererbrush.c
* app/widgets/gimpviewrendererbuffer.c: use
gimp_viewable_get_size() and get rid of useless
local "brush" and "buffer" variables.
2006-05-10 Michael Natterer <mitch@gimp.org>
* app/widgets/gimptoolbox.c: code cleanup, no logic changed.
* app/widgets/gimptoolbox-color-area.c: make the very first click
on the color area work as expected.
2006-05-09 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.c (gimp_image_new)
* app/core/gimpitem.c (gimp_item_configure)
* app/display/gimpdisplay.c (gimp_display_new): make sure IDs wrap
correctly at G_MAXINT and skip IDs which are currently in use.
It makes no sense to treat gimp->image_table and gimp->images
differently, since they keep the same set of images. And it makes
no sense to treat gimp->displays and gimp->images differently.
Moved all container adding into the objects' constructors:
* app/core/gimp.c (gimp_create_image): don't add the new image
to gimp->images here...
* app/core/gimpimage.c (gimp_image_constructor): ...but here.
* app/core/gimp-gui.c (gimp_create_display): don't add the new
display to gimp->displays here...
* app/display/gimpdisplay.c (gimp_display_new): ...but here.
2006-05-08 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpfiledialog.c (gimp_file_dialog_new): set the
alternative button order here...
* app/dialogs/file-open-dialog.c (file_open_dialog_new)
* app/dialogs/file-save-dialog.c (file_save_dialog_new): ...instead
of here.
2006-05-07 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale):
return early if the shell is already at the requested zoom level.
(paranoia addition for bug #165032, which was already fixed by the
fix for bug #164281):
2006-05-07 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpbrusheditor.c: hide the button bar, which is
useless for the brush editor. Fixes user confusion (bug #306704).
2006-05-06 Michael Natterer <mitch@gimp.org>
* app/tools/gimppainttool.c: connect to the context's
"brush-changed" signal and update the brush core's brush
accordingly. Fixes inconsistent brush preview when not moving
the mouse while the brush changes (bug #323404).
2006-05-06 Michael Natterer <mitch@gimp.org>
* app/core/gimpparamspecs.[ch]: added "gboolean none_ok" members
to GimpParamSpecImageID, GimpParamSpecItemID and
GimpParamSpecDisplayID. If none_ok is set, allow '0' and '-1' as
valid IDs. Added "none_ok" parameter to all ID param spec
constructors.
* app/xcf/xcf.c: require real image IDs, but allow images without
active drawable.
* app/pdb/gimp-pdb-compat.c: set none_ok to TRUE in all compat
param specs, so only IDs that are really random garbage don't pass
validation. Fixes validation errors with 0 and -1 IDs.
* tools/pdbgen/app.pl: set none_ok to FALSE by default. Added
support for $arg->{none_ok} to control it.
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/progress.pdb
* tools/pdbgen/pdb/text_tool.pdb: use none_ok instead of
no_success (which disables validation entirely).
* app/pdb/[many]_cmds.c: regenerated.
2006-05-06 Michael Natterer <mitch@gimp.org>
* app/core/gimpparamspecs.[ch]: added "gboolean none_ok" members
to GimpParamSpecImageID, GimpParamSpecItemID and
GimpParamSpecDisplayID. If none_ok is set, allow '0' and '-1' as
valid IDs. Added "none_ok" parameter to all ID param spec
constructors.
* app/pdb/gimp-pdb-compat.c: set none_ok to TRUE in all compat
param specs, so only IDs that are really random garbage don't pass
validation. Fixes validation errors with 0 and -1 IDs.
* tools/pdbgen/app.pl: set none_ok to FALSE by default. Added
support for $arg->{none_ok} to control it.
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/progress.pdb
* tools/pdbgen/pdb/text_tool.pdb: use none_ok instead of
no_success (which disables validation entirely).
* app/pdb/[many]_cmds.c: regenerated.
2006-05-05 Michael Natterer <mitch@gimp.org>
* app/plug-in/gimppluginmanager.[ch]: added signals
"plug-in-opened" and "plug-in-closed". Added functions
gimp_plug_in_manager_add_open_plug_in() and _remove_open_plugin()
which maintain the list of open plug-ins and emit the signals.
* app/plug-in/gimpplugin.c (gimp_plug_in_open)
(gimp_plug_in_close): don't touch manager->open_plug_ins and don't
ref/unref the plug-in. Call above new functions instead. Don't
call gimp_pdb_dialogs_check().
* app/core/gimp-gui.[ch]
* app/gui/gui-vtable.c: removed gimp_pdb_dialogs_check().
* app/widgets/gimppdbdialog.[ch]: removed
gimp_pdb_dialogs_check_callback() and connect to the
plug-in-manager's "plug-in-closed" signal instead.
2006-05-04 Michael Natterer <mitch@gimp.org>
* app/plug-in/gimppluginshm.c: cleaned up a bit.
(gimp_plug_in_shm_new): return NULL if anything goes wrong,
instead of a GimpPlugInShm structure that contains no shm (we
don't need multiple cases of "there is no shm"),
* app/plug-in/gimppluginmanager.[ch]
(gimp_plug_in_manager_get_shm_ID)
(gimp_plug_in_manager_get_shm_addr): removed these functions.
* app/plug-in/gimppluginmanager-call.c (gimp_plug_in_manager_call_run)
* app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_tile_req):
get the shm ID and addr directly from manager->shm if it exists,
use -1 and NULL otherwise.
Unrelated:
* app/plug-in/gimppluginmanager.c: move most stuff from
gimp_plug_in_manager_exit() to gimp_plug_in_manager_finalize().
Simplify plug-in killing in _exit().
2006-05-04 Sven Neumann <sven@gimp.org>
* app/core/gimp-user-install.[ch]: added a "verbose" parameter.
* app/app_procs.c (app_run): abort if the user installation fails.
2006-05-04 Michael Natterer <mitch@gimp.org>
* app/plug-in/gimpplugin.[ch] (struct GimpPlugIn): remove member
"name" and unused cruft "ref_count". Reordered other members a bit.
(gimp_plug_in_new): set GimpObject's name to
g_filename_display_basename(path) instead.
Use GimpObject's name instead of plug_in->name for error messages
and pass the full path to gimp_plug_in_debug_argv()
* app/plug-in/gimpplugindebug.c (gimp_plug_in_debug_argv): extract
the path's basename ourselves.
* app/plug-in/gimpplugin-message.c: GimpObject's name for
error messages.
2006-05-04 Michael Natterer <mitch@gimp.org>
* app/core/gimpparamspecs.c (gimp_string_array_new)
(gimp_param_string_array_validate): restore the strict checks
on string arrays.
* app/plug-in/gimppluginmanager-help-domain.c
(gimp_plug_in_manager_get_help_domains): return NULL string arrays
when there are 0 help domains to fix the inconsistency at its root.
2006-05-04 Michael Natterer <mitch@gimp.org>
* app/plug-in/gimpplugin.c
* app/plug-in/gimppluginmanager-call.c: use the right procedure
types in calls to gimp_plug_in_proc_frame_foo().
2006-05-03 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpselectiondata.c
(gimp_selection_data_get_tool_info): port to using
gimp_selection_data_get_object(), it was simply forgotten.
Fixes tool dropping (bug #336402).
2006-05-03 Michael Natterer <mitch@gimp.org>
Made an object out of the plug-in struct. Also change refcounting
considerably:
- gimp_plug_in_open() adds a reference that is only dropped by
gimp_plug_in_close().
- temporarily ref the plug-in while handling messages.
- remporarily ref the plug-in while a recursive main loop is
running.
- each caller of gimp_plug_in_new() also unrefs the plug-in before
returning, the only reference that persists across functions
(that keeps the plug-in alive) is the one added by open().
* app/plug-in/plug-in.[ch]
* app/plug-in/plug-in-context.[ch]
* app/plug-in/plug-in-message.[ch]
* app/plug-in/plug-in-progress.[ch]: removed these files...
* app/plug-in/gimpplugin.[ch]
* app/plug-in/gimpplugin-context.[ch]
* app/plug-in/gimpplugin-message.[ch]
* app/plug-in/gimpplugin-progress.[ch]: ...and added here as GObject.
* app/plug-in/plug-in-proc-frame.[ch]: removed...
* app/plug-in/gimppluginprocframe.[ch]: ...and added with a namespace.
* app/plug-in/Makefile.am
* app/plug-in/plug-in-types.h
* app/plug-in/gimppluginmanager-call.c
* app/plug-in/gimppluginmanager-file.c
* app/plug-in/gimppluginmanager.[ch]
* app/pdb/gimppluginprocedure.c
* app/pdb/gimptemporaryprocedure.c
* app/pdb/gimptemporaryprocedure.h
* tools/pdbgen/pdb/context.pdb
* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/help.pdb
* tools/pdbgen/pdb/message.pdb
* tools/pdbgen/pdb/plug_in.pdb
* tools/pdbgen/pdb/progress.pdb
* tools/pdbgen/pdb/undo.pdb: changed accordingly.
* app/pdb/context_cmds.c
* app/pdb/drawable_cmds.c
* app/pdb/help_cmds.c
* app/pdb/message_cmds.c
* app/pdb/plug_in_cmds.c
* app/pdb/progress_cmds.c
* app/pdb/undo_cmds.c: regenerated.
2006-05-03 Sven Neumann <sven@gimp.org>
* app/core/gimpparamspecs.c (gimp_string_array_new,
gimp_param_string_array_validate): relaxed the checks so that
GimpStringArray deals correctly with (length == 0 && data != NULL).
Fixes bug #340365.
2006-05-02 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcontainercombobox.c
(gimp_container_combo_box_remove_item): turned a #warning into an
explanation because the bug it referred to is marked as WONTFIX.
2006-05-02 Sven Neumann <sven@gimp.org>
* fileicon.ico
* wilber.ico: new icons for the Windows build created by Jernej
Simon%GÄ%@i%GÄ%@ based on the icons drawn by Jimmac (bug #340223).
2006-04-29 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in.[ch]: removed plug_in_push() and
plug_in_pop()...
* app/plug-in/gimppluginmanager.[ch]: ...and added them here as
gimp_plug_in_manager_plug_in_push() and _pop()
* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): changed
accordingly.
* app/plug-in/plug-in.c (plug_in_close): removed an unused
variable, moved another one to a local scope.
* app/plug-in/plug-in.h: indentation.
2006-04-29 Michael Natterer <mitch@gimp.org>
* app/plug-in/gimppluginmanager-locale-domain.c
(gimp_plug_in_manager_get_locale_domains): NULL-terminate string
arrays here too, so they can be freed with g_strfreev() (even
though they currently aren't).
* app/widgets/gimphelp.c: set the plug-in arguments
correctly. Fixes warnings and makes help work again.
2006-04-29 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am (AM_CPP_FLAGS): define GIMP_APP_VERSION.
* app/core/gimp-user-install.c: use GIMP_APP_VERSION instead of
hardcoding it.
2006-04-29 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am
* app/core/gimp-user-install.[ch]: new files based on code that
used to live in user-install-dialog.c.
* app/dialogs/user-install-dialog.[ch]: only the dialog code
remained here.
* app/app_procs.c: use the new user-install API. Perform a
non-interactive user installation when running without a display.
2006-04-29 Tor Lillqvist <tml@novell.com>
* app/plug-in/gimppluginmanager-locale-domain.c
(gimp_plug_in_manager_get_locale_domains): NULL-terminate the
locale_domains and locale_paths string vectors, as they are freed
with g_strfreev() in gimp_plug_in_manager_restore().
2006-04-29 Tor Lillqvist <tml@novell.com>
* app/plug-in/plug-in.c (plug_in_close): Make it compile again on
Win32. Use g_usleep() instead of select()/Sleep() Unix/Windows
ifdef.
2006-04-29 Sven Neumann <sven@gimp.org>
* app/dialogs/user-install-dialog.[ch]: removed unused code and
unused parameters passed to user_install_dialog_run().
2006-04-27 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-locale-domain.[ch] (plug_in_locale_domains):
new function which returns string arrays of all registered locale
domains and paths.
(plug_in_standard_locale_domain): removed this function. The
standard plug-in domain is included in the domains returned by
plug_in_locale_domains().
* app/plug-in/plug-ins.c (plug_ins_init): simply bind the text
domains here instead of calling gimp_menus_init(). Destroy
gimp->plug_in_defs much earlier.
* app/core/gimp-gui.[ch]
* app/gui/gui-vtable.c: removed gimp_menus_init().
* app/menus/plug-in-menus.[ch]: removed plug_in_menus_init(),
binding text domains is completely done in the core now.
2006-04-27 Michael Natterer <mitch@gimp.org>
Added some signals inspired by Rockwalrus' libpdb:
* app/pdb/gimppdb.[ch]: added signals "register-procedure" and
"unregister-procedure".
* app/pdb/gimppluginprocedure.[ch]: added signal "menu-path-added".
* app/actions/plug-in-actions.[ch]
* app/menus/plug-in-menus.[ch]: connect to the new signals and
create/destroy plug-in actions and menus accordingly. Made all
needed functions private and merged some of them with the newly
added signal callbacks.
* app/core/gimp-gui.[ch]
* app/gui/gui-vtable.c: removed gimp_menus_create_item() and
gimp_menus_delete_item() and all related stuff.
* app/plug-in/plug-in.c
* app/plug-in/plug-ins.c: removed calls to the removed functions.
* app/plug-in/plug-ins.c (plug_ins_init): add the plug-in
procedures to the PDB *after* calling gimp_menus_init() so their
locale domains are properly initialized when the menus are
created.
2006-04-27 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb.[ch]: hide the GimpParamSpecRGB struct
again. Added getter for the has_alpha field.
* libgimpcolor/gimpcolor.def: updated.
* app/config/gimpconfig-dump.c
* libgimpconfig/gimpconfig-serialize.c: use
gimp_param_spec_rgb_has_alpha() instead of accessing the
GimpParamSpecRGB struct directly.
2006-04-27 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb.[ch]: added "has_alpha" to GimpParamSpecRGB.
Made the GimpParamSpecRGB struct public. When validating a color,
only look at the alpha channel if has_alpha is set.
* libgimpconfig/gimpconfig-params.h: added "has_alpha" to
GIMP_CONFIG_INSTALL_PROP_RGB macro definition.
* libgimpconfig/gimpconfig-serialize.c: serialize color values as
"(rgb r g b)" if the param-spec indicates that the alpha channel
is meaningless.
* app/config/gimpconfig-dump.c: take "has_alpha" into account when
documenting color properties.
* app/core/gimpcontext.c
* app/core/gimpgrid.c
* app/display/gimpdisplayoptions.c
* app/text/gimptext.c
* app/widgets/gimpaction.c
* app/widgets/gimpcolorbar.c
* libgimpwidgets/gimpcolorarea.c
* libgimpwidgets/gimpcolorbutton.c: specify whether color properties
have an alpha channel.
* tools/pdbgen/app.pl: handle "has_alpha" for color paramaters.
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/context.pdb
* tools/pdbgen/pdb/grid.pdb
* tools/pdbgen/pdb/image.pdb: set the "has_alpha" flag where
appropriate.
* app/pdb/gimp-pdb-compat.c (gimp_pdb_compat_param_spec): set
"has_alpha" to TRUE for GIMP_PDB_COLOR.
* app/pdb/channel_cmds.c
* app/pdb/context_cmds.c
* app/pdb/gradient_cmds.c
* app/pdb/grid_cmds.c
* app/pdb/image_cmds.c
* app/pdb/palette_cmds.c
* app/pdb/palettes_cmds.c
* app/pdb/selection_tools_cmds.c: regenerated.
* app/config/gimpdisplayconfig.c (gimp_display_config_class_init):
removed unused code.
2006-04-27 Michael Natterer <mitch@gimp.org>
* app/widgets/gimppluginaction.[ch]: use a GParamSpecObject instead
of GParamSpecPointer for the "procedure" property. Keep a reference
on the action's procedure. Did a global s/proc/procedure/.
2006-04-27 Michael Natterer <mitch@gimp.org>
* app/actions/plug-in-commands.c (plug_in_repeat_cmd_callback):
truncate the value array to the number of actually set parameters.
2006-04-27 Michael Natterer <mitch@gimp.org>
* app/Makefile.am (SUBDIRS): changed order of subdirs to match the
bottom-up module dependency order more closely.
2006-04-26 Sven Neumann <sven@gimp.org>
* app/actions/vectors-commands.c
(vectors_selection_to_vectors_cmd_callback): do not pass an
invalid drawable to the plug-in, just omit the argument.
Fixes bug #339759.
2006-04-26 Michael Natterer <mitch@gimp.org>
* app/pdb/Makefile.am
* app/pdb/pdb-types.h
* app/pdb/gimppdb.[ch]: new object GimpPDB which keeps all
procedures and functions to register and run them. Renamed all
functions and did some cleanups.
* app/pdb/gimp-pdb.[ch]
* app/core/gimp.[ch]: removed the same stuff here.
* app/pdb/gimp-pdb-query.[ch]: removed these files...
* app/pdb/gimppdb-query.[ch]: ...added here as members of GimpPDB.
* app/pdb/gimp-pdb-compat.h: fix include guard.
* app/batch.c
* app/actions/vectors-commands.c
* app/dialogs/about-dialog.c
* app/file/file-open.c
* app/file/file-save.c
* app/plug-in/plug-in-message.c
* app/plug-in/plug-ins.c
* app/widgets/gimpfiledialog.c
* app/widgets/gimphelp.c
* app/xcf/xcf.c
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/font_select.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/palette_select.pdb
* tools/pdbgen/pdb/pattern_select.pdb
* tools/pdbgen/pdb/procedural_db.pdb: changed includes and function
calls accordingly.
* tools/pdbgen/app.pl: pass around GimpPDB instead of Gimp
pointers to register the internal procedures with. Changed some
newlines in the generated code.
* app/pdb/*_cmds.c
* app/pdb/internal_procs.[ch]: regenerated.
* app/core/gimppdbprogress.[ch]
* app/widgets/gimppdbdialog.[ch]: added "pdb" CONSTRUCT_ONLY
properties.
* app/plug-in/plug-in-progress.c
* app/gui/gui-vtable.c: pass gimp->pdb when creating them.
* app/widgets/gimpbrushselect.c
* app/widgets/gimpfontselect.c
* app/widgets/gimpgradientselect.c
* app/widgets/gimppaletteselect.c
* app/widgets/gimppatternselect.c: use the new local pdb pointers
instead of some foo->bar->gimp->pdb overkill.
2006-04-25 Michael Natterer <mitch@gimp.org>
* app/tools/gimpthresholdtool.c: added an "Auto" button and
initialize the tool with a default threshold of 127 again.
Removed some cruft and did some cleanup.
2006-04-25 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.c: code cleanup, moved variables into
local scopes, added const qualifiers.
2006-04-23 Sven Neumann <sven@gimp.org>
* app/dialogs/module-dialog.c
* app/dialogs/palette-import-dialog.c: use GimpDialog instead of a
GimpViewableDialog with a NULL viewable.
* app/widgets/gimpviewabledialog.c: deprecate use of
GimpViewableDialog with a NULL viewable.
* app/dialogs/resolution-calibrate-dialog.c: whitespace.
2006-04-21 Sven Neumann <sven@gimp.org>
* app/config/gimprc-blurbs.h: minor string changes.
* app/config/gimprc.c: declared an array as const.
* app/dialogs/user-install-dialog.c: further streamlining of the
user installation.
2006-04-21 Sven Neumann <sven@gimp.org>
* app/dialogs/user-install-dialog.c: in an effort to basically
get rid of the user installation dialog, removed the license and
tuning pages as well as the code that was responsible for the
nifty orange style. More to come ...
2006-04-21 Sven Neumann <sven@gimp.org>
Applied a slightly modified version of a patch from Lode Leroy
(bug #336183):
* app/base/gimphistogram.[ch]: added new function
gimp_histogram_get_threshold() that returns an optimal
binarization threshold.
* app/tools/gimpthresholdtool.c: use the new function to
initialize the Threshold tool.
2006-04-20 Simon Budig <simon@gimp.org>
* app/base/curves.c: implemented a new interpolation for the
"smooth" curve type. This fixes the artefacts as described in
bug #169078 although there definitely is room for improvement.
This has an impact on the API as now the curves used by the
gimp-curves-spline PDB call change. I do however believe, that
the change is for good and the old behaviour was simply buggy.
2006-04-20 Tor Lillqvist <tml@novell.com>
* app/widgets/gimpsessioninfo.c (get_appropriate_monitor): New
helper function. Same functionality as
gdk_screen_get_monitor_at_window(), except that it takes a window
geometry as parameter and not the window itself.
(gimp_session_info_set_geometry): Make sure the window is
completely inside a monitor. (#339099, #324254)
M ChangeLog
M app/paint/gimpconvolve.c
M app/paint-funcs/paint-funcs.c
M app/paint-funcs/paint-funcs.h
M app/tools/gimpiscissorstool.c
M libgimpbase/gimputils.c
M modules/colorsel_cmyk.c
M regexrepl/regex.c
2006-04-19 Sven Neumann <sven@gimp.org>
* app/dialogs/user-install-dialog.c: removed an unneeded call to
gtk_widget_realize() (bug #324254). Sprinkled const qualifiers to
avoid relocations.
2006-04-15 Michael Natterer <mitch@gimp.org>
* app/core/gimp-utils.[ch]: added
gimp_g_type_instance_get_memsize() and
gimp_g_param_spec_get_memsize().
Changed gimp_g_object_get_memsize() to use
gimp_g_type_instance_get_memsize().
Handle more boxed types in gimp_g_value_get_memsize().
* app/core/gimp.c (gimp_get_memsize): add the memsize of some
members that are new or were forgotten.
* app/pdb/gimpprocedure.c
* app/pdb/gimppluginprocedure.c: implement GimpObject::get_memsize().
2006-04-14 Manish Singh <yosh@gimp.org>
* app/plug-in/plug-in.h: Some compilers don't handle "'" in #error
directives well. Reword to not use a contraction.
2006-04-11 Kevin Cozens <kcozens@cvs.gnome.org>
* app/pdb/gimp-pdb-query.c: Changed formatting of output from
gimp-procedural-db-dump to make it more easily human (and machine)
readable. Fixes bug #337843.
2006-04-10 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-ins.c (plug_ins_add_to_db): don't iterate the
list of plug-in procedures here, take a GimpPlugInProcedure
argument instead.
(plug_ins_init): iterate the list here, just as all other lists
too. Renamed local "filename" variable to "pluginrc". Moved
"basename" to local scopes.
* tools/pdbgen/pdb/procedural_db.pdb: minor cleanup.
* app/pdb/procedural_db_cmds.c: regenerated.
2006-04-10 Michael Natterer <mitch@gimp.org>
* app/file/file-utils.[ch]: added file_utils_load_thumbnail() and
file_utils_save_thumbnail().
* tools/pdbgen/pdb/fileops.pdb: remove lots of code and includes
and use the new functions.
* app/pdb/fileops_cmds.c: regenerated.
2006-04-10 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-file.c: some cleanup.
(plug_in_file_register_load_handler)
(plug_in_file_register_save_handler): first check if we have the
procedure, then check its arguments, not the other way around
(using an additional lookup). Old weird code was needed because
these functions were split between app/plug-in and app/pdb.
* app/plug-in/plug-in-file.h: whitespace.
2006-04-10 Sven Neumann <sven@gimp.org>
* app/widgets/gimpactiongroup.[ch]: take const arrays of action
entries.
* app/actions/*-actions.c: declare action arrays as const.
2006-04-10 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-ins.[ch]: removed the plug_ins_file_foo()
functions.
* tools/pdbgen/pdb/fileops.pdb: removed lots of load and save
handler register code.
* app/plug-in/Makefile.am
* app/plug-in/plug-in-file.[ch]: added everything in these new
files. Load and save handlers are installed with
plug_in_file_register_load_handler() and _save_handler() which
also check the passed file procedure's parameters.
* app/pdb/fileops_cmds.c: regenerated.
2006-04-09 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-ins.[ch]: remove plug_ins_add_internal() and
made plug_ins_procedure_insert() public as plug_ins_procedure_add().
There's no reason internal plug-ins should be treated differently.
* app/xcf/xcf.c: use plug_ins_procedure_add().
* app/plug-in/plug-ins-help.c: fix comment.
2006-04-09 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-params.[ch] (plug_in_params_destroy):
removed this function. We only have shallow GPParam arrays in the
core that can be freed with g_free(), and gp_params_destroy()
could always be used for freeing deep copies.
* app/plug-in/plug-in-message.c
* app/plug-in/plug-in-run.c: simply g_free() the GPParam arrays.
2006-04-09 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-params.[ch]: removed function
plug_in_proc_args_check().
* app/pdb/gimppluginprocedure.[ch]: added new function
gimp_plug_in_procedure_add_menu_path() which performs all menu
path checks that were in the function above and adds the new
menu_path to the procedure's list of menu_paths.
* app/plug-in/plug-in-message.c (plug_in_handle_proc_install)
* app/plug-in/plug-in.c (plug_in_menu_register): use the new
function and removed manual adding of the menu path to
proc->menu_paths.
2006-04-09 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-rc.[ch] (plug_in_rc_parse): return a GSList*
of PlugInDefs instead of a boolean. Don't return anything if any
parse error occurs (before, we trusted PlugInDefs from partially
broken files). Don't call plug_ins_def_add_from_rc() and don't
#include "plug-ins.h".
* app/plug-in/plug-ins.[ch]: made plug_ins_def_add_from_rc()
private and call it on all PlugInDefs returned by plug_in_rc_parse().
Renamed plug_ins_init_file() to plug_ins_add_from_file()
(plug_ins_init): remove code that checks for duplicate plug-in
procedures...
(plug_ins_procedure_insert): ... and add it where it belongs.
2006-04-09 Michael Natterer <mitch@gimp.org>
* app/xcf/xcf.c (xcf_init): don't register the XCF procedures
with the PDB here...
* app/plug-in/plug-ins.c (plug_ins_add_to_db): ... instead, don't
special case internal procedures here so they get registered along
with all other plug-in procedures.
2006-04-09 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-def.c (plug_in_def_set_mtime): set the mtime
of all the plug_in_def's procedures too.
* app/plug-in/plug-in-params.c: don't include "plug-in.h"
* app/plug-in/plug-in-rc.c: minor cleanup. Fixed one error
return value.
* app/plug-in/plug-in.c (plug_in_push): simply use g_slist_rmove(),
fiddling with list nodes manually is a questionable "optimization"
for removing the first list element.
* app/plug-in/plug-ins.c (plug_ins_init): some cleanup.
2006-04-07 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-message.c (plug_in_handle_proc_run)
(plug_in_handle_proc_return_priv): removed PlugInBlocked cruft,
it was probably unused since ages.
(plug_in_handle_proc_return_priv): removed...
(plug_in_handle_proc_return)
(plug_in_handle_temp_proc_return): ...and added its only remaining
function call here.
(plug_in_handle_tile_req): check if the requested drawable ID
is really a drawable (not a vectors or...)
(plug_in_handle_proc_install): cleanup.
2006-04-07 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-run.[ch]: made plug_in_run_temp() public and
changed its parameters to match the ones of plug_in_run().
* app/pdb/gimpprocedure.[ch]: added GimpProcedure::execute_async()
which takes an additional display_ID parameter and returns nothing.
* app/pdb/gimppluginprocedure.c
* app/pdb/gimptemporaryprocedure.c: implement it, using
plug_in_run() and plug_in_run_temp().
* app/core/gimp-utils.[ch]: added gimp_value_array_truncate()
which takes a GValueArray and the number of values to truncate the
array to.
* app/actions/plug-in-commands.c
* app/actions/vectors-commands.c
* app/pdb/gimp-pdb.c
* app/plug-in/plug-ins.c
* app/widgets/gimphelp.c: use gimp_procedure_execute_async()
instead of plug_in_run() and don't #include "plug-in-run.h".
Truncate GValueArray passed to plug-ins again, and don't just pass
some default values to the noninteractive args.
Unrelated:
* tools/pdbgen/pdb/plug_in.pdb: don't call
gimp_menus_create_branch() here.
* app/plug-in/plug-ins.c (plug_ins_menu_branch_add): call it here
instead.
* app/pdb/plug_in_cmds.c: regenerated.
2006-04-07 Michael Natterer <mitch@gimp.org>
* app/core/gimpobject.h: added "guint disconnected : 1", we
have enough space for flags now.
* app/core/gimpobject.c (gimp_object_dispose): use the new
object->disconnected flag instead of attaching that boolean to the
object.
2006-04-07 Sven Neumann <sven@gimp.org>
* app/core/gimpdrawable.[ch]: renamed gimp_drawable_cmap() to
gimp_drawable_get_colormap() and let it return a const array.
* app/core/gimpdrawable-convert.c
* app/core/gimpimage-convert.c
* app/core/gimpselection.c
* app/display/gimpdisplayshell-preview.c: changed accordingly.
2006-04-07 Sven Neumann <sven@gimp.org>
* app/core/gimpdrawable.[ch]: renamed gimp_drawable_data() to
gimp_drawable_get_tiles().
[lots of files]: changed accordingly.
2006-04-07 Michael Natterer <mitch@gimp.org>
* app/pdb/gimp-pdb.c (gimp_pdb_register)
(gimp_pdb_unregister): ref all registered procedures.
* app/xcf/xcf.c
* tools/pdbgen/app.pl: unref newly created procedures after
registering them.
* app/core/gimp.[ch]: renamed member "plug_in_proc_defs" to
"plug_in_procedures". Renamed "proc_def" variables to "procedure".
* app/actions/plug-in-actions.c
* app/menus/plug-in-menus.c: changed accordingly.
* app/plug-in/plug-ins.[ch]: keep a reference to all procs which
are in gimp->plug_in_procedures.
(plug_ins_exit): unref them all and free the list. Apparently we
were leaking them before on exit.
* app/plug-in/plug-in-def.[ch]: s/proc_defs/procedures/. Ref
procedures added with plug_in_def_add_procedure(). Added
plug_in_def_remove_procedure() which unrefs them again. Removed
"free_proc_defs" parameter from plug_in_def_free() and always
unref the procedures.
* app/plug-in/plug-in.[ch]: added plug_in_add_temp_proc() and
plug_in_remove_temp() proc. Ref the added procedures.
* app/plug-in/plug-in-message.c: use the new APIs instead of
adding/removing procs and temp procs from their lists manually.
Unref the newly created procedure after adding then to the
plug_in_def or plug_in.
* app/plug-in/plug-in-rc.[ch]
* app/plug-in/plug-ins-query.c
* tools/pdbgen/pdb/plug_in.pdb: changed accordingly.
* app/pdb/*_cmds.c: regenerated.
2006-04-07 Sven Neumann <sven@gimp.org>
* app/core/gimpimage-merge.[ch] (gimp_image_merge_visible_layers):
allow to discard invisible layers as suggested in bug #337557.
* app/actions/image-commands.c
* app/dialogs/image-merge-layers-dialog.[ch]: added a check button
to the Merge Visible Layers dialog to control the new feature.
* app/file/file-open.c
* tools/pdbgen/pdb/image.pdb: pass FALSE for the new parameter.
* app/pdb/image_cmds.c: regenerated.
2006-04-06 Sven Neumann <sven@gimp.org>
* app/core/gimpdata.c (gimp_data_error_quark)
* libgimpconfig/gimpconfig-error.c (gimp_config_error_quark)
* libgimpthumb/gimpthumb-error.c (gimp_thumb_error_quark):
g_quark_from_static_string() is already reasonably fast, not much
point in caching the result.
2006-04-06 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-run.[ch]: removed plug_in_repeat()...
* app/actions/plug-in-commands.c: ...and merged it into
plug_in_repeat_cmd_callback(). It's essentially the same code as
plug_in_run_cmd_callback() and there's no reason (except
historical ones) to keep its implementation separate.
2006-04-05 Sven Neumann <sven@gimp.org>
* app/base/lut-funcs.[ch]: minor code cleanup, renamed a function,
declared some functions as static.
* app/core/gimpdrawable-equalize.c: changed accordingly.
2006-04-05 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-proc-frame.[ch]: added
plug_in_proc_frame_get_return_vals().
* app/plug-in/plug-in-run.c: removed plug_in_get_return_vals()
and call plug_in_proc_frame_get_return_vals() instead.
Don't leak stuff in case calling the plug-in fails.
2006-04-05 Tor Lillqvist <tml@novell.com>
* app/core/gimpobject.c (gimp_object_get_memsize): Check if
object->name is NULL before attempting to pass it to
g_strdup_printf(). Use "anonymous" for unnamed objects.
2006-04-05 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-message.c (plug_in_handle_proc_install):
don't canonicalize names of GParamSpecs, they do this themselves.
2006-04-05 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-types.h
* app/plug-in/plug-in-proc-def.[ch]: renamed to GimpPlugInProcedure
and made a GObject derived from GimpProcedure (instead of having
a pointer to a GimpProcedure). Added image_types and file_magic
utility functions taken from plug-ins.[ch]. Still lives in the
same crappy files because I am undecided where to put it...
* app/pdb/gimpprocedure.c (gimp_procedure_real_execute): removed
switch() statement and always call the internal marshaller because
GimpProcedure::execute() is properly overridden by
GimpPlugInProcedure now.
* app/plug-in/plug-ins.[ch]: removed the mime_type and file_magic
utilities added to GimpPlugInProcedure.
* app/actions/file-commands.c
* app/actions/plug-in-actions.[ch]
* app/actions/plug-in-commands.[ch]
* app/core/gimp-gui.[ch]
* app/core/gimp.[ch]
* app/core/gimpimage.[ch]
* app/dialogs/file-open-dialog.c
* app/dialogs/file-save-dialog.c
* app/dialogs/print-size-dialog.c
* app/file/file-open.[ch]
* app/file/file-save.[ch]
* app/file/file-utils.[ch]
* app/gui/gui-vtable.c
* app/menus/plug-in-menus.[ch]
* app/plug-in/plug-in-def.[ch]
* app/plug-in/plug-in-message.c
* app/plug-in/plug-in-rc.c
* app/plug-in/plug-in-run.c
* app/plug-in/plug-in.c
* app/plug-in/plug-ins-query.c
* app/widgets/gimpactiongroup.[ch]
* app/widgets/gimpdnd-xds.c
* app/widgets/gimpfiledialog.[ch]
* app/widgets/gimpfileprocview.[ch]
* app/widgets/gimppluginaction.[ch]
* app/xcf/xcf.c
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/plug_in.pdb: changed addordingly.
* app/pdb/fileops_cmds.c
* app/pdb/plug_in_cmds.c: regenerated.
2006-04-04 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcontainertreeview-dnd.c
(gimp_container_tree_view_drag_leave)
(gimp_container_tree_view_drag_motion): use the correct API to
unset the tree view's drop indicator. Apparently using the wrong
API has stopped working due to changes in GtkTreeView...
2006-04-04 Sven Neumann <sven@gimp.org>
* app/text/gimpfont.c: moved new code to a utility function. Avoid
use of deprecated Pango API. Removed tabs and trailing whitespace.
2006-04-04 Tor Lillqvist <tml@novell.com>
* app/text/gimpfont.c (gimp_font_get_new_preview): Provide
script-specific short sample strings instead of "Aa" for fonts
that seem to be designed for some specific non-Latin
script. Pending a complete redesign and reimplementation of
font selection, this is at least an improvement, and a partial
solution to #137624.
2006-04-03 Michael Natterer <mitch@gimp.org>
* app/core/gimpparamspecs.[ch]: added a shitload of new GTypes and
corresponding GParamSpecs to use them as PDB arguments.
Each GimpPDBArgType has one or more corresponding GTypes in the
core now.
* app/pdb/gimpargument.[ch] (struct GimpArgument)
(struct GimpArgumentSpec): removed "value" member because the
GValue's/GParamSpec's GType carries just as much information now.
(gimp_argument_type_to_pdb_arg_type): new function which maps
GTypes to GimpPDBArgType.
(gimp_pdb_arg_type_to_string): formerly known as
procedural_db_type_name().
* app/pdb/gimpprocedure.[ch]
* app/pdb/procedural_db.[ch]: completely switch to GValue. Use the
new GParamSpecs for procedure arguments. GimpPDBArgType is only
used for adding compat args/values of plug-in procedures.
(procedural_db_run_proc): the va_list expects a sequence of
(GType, value, GType, value, ..., G_TYPE_NONE) now.
* app/plug-in/plug-in-params.[ch]: changed accordingly.
(plug_in_param_defs_check): removed this function.
* app/plug-in/plug-in-message.c (plug_in_handle_proc_install): use
plug_in_proc_args_check() instead and initialize the GimpProcedure
before doing so.
* tools/pdbgen/app.pl
* tools/pdbgen/pdb.pl: use the new param spec types and their
utility functions. Changed argument/value registration
accordingly.
* app/pdb/procedural-db-query.c
* app/actions/plug-in-commands.c
* app/actions/vectors-commands.c
* app/core/gimppdbprogress.c
* app/dialogs/about-dialog.c
* app/file/file-open.c
* app/file/file-save.c
* app/plug-in/plug-in-progress.c
* app/plug-in/plug-in-rc.c
* app/plug-in/plug-ins.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
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/procedural_db.pdb: changed accordingly.
* app/pdb/*_cmds.c: regenerated.
2006-04-03 Sven Neumann <sven@gimp.org>
* app/tools/gimpscaletool.c: added a GimpSizeBox as a replacement
for the InfoDialog widgets. Needs more work ...
2006-04-02 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-params.c: handle storage of GIMP_PDB_INT32
plug-in params in GValues of type G_TYPE_UINT, they are used for
guides and tattoos.
* tools/pdbgen/pdb/guides.pdb (image_find_next_guide): don't
validate the "guide" parameter, because 0 is an allowed value
here.
* app/pdb/guides_cmds.c: regenerated.
2006-04-02 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb.pl: added a const_type member to all PDB types,
Removed casts from all get_value_funcs which return const
pointers, they can stay const now.
* tools/pdbgen/app.pl: use the const_type to declare input args.
* app/pdb/gimpprocedure.h: pass const arguments to the internal
marshallers.
* app/xcf/xcf.c: changed accordingly.
* tools/pdbgen/pdb/paint_tools.pdb
* tools/pdbgen/pdb/paths.pdb: added some const qualifiers.
* tools/pdbgen/lib.pl: use the const_type for input args instead
of adding the const qualifier based on the type.
* app/pdb/_cmds.c
* libgimp/gimpparasite_pdb.[ch]: regenerated.
Unrelated:
* app/pdb/gimpargument.c (gimp_arguments_destroy): no need any
more to destroy the argument array in reverse order (we don't need
access to the previous element because arrays in GValues memory
manage themselves now).
2006-04-02 Michael Natterer <mitch@gimp.org>
* app/core/gimpparasitelist.[ch] (gimp_parasite_list_add): removed
the return value again.
(gimp_parasite_list_find): return a const parasite.
* app/core/gimp-parasites.[ch]
* app/core/gimpimage.[ch]
* app/core/gimpitem.[ch] (*_parasite_attach): take a const
parasite. Make a local copy of the parasite struct because
gimp_parasite_shift_parent() changes it.
(*_parasite_find): return a const parasite.
* app/core/gimptemplate.c
* app/text/gimptextlayer-xcf.c
* app/xcf/xcf-load.c: changed accordingly.
2006-04-02 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-undo-push.[ch]
(gimp_image_undo_push_image,item_parasite): use "const GimpParasite*"
insted of gpointer for the parasite parameter.
* app/core/gimpparasitelist.[ch] (gimp_parasite_list_add): added
const to the parasite parameter, return the actually added
parasite (which is a copy).
* app/core/gimpunit.[ch] (_gimp_unit_new): added const to all
string parameters.
2006-04-02 Michael Natterer <mitch@gimp.org>
* app/core/gimpparamspecs.[ch]: removed GIMP_TYPE_PARASITE,
GIMP_TYPE_PARAM_PARASITE and the GimpRGB utility functions. Some
fixes/cleanup in the new array and string array code.
* libgimpbase/gimpbase.def
* libgimpbase/gimpparasite.[ch]
* libgimpcolor/gimpcolor.def
* libgimpcolor/gimprgb.[ch]: added the parasite and rgb stuff here.
* app/pdb/gimpargument.c: #include "libgimpbase/gimpbase.h"
* app/pdb/procedural_db.c: removed unused variable.