2006-05-29 Sven Neumann <sven@gimp.org>
* configure.in: use PANGO_DISABLE_DEPRECATED for pango < 0.13.0.
* app/text/gimptext-vectors.c: added const qualifiers to the
FT_Vector parameters of the FT_Outline_Funcs.
2006-05-29 Sven Neumann <sven@gimp.org>
* app/widgets/gimpdialogfactory.c
(gimp_dialog_factory_dialog_new_internal): code cleanup; only call
gtk_window_present() if called with present == TRUE.
2006-05-29 Sven Neumann <sven@gimp.org>
* app/core/gimpbrushgenerated.c (gimp_brush_generated_load): don't
choke on brush files with empty names (bug #343140).
(gimp_brush_generated_save): warn about brushes with empty names.
2006-05-29 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdock.c (gimp_dock_key_press_event): make sure
text widgets get all key events first. Fixes bug #301006.
2006-05-28 Michael Natterer <mitch@gimp.org>
Applied patch from David Gowers which adds actions to select
palette and colormap colors with actions. Modified the patch quite
a bit. Fixes bug #130123.
* app/widgets/gimpcolormapeditor.[ch]
* app/widgets/gimppaletteeditor.[ch]: add functions get_index()
which gets the currently selected color's index (optionally the
index of a passed color), set_index() which sets the selected
color by index, and max_index() which returns the maximum possible
color index.
* app/dialogs/dialogs-constructors.c: changed accordingly.
* app/actions/context-actions.c
* app/actions/context-commands.[ch]: actions and callbacks which
use the new functions.
2006-05-28 Michael Natterer <mitch@gimp.org>
* app/core/gimppalette-import.[ch]: added support for extracting
colors from the selected pixels only.
* app/dialogs/palette-import-dialog.c: added "Sample merged" and
"Selected Pixels only" toggles. Fixes bug #316212. Cleaned up the
code quite a bit.
2006-05-28 Michael Natterer <mitch@gimp.org>
* app/tools/gimpcolorpickertool.c (gimp_color_picker_tool_picked):
removed all code except info dialog updating and chain up instead.
* app/tools/gimpcolortool.c (gimp_color_tool_real_picked): newly
added default implementation. Also updates the colormap dialog and
picks into a palette.
* app/tools/gimppainttool.c (gimp_paint_tool_color_picked):
removed. The default impl. does this and much more now. Hopefully
fixes bug #320660.
2006-05-26 Michael Natterer <mitch@gimp.org>
* app/dialogs/palette-import-dialog.c: set the "Number of colors"
and "Interval" widgets insensitive for indexed images.
Fixes bug #342970.
2006-05-24 Sven Neumann <sven@gimp.org>
* app/config/gimprc-blurbs.h (SWAP_PATH_BLURB, TEMP_PATH_BLURB):
use "folder" in place of "directory".
* app/dialogs/preferences-dialog.c: use GtkFileChooserButtons for
the "swap-path" and "temp-path" preferences and a simple GtkEntry
for the "web-browser" preference.
* modules/cdisplay_proof.c: use a GtkFileChooserButton instead of
a GimpFileEntry widget.
2006-05-24 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontext.c (gimp_context_tool_list_thaw): the
default tool is the paintbrush, not rect select.
* app/tools/gimp-tools.c (gimp_tools_register): attach the default
visibility state to the tool_info.
* app/actions/tools-commands.c (tools_reset_cmd_callback): use the
attached boolean instead of reimplementing the default visibility
logic.
2006-05-24 Sven Neumann <sven@gimp.org>
* app/dialogs/palette-import-dialog.c: use a GtkFileChooserButton
instead of a GimpFileEntry widget.
* data/palettes/Tango.gpl (Name): removed "Palette" from name.
2006-05-24 Michael Natterer <mitch@gimp.org>
* app/pdb/gimppdb.c (gimp_pdb_real_register_procedure)
(gimp_pdb_real_unregister_procedure): use g_hash_table_replace()
instead of g_hash_table_insert() and make sure the used key is
always the name of the first procedure in the list.
Fixes bug #342578.
(It's actually a miracle that only the PDB browser crashed, and
not GIMP, since we were using pointers to g_free()'d memory as
keys when different plug-ins registered procedures with the same
name)
2006-05-23 Michael Natterer <mitch@gimp.org>
Fix for bug #333156:
* app/paint-funcs/paint-funcs-types.h (enum CombinationMode):
added value COMBINE_INTEN_A_INDEXED.
* app/paint-funcs/paint-funcs.c
(combine_inten_a_and_indexed_pixels): new function which
implements the new CombinationMode.
(combine_sub_region)
(combine_regions): added the needed bits to call the new function.
* app/core/gimpprojection-construct.c (project_indexed): added
mask PixelRegion parameter since that's supported by paint-funcs
now, replaced g_warning() about unimplemented combine type
by call to combine_regions(..., COMBINE_INTEN_A_INDEXED).
(gimp_projection_construct_layers): pass the mask to
project_indexed() and removed comments about not supporting it.
2006-05-23 Karine Delvare <edhel@gimp.org>
* app/core/gimpcontext.c
* app/tools/gimp-tools.c
* app/tools/gimpnewrectselecttool.c
* app/tools/gimprectselecttool.c
* app/widgets/gimptoolbox.c
* menus/image-menu.xml.in: replace old rect select by new in the
toolbox.
2006-05-23 Sven Neumann <sven@gimp.org>
It makes more sense to have GimpData::dirty indicate a name change
than to invalidate the previews whenever the name changes.
* app/core/gimpdata.c: call gimp_object_name_changed() from
gimp_data_real_dirty() instead of implementing
GimpObject::name-changed and calling gimp_data_dirty() from there.
* app/core/gimpbrushclipboard.c
* app/core/gimppalette.c
* app/core/gimppatternclipboard.c: call gimp_data_dirty() in place
of gimp_object_name_changed().
* app/core/gimpbrushgenerated.c (gimp_brush_generated_dirty):
chain up unconditionally.
2006-05-23 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/drawable_transform.pdb
* tools/pdbgen/pdb/transform_tools.pdb: add the drawable's offset
to the x and y returned by gimp_drawable_mask_intersect() because
all transform functions expect image coordinates.
Fixes bug #342548.
* app/pdb/drawable_transform_cmds.c
* app/pdb/transform_tools_cmds.c: regenerated.
2006-05-23 Michael Natterer <mitch@gimp.org>
* app/tools/gimptransformtool.c (gimp_transform_tool_dialog_update):
don't call the virtual function if there is no dialog.
(gimp_transform_tool_recalc): show the dialog here after updating it.
* app/tools/gimpperspectivetool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c (dialog_update): don't show it here.
2006-05-22 Michael Natterer <mitch@gimp.org>
* app/tools/gimpclonetool.[ch]: re-apply heavily modified patch
from Michael Schumacher which shows the clone source even while
not painting. Fixes bug #324224. Did some additional cleanup.
2006-05-22 Sven Neumann <sven@gimp.org>
* app/actions/plug-in-commands.c (plug_in_collect_image_args):
removed debugging output.
* app/tools/gimpscaletool.c: create the GimpSizeBox in the
prepare() method to make entering relative sizes work.
2006-05-22 Sven Neumann <sven@gimp.org>
* app/tools/gimpscaletool.c (gimp_scale_tool_prepare): initialize
width, height and keep-aspect properties of the size box.
2006-05-22 Michael Natterer <mitch@gimp.org>
* app/tools/gimpclonetool.c: revert previous change. Tools must
not do anything essential in cursor_update(), and poking in the
GimpClone struct is a bad hack. Will look into this.
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.