2006-06-27 Sven Neumann <sven@gimp.org>
Applied patch from Zbigniew Chyla:
* app/gimp-intl.h
* libgimp/stdplugins-intl.h: removed most content and include
<glib/gi18n.h> instead.
* libgimp/libgimp-intl.h: define ngettext() macro as wrapper
around
dngettext().
2006-06-27 Sven Neumann <sven@gimp.org>
* libgimp/gimpexport.c (gimp_export_image): use NULL as the
special value, not "silent".
* plug-ins/print/print-draw-page.c: changed accordingly. Also
fixed handling of filename encoding.
* libgimp/gimpexport.c: if format arg is "silent", export
without popping a dialog -- saves duplicating code.
* plug-ins/print/print-draw-page.c
* plug-ins/print/print-draw-page.h
* plug-ins/print/print-page-layout.c
* plug-ins/print/print-page-layout.h
* plug-ins/print/print-settings.c
* plug-ins/print/print-settings.h
* plug-ins/print/print.h: new files
* plug-ins/print/Makefile.am
* plug-ins/print/print.c: modified
Progress toward GtkPrintOperation plug-in. Should already
be usable, but very ugly.
2006-06-25 Manish Singh <yosh@gimp.org>
* libgimp/gimpuitypes.h
* libgimp/gimpselectbutton.[ch]: abstract class for resource selection
buttons.
* libgimp/gimpfontselectbutton.[ch]: derive from GimpSelectButton.
* libgimp/gimpbrushselectbutton.[ch]
* libgimp/gimpgradientselectbutton.[ch]
* libgimp/gimppaletteselectbutton.[ch]
* libgimp/gimppatternselectbutton.[ch]: replacements for
gimp_foo_select widgets, akin to GimpFontSelectButton.
* libgimp/gimpbrushmenu.[ch]
* libgimp/gimpgradientmenu.[ch]
* libgimp/gimppalettemenu.[ch]
* libgimp/gimppatternmenu.[ch]: deprecate old API, and reimplement
in terms of GimpFooSelectButton.
* libgimp/gimpfontmenu.[ch]: change to use the GimpSelectButton API.
* libgimp/gimpuimarshal.list: new marshallers for the above new
widgets.
* libgimp/gimpui.h: add new headers.
* libgimp/Makefile.am: add new files.
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/gfig/gfig-dialog.c
* plug-ins/gfig/gfig-style.[ch]
* plug-ins/script-fu/script-fu-interface.c: use new API.
2006-06-16 Manish Singh <yosh@gimp.org>
* app/errors.c
* app/main.c
* app/file/gimprecentlist.c
* libgimpbase/gimpsignal.c
* libgimp/gimp.c
* modules/controller_midi.c
* plug-ins/common/gqbist.c: use _GNU_SOURCE instead of the other
_FOO_SOURCE variables to support -ansi -pedantic on glibc systems,
since anything else breaks compilation of otherwise working code.
Fixes bug #344203.
2006-06-14 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/[many].pdb: in help texts, refer to other
procedures using_c_syntax(). This way gtk-doc can cross-reference
them correctly in libgimp, and app.pl will transform them
'to-canonical-names' for PDB registering.
* app/pdb/[many]_cmds.c
* libgimp/[many]_pdb.c: regenerated.
2006-06-12 Sven Neumann <sven@gimp.org>
* libgimp/gimpzoompreview.c (gimp_zoom_preview_get_source):
documentation.
* plug-ins/common/channel_mixer.c: minor cleanup and loop unrolling.
Introduced an inline function to avoid code duplication.
2006-06-02 Sven Neumann <sven@gimp.org>
* app/composite/gimp-composite.c (gimp_composite_use_cpu_accel):
need to test for GIMP_COMPOSITE_OPTION_NOEXTENSIONS.
* libgimp/gimp.c (gimp_config): call gimp_set_use_cpu_accel() from
here, not in gimp_main().
* plug-ins/common/sel_gauss.c: applied patch from Loren Merritt
that adds MMX code to boost the plug-in speed (bug #342860).
2006-06-02 Sven Neumann <sven@gimp.org>
Moved the CPU detection code to libgimpbase (see bug #342860):
* app/base/Makefile.am
* app/base/cpu-accel.[ch]
* app/base/test-cpu-accel.c: removed here...
* libgimpbase/Makefile.am
* libgimpbase/gimpbase.h
* libgimpbase/gimpcpuaccel.[ch]
* libgimpbase/test-cpu-accel.c: ... and added here again with
some API changes.
* app/composite/Makefile.am
* app/composite/make-installer.py: changed accordingly.
* app/composite/gimp-composite-*-installer.c: regenerated.
* libgimp/gimp.c (gimp_main): call gimp_set_use_cpu_accel().
2006-06-01 Sven Neumann <sven@gimp.org>
Added basic framework for plug-ins to access the use_cpu_accel
configuration (bug #342860):
* app/composite/gimp-composite.[ch]: added new function
gimp_composite_use_cpu_accel().
* libgimpbase/gimpprotocol.[ch]: added use_cpu_accel to the config
message.
* app/plug-in/gimppluginmanager-call.c: pass the return value of
gimp_composite_use_cpu_accel() for config.use_cpu_accel.
* libgimp/gimp.[ch]: make the config value accessible by means of
a new function gimp_use_cpu_accel().
* libgimp/gimp.def: updated.
2006-05-27 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/enumcode.pl: cast the return value of
gimp_enums_get_type_names() to (const gchar **) to fix compiler
warning.
* libgimp/gimpenums.c.tail: regenerated.
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-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-04-02 Michael Natterer <mitch@gimp.org>
* libgimp/gimptile.c (gimp_tile_cache_insert): silence warning
about unused return value of g_list_concat().
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>
* tools/pdbgen/lib.pl: use the variable initializer defined with
the PDB type instead of figuring it manually. Removed a line of
code that checked for enums without "Gimp" prefix.
* libgimp/gimpbrush_pdb.c
* libgimp/gimpchannel_pdb.c
* libgimp/gimpcontext_pdb.c
* libgimp/gimpgradient_pdb.c
* libgimp/gimplayer_pdb.c
* libgimp/gimpunit_pdb.c
* libgimp/gimpvectors_pdb.c: all doubles are initialized with 0.0
instead of 0 now.
2006-03-26 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/lib.pl: removed support for arg->implicit_fill.
* tools/pdbgen/pdb/progress.pdb (progress_init): remove it without
replacement, the generated function on the libgimp side is
internal anyway.
* libgimp/gimpprogress_pdb.[ch] (_gimp_progress_init): rgenerated
with a display_ID parameter.
* libgimp/gimpprogress.c (gimp_progress_init): pass
gimp_default_display() to _gimp_progress_init().
2006-03-16 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/image.pdb: replaced code generated by now gone
utility functions list_proc() and type_move() by pdbgen
boilerplate code. Fixed wrapper of gimp_image_lower_channel() to
actually lower the channel (it was lowering the active layer).
* app/pdb/image_cmds.c
* libgimp/gimpimage_pdb.[ch]: regenerated.
2006-03-15 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/layer.pdb: removed dim(), accessors(),
get_prop() and set_prop() utility functions and expand everything
to pdbgen boilerplate code. Use the real layer mask API instead of
the crap from pdb_glue.h. Fixed some API docs.
* app/pdb/channel_cmds.c
* app/pdb/layer_cmds.c
* libgimp/gimplayer_pdb.c: regenerated.
* app/pdb/Makefile.am
* app/pdb/pdb_glue.h: bye bye uglyness.
2006-03-14 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/*.pdb: remove lots of perl crack:
- create almost all parameter arrays manually instead of
generating them from utility functions
- removed lots of other utility functions
- moved variable declarations into the enclosed code snippets
where possible
- some cleanup and API doc fixes
* tools/pdbgen/stddefs.pdb: added some perl crack:
define utility functions for all contributors which own more than
some functions, so they can change their names and email addresses
at a central place.
* app/pdb/[many].c: regenerated.
* libgimp/gimpcolor_pdb.c
* libgimp/gimpdrawabletransform_pdb.c
* libgimp/gimptransformtools_pdb.c
* libgimp/gimpvectors_pdb.c: ditto. Changed affect only API docs.
2006-03-10 Sven Neumann <ven@gimp.org>
* app/widgets/gimpaction.c: factored out some code to a utility
function.
* app/config/gimpguiconfig.[ch]
* app/config/gimprc-blurbs.h
* app/dialogs/preferences-dialog.c
* app/gui/gui.c
* app/plug-in/plug-in-run.c
* libgimp/gimp.c
* libgimpbase/gimpprotocol.[ch]: renamed tool_tips to tooltips in
variables and in the gimprc.
* app/config/gimpbaseconfig.[ch]: removed stingy_memory_use from
the GimpBaseConfig struct.
2006-03-02 Michael Natterer <mitch@gimp.org>
* app/core/gimppickable.[ch]: added new methods ::get_bytes() and
::flush()
* app/core/gimpchannel.c
* app/core/gimpdrawable.c
* app/core/gimpimagemap.c
* app/core/gimpprojection.c: implement ::get_bytes()
* app/core/gimpprojection.c: implement ::flush() (immediately
process both the idle renderer's queue and the unflushed update
areas, to make sure that any reading from the projection will
re-construct it).
* app/core/gimp-edit.c
* app/core/gimpchannel.c
* app/core/gimpimage-contiguous-region.c
* app/core/gimpimage-crop.c
* app/core/gimppalette-import.c
* app/paint/gimpclone.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpiscissorstool.c
* tools/pdbgen/pdb/image.pdb: use the pickable interface more
consistently when reading from any drawable or the projection, and
call gimp_pickable_flush() before doing so. Fixes bug #332933.
* app/core/gimpimage-pick-color.c: added comment why the we don't
call gimp_pickable_flush() here.
* app/pdb/image_cmds.c
* libgimp/gimpimage_pdb.c: regenerated.
2006-03-02 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/image.pdb: corrected documentation for
gimp_image_[lower|raise]_layer(). We do not any longer refuse to
raise and lower based on a missing alpha channel.
* app/pdb/image_cmds.c
* libgimp/gimpimage_pdb.c: regenerated.
2006-02-26 Sven Neumann <sven@gimp.org>
* libgimp/gimpzoompreview.c: added "drawable" as construct-only
property so that the widget can be constructed using g_object_new().
2006-02-26 Sven Neumann <sven@gimp.org>
* libgimp/gimpaspectpreview.c: added "drawable" as construct-only
property so that the widget can be constructed using g_object_new().
2006-02-26 Sven Neumann <sven@gimp.org>
* libgimp/gimpdrawablepreview.c: added "drawable" as construct-only
property so that the widget can be constructed using g_object_new().
2006-02-20 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/progress.pdb
* libgimp/gimpprogress.[ch]: applied slightly modified patch from
Stephane Chauveau. Wraps the gimp_progress_update() PDB call so
that redundant progress updates are suppressed in libgimp. This
gives a noticeable speedup for all plug-ins that update the
progress too often (bug #331470).
* libgimp/gimpprogress_pdb.[ch]: regenerated.
2006-02-07 Sven Neumann <sven@gimp.org>
* libgimp/gimpdrawablepreview.[ch]
* libgimp/gimpzoompreview.c: reduced code duplication by exporting
two GimpDrawablePreview functions for internal use.
2006-02-06 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimppreview.c: connect-after to "realize" and
"size-allocate" signals of the preview area and call the
set-cursor method from the callback.
* libgimpwidgets/gimpscrolledpreview.c: no need to explicitely set
the cursor now that the virtual method is used correctly.
* libgimp/gimpzoompreview.c: implement set-cursor and set the move
cursor in accordance with the zoom factor.
2006-01-25 Sven Neumann <sven@gimp.org>
* libgimp/gimpzoompreview.[ch]: added a priv pointer to the
instance struct and changed the GET_PRIVATE() macro to access the
private data via that pointer.
2006-01-25 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpintcombobox.[ch]
* libgimpwidgets/gimppageselector.[ch]
* libgimpwidgets/gimpzoommodel.[ch]: added a priv pointer to the
instance struct and changed the GET_PRIVATE() macro to access the
private data via that pointer.
* libgimpwidgets/gimpscrolledpreview.[ch]
* libgimpwidgets/gimpwidgets.def: added a priv pointer to the
instance struct and moved all private data to the
GimpScrolledPreviewPrivate struct. Added freeze/thaw methods so
that derived widgets can be implemented without accessing private
data.
* libgimp/gimpzoompreview.c: changed accordingly.
* libgimp/gimpfontselectbutton.[ch]: let the priv pointer be an
anonymous void pointer.
2006-01-02 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/context.pdb
* libgimp/gimp.def: added gimp-context-get/set-paint-method which
get/set the context's paint-info by name. Use these functions to
stroke with any paint method (still only with its default paint
options).
* app/pdb/context_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpcontext_pdb.[ch]: regenerated.
2005-12-29 Simon Budig <simon@gimp.org>
* tools/pdbgen/pdb/image.pdb: new function:
image_add_vectors
* tools/pdbgen/pdb/vectors.pdb: new functions:
vectors_get_strokes
vectors_stroke_get_point_at_dist
vectors_stroke_close
removed nonfunctional undo code (that does not belong here anyways)
and fixed a bug in [...]_cubicto.
* app/pdb/image_cmds.c
* app/pdb/internal_procs.c
* app/pdb/vectors_cmds.c
* libgimp/gimpimage_pdb.[ch]
* libgimp/gimpvectors_pdb.[ch]: regenerated.
2005-12-29 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpbaseenums.[ch] (enum GimpPDBArgType): renamed
GIMP_PDB_PATH to GIMP_PDB_VECTORS and add the former as an alias
for the latter.
* libgimp/gimp.h (union _GimpParamData): added back d_path member
to maintian source compatibility.
* tools/pdbgen/pdb.pl
* libgimp/gimp.c
* app/pdb/procedural_db.c
* app/plug-in/plug-in-params.c
* libgimpbase/gimpprotocol.[ch]
* plug-ins/pygimp/pygimp-pdb.c
* plug-ins/script-fu/siod-wrapper.c: s/GIMP_PDB_PATH/GIMP_PDB_VECTORS/
* app/pdb/image_cmds.c
* app/pdb/procedural_db_cmds.c
* app/pdb/vectors_cmds.c
* libgimp/gimpimage_pdb.c
* libgimp/gimpvectors_pdb.c
* tools/pdbgen/enums.pl: regenerated.
2005-12-28 Simon Budig <simon@gimp.org>
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/vectors.pdb: Added new functions for the vectors
PDB API. Minor cleanups. Please try to use them and test:
gimp_image_get_active_vectors
gimp_image_set_active_vectors
gimp_image_get_vectors_by_tattoo
gimp_image_lower_vectors
gimp_image_lower_vectors_to_bottom
gimp_image_raise_vectors
gimp_image_raise_vectors_to_top
gimp_image_remove_vectors
gimp_vectors_get_locked
gimp_vectors_set_locked
gimp_vectors_get_name
gimp_vectors_set_name
gimp_vectors_get_visible
gimp_vectors_set_visible
gimp_vectors_stroke_get_length
gimp_vectors_stroke_remove
gimp_vectors_stroke_scale
* libgimp/gimp.[ch]: renamed the unused d_path to d_vectors and
use it. Untabbified.
* devel-docs/libgimp/tmpl/gimpvectors.sgml
* app/pdb/image_cmds.c
* app/pdb/internal_procs.c
* app/pdb/vectors_cmds.c
* libgimp/gimpimage_pdb.[ch]
* libgimp/gimpvectors_pdb.[ch]: Regenerated
* app/vectors/gimpstroke.h: minor cleanup.
2005-12-20 Michael Natterer <mitch@gimp.org>
* libgimp/*.c
* libgimpconfig/*.c
* libgimpmodule/*.c
* libgimpthumb/*.c
* libgimpwidgets/*.c: port to G_DEFINE_TYPE() and friends. Some
related cleanup.
2005-12-13 Sven Neumann <sven@gimp.org>
* libgimpbase/gimpwire.[ch]: let the private wire methods live in
the GIMP namespace. Declare internal functions as such and prefix
them with an underscore.
* libgimp/gimp.c
* libgimp/gimptile.c
* libgimpbase/gimpbase.def
* libgimpbase/gimpprotocol.c
* app/plug-in/plug-in-message.[ch]
* app/plug-in/plug-in-run.c
* app/plug-in/plug-in.c: changed accordingly.
2005-12-06 Sven Neumann <sven@gimp.org>
* libgimp/gimpdrawablepreview.c (gimp_drawable_preview_destroy):
initialize all fields of the struct passed to gimp_set_data().
2005-11-22 Sven Neumann <sven@gimp.org>
* libgimp/gimpzoompreview.c: zoom on Ctrl-Scroll events.
* libgimpwidgets/gimpscrolledpreview.c
(gimp_scrolled_preview_area_event): correctly clamp adjustment
value on scroll events. Ignore scroll events when Ctrl is pressed.
2005-11-06 Sven Neumann <sven@gimp.org>
Added support for binary relocation by means of binreloc, largely
based on a patch by Hongli Lai:
* m4macros/Makefile.am
* m4macros/binreloc.m4: new file providing a macro to check for
binreloc support.
* acinclude.m4
* configure.in: use the macro.
* libgimpbase/Makefile.am
* libgimpbase/gimpreloc.[ch]: new files providing binreloc support
on Linux.
* libgimpbase/gimpenv.[ch]: use binreloc, provide a function to
initialize the environment machinery.
* libgimpbase/gimpbase.def: updated.
* app/Makefile.am: fiddle with the LDFLAGS for binreloc.
* app/main.c (main): gimp_env_init(FALSE).
* libgimp/gimp.c (gimp_main): gimp_env_init(TRUE).
2005-11-02 Michael Natterer <mitch@gimp.org>
* libgimp/gimpprocbrowserdialog.c (browser_search): added comment
that _("%d procedures") should be translated with a plural form
for *lots* of procedures. Fixes bug #320460.
* libgimp/gimpzoompreview.c: Enable selection masking, even if it
looks buggy. It looks to me that the bug is in
gimp_drawable_get_sub_preview (), not handling the selection drawable
as a normal drawable.
2005-10-06 Sven Neumann <sven@gimp.org>
* libgimp/gimpprocbrowserdialog.c: capitalization and other string
changes.
* libgimpwidgets/gimpbrowser.c: string unification. Set the
message label italic.
* plug-ins/common/plugin-browser.c: use ngettext() for plural forms.
* libgimp/gimpzoompreview.[ch]: added a new function:
gimp_zoom_preview_get_factor(), which is a proxy to get the zoom
factor of the zoom model used by the zoom preview.
Also renamed the zoom field of the private data of gimpzoompreview to
model, since it is a gimpzoommodel.
* libgimp/gimpui.def: added gimp_zoom_preview_get_factor.
* plug-ins/common/nova.c: use gimp_zoom_preview_get_factor to
correctly handle the position of the nova at various zoom level.
There still are problems if there is a selection before when running
this plugin.
* libgimpwidgets/gimpwidgetsmarshal.list: added VOID__DOUBLE_DOUBLE
marshaller.
* libgimpwidgets/gimpzoommodel.[ch]: new signal: "zoomed", emitted
when the zoom factor changes. This signal have the old factor and the
new factor as argument.
* libgimp/gimpzoompreview.c: use the "zoomed" signal instead of the
"notify::value" one. This allow to use the old and new factors to keep
the preview centered on the same point.
2005-09-29 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/progress.pdb: removed the "wrap" from
gimp_progress_set_text() so it shows up as libgimp function again.
* libgimp/gimpprogress_pdb.[ch]: regenerated.
* libgimp/gimpprogress.[ch]: changed the old
gimp_progress_set_text() to gimp_progress_set_text_printf() and
added gimp_progress_init_printf(). (did this because the method of
calling init(NULL) followed by set_text("foo") caused popup
progress windows to be resized after they were shown).
* libgimp/gimp.def: changed accordingly.
* plug-ins/*/*.c: use gimp_progress_init_printf() instead of
init(NULL) plus set_text(foo) and changed users of set_text() to
use set_text_printf().
2005-09-28 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimppreview.[ch]: renamed newly added function to
gimp_preview_get_controls(). Increased row padding for controls.
* libgimpwidgets/gimpwidgets.def
* libgimp/gimpzoompreview.c: changed accordingly.
* libgimpbase/gimputils.c (gimp_enum_get_value): ref the enum
class instead of only peeking at it.
* libgimpwidgets/gimpzoommodel.c (gimp_zoom_button_new): set a
tooltip on zoom buttons that only show an icon.
2005-09-28 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimppreview.[ch]: added a hbox to the table and
the "Update Preview" checkbutton there. Added a function to access
this control box. Increased default size to 200.
* libgimpwidgets/gimpscrolledpreview.[ch]: added function
gimp_scrolled_preview_set_policy() to control when the scrollbars
should be shown.
* libgimpwidgets/gimpwidgets.def: updated.
* libgimp/gimpzoompreview.c: pack the zoom buttons into the
preview's control box. Commented out the label, it shows a bogus
zoom factor. Set scrollbar policy to ALWAYS to avoid resizing.
2005-09-27 Sven Neumann <sven@gimp.org>
* libgimp/gimpprocbrowserdialog.[ch]: let
gimp_proc_browser_dialog_new() take standard dialog parameters,
similar to gimp_dialog_new().
* plug-ins/common/procedure-browser.c
* plug-ins/pygimp/procbrowser.c
* plug-ins/script-fu/script-fu-console.c: changed accordingly.
2005-09-25 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpwidgetsenums.[ch]: removed GimpZoomWidgetType.
* libgimpwidgets/gimpzoommodel.[ch]: removed gimp_zoom_widget_new()
in favor of gimp_zoom_button_new().
* libgimp/gimpzoompreview.c: changed accordingly.
* libgimpwidgets/gimpwidgets.def: updated.
* plug-ins/MapObject/mapobject_main.[ch]
* plug-ins/MapObject/mapobject_preview.c
* plug-ins/MapObject/mapobject_ui.c: use a GimpZoomModel and let
it create the zoom buttons.
* plug-ins/MapObject/mapobject_apply.c
* plug-ins/MapObject/mapobject_image.c
* plug-ins/MapObject/mapobject_shade.c: include "gimp/gimpui.h".
2005-09-24 Hans Breuer <hans@breuer.org>
* **makefile.msc : updated
* app/dialogs/user-install-dialog.c : only add the migrate page if
there is something to migrate from. Avoids on version being NULL.
* app/dialogs/file-save-dialog.c : the g_print() output was crashing
on the assumption that ->menu_label != NULL. It is for colorhtml.py.
* app/widgets/gimpselectiondata.c : use HAVE_UNISTD_H and move
* process.h definition by G_OS_WIN32 below it being defined
* app/widgets/gimpwidgets-utils.c(gimp_window_get_native) : cast
return value to (GdkNativeWindow) it is not necessary an int.
* libgimpwidgets/gimpwidgets.def : added gimp_zoom_type_get_type
* plug-ins/help/gimp-help-lookup.c : dynamic lookup of help_root
instead of hard-coding DATADIR/GIMP_HELP_PREFIX
* plug-ins/xjt/xjt.c : there is no pid_t with msvc, typedef one.
* libgimpwidgets/gimpwidgetsenums.h: remove the GIMP_ZOOM_LABEL value
from GimpZoomWidgetType.
* libgimpwidgets/gimpwidgetsenums.c: regenerated.
* libgimp/gimpzoompreview.c: provides two read only properties,
"fraction" and "percentage" to be used with prop widgets.
* libgimpwidgets/gimpzoommodel.c: use a gimp_prop_label to show the
zoom fraction.
* app/widgets/widgets-enums.h: Moved the GimpZoomType enum from here...
* libgimpwidgets/gimpwidgetsenums.h: ...to here.
* app/widgets/widgets-enums.c
* libgimpwidgets/gimpwidgetsenums.c: regenerated.
* app/display/gimpdisplayshell-scale.[ch]: removed
gimp_display_shell_scale_zoom_step and
gimp_display_shell_scale_get_fraction from here...
* libgimpwidgets/gimpzoommodel.[ch]: ... to here so we can use these
utility functions in plug-ins and in the core.
Also removed the step-size property since the zoom-model now use
gimp_zoom_model_zoom_step.
* app/actions/view-commands.c
* app/display/gimpdisplayshell-title.c
* app/display/gimpdisplayshell.c
* app/tools/gimpmagnifytool.c: modified accordingly.
* libgimp/gimpzoompreview.c: don't pass any argument to the
gimp_zoom_model_new function.
* libgimpwidgets/gimpwidgets.def: added gimp_zoom_model_zoom_step
(gimp_zoom_model_get_fraction was already there)
* devel-docs/app/app-sections.txt: removed
gimp_display_shell_scale_zoom_step and
gimp_display_shell_scale_get_fraction.
* libgimp/gimpzoompreview.[ch]: make use of private data instead of struct
members. Added a gimp_zoom_preview_get_drawable so we can still get the
drawable from a preview in plug-ins.
Also changed gimp_zoom_preview_get_data to gimp_zoom_preview_get_source,
to make it more obvious what it returns.
* libgimp/gimpui.def
* plug-ins/common/AlienMap2.c
* plug-ins/common/apply_lens.c
* plug-ins/common/blinds.c
* plug-ins/common/channel_mixer.c
* plug-ins/common/colorify.c
* plug-ins/common/flarefx.c
* plug-ins/common/illusion.c
* plug-ins/common/jigsaw.c
* plug-ins/common/mapcolor.c
* plug-ins/common/max_rgb.c
* plug-ins/common/nova.c
* plug-ins/common/polar.c
* plug-ins/common/retinex.c
* plug-ins/common/waves.c
* plug-ins/common/whirlpinch.c: changed accordingly.
* libgimpwidgets/gimpzoommodel.[ch]: use private data instead of
struct members. Added min-factor and max-factor properties so we can
set the zoom range. These can be set by a new utility function:
gimp_zoom_model_set_range.
* libgimpwidgets/gimpwidgets.def: added gimp_zoom_model_set_range.
* libgimp/gimpzoompreview.c: use gimp_zoom_model_set_range so we can
only zoom in.
* libgimpwidgets/gimpzoommodel.[ch]: New object to handle zoom
factor, and create widgets to control or view this value.
* libgimpwidgets/Makefile.am
* libgimpwidgets/gimpwidgets.h: Added gimpzoommodel.[ch].
* libgimpwidgets/gimpwidgetsenums.h: new enum: GimpZoomWidgetType.
This enumerate which knid of widget you can created from the zoom
model.
* libgimpwidgets/gimpwidgetsenums.c
* libgimpwidgets/gimpwidgetstypes.h: regenerated.
* libgimpwidgets/gimppreview.c: move the update toggle to the bottom
of the vbox.
* libgimp/Makefile.am
* libgimp/gimpui.h
* libgimp/gimpuitypes.h
* libgimp/gimpzoompreview.[ch]: New widget, derivated from
GimpScrolledPreview, which offer the same functionnalities as the
GimpAspectPreview widget plus zoom facilities.
* plug-ins/common/AlienMap2.c
* plug-ins/common/apply_lens.c
* plug-ins/common/blinds.c
* plug-ins/common/channel_mixer.c
* plug-ins/common/colorify.c
* plug-ins/common/flarefx.c
* plug-ins/common/illusion.c
* plug-ins/common/jigsaw.c
* plug-ins/common/mapcolor.c
* plug-ins/common/max_rgb.c
* plug-ins/common/nova.c
* plug-ins/common/polar.c
* plug-ins/common/retinex.c
* plug-ins/common/waves.c
* plug-ins/common/whirlpinch.c: use a GimpZoomPreview instead of a
GimpAspectPreview.
2005-09-09 Michael Natterer <mitch@gimp.org>
Added parent window API to the GimpProgress interface and to
the libgimp progress stuff. Might look strange, but does
the right thing in almost all cases (image window, file dialog,
script-fu dialog etc). Fixes bug #62988.
* app/core/gimpprogress.[ch]: added GimpProgress::get_window()
which should return a toplevel window ID if the progress is in a
window that wants to be the transient parent of plug-in dialogs.
* app/widgets/gimpwidgets-utils.[ch] (gimp_window_get_native): new
function which returns the window handle of a GtkWindow's GdkWindow.
* app/widgets/gimpfiledialog.c: implement ::get_window().
* app/display/gimpdisplay.[ch]: ditto. Removed window handle API.
* app/gui/gui-vtable.c: changed accordingly.
* libgimpbase/gimpbaseenums.[ch] (enum GimpProgressCommand):
added GIMP_PROGRESS_COMMAND_GET_WINDOW.
* app/plug-in/plug-in-progress.[ch] (plug_in_progress_get_window):
new function. Also renamed some functions to match the
GimpProgress interface, and not the legacy PDB procedure names.
* tools/pdbgen/pdb/progress.pdb
* app/core/gimppdbprogress.c: implement get_window() on both
sides of the wire, keeping backward compatibility (hopefully).
* libgimp/gimpprogress.[ch]: deprecated gimp_progress_install()
and added gimp_progress_install_vtable() which takes a vtable with
padding to be extensible. Added get_window() vtable entry and
dispatch it accordingly. Also added pulse() which was implemented
in a hackish way before. Everything is of course backward
compatible.
* libgimp/gimpprogressbar.c: inmplement the get_window() stuff
so a plug-in dialog containing a progress can be the transient
parent of another dialog in another plug-in.
* libgimp/gimpui.[ch] (gimp_ui_get_progress_window): new function
which returns a foreign GdkWindow of this plug-ins progress
window.
Renamed gimp_window_set_transient_for_default_display() to
gimp_window_set_transient() and make it use the progress' window
handle instead of the display's (which is the right thing to do in
almost all cases).
* libgimp/gimp.def
* libgimp/gimpui.def: add the new functions.
* tools/pdbgen/enums.pl
* app/pdb/internal_procs.c
* app/pdb/progress_cmds.c
* libgimp/gimpprogress_pdb.[ch]: regenerated.
* libgimp/gimpexport.c
* plug-ins/*/*.c: follow API change.
2005-09-05 Sven Neumann <sven@gimp.org>
Address bug #307971:
* app/core/gimp-gui.[ch]
* app/display/gimpdisplay.[ch]
* app/gui/gui-vtable.c
* tools/pdbgen/pdb/display.pdb: added PDB function to obtain a
window handle on an image display.
* app/pdb/display_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpdisplay_pdb.[ch]: regenerated.
* libgimp/gimpui.[ch]: added functions to set a GtkWindow transient
to an image display.
* plug-ins/common/gauss.c: use the new function exemplarily.
* libgimp/gimp.def
* libgimp/gimpui.def: updated.
2005-09-03 Michael Natterer <mitch@gimp.org>
* app/base/pixel-region.[ch]: some general cleanup.
(pixel_region_init_temp_buf)
(pixel_region_init_data): new functions which initialize pixel
regions on TempBufs and on raw contiguous arrays of pixel data.
(pixel_region_configure): fixed a bug that has probably been there
forever: when processing contiguous (non-tiled) data, interpret
the original x and y coordinates of the region as offsets into
the data. Before this fix, the initial x and y were simply ignored
(by using them in a broken way), thus always forcing the upper
left corner of the region being the beginning of the passed data.
Lots of code was working around this problem by setting the
pixel_region's data pointer to the proper starting pixel of the
region in the middle the buffer.
* libgimp/gimppixelrgn.c: some general cleanup.
(gimp_pixel_rgn_configure): same fix as above. Fortunately, nobody
seems to know that libgimp pixel regions can be used on arrays of
data, just as core ones. Only two plug-ins were using this
feature, and they are antique and written by spencer and federico,
respectively. They both don't use offsets into the buffers and are
not affected by this change. It's highly unlikely that anybody out
there knows/uses this feature, so it can IMHO be safely changed.
* app/base/temp-buf.c
* app/core/gimpbuffer.c
* app/core/gimpdrawable-combine.c
* app/core/gimpdrawable-preview.c
* app/core/gimpimage-preview.c
* app/core/gimplayer.c
* app/paint/gimpbrushcore.c
* app/paint/gimpclone.c
* app/paint/gimpconvolve.c
* app/paint/gimpdodgeburn.c
* app/paint/gimppaintcore.c
* app/paint/gimpsmudge.c
* app/tools/gimpiscissorstool.c
* app/tools/gimppainttool.c: use the pixel_region_init_foo()
functions instead of initializing regions of TempBufs and raw data
manually. Removed lots of workarounds for the broken offset
handling. The changed places of code are much more readable now.
2005-09-03 Michael Natterer <mitch@gimp.org>
* app/core/gimp-edit.[ch] (gimp_edit_paste_as_new): don't create a
display here.
(gimp_edit_named_cut)
(gimp_edit_named_copy)
(gimp_edit_named_copy_visible): new functions containing named
buffer wrappers around the functions affecting the global buffer
only.
* app/actions/edit-commands.c: use the new functions instead of
implementing them here, create a display for the image returned
by paste as new.
* app/actions/buffers-commands.c
* app/widgets/gimptoolbox-dnd.c: create displays here too.
* tools/pdbgen/pdb/edit.pdb: added wrappers for paste as new and
wrappers for all the cut/copy/paste named stuff.
Fixes bug #315130. Cleaned up and de-obfuscated.
* libgimp/gimp.def: changed accordingly.
* app/pdb/edit_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpedit_pdb.[ch]: regenerated.
2005-08-18 Sven Neumann <sven@gimp.org>
* plug-ins/common/procedure-browser.c (run): reverted last change.
* libgimp/gimpprocbrowserdialog.[ch]: emit new signal "row-activated"
instead of emitting "response" with GTK_RESPONSE_APPLY.
* plug-ins/pygimp/procbrowser.c
* plug-ins/script-fu/script-fu-console.c: connect to "row-activated"
and call gtk_dialog_response() with GTK_RESPONSE_APPLY.
2005-08-03 Michael Natterer <mitch@gimp.org>
* libgimp/gimpprocbrowserdialog.[ch]: removed all parameters from
gimp_proc_browser_dialog_new() and removed the "scheme_names"
stuff.
* plug-ins/dbbrowser/procedure-browser.c
* plug-ins/pygimp/procbrowser.c
* plug-ins/script-fu/script-fu-console.c: changed accordingly.
* plug-ins/script-fu/script-fu-interface.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-types.h
* plug-ins/script-fu/siod-wrapper.c: removed all sorts of
conversions between '-' and '_' for procedure names.
* plug-ins/script-fu/script-fu.c: use canonical names for
script-fu's procedures.
2005-08-03 Michael Natterer <mitch@gimp.org>
Changed naming scheme for PDB procedure names from
random_crap_that_traditionally_has_underscores to
enforced-canonical-identifiers. I'm pretty sure some things are
broken after this commit. More changes to come...
* libgimpbase/gimpbase.def
* libgimpbase/gimputils.[ch]: added gimp_canonicalize_identifier().
* app/pdb/procedural_db.[ch] (struct ProcRecord): added
"gchar *original_name" to keep a procedure's original name as
reigstered by plug-ins (compat cruft).
(procedural_db_init_procs): canonicalized list of deprecated
procedures.
* app/plug-in/plug-in-proc-def.c (plug_in_proc_def_free): free
original_name.
* app/plug-in/plug-in-message.c: canonicalize procedure names
which are received over the wire.
* app/plug-in/plug-in-rc.c: serialize the original_name and create
the canonicalized name on-the-fly when deserializing.
* app/plug-in/plug-in-run.c: pass the original_name to plug-ins
when running them because they strcmp() the passed procedure name.
* app/plug-in/plug-ins.c (plug_ins_add_to_db): pass
canonical procedure names to procedural_db_execute().
(plug_ins_file_proc_compare): special-case "gimp-xcf", not "gimp_xcf".
* app/xcf/xcf.c: changed static XCF procedures accordingly.
* tools/pdbgen/app.pl
* tools/pdbgen/lib.pl: do some trivial substitutions to generate
canonicalized names in app/, and C identifiers with underscores in
libgimp/.
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/palettes.pdb
* tools/pdbgen/pdb/patterns.pdb
* tools/pdbgen/pdb/plug_in.pdb
* tools/pdbgen/pdb/procedural_db.pdb
* tools/pdbgen/pdb/text_tool.pdb
* tools/pdbgen/pdb/transform_tools.pdb: canonicaloized procedure
names in calls to std_pdb_deprecated() and in procedure names in
generated C code.
* app/pdb/*_cmds.c
* libgimp/*_pdb.c: regenerated.
2005-07-29 Sven Neumann <sven@gimp.org>
* libgimpbase/gimpbaseenums.[ch]: added GimpForegroundExtractMode
in preparation for other implementations to be added in the future.
* libgimp/gimpenums.c.tail
* tools/pdbgen/enums.pl: regenerated.
* app/core/gimpdrawable-foreground-extract.[ch]
* app/tools/gimpforegroundselecttool.c
* tools/pdbgen/pdb/drawable.pdb: added the mode parameter.
* app/pdb/drawable_cmds.c
* libgimp/gimpdrawable_pdb.[ch]: regenerated.
2005-07-25 Michael Natterer <mitch@gimp.org>
Some DND fixes / cleanup:
* app/widgets/widgets-enums.h: renamed GIMP_DND_TYPE_TOOL to
GIMP_DND_TYPE_TOOL_INFO.
* app/widgets/gimpselectiondata.[ch]: s/tool/tool_info/g. Moved
private functions to the end of the file. Include GIMP's PID in
all GtkSelectionData strings which are used to pass around stuff
by reference. For things which are referenced by name, also encode
the object's address in the GtkSelectionData so having a brush
called "Standard" or a named buffer called "Global Buffer" will
work together with DND.
* app/widgets/gimpdnd.[ch]: s/tool/tool_info/g. Renamed
gimp_dnd_get_data_data() to gimp_dnd_get_object_data() since it's
not limited to GimpData objects. Follow above selection data API
changes. Cleanup.
* libgimp/gimpbrushmenu.c
* libgimp/gimpdrawablecombobox.c
* libgimp/gimpfontselectbutton.c
* libgimp/gimpgradientmenu.c
* libgimp/gimpimagecombobox.c
* libgimp/gimppalettemenu.c
* libgimp/gimppatternmenu.c: follow GtkSelectionData format change
and check the dropped things' PID against the return value of
gimp_getpid().
2005-07-24 Michael Natterer <mitch@gimp.org>
* libgimp/gimpbrushmenu.c
* libgimp/gimppatternmenu.c: put the previews into sunken instead
of etched-in frames.
2005-07-10 Manish Singh <yosh@gimp.org>
* libgimp/gimplayer.c (gimp_layer_set_preserve_trans): actually
return a value.
* plug-ins/pygimp/pygimp-drawable.c: create new lock_alpha attribute,
and deprecate old preserve_trans attribute.
* plug-ins/pygimp/plug-ins/shadow_bevel.py: use new lock_alpha API.
2005-07-10 Hans Breuer <hans@breuer.org>
* **/makefile.msc app/gimpcore.def : updated
* app/widgets/gimpcontrollerlist.c : dont include
"gimpmessagedialog.c" to avoid redefinitions.
Instead include gimpmessagebox.h and gimpmessagedialog.h
* plug-ins/common/raw.c : include <io.h>
* plug-ins/common/screenshot.c : make it compile. It
still has no code to actually work on win32.
2005-07-10 Sven Neumann <sven@gimp.org>
* app/base/segmentator.[ch]: ported to GIMP data structures. There
are still some TODOs, smooth_mask() isn't implemented yet.
* app/core/Makefile.am
* app/core/gimpdrawable-foreground-extract.[ch]: thin wrapper around
the new segmentation algorithm.
* tools/pdbgen/pdb/drawable.pdb: added a first draft of a PDB API
for foreground extraction.
* app/pdb/drawable_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpdrawable_pdb.[ch]: regenerated.
2005-07-06 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpbrowser.c: set the count label in italic.
* plug-ins/dbbrowser/gimpprocbrowser.c
* plug-ins/dbbrowser/plugin-browser.c: try to make it more obvious
that the list is the result of a query by explicitely mentioning
this in the summary below the list.
2005-06-26 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/gimprc.pdb: allow to access (read-only) the
current color management configuration through the PDB.
* libgimp/gimpgimprc_pdb.[ch]
* app/pdb/gimprc_cmds.c
* app/pdb/internal_procs.c: regenerated.
* libgimp/Makefile.am
* libgimp/gimp.h
* libgimp/gimpgimprc.[ch]: wrap the new PDB function to make it
easier to use from plug-ins. This change adds a dependency on
libgimpconfig to libgimp.
* gimp.pc.in: changed accordingly.
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/gfig/gfig-dialog.c
* plug-ins/gflare/gflare.c: no need to include gimpconfig.h
explicitely any longer.
* libgimp/gimpfontselectbutton.c: fixed gtk-doc comments.
2005-06-04 Manish Singh <yosh@gimp.org>
* libgimp/gimpfontselectbutton.[ch]: new formal widget based on
gimpfontmenu.[ch].
* libgimp/gimpuimarshal.list: needed for new signal in above.
* libgimp/gimpfontmenu.[ch]: deprecate, and thinly wrap around
new GimpFontSelectButton for compatibility.
* libgimp/gimpuitypes.h: add GimpFontSelectButton, as well
as types for the future SelectButtons.
* libgimp/gimpui.h
* libgimp/Makefile.am: hook in the new widget.
* plug-ins/common/film.c
* plug-ins/script-fu/script-fu-interface.c: use new API.
2005-06-03 Manish Singh <yosh@gimp.org>
* libgimpcolor/gimprgb.h: whitespace fix.
* libgimpwidgets/gimpchainbutton.h
* libgimpwidgets/gimpwidgetsenums.[ch]: move GimpChainPosition
to a registered enum, and register GimpSizeEntryUpdatePolicy as
as well.
* libgimp/gimpuitypes.h
* libgimp/gimpdrawablecombobox.[ch]: turn these into GObjects
with their own types.
* libgimp/gimpimagecombobox.c: use G_DEFINE_TYPE.
2005-06-03 Manish Singh <yosh@gimp.org>
* tools/pdbgen/enumcode.pl: make _gimp_enums_init public, so
language bindings can do early enum registration if needed.
* libgimp/gimpenums.h
* libgimp/gimpenums.c.tail: regenerated
* gimp.c: call gimp_enums_init instead of _gimp_enums_init.
* gimp.def: add newly exported function.
2005-06-01 Simon Budig <simon@gimp.org>
* app/vectors/gimpvectors.c: cosmetic change: Make the stroke IDs
start from 1.
* tools/pdbgen/pdb/vectors.pdb: Two more wrappers:
vectors_stroke_remove and vectors_stroke_interpolate. Undo still
unsolved.
* app/pdb/internal_procs.c
* app/pdb/vectors_cmds.c
* libgimp/gimpvectors_pdb.[ch]: regenerated.
2005-05-19 Michael Natterer <mitch@gimp.org>
* plug-ins/dbbrowser/Makefile.am
* plug-ins/dbbrowser/gimpprocbox.[ch]: removed.
* plug-ins/dbbrowser/gimpbrowser.[ch]: new widget derived from
GtkHPaned. Contains lots of common code from the procedure and
plug-in browsers.
* plug-ins/dbbrowser/gimpprocbrowser.c
* plug-ins/dbbrowser/plugin-browser.c: use a GimpBrowser, lots of
cleanups.
* plug-ins/dbbrowser/gimpprocbrowser.c: support all possible search
types. Addresses bug #301201.
2005-05-17 Simon Budig <simon@gimp.org>
* tools/pdbgen/pdb/vectors.pdb: Make gimp_vectors_get_strokes()
work, add gimp_vectors_stroke_translate() (I am not sure if this
stays in the API, I am currently testing undo and freeze/thaw
issues...)
* app/pdb/internal_procs.c
* app/pdb/vectors_cmds.c
* libgimp/gimpvectors_pdb.[ch]: regenerated.
2005-05-17 Simon Budig <simon@gimp.org>
* app/vectors/gimpvectors.[ch]: added gimp_vectors_get_n_strokes ();
* tools/pdbgen/pdb/vectors.pdb: Attempt to fill an array with IDs,
does not yet work.
* app/pdb/vectors_cmds.c
* libgimp/gimpvectors_pdb.c: regenerated.
2005-05-14 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpbaseenums.[ch]: register descriptions for the
GimpPDBProcType enum.
* plug-ins/dbbrowser/gimpprocview.c
* tools/pdbgen/pdb/procedural_db.pdb: get rid of all selfmade
enum->string mapping. Get the strings from the GType system instead.
* app/pdb/procedural_db_cmds.c
* libgimp/gimpproceduraldb_pdb.c: regenerated.
2005-05-13 Michael Natterer <mitch@gimp.org>
* plug-ins/dbbrowser/gimpprocbrowser.c
* plug-ins/dbbrowser/plugin-browser.c: implement typeahead search
and get rid of the search buttons in the action area. Cleaned up
dialog layout and code. Fixes bug #301287.
2005-04-16 Sven Neumann <sven@gimp.org>
Applied a patch (with minor modifications) from Karine Delvare
that makes it possible to choose between various ways to remove
color from a drawable (bug #155507):
* libgimpbase/gimpbaseenums.h: added new enum GimpDesaturateMode.
* libgimpbase/gimpbaseenums.c
* libgimp/gimpenums.c.tail
* plug-ins/pygimp/gimpenums.py
* tools/pdbgen/enums.pl: regenerated.
* app/core/gimpdrawable-desaturate.[ch]: implement other formulas
to remove colors from a drawable.
* tools/pdbgen/pdb/color.pdb: let gimp_desaturate() call
gimp_drawable_desaturate() with GIMP_DESATURATE_LIGHTNESS so that
it behaves like it always did.
* app/pdb/color_cmds.c: regenerated.
* app/dialogs/Makefile.am
* app/dialogs/desaturate-dialog.[ch]: new files that define a simple
dialog to choose a mode for desaturation.
* app/actions/drawable-actions.[ch]: use the new dialog.
2005-04-14 Simon Budig <simon@gimp.org>
Started a PDB api for vectors/strokes. Not yet functional, this
commit is to get the infrastructure up and running.
* app/vectors/gimpstroke.[ch]
* app/vectors/gimpvectors.[ch]: Added IDs to the strokes
* tools/pdbgen/pdb.pl: corrected "vectors" type, deleted "path" type.
* tools/pdbgen/pdb/image.pdb: added gimp_image_get_vectors()
* tools/pdbgen/pdb/vectors.pdb: New file for the vectors API
(just a stub for now)
* tools/pdbgen/Makefile.am: Added vectors.pdb
* tools/pdbgen/groups.pl: regenerated.
* plug-ins/script-fu/siod-wrapper.c: Enable the Path/Vectors type.
* libgimp/gimpvectors_pdb.[ch]
* app/pdb/vectors_cmds.c: new autogenerated files.
* libgimp/Makefile.am
* app/pdb/Makefile.am: Added new autogenerated file.
* libgimp/gimp_pdb.h
* libgimp/gimpimage_pdb.[ch]
* app/pdb/image_cmds.c
* app/pdb/internal_procs.c: regenerated.
2005-04-05 Sven Neumann <sven@gimp.org>
* plug-ins/dbbrowser/gimpprocbrowser.c: s/Blurb/Description/
* plug-ins/dbbrowser/gimpprocview.c: allow to select the menu path
label.
2005-03-24 Michael Natterer <mitch@gimp.org>
Added API to explicitly register dynamic menu items hierarchies.
Fixes bug #170623.
* app/core/gimp.h: added "GSList *plug_in_menu_branches".
* app/plug-in/plug-in-types.h
* app/plug-in/plug-ins.[ch]: added API to register plug-in menu
branches, just as for locale and help domans. Cleaned up handling
of locale and help domains.
(plug_ins_exit): free the registered menu branches.
* app/actions/plug-in-actions.[ch] (plug_in_actions_add_branch):
new function to explicitly add a menu branch action.
(plug_in_actions_setup): add the registered menu branches to each
new action group.
(plug_in_actions_build_path): always strip the untranslated menu
path from underlines before using it as hash table key or action
name.
* app/menus/plug-in-menus.c (plug_in_menus_add_proc): changed
accordingly: strip underlines from untranslated menu paths before
passing them to plug_in_menus_build_path().
* app/core/gimp-gui.[ch]: added gimp_menus_create_branch() plus
vtable entry to access the new stuff from the core. Renamed the
functions desling with items from gimp_foo_entry() to
gimp_foo_item().
* app/gui/gui-vtable.c: implement create_branch() and add the
branch action to all existing "plug-in" action groups. Note that
we don't need to create any menus because that happens implicitly
when adding menu items.
* tools/pdbgen/pdb/plug_in.pdb (plugin_menu_branch_register): new
PDB wrapper to access branch registering from plug-ins.
* app/pdb/internal_procs.c
* app/pdb/plug_in_cmds.c
* libgimp/gimpplugin_pdb.[ch]: regenerated.
* libgimp/gimp.def: changed accordingly.
* plug-ins/script-fu/script-fu-scripts.c (script_fu_find_scripts):
register the menu branches for all included scripts.
2005-03-23 Sven Neumann <sven@gimp.org>
* libgimp/gimpbrushmenu.c
* libgimp/gimpfontmenu.c
* libgimp/gimpgradientmenu.c
* libgimp/gimppalettemenu.c
* libgimp/gimppatternmenu.c: accept names passed over DND no matter
whether they are NULL-terminated or not.
* app/widgets/gimpselectiondata.c: same change here, also
UTF8-validate the selection data before accepting it.
2005-03-23 Sven Neumann <sven@gimp.org>
* libgimp/gimpmenu.c: added gtk-doc comments explaining what
functions to use instead of these deprecated ones.
2005-03-08 Sven Neumann <sven@gimp.org>
* app/core/gimppalette.[ch]: renamed gimp_palette_[gs]et_n_columns
to gimp_palette_[gs]et_num_columns().
* app/dialogs/palette-import-dialog.c
* app/widgets/gimppaletteeditor.c: changed accordingly.
* tools/pdbgen/pdb/palette.pdb: added new PDB function to control
the number of columns used when displaying a palette (bug #169370).
* app/pdb/internal_procs.c
* app/pdb/palette_cmds.c
* libgimp/gimppalette_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
2005-03-03 Sven Neumann <sven@gimp.org>
* libgimp/gimpdrawablecombobox.c
* libgimp/gimpimagecombobox.c: set a width request on the combo boxes.
* plug-ins/common/bumpmap.c (SCALE_WIDTH): set a minimum width on
the scales.
2005-02-27 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpintcombobox.c: added an "ellipsize" construct
property and changed the default behaviour back to not doing
ellipsation on the text.
* libgimp/gimpimagecombobox.c
* libgimp/gimpdrawablecombobox.c: set "ellipsize" to middle for
drawable and image combo boxes.
2005-02-22 Shlomi Fish <shlomif@iglu.org.il>
* tools/pdbgen/pdb/channel.pdb: add the
gimp_channel_new_from_component() PDB function.
* libgimp/gimpchannel_pdb.c
* app/pdb/channel_cmds.c: resultant files.
* libgimp/gimp.def: add the new function to the def file
* devel-docs/libgimp/libgimp-sections.txt: add the new function
to devel-docs
2005-02-18 Michael Natterer <mitch@gimp.org>
* libgimp/gimpexport.c (export_dialog): applied patch from Patrice
Tremblay which sets an alternative button order for the export
dialog (bug #166678).
2005-02-13 Sven Neumann <sven@gimp.org>
* app/core/gimpprogress.c (gimp_progress_start): accept an empty
string.
* app/plug-in/plug-in-progress.c: if NULL is passed as message to
plug_in_progress_start(), set an empty string on the progress.
* tools/pdbgen/pdb/progress.pdb:
* libgimp/gimpprogress.[ch]: wrap the new gimp_progress_set_text()
PDP function with a function that accepts printf-like arguments.
* libgimp/gimpprogress_pdb.[ch]: regenerated.
* lots of plug-ins, most of them file plug-ins:
use gimp_progress_init(NULL) followed by gimp_progress_set_text()
to initialize the progress using the new API instead of constructing
a temporary string.
2005-02-12 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpbaseenums.h (enum GimpProgressCommand):
added GIMP_PROGRESS_COMMAND_PULSE.
* libgimpbase/gimpbaseenums.c
* plug-ins/pygimp/gimpenums.py
* tools/pdbgen/enums.pl: regenerated.
* app/core/gimppdbprogress.c: implement GimpProgress::pulse()
and send a PULSE command to the callback.
* libgimp/gimpprogress.c: handle PULSE by calling the set_value()
callback with a value of -1 and document that hack in the API docs.
* libgimp/gimpprogressbar.c: interpret -1 as request to pulse.
2005-02-12 Sven Neumann <sven@gimp.org>
* app/core/gimpprogress.[ch]: added GimpProgress::pulse.
* app/display/gimpdisplay.c
* app/display/gimpstatusbar.c
* app/widgets/gimpfiledialog.c
* app/widgets/gimpprogressbox.c
* app/widgets/gimpprogressdialog.c
* app/widgets/gimpthumbbox.c: implement it in the classes that
implement the GimpProgress interface.
* app/plug-in/plug-in-progress.[ch]: allow plug-ins to pulse their
progress.
* tools/pdbgen/pdb/progress.pdb: added a procedure for the new
functionality.
* app/pdb/internal_procs.c
* app/pdb/progress_cmds.c
* libgimp/gimpprogress_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
2005-01-23 Sven Neumann <sven@gimp.org>
* app/paint/paint-enums.h
* libgimpbase/gimpbaseenums.h: moved enums to libgimpbase (from
app/paint and libgimp). The remaining enums in
app/paint/paint-enums.h need special treatment.
* app/paint/paint-enums.c:
* libgimp/gimpenums.h
* libgimpbase/gimpbaseenums.c
* tools/pdbgen/enums.pl: regenerated.
* libgimpbase/gimpbase.def
* libgimp/gimp.def: updated.
2005-01-23 Sven Neumann <sven@gimp.org>
* app/core/core-enums.h
* libgimpbase/gimpbaseenums.h: moved enums to libgimpbase (from
app/core and libgimp). The remaining enums in app/core/core-enums.h
need special treatment.
* app/core/core-enums.c:
* libgimp/gimpenums.h
* libgimpbase/gimpbaseenums.c
* tools/pdbgen/enums.pl: regenerated.
* libgimpbase/gimpbase.def
* libgimp/gimp.def: updated.
2005-01-23 Sven Neumann <sven@gimp.org>
* app/base/base-enums.h
* libgimpbase/gimpbaseenums.h: moved GimpInterpolationType and
GimpTransferMode to libgimpbase (from core and libgimp). The
remaining enums in app/base/base-enums.h need special treatment.
* app/base/base-enums.c
* libgimp/gimpenums.h
* libgimpbase/gimpbaseenums.[ch]
* tools/pdbgen/enums.pl: regenerated.
* libgimpbase/gimpbase.def
* libgimp/gimp.def: updated.
* libgimpwidgets/gimpscrolledpreview.[ch]: new function:
gimp_scrolled_preview_set_position () to set the position of the
preview content wrt the drawable. This function might be moved to a
virtual function of GimpPreview in a near future.
* libgimp/gimpdrawablepreview.c: use this function, so a preview
remembers its position from one invocation to the next. This is done
using the current executable name as a key for gimp_set/get_data () so
each plug-in can have its preview on a different place.
More informations could be saved this way: the update toggle, the checks, etc.
Addresses bug #162286.
* libgimpwidgets/gimppreview.c: smallish cleanup.
2004-12-28 Sven Neumann <sven@gimp.org>
* libgimp/gimp.[ch] (gimp_install_procedure, gimp_install_temp_proc):
renamed menu_path parameter to menu_label and added a pointer to
gimp_plugin_menu_register()
* app/widgets/gimpsizebox.c (gimp_size_box_constructor): removed
unused variables.
2004-12-27 Sven Neumann <sven@gimp.org>
* libgimp/gimpregioniterator.c: added some checks to avoid
division by zero.
* libgimpwidgets/gimppreviewarea.[ch]: minor cleanups, improved
API documentation.
2004-12-20 Sven Neumann <sven@gimp.org>
* libgimp/gimpdrawablepreview.c (gimp_drawable_preview_draw_region):
unset the dirty flag on the GimpPixelRgn used to iterate the region.
* libgimp/gimppixelrgn.c (gimp_pixel_rgn_init): improved docs.
2004-12-15 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/text_tool.pdb: let gimp_text() and
gimp_text_fontname() succeed but return -1 if no layer was created.
Fixes bug #161272.
* app/pdb/text_tool_cmds.c
* libgimp/gimptexttool_pdb.c: regenerated.
2004-12-14 Simon Budig <simon@gimp.org>
* app/vectors/gimpstroke.[ch]: Changed the "gradient" parameter
to "slope" to make it more clear what the returned result is (which
was wrong earlier).
* tools/pdbgen/pdb/paths.pdb: changed accordingly
* app/pdb/paths_cmds.c
* libgimp/gimppaths_pdb.[ch]
* devel-docs/libgimp/tmpl/gimppaths.sgml: regenerated.
Fixes bug #161274.
2004-12-14 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/drawable.pdb: added gimp_drawable_sub_thumbnail()
to enable plug-ins avoiding #142074-alike bugs if they need to.
* app/pdb/drawable_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpdrawable_pdb.[ch]: regenerated.
* libgimp/gimpdrawable.[ch]
* libgimp/gimppixbuf.[ch]: wrap it with the same convenience
APIs as gimp_drawable_thumbnail().
* libgimp/gimp.def
* libgimp/gimpui.def: changed accordingly.
2004-12-12 Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs.[ch]: added new function
copy_region_nocow() as a workaround for the fact that sharing
tiles with the projection is heavily broken.
* app/base/tile-manager.c (tile_invalidate): added a warning when
entering the code path that breaks badly.
* app/core/gimp-edit.[ch]: added gimp_edit_copy_visible(), using
the non-COW copying function above.
* app/widgets/gimphelp-ids.h: added GIMP_HELP_COPY_VISIBLE.
* app/actions/edit-actions.c
* app/actions/edit-commands.[ch]: added action & callback for
"edit-copy-visible".
* menus/image-menu.xml.in: added "edit-copy-visible" to the image
menu.
* tools/pdbgen/pdb/edit.pdb: added gimp_edit_copy_visible()
PDB wrapper.
* app/pdb/edit_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpedit_pdb.[ch]: regenerated.
* plug-ins/script-fu/scripts/copy-visible.scm: removed all code
and made it a backward compat wrapper around gimp-edit-copy-visible.
Fixes bug #138662.
2004-11-29 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/display.pdb: make it work as documented (fail
if the new_image already has a display). Also fail if the
old_image doesn't have any display (changed docs accordingly).
On success, take over the initial reference count of the new
image, just as the gimp_display_new() PDB wrapper does.
Fixes bug #159051.
* app/pdb/display_cmds.c
* libgimp/gimpdisplay_pdb.c: regenerated.
2004-11-27 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/drawable.pdb: minor change to the PDB docs.
* libgimp/gimpdrawable_pdb.c
* tools/pdbgen/pdb/drawable.pdb: regenerated.
2004-09-21 Hans Breuer <hans@breuer.org>
* app/dialogs/makefile.msc : [new file]
app/dialogs/Makefile.am : added to EXTRA_DIST
* **/makefile.msc app/gimpcore.def : updated
* app/gimp.rc : let wilber be first
* app/widgets/gimppropwidgets.c : msvc6 can't cast uint64 either
* libgimpbase/gimpwin32-io.h : make up recent loss of ftruncate in GLib
* libgimpthumbnail/gimpthumbnail.c : <process.h> for getpid() on win32
* plug-ins/helpbrowser/dialog.c : include gimpwin32-io.h
* plug-ins/script-fu/siodwrapper.c plug-ins/script-fu/scrip-fu.c : there
is no script-fu-server on win32
2004-11-19 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/lib.pl
* tools/pdbgen/stddefs.pdb: added support for deprecated procedures
without any replacement.
* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): added
a special warning for procedures without replacement.
* tools/pdbgen/pdb/drawable.pdb: deprecated drawable_set_image()
without any replacement and made it a nop (which fails if the
passed image is different from the drawable's image). It's not
needed any longer since 2.0 and moreover dangerous to use.
* app/pdb/drawable_cmds.c
* libgimp/gimpdrawable_pdb.[ch]: regenerated.
* app/core/gimpitem.c (gimp_item_set_image): replaced assertion
for gimp_item_is_floating() by !gimp_item_is_attached(). The
former warned when adding a layer with already added mask to the
image (which is a perfectly valid operation).
2004-11-17 Manish Singh <yosh@gimp.org>
* plug-ins/dbbrowser/Makefile.am: make libgimpprocbrowser a libtooled
library.
* plug-ins/dbbrowser/gimpprocbrowser.[ch]: add a user_data pointer
for GimpProcBrowserApplyCallback.
* plug-ins/dbbrowser/gimpprocbrowser.c: only convert the name to
scheme style if scheme_names in the proc info pane too.
* plug-ins/dbbrowser/procedure-browser.c
* plug-ins/script-fu/script-fu-console.c: pass NULL as user_data.
* plug-ins/script-fu/Makefile.am: reference libgimpprocbrowser.la.
* plug-ins/pygimp/Makefile.am
* plug-ins/pygimp/procbrowser.c: new module, which wraps
libgimprocbrowser.
* plug-ins/pygimp/gimpmodule.c
* plug-ins/pygimp/pygimp.h
* plug-ins/pygimp/pygimp-pdb.c: export GimpPDBFunction so other
modules can use it.
* plug-ins/pygimp/plug-ins/pdbbrowse.py
* plug-ins/pygimp/plug-ins/gimpcons.py: use gimpprocbrowser.
2004-11-17 Michael Natterer <mitch@gimp.org>
* plug-ins/dbbrowser/gimpprocbox.c
* plug-ins/dbbrowser/gimpprocbrowser.[ch]
* plug-ins/dbbrowser/gimpprocview.c: some cleanup in preparation
of moving it to a more public place.
* plug-ins/dbbrowser/procedure-browser.c
* plug-ins/script-fu/script-fu-console.c: changed accordingly.
2004-11-16 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/drawable_transform.pdb: renamed the new
drawable_foo_defaults() functions to drawable_foo_default() to be
consistent with paintbrush_default() and friends.
* tools/pdbgen/pdb/transform_tools.pdb
* libgimp/gimp.def: changed accordingly.
* app/pdb/drawable_transform_cmds.c
* app/pdb/transform_tools_cmds.c
* libgimp/gimpdrawabletransform_pdb.[ch]
* libgimp/gimptransformtools_pdb.c: regenerated.
* plug-ins/script-fu/scripts/coolmetal-logo.scm
* plug-ins/script-fu/scripts/image-structure.scm
* plug-ins/script-fu/scripts/text-circle.scm: follow the API change.
2004-11-16 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/selection.pdb: entirely removed the deprecated
functions "selection_clear", "image_set_cmap" and "image_get_cmap".
* app/pdb/procedural_db.c: and added them to the compat hash table
because they have undeprecated replacements with identical
signature.
* libgimp/gimpselection.[ch]: added gimp_selection_clear() here
instead because we need the symbol in libgimp.
* app/pdb/image_cmds.c
* app/pdb/internal_procs.c
* app/pdb/selection_cmds.c
* libgimp/gimpselection_pdb.[ch]: regenerated.
2004-11-13 Manish Singh <yosh@gimp.org>
* tools/pdbgen/pdb/image.pdb: Adapted Sven's code into pdbgen so
that gimp_image_set_filename() validates that it is called with
a filename in the filesystem encoding which can safely be converted
to UTF-8 and back. Fixes#153751.
* app/pdb/image_cmds.c
* libgimp/gimpimage_pdb.c: Regenerated.
2004-11-13 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/image.pdb: document the fact that
gimp_image_get_filename() returns the filename in the filesystem
encoding. Fixed gimp_image_get_name() to actually return the name
in UTF-8 encoding.
* app/pdb/image_cmds.c
* libgimp/gimpimage_pdb.c
* app/vectors/gimpbezierstroke.h: formatting.
2004-11-13 Sven Neumann <sven@gimp.org>
* app/plug-in/plug-in-proc-def.[ch]
* app/plug-in/plug-in-rc.c
* app/plug-in/plug-ins.[ch]: allow to associate a procedure for
thumbnail loading with any file load procedure.
* tools/pdbgen/pdb/fileops.pdb: export this functionality to the
PDB as gimp_register_thumbnail_loader().
* app/pdb/fileops_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpfileops_pdb.[ch]: regenerated.
* app/core/gimpimagefile.c
* app/file/file-open.[ch]: when creating a thumbnail for an image
file, use a thumbnail load procedure if available.
* plug-ins/common/svg.c: added "file_svg_load_thumb", a procedure
that allows to load a small preview of the SVG image.
2004-11-03 Michael Natterer <mitch@gimp.org>
* app/dialogs/module-dialog.c
* plug-ins/dbbrowser/gimpprocbrowser.c
* plug-ins/dbbrowser/plugin-browser.c: use
gtk_tree_model_get_iter_first() instead of the deprecated
_get_iter_root().
* app/display/gimpdisplayshell-callbacks.c: don't include
"widgets/gimpitemfactory.h".