It makes little sense to keep them in one header and parse them with a
pile of perl, just to generate them in another header. Simply keep
them in a place everybody depends on.
For windows, exported functions must be listed in the
according .def file. If the function itself is deleted,
the corresponding function must also be deleted from the
.def file
Which contains all the API from the "color" group, but with a
gimp_drawable namespace and with support for high bit depths. The
group is actually a copy of "color" with cruft removed and some API
ported to using float instead of integer API.
Deprecated all "color" functions that already have a ported version in
"drawable_color".
This is unfinished WIP, some functions in "drawable_color" still have
the old API.
Based on original patches from Hartmut Kuhse and modified
by Michael Natterer. Changes include:
- remove libexif dependency and add a hard dependency on gexiv2
- typedef GExiv2Metadata to GimpMetadata to avoid having to
include gexiv2 globally
- add basic GimpMetadata handling functions to libgimpbase
- add image and image file specific metadata functions to libgimp,
including the exif orientation image rotate dialog
- port plug-ins to use the new APIs
- port file-tiff-save's UI to GtkBuilder
- add new plug-in "metadata" to view the image's metadata
- keep metadata around as GimpImage member in the core
- update the image's metadata on image size, resolution and precision
changes
- obsolete the old metadata parasites
- migrate the old parasites to new GimpMetadata object on XCF load
Apply and heavily modify patch from remyDev which adds "lock position"
to GimpItem, similar to "lock content". Lock position disables all
sorts of translation and transform, from the GUI and the PDB.
Cleaned up some aspects of the lock content code as well because a
second instance of similar code always shows what went wrong the first
time.
Add gimp_plugin_enable_precision() in libgimp which switches the
plug-in to deal with the drawables' real precision, call it from the
libgimp GeglBuffer and Babl format APIs. If it's not enabled, let the
core's plug-in convert the tiles to legacy formats when sending them
over the wire.
Apply heavily modified patch from Es Swartz which adds PDB API for
brush size, angle and aspect ratio, as well as a full interface for
ink. Changed to patch to add all procedures to the "context" group
instead of creating new PDB groups, properly use the new
GimpPDBContext APIs for paint options, and did some general cleanup.
(Warning, completely untested).
Make gimp_image_get_uri() and gimp_image_get_filename() behave as in
the GIMP 2.6 days. Add new functions gimp_image_get_xcf_uri(),
gimp_image_get_exported_uri() and gimp_image_get_imported_uri().
and rename them yet again to be gimp_item_foo_parasite() instead of
gimp_item_parasite_foo() because the latter is just a misnaming (they
are not GimpItemParasites, they are GimpParasites attached to
GimpItems, just as layers are attached to images).
which all take "parent" parameters and allow to insert items in a
tree. We don't have channel or vectors trees (yet) but API symmetry is
more important here than a currently useless parameter.
2008-09-24 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/image.pdb: added new scale procedures that
allow to specify the interpolation explicitly. Fixes bug
#486977.
Also pass the progress parameter to the scale and rotate
functions.
* app/pdb/image-cmds.c
* app/pdb/internal-procs.c
* app/pdb/layer-cmds.c
* libgimp/gimpimage_pdb.[ch]
* libgimp/gimplayer_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
svn path=/trunk/; revision=27039
2008-08-16 Sven Neumann <sven@gimp.org>
Next step towards fixing bug #344818:
* libgimp/gimp.[ch]: keep the last error status and error
message
in libgimp. Added new functon gimp_pdb_get_error() that allows
to
retrieve it.
* libgimp/gimp.def: updated.
* plug-ins/pygimp/gimpmodule.c (pygimp_vectors_import_from_file)
(pygimp_vectors_import_from_string): use the new function to get
a more useful error message.
svn path=/trunk/; revision=26602
2008-07-14 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/palette.pdb: added new PDB function
gimp-palette-get-colors that retrieves all colors from a palette
in a single call. Based on patches from bug #332206.
* app/pdb/palette-cmds.c
* app/pdb/internal-procs.c
* libgimp/gimppalette_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
svn path=/trunk/; revision=26192
2008-04-02 Sven Neumann <sven@gimp.org>
* tools/pdbgen/stddefs.pdb: added shortcut for contributions
from
Marcus Heese.
* tools/pdbgen/pdb/drawable.pdb: added
gimp_drawable_is_text_layer(),
taken from the patch attached to bug #164539.
* app/pdb/internal_procs.c
* app/pdb/drawable_cmds.c
* libgimp/gimpdrawable_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
svn path=/trunk/; revision=25337
2008-03-27 Sven Neumann <sven@gimp.org>
Properly pass the focus from the core to plug-in dialogs:
* libgimpbase/gimpprotocol.[ch]: added a user_time member to the
GimpConfig struct. Bumped the protocol version to 0x0012.
* app/core/gimp-gui.[ch]
* app/gui/gui-vtable.c: added gimp_get_user_time() to get the
timestamp of the last user interaction.
* app/plug-in/gimppluginmanager-call.c
(gimp_plug_in_manager_call_run): pass the timestamp to in the
GimpConfig message.
* libgimp/gimp.[ch]:
* libgimp/gimp.def: added method to access the timestamp as set
in the config message.
* libgimp/gimpui.c (gimp_ui_init): construct a fake startup ID and
set the DESKTOP_STARTUP_ID environment variable.
svn path=/trunk/; revision=25263
2006-12-29 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/gimprc.pdb: export gimp_get_default_unit() to
the PDB.
* app/pdb/gimprc_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpgimprc_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
* plug-ins/print/print-page-layout.c
* plug-ins/print/print.c: initialize units the same way the core
Print Size dialog does it.
2006-11-30 Michael Natterer <mitch@gimp.org>
* libgimp/gimp.def
* libgimpbase/gimpbase.def: move around version number symbols
here too. Fixes bug #380658.
2006-11-22 Simon Budig <simon@gimp.org>
* tools/pdbgen/pdb/image.pdb: Added functions to easily determine
the position of a layer/channel/vectors object in its respective
stack.
* libgimp/gimp.def: added new symbols
* app/pdb/image_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpimage_pdb.[ch]: regenerated.
2006-11-05 Sven Neumann <sven@gimp.org>
* app/file/file-save.c (file_save): only save a thumbnail if we
are saving as XCF. Fixes bug #25272.
* tools/pdbgen/pdb/fileops.pdb: create a libgimp wrapper for the
"gimp-file-save-thumbnail" procedure.
* libgimp/gimpfileops_pdb.[ch]: regenerated.
* plug-ins/common/compressor.c (save_image): ask the core to
save
a thumbnail for compressed XCF files.
2006-11-03 Michael Natterer <mitch@gimp.org>
* app/core/core-enums.[ch] (enum GimpUndoType): added value
GIMP_UNDO_GROUP_LAYER_ADD.
* app/file/file-open.[ch]: changed file_open_layer() to
file_open_layers(), added parameter "gboolean merge_visible",
return a GList of layers.
* app/dialogs/file-open-dialog.c
* app/display/gimpdisplayshell-dnd.c
* app/widgets/gimplayertreeview.c: pass merge_visible = FALSE and
add all returned layers to the image. Fixes bug #358082.
(contains lots of duplicated code, will factor that out later).
* tools/pdbgen/pdb/fileops.pdb (load_layer): pass merge_visible = TRUE
(load_layers): new wrapper which returns all the image's layers.
* app/pdb/fileops_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpfileops_pdb.[ch]: regenerated.
* libgimp/gimp.def: changed accordingly.
2006-10-25 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/paths.pdb: removed gimp-paths-import-string, it
didn't exist in 2.2 and therefore doesn't need to be deprecated.
* app/pdb/internal_procs.c
* app/pdb/paths_cmds.c
* libgimp/gimppaths_pdb.[ch]: regenerated.
* libgimp/gimp.def: changed accordingly.
2006-10-25 Simon Budig <simon@gimp.org>
* app/vectors/vectors-enums.h: Oops. Need to specify both
pdb-skip and skip.
* libgimp/gimp.def
* libgimpconfig/gimpconfig.def
* libgimpmath/gimpmath.def
* libgimpthumb/gimpthumb.def
* libgimpwidgets/gimpwidgets.def: .def-file maintenance. Hope my
changes are correct...
With the help from
nm .libs/libgimpfoo-2.0.so |\
sed -ne "s/.* T \([a-zA-Z0-9][a-zA-Z0-9_]*\)/\t\1/p" |\
(echo EXPORTS ; LC_ALL=C sort )
* libgimpwidgets/gimppageselector.c: marked stretch_frame_image()
as static.
* libgimp/gimpenums.c.tail
* libgimp/gimpenums.h
* tools/pdbgen/enums.pl: regenerated.
* devel-docs/libgimp/tmpl/gimpfontselectbutton.sgml: this changed
again. WTF?
2006-10-24 Simon Budig <simon@gimp.org>
* app/vectors/Makefile.am
* app/vectors/vectors-enums.h
* app/vectors/vectors-types.h: added new file for the vectors enums,
adjusted Makefile.am for the generation of vectors-enums.c
* tools/pdbgen/Makefile.am
* tools/pdbgen/pdb/vectors.pdb: Added implementation for
gimp-vectors-stroke-get-points which returns the control points for
the stroke.
Renamed gimp-vectors-stroke-remove to gimp-vectors-remove-stroke.
ATTENTION: this breaks scripts using this function, a simple name
change is enough to make it work again.
Also please note that yosh reordered the return values of
gimp-vectors-stroke-interpolate, so your scripts need adjustment
there as well.
* tools/pdbgen/pdb/paths.pdb: deprecate gimp-path-get-points. Yay!
* libgimp/gimp.def: added new symbol
* plug-ins/pygimp/pygimp-vectors.c: reflect name change of
gimp_vectors_remove_stroke ().
* app/vectors/vectors-enums.c
* app/pdb/internal_procs.c
* app/pdb/paths_cmds.c
* app/pdb/vectors_cmds.c
* devel-docs/libgimp/tmpl/gimpvectors.sgml
* libgimp/gimpenums.c.tail
* libgimp/gimpenums.h
* libgimp/gimppaths_pdb.[ch]
* libgimp/gimpvectors_pdb.[ch]
* tools/pdbgen/enums.pl: regenerated.
2006-07-28 Simon Budig <simon@gimp.org>
* libgimp/gimp.def: added the new symbol
* tools/pdbgen/pdb/vectors.pdb: cosmetics.
* app/pdb/vectors_cmds.c
* libgimp/gimpvectors_pdb.[ch]: regenerated.
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-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-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-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/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-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-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-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-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-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.
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-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-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-02 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/drawable_transform.pdb: added _defaults()
variants (flip_defaults, rotate_defaults, ...) for all transform
functions which finally call gimp_drawable_transform_affine().
The _defaults() functions don't take the whole interpolation_type,
supersample etc. parameter overkill, but only a "interpolation"
boolean like the old PDB wrappers.
* libgimp/gimp.def: changed accordingly.
* app/pdb/drawable_transform_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpdrawabletransform_pdb.[ch]: regenerated.
2004-11-02 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/drawable_transform.pdb: renamed flip() and
rotate() to flip_simple() and rotate_simple(). Renamed flip_free()
and rotate_free() to flip() and rotate() (the special cases should
have a special suffix, not the general ones).
* libgimp/gimp.def: changed accordingly.
* app/pdb/drawable_transform_cmds.c
* libgimp/gimpdrawabletransform_pdb.[ch]: regenerated.
2004-11-02 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/drawable_transform.pdb (flip): renamed
parameter "center" to "auto_center" and removed
"transform_direction". Renamed rotate() to rotate_free() and
added a "gboolean auto_center" parameter. Added new function
rotate() which takes enum GimpRotationType instead of an
arbiatrary angle so the flip and rotate APIs are symmetric.
* libgimp/gimp.def: added the gimp_drawable_transform_* stuff.
* app/pdb/drawable_transform_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpdrawabletransform_pdb.[ch]: regenerated.
2004-10-25 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpbaseenums.[ch]: register some missing enums.
* tools/pdbgen/enumcode.pl: removed code to generate
plug-ins/script-fu/script-fu-constants.c, generate code to
explicitely initialize and query all of libgimp*'s enums
and write it to libgimp/gimpenums.c.tail
* libgimp/gimpenums.h: regenerated.
* libgimp/Makefile.am: append gimpenums.c.tail to gimpenums.c
* libgimp/gimp.c (gimp_main): call g_type_init() and
_gimp_enums_init().
* libgimp/gimp.def: added gimp_enums_get_type_names().
* plug-ins/script-fu/Makefile.am
* plug-ins/script-fu/script-fu-constants.[ch]: removed these files.
* plug-ins/script-fu/siod-wrapper.c: dynamically register all
constants using gimp_enums_get_type_names() and introspection.
Also register the built-in unit types.
* plug-ins/script-fu/script-fu.c: changed accordingly.
2004-10-25 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/enumcode.pl
* libgimp/Makefile.am: register all enums in libgimp/gimenums.h
with the type system.
* libgimp/gimpenums.h: regenerated.
* libgimp/gimp.def: updated.
2004-10-04 Sven Neumann <sven@gimp.org>
* app/config/gimpguiconfig.[ch]
* app/config/gimprc-blurbs.h: added gimprc option "show-help-button".
* app/dialogs/preferences-dialog.c: added a GUI for it.
* app/dialogs/file-save-dialog.c
* app/dialogs/image-new-dialog.c
* app/dialogs/quit-dialog.c
* app/display/gimpdisplayshell-close.c
* app/widgets/gimphelp-ids.h: don't set help-ids on confirmation
dialogs.
* libgimpbase/gimpprotocol.[ch]
* libgimp/gimp.[ch]: added boolean "show_help_button" to the
config message.
* app/plug-in/plug-in-run.c: pass the new preference to the plug-in.
* libgimpwidgets/gimpdialog.[ch]: added new function that allows to
set whether new dialogs should get a help button added.
* app/gui/gui.c
* libgimp/gimpui.c: call gimp_dialogs_show_help_button() according
to the gimprc settings.
2004-09-23 Sven Neumann <sven@gimp.org>
* libgimp/gimppixbuf.c (gimp_drawable_get_thumbnail,
gimp_image_get_thumbnail): use the exported symbols from
libgimp, not the private _gimp_drawable_thumbnail()
and _gimp_image_thumbnail() functions.
* libgimp/gimp.def: added new symbols, removed
_gimp_image_thumbnail and _gimp_drawable_thumbnail.
2004-09-04 Michael Schumacher <schumaml@cvs.gnome.org>
* libgimp/gimp.def
* libgimpbase/gimpbase.def: libgimpwidgets/gimpwidgets.def: added
the check(erboard) related entries
2004-06-28 Sven Neumann <sven@gimp.org>
* plug-ins/common/dog.c (dog): ifdef'ed out calls to
_gimp_tile_cache_flush_drawable() since it can't be used from a
plug-in. Removed trailing whitespace and redundant includes.
* libgimp/gimp.def: removed _gimp_tile_cache_flush_drawable again.
2004-06-27 Michael Schumacher <schumaml@cvs.gnome.org>
* libgimp/gimp.def: added _gimp_tile_cache_flush_drawable because
it is used in a plug-in. See bug 145051.
2004-05-19 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/plug_in.pdb: made plugin_icon_register() an
underscore-prefixed function which needs to be wrapped.
* libgimp/gimpplugin_pdb.[ch]: regenerated.
* libgimp/Makefile.am
* libgimp/gimp.h
* libgimp/gimpplugin.[ch]: new files containing
gimp_plugin_icon_register() which has no "icon_data_length"
parameter and determines it from the passed icon data.
* libgimp/gimp.def: added gimp_plugin_icon_register.
* plug-ins/common/plugindetails.c
* plug-ins/common/screenshot.c
* plug-ins/common/uniteditor.c
* plug-ins/print/print.c: don't pass the icon_data_length.
2004-03-12 Michael Natterer <mitch@gimp.org>
Cleaned up the remaining libgimp API issues:
* libgimp/gimppixelfetcher.[ch] (enum GimpPixelFetcherEdgeMode):
added new enum value GIMP_PIXEL_FETCHER_EDGE_BACKGROUND so we
can actually use the bg_color feature of the GimpPixelFetcher.
(gimp_pixel_fetcher_new): added "gboolean shadow" parameter
because it must not change while the GimpPixelFetcher exists.
(gimp_pixel_fetcher_set_shadow): removed.
(gimp_pixel_fetcher_set_bg_color): added "GimpRGB *color"
parameter and don't call gimp_palette_get_foreground().
(gimp_pixel_fetcher_get_pixel): handle BACKGROUND mode. Cleaned up
the function.
(gimp_get_bg_guchar)
(gimp_get_fg_guchar): removed these functions...
* libgimp/gimpdrawable.[ch]: ...and added
gimp_drawable_get_color_uchar() instead.
* libgimp/gimp.def
* plug-ins/common/blinds.c
* plug-ins/common/checkerboard.c
* plug-ins/common/cubism.c
* plug-ins/common/curve_bend.c
* plug-ins/common/displace.c
* plug-ins/common/edge.c
* plug-ins/common/illusion.c
* plug-ins/common/mblur.c
* plug-ins/common/mosaic.c
* plug-ins/common/plasma.c
* plug-ins/common/polar.c
* plug-ins/common/ripple.c
* plug-ins/common/shift.c
* plug-ins/common/spread.c
* plug-ins/common/tileit.c
* plug-ins/common/whirlpinch.c
* plug-ins/gflare/gflare.c
* plug-ins/libgimpoldpreview/gimpoldpreview.c: changed accordingly.
(Didn't test the changed plug-ins because I wanted to get this
API change into CVS as soon as possible)
2004-02-17 Sven Neumann <sven@gimp.org>
* libgimpbase/gimpprotocol.[ch]: changed wm_name to app_name in
the GimpConfig struct; increased GIMP_PROTOCOL_VERSION.
* app/plug-in/plug-in-run.c (plug_in_run): pass the return value
of g_get_application_name() to the plug-ins.
* libgimp/gimp.[ch]: removed function gimp_wm_name(). Set the
plug-in's application name if an app_name is passed in the config
message.
* libgimp/gimpui.c: removed usage of gimp_wm_name(); it was wrong
to do it this way and caused all plug-ins claim to be the gimp-1.3
executable in their error messages.
* libgimp/gimp.def: removed symbol gimp_wm_name.
* configure.in: reset gimp_binary_age and gimp_interface_age.
* app/core/gimpimage.c (gimp_image_name_changed): removed unused
variable.
2003-12-12 Hans Breuer <hans@breuer.org>
[
I've postponed my reservations against pangoft2/fontconfig/freetype2
usage, so The Gimp should now build with msvc without patching it.
]
* app/makefile.msc app/text/makefile.msc : use $(PANGOFT2_CFLAGS) etc.
* libgimpthumb/makefile.msc : (new file)
* makefile.msc : added libgimpthumb
* libgimpthumb/gimpthumbnail.c : include gimpwin32-io.h
* libgimpthumb/gimpthumb-utils.c : don't compare size pointer
with GIMP_THUMB_SIZE_FAIL but *size
* plug-ins/makefile.msc : handle libgimpoldpreview
* plug-ins/common/decompose.c : define cbrt() if not __GLIBC__
* plug-ins/common/winclipboard.c : make it compile without gimpcompat.h
* plug-ins/imagemap/imagemap_csim_lex.c : its a generated file
but still win32/msvc has no unistd.h
* plug-ins/pygimp/makefile.msc : (new file) to use the binary you
need to patch glib, see bug #98737
* plug-ins/libgimpoldpreview.c : use <libgimp/gimp.h> instead of "gimp.h"
* **/Makefile.am : added makefile.msc to EXTRA_DIST
2003-11-15 Sven Neumann <sven@gimp.org>
* libgimp/gimp.def
* libgimpcolor/gimpcolor.def
* libgimpwdidgets/gimpwidgets.def: updated based on a patch from
Michael Schumacher.
2003-09-13 Sven Neumann <sven@gimp.org>
* libgimp/gimp.def
* libgimpmath/gimpmath.def
* libgimpwidgets/gimpwidgets.def: used nm to regenerate these
files from libraries built on Linux. There were quite some symbols
missing.
2003-07-27 Tor Lillqvist <tml@iki.fi>
* libgimp/gimp.def
* libgimp/gimpui.def: Move gimp_{brush,font,gradient,pattern}_
select_{destroy,new} back to gimp.def (and actually add some of
the _destroy entries). The files where these are defined go in
libgimp, not libgimpui (see Makefile.am). Sort the .def files.
2003-07-26 Hans Breuer <hans@breuer.org>
* libgimp/gimpcompat.h : renamed GimpOrientationType
with Compat postfix to avoid name clashing when using
this header together with libgimp/gimpenums.h
* app/composite/makefile.msc : (new file)
**/makefile.msc : updated
* libgimp/gimp.c : use static defined _tile<widht|height>
in this file instead of function call
* libgimp/gimp.def libgimp/libgimpui.def : moved from former
to latter : gimp_<brush|font|gradient|pattern>_select_<new|destroy>
added to former gimp_<brushes|gradients|patterns>_popup
* app/paint/gimppaintcore.h : removed double semicolon
which gave msvc error C2059: syntax error : ';'
* libgimpbase/gimpwin32-io.h : (new file) compatibilty defines
which were spread over multiple files to make up mostly for
missing unistd.h
* app/base/tile-swap.c app/core/gimpimagefile.c
libgimpbase/gimpdatafiles.c
plug-ins/FractalExplorer/FractalExplorer.c : use new header
* plug-ins/gflare/gflare.c
plug-ins/flame/flame.c
plug-ins/FractalExplorer/Dialogs.c :
removed #ifdef G_OS_WIN32 special casing, not needed anymore
due to g_file_test() usage
* app/text/*.* : changes required for build with PangoWin32,
but not commited ...
2003-07-01 Michael Natterer <mitch@gimp.org>
* libgimp/gimpmenu.[ch]: removed all brush, font, gradient
and pattern related code.
* libgimp/gimpbrushselect.[ch]
* libgimp/gimpfontselect.[ch]
* libgimp/gimpgradientselect.[ch]
* libgimp/gimppatternselect.[ch]: new files containing the
wrappers around their resp. _pdb.[ch] files. Changed function
names to gimp_*_select_new(). Added gimp_*_select_destroy()
functions so we're not forced to leak all wrappers. Cleanup.
* libgimp/gimpbrushmenu.h
* libgimp/gimpfontmenu.h
* libgimp/gimpgradientmenu.h
* libgimp/gimppatternmenu.h: new files. Changed function names
here too.
* libgimp/gimpbrushmenu.c
* libgimp/gimpfontmenu.c
* libgimp/gimpgradientmenu.c
* libgimp/gimppatternmenu.c: changed accordingly. Free the
foo_select wrappers when they are no longer needed (generally,
free everthing instead of leaking everything). Lots of cleanup.
* libgimp/Makefile.am
* libgimp/gimp.def
* libgimp/gimpui.def: changed accordingly.
* libgimp/gimp.h
* libgimp/gimpui.h: include the new headers.
* libgimp/gimpcompat.h: added the old function names here.
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/common/film.c
* plug-ins/gfig/gfig.c
* plug-ins/script-fu/script-fu-scripts.c: changed accordingly.
2003-07-01 Michael Natterer <mitch@gimp.org>
* libgimp/libgimp-docs.sgml
* libgimp/libgimp-sections.txt: follow libgimp cleanup, moved the
brush, font, gradient and pattern selection stuff to their own
sections.
* libgimp/tmpl/gimpfonts.sgml: removed.
* libgimp/tmpl/gimpbrushmenu.sgml
* libgimp/tmpl/gimpbrushselect.sgml
* libgimp/tmpl/gimpfontmenu.sgml
* libgimp/tmpl/gimpfontselect.sgml
* libgimp/tmpl/gimpgradientmenu.sgml
* libgimp/tmpl/gimpgradientselect.sgml
* libgimp/tmpl/gimppatternmenu.sgml
* libgimp/tmpl/gimppatternselect.sgml: new files.
* libgimp/tmpl/gimpbrushes.sgml
* libgimp/tmpl/gimpgradients.sgml
* libgimp/tmpl/gimpmenu.sgml
* libgimp/tmpl/gimppatterns.sgml: regenerated.
2003-06-19 Michael Natterer <mitch@gimp.org>
Changed the semantics of GIMP_EXTENSION and (to some extent)
of GIMP_PLUGIN:
The old meaning of EXTENSION was "I live in the toolbox" and
PLUGIN meant "I take RUN-MODE,IMAGE,DRAWABLE args (but only if I
am invoked interactively)". This is completely useless, since
living in the toolbox means having "<Toolbox>" in the menu_path
and taking RUN-MODE,IMAGE,DRAWABLE means just that, regardless of
what type of procedure we are.
The new meaning of GIMP_PLUGIN is just "I am an ordinary procedure,
I am invoked, do my job and finish", while GIMP_EXTENSION means
"I will install temporary procedures and I will keep running to
keep them available".
(A GIMP_EXTENSION *must* call gimp_extension_ack() now to tell the
core that it's ready to run, or the core will block waiting for
the message !!!).
* configure.in: bumped version number to 1.3.16.
* libgimpbase/gimpprotocol.h: increased protocol version number so
old extensions will refuse to load.
* app/gui/plug-in-commands.c (plug_in_run_cmd_callback): don't
blindly pass RUN-MODE,IMAGE,DRAWABLE to GIMP_PLUGIN procedures but
look at their parameters and pass them either RUN-MODE, or
RUN-MODE,IMAGE, or RUN-MODE,IMAGE,DRAWABLE.
* app/pdb/procedural_db.c: cleaned up, better error reporting,
replaced an impossible error message by g_return_if_fail()
* app/plug-in/plug-in-message.c (plug_in_handle_proc_install):
better error messages.
* app/plug-in/plug-in-params.c: allocate parameter arrays using
g_new0() so we don't have to worry about uninitialized stuff
later.
* app/plug-in/plug-in-run.c (plug_in_run): wait for
gimp_extension_ack() installation confirmation for ALL extensions,
not just for automatically started ones.
* app/plug-in/plug-ins.c: cleanup.
* libgimp/gimp.[ch]: cleaned up and API-documented massively. Made
all magic values given in the GPConfig message static and added
accessor functions for them. Added gimp_tile_width()/height().
Added new function gimp_extension_enable() which turns on
asynchronous processing of temp_proc run requests without having
to enter an endless gimp_extension_process() loop. Moved all
private functions to the end of the file. Added tons of
g_return_if_fail() all over the place. Call gimp_run_procedure2()
from gimp_run_procedure() instead of duplicating the
code. Indentation, spacing, stuff...
* libgimp/gimptile.[ch]: removed gimp_tile_width()/height().
* libgimp/gimpdrawable.c
* libgimp/gimppixelrgn.c
* libgimp/gimptile.c: use the gimp_tile_width()/height() accessor
functions.
* libgimp/gimp.def: added gimp_extension_enable.
* libgimp/gimpmenu.c: removed evil code which connected to
_readchannel manually and use gimp_extension_enable() for watching
temp_procs.
* plug-ins/helpbrowser/helpbrowser.c: removed the same evil code
here and call gimp_extension_enable(). Call gimp_extension_ack()
to let the core know that the temp_proc is installed.
* plug-ins/script-fu/script-fu.c: made all procedures except the
permanently running "extension_script_fu" ordinary GIMP_PLUGIN
procedures.
* plug-ins/common/curve_bend.c
* plug-ins/common/plugindetails.c
* plug-ins/common/screenshot.c
* plug-ins/common/uniteditor.c
* plug-ins/common/winclipboard.c
* plug-ins/dbbrowser/dbbrowser.c
* plug-ins/gfli/gfli.c
* plug-ins/twain/twain.c
* plug-ins/webbrowser/webbrowser.c
* plug-ins/winsnap/winsnap.c: made them all ordinary GIMP_PLUGIN
procedures and renamed them from "extension_*" to "plug_in_*".
Random cleanups.
* app/widgets/gimphelp.c
* plug-ins/maze/maze_face.c: call "plug_in_web_browser" now.
2003-05-30 Tor Lillqvist <tml@iki.fi>
* configure.in: As gimp uses fontconfig directly, check for it.
* app/Makefile.am: And link with it.
* app/gimp.sym: Remove dead symbols.
* libgimp/gimp.def
* libgimpwidgets/gimpwidgets.def: Move gimp_standard_help_func.
* plug-ins/xjt/xjt.c: Use _mkdir() on Win32.
2003-03-03 Hans Breuer <hans@breuer.org>
* app/text/makefile.msc (new file)
*/makefile.msc */*/makefile.msc : updated
* app/core/gimpdata.c : define access() constants
for G_OS_WIN32 case
* app/text/gimptext.c : <stdlib.h> for getenv()
* libgimp/gimp.def libgimp/gimpui.def : updated externals
* libgimpwidgets/libgimp-glue.c : make dynamic_resolve
actually work again for 'my' DLL naming convention
* plug-ins/gap/gap_pdb_calls.c : reflect renaming
of GIMP_VERTICAL to GIMP_ORIENTATION_VERTICAL
2002-12-26 Tor Lillqvist <tml@iki.fi>
* app/Makefile.am (EXTRA_DIST): Drop makefile.mingw{,.in}.
* libgimp/gimp.c: Define LIBGIMP_COMPILATION.
(gimp_main) [Win32] Use g_ascii_strcasecmp().
* libgimp/gimp.def: Add _readchannel (used by libgimpui).
* libgimp/gimp.h: Fix minor typo in comment.
* libgimp/Makefile.am: Similar additions for Win32 as in the other
libgimp*/Makefile.am files: Use -no-undefined. Conditionally link
to ../lib*/*.la as needed. Use the .def file. Produce MS style
import library if possible. Install and uninstall import
libraries. Don't distribute makefile.mingw{,.in}.
2002-11-30 Hans Breuer <hans@breuer.org>
* */makefile.msc */*/makefile.msc : updated
* themes/Default/images/makefile.msc : new file
* themes/Default/makefile.msc : removed
* libgimpwidgets/gimpwidgets.def : updated
* app/core/core-types.h : renamed PIXELS and POINTS
to SIZE_* to avoid clashes with system headers
* app/pdb/text_tool_cmds.c : updated ...
* tools/pdbgen/enums.py : ... by renaming here too.
* app/widgets/gimphistogrambox.c : <string.h> for memcpy()
* app/widgets/gimppropwidgets.c : <string.h> for strlen()
* app/config/gimpconfig.c : on win32 rename always fails
if the destination file exists. Delete it first.
* libgimp/gimp.def : removed all '_'-prefixed exports
* plug-ins/common/iwarp.c : replace _gimp_layer_copy()
with gimp_layer_copy(), gimp_layer_add_alpha()
* libgimp/gimpmisc.c : ported gimp_timer funcs to use
g_timer to be more portable
* libgimpbase/gimpdatafiles.c : there are no symlinks on
win32, inverted to #ifndef G_OS_WIN32 as it was meant.
* libgimpbase/gimpbase.def libgimpmodule/gimpmodule.def
libgimpwidgets/gimpwidgets.def : updated externals
* plug-ins/common/randomize.c plug-ins/common/sinus.c :
don't initialize more than the defined struct size
* plug-ins/common/warp.c : removed unneeded unistd.h and
signal.h include
* regexrepl/regexrepl.def : (new file) needed to build
as DLL
2002-09-06 Hans Breuer <hans@breuer.org>
* */*/makefile.msc : updated
* libgimptool/makefile.msc : new file, libgimptool
is currently build as static lib due to references
into app/core
* themes/Default/makefile.msc : removed
* themes/Default/images/makefile.msc : new file
* libgimpwidgets/makefile.msc libgimpwidgets/gimpwidgets.c
updated (externals)
* app/paint-funcs.c : replaced gccism varibale size array on
stack with portable alloca, removed sizeof(buf) check which
must fail now.
* app/config/gimpconfig.c : get write/close protos
on win32 from io.h
* app/config/gimprc.c : dito and <string.h>
* app/config/gimpscanner.c : <string.h> only
* app/core/gimpcontainer.c : workaround for clumsy
compilers not supporting vararg macros
* app/core/gimpdocumentlist.c app/core/gimpparasitelist.c
include <io.h> on win32
* app/widgets/gimpdocumentview.c
app/widgets/gimpimagedock.c
app/widgets/gimppreview.c : add #ifdef __GNUC__
to avoid breaking on non standard pragma #warning.
* app/gui/session.c : include <string.h>
* regexrepl/makefile.msc : build as dll
* plug-ins/makefile.msc : updated
* plug-ins/common/pix.c : open file binary
* plug-ins/common/spheredesigner.c : avoid error
'incompatible types' while assigning, use memcpy()
2001-05-11 Hans Breuer <hans@breuer.org>
* app/makefile.msc : add appconfig.lib. Statically
link libgimptool/gimptool.lib.
* app/main.c : use gimp_locale_directory()
* app/config/gimpconfig-utils.c : <string.h>
* app/config/makefile.msc : add gimpscanner
* app/core/gimpimagefile.c : some G_OS_WIN32 mess to get
mkdir() and chmod()
* app/display/gimpdisplayshell.c
app/plug-in/plug-in-progrss.c
app/tool/gimpcolorpickertool.c
app/tool/gimpcroptool.c
app/tool/gimpmeasuretool.c
app/tool/gimpperspectivetool.c
app/tool/gimprotatetool.c
app/tool/gimpscaletool.c
app/tool/gimpsheartool.c
app/tool/gimptransformtool.c
app/widgets/gimpcolormapeditor.c
app/widgets/gimpcolorpanel.c
app/widgets/gimptoolbox-color-area.c
add #ifdef __GNUC__ to avoid breaking on non standard
pragma #warning
* app/tools/makefile.msc : add gimptoolcontrol remove
tools-enum
* app/tools/tool_manager.c : need to include
libgimptool/gimptoolcontrol.h after core includes
otherwise we would compile without prototypes or
break miserably
* app/gui/plug-in-menus.c : replace LOCALEDIR with
gimp_locale_directory ()
* app/gui/preferences-dialog.c (prefs_notebook_append_page) :
only try to gdk_pixbuf_new_from_file() with a valid filename.
It should simply return NULL otherwise, but fails if the
filename is an empty string.
* app/paint-funcs/makefile.msc : add -FImsvc_recommended_pragmas.h
* app/widgets/gimpcolormapeditor.c : the 'row'
allocated needs to be 'xn * cellsize * 2' (to avoid
accessing unowned memory) not only width, which has
become allocation.width by someone commenting out
the correct size calculation
* app/widgets/gimpdialogfactory.c : varargs to macros
are GCCism or at least non standard. #define DEBUG
to g_print or nothing - without arguments - does fix
it somewhat dirty as the compiler needs to tolerate
the '(blah, foo, bar);' statement than
* app/widgets/makefile.msc : updated
* app/xcf/makefile.msc : add -FImsvc_recommended_pragmas.h
* etc/gimprc.win32 : use ';' to separate theme-path
* libgimpbase/gimpenv.c : #include <stdio.h>
for sprintf()
* app/widgets/gimpdnd.c (gimp_dnd_set_file_data) :
the passed in vals chunk is not always null-terminated
(at least not on win32). Use the length parameter too
to avoid reading junk filenames.
* libgimp/gimp.def : export gimp_image_get_name()
* libgimpbase/gimpbase.def : export gimp_locale_directory()
* libgimpbase/gimpenv.[ch] : added gimp_locale_directory ()
* libgimpbase/makefile.msc : define DATADIR and SYSCONFDIR
to empty string to let gimp find its files in the common
place (win32: relative to the top level gimp dir)
* plug-ins/common/pixelize.c : <string.h>
* plug-ins/flame/cmap.c : #include <glib.h> for g_random_int()
* plug-ins/makefile.msc : -FImsvc_recommended_pragams.h
and a little hack to give imagemap the prototypes it
desires without changing the lexed source
* themes/Default/images/makefile.msc : now added (see below)
* themes/Default/images/stock-button-reset.png : made it binary
2001-09-22 Hans Breuer <hans@breuer.org>
* app/makefile.msc : need to link with pangof2
* app/display/display-funcs.h : new file to provide prototype
gdisplays_selection_visibility ()
* app/core/gimpimage-mask.c :
* app/core/gimplayer.c : use it
* app/core/makefile.msc : generate gimpmarshal.[hc]
* app/gui/makefile.msc : add error-console-dialog.obj, also
more trying for building as dll
* app/tools/gimpinktool.c(965) : avoid "fatal error C1021: invalid
preprocessor command 'warning'", by wrapping it in #ifdef __GNUC__
* app/tools/makefile.msc : add FREETYPE2_CFLAGS
* app/widgets/gimpfontselction-dialog.c : use g_strcasecmp ()
* app/tools/makefile.msc : add FREETYPE2_CFLAGS and gimpfontselction*
* libgimp/gimp.def :
* libgimpwidgets/gimpwidgets.def : updated externals
* libgimpwidgets/makefile.msc : add gimpstock
* plug-ins/makefile.msc : gflare doesn't require EXTRA_gflare anymore
* plug-ins/common/spheredesigner.c :
* plug-ins/helpbrowser/helpbrowser.c :
* plug-ins/imagemap/imap_main.c :
remove _help_accel from gimp_help_connect ()
* plug-ins/gap/gap_mov_dialog.c :
* plug-ins/gap/gap_navigator_dialog.c : remove references to
use_xshm and gimp_color_cube ()
* plug-ins/gfig/gfig.c : don't access ->klass, but use
G_OBJECT_GET_CLASS
* plug-ins/gimpressionist/repaint.c : the GtkButton::child
field is moved to the parent GtkBin.
* plug-ins/ifscompose/ifscompose.c : the GtkStyle::font field
isn't public anymore, use accessor gtk_style_get_font ()
* plug-ins/imagemap/imap_preferences.c : reflect GTK2 API change
gtk_notebook_set_current_page ()
2001-05-25 Hans Breuer <hans@breuer.org>
* app/*/makefile.msc : almost completely autogenerated
all new makefiles (it simply was too much work to do
this manually)
* app/core/makefile.msc :
* app/gui/makefile.msc :
* app/paint-funcs/makefile.msc : new files
* app/base/base.c : include <io.h> for unlink
* libgimp*/makefile.msc :
* libgimp*/*.def : adapted or regenerated
* libgimp/gimpcolorselctor.h : include gmodule.h to avoid
different declarations in different context.
* libgimp/proceduraldb.c : string.h for memcmp
* libgimpwidgets/libgimp-glue.c : include gimpbasetypes.h before
gimpunits.h
* plug-ins/common/animoptimize.c : added nops after
labels. At least the msvc compiler doesn't compile it otherwise
* plug-ins/twain/twain.c : added main() to allow to build
as console app
2001-05-21 Michael Natterer <mitch@gimp.org>
* libgimp/gimp.def: removed removed symbols :)
* libgimpbase/gimpbase.def
* libgimpbase/makefile.mingw.in
* libgimpbase/makefile.msc: added because they are in EXTRA_DIST.
Will definitely not work before a friendly visit by Tor or Hans.
2001-03-16 Hans Breuer <hans@breuer.org>
* app/makefile.msc
* app/tools/makefile.msc : adapted to current state of file
renaming/restructuring. Probably will break again soon ...
* app/context_manager.c : needs register_tools () prototype
* app/gimplist.c
* app/gimppalette-import.c : #include <string.h> for memcpy, strcmp
and friends
* app/pdb/fileops_cmds.c : #include <process.h> /* for _getpid() */
(Yes I know that this is not the right place to change it, but hacking
pdbgen.pl to get platform specific headers is out of my scope)
* app/test_commands.c : explicit casts to (GimpSetDrawableFunc) make
it compile even with strict checks turned on.
* app/undo.c (undo_pop_paint) : return a value even if the function
does nothing at the moment (makes it compile)
* libgimp/gimp.def : updated
* libgimp/gimpcolorselector.h : include <gmodule.h> to make
gimp_color_selector_(un)register prototypes conform to their
implementation
* libgimp/gimpfeatures.h : reflect 1.3 version
* libgimpmath/gimpmatrix.c
* libgimpwidgets/gimpdialog.c : more <string.h> inclusion
* libgimp/makefile.msc : moved gimpadativesupersample.c to
libgimpcolor, which makes it reusable from the core, too.
* libgimp/gimp.def : updated
* libgimp/gimpproceduraledb.c : #include <string.h>
* libgimpcolor/gimpcolor.def
* libgimpcolor/makefile.msc : added gimpadaptivesupersample
* libgimpmath/gimpmatrix.c : #include <string.h> for memcmp
* libgimpwidgets/gimpdialog.c - " - for strcmp
2000-12-20 Tor Lillqvist <tml@iki.fi>
* plug-ins/makefile.mingw.in (COMMON): Remove gpb and
spheredesigner. Add gih. (Thanks Sven and Jens for cleaning up the
brush stuff...)
* libgimp/gimp.def: Add gimp_invert.
2000-08-02 Tor Lillqvist <tml@iki.fi>
* libgimp/gimp.def: Add handful of missing functions, that
gdyntext now uses.
* plug-ins/makefile.cygwin: Move gdyntext from unofficial set to
official.
* plug-ins/gdyntext/font_selection.c: Remove unneeded inclusion of
Xlib.h and gdkx.h.
* plug-ins/gdyntext/gdyntext.c: Use G_PI.
2000-07-30 Tor Lillqvist <tml@iki.fi>
* libgimp/gimp.c
* libgimp/gimp.h
* libgimp/gimpmenu.c
* libgimp/gimpprotocol.c
* libgimp/gimpprotocol.h
* libgimp/gimp.def
* app/plug_in.c
* plug-ins/helpbrowser/helpbrowser.c
* plug-ins/script-fu/script-fu.c: As the GLib main loop and IO
channel implementation on Win32 now provides the same interface as
that on Unix, much of the Win32-only crap could be
removed. Especially, no need for "wakeup" out-of-band messages to
wake up pipe readers. No need for plug-ins to tell GIMP their
thread id.
* libgimp/gimp.c (gimp_extension_process): On Win32, use the new
g_io_channel_win32_wait_for_condition() function.
* plug-ins/makefile.cygwin: Add the homogenizer plug-in to the
unofficial part.
2000-07-04 Tor Lillqvist <tml@iki.fi>
* Makefile.am (SUBDIRS): Yes, there *is* a "build" directory. It's a
virtual module included in gimp, see CVSROOT/modules. With older
CVS clients you might need to do a recheckout to get it.
* plug-ins/script-fu/script-fu.c (marshall_proc_db_call): On
Windows, handle pending gtk events each time we come here,
otherwise we easily get resource starvation in a long-running
script. Thanks to Jean-Louis Hamel for this workaround. It's a
hack, I don't exactly know why it is needed, but it sure helps a
lot.
* plug-ins/makefile.cygwin: Add some new unofficial plug-ins. Use
macros from make.mingw.
* libgimp/makefile.cygwin: Update with new object files.
* libgimp/gimp.def: Add new entry points.
2000-06-07 Tor Lillqvist <tml@iki.fi>
* app/gimphelp.c (gimp_help_netscape): Test for help_path being
non-NULL was wrong way.
* app/preferences_dialog.c (file_pref_cmd_callback): Change
"From X Server" to "From windowing system".
* app/makefile.cygwin: Update according to file name changes.
* libgimp/gimp.def
* libgimp/gimpui.def
* libgimp/makefile.{cygwin,msc}: Update for Mitch's and Sven's
changes.
* plug-ins/libgck/gck/gckcolor.c: Include <glib.h> before
gimpmath.h, so G_PI don't get redefined when glib.h is included
later.
From Hans Breuer, portability fixes for MSVC compilation:
* app/dialog_handler.h: Bypass decalration of exported functions
which are marked with G_MODULE_EXPORT in dialog_handler.c when
compiling that file. Otherwise some compilers will get confused.
* app/dialog_handler.c: Define a test macro for above bypass.
* plug-ins/MapObject/mapobject_apply.c
* plug-ins/MapObject/mapobject_image.c
* plug-ins/MapObject/mapobject_shade.c: Include <string.h>.
* plug-ins/flame/flame.c: Define S_ISREG if needed.
* plug-ins/makefile.{cygwin,msc}: Updates.
* plug-ins/sel2path/global.h: Include <stdlib.h>.
* plug-ins/winsnap/winsnap.c: Include libgimp/gimpui.h.
2000-05-29 Tor Lillqvist <tml@iki.fi>
* gimprc.win32: Update to match Unix version.
* app/gimp.sym: Add dialog_{,un}register.
* app/dialog_handler.c: Include <gmodule.h>, mark above functions
with G_MODULE_EXPORT.
* app/makefile.{msc,cygwin}: Update to match current GLib 1.3.
* libgimp/gimp.def
* libgimp/gimpui.def: Update according to function name changes etc.
* libgimp/makefile.{msc,cygwin}: Update for changed file
names.
* libgimp/makefile.cygwin
* modules/makefile.cygwin: Simplify, use the
../build/win32/make.mingw file.
* plug-ins/common/gz.c (save_image): Somewhat more informative
error message on Win32 when gzip.exe isn't found (most probable
cause of error).
* tips/gimp_tips.txt: Clarify location of personal GIMP directory
on Unix and Windows.
2000-05-04 Tor Lillqvist <tml@iki.fi>
* gimprc.win32: Replace "color-cube" by "min-colors".
* */makefile.{cygwin,msc}: Updates. Install to /install/gimp.
* libgimp/gimp.def: Add gimp_min_colors.
* modules/cdisplay_highcontrast.c: Include gimpmath.h instead of
math.h. Use G_PI instead of M_PI.
2000-03-08 Tor Lillqvist <tml@iki.fi>
* app/cursorutil.c (gtkutil_compress_motion)
* app/edit_selection.c (process_event_queue_keys): Guard against
gdk_event_get returning NULL (which can happen at least on Win32).
* libgimp/gimp.def: Add a couple of new entry points.
* plug-ins/makefile.{cygwin,msc}: Update according to the source
file changes. Fix some typos in the .msc file.
Fixes by Hans Breuer:
* app/resize.c: Add some more includes.
* libgimp/gimpenv.c
* plug-ins/gflare/gflare.c: Win32 header lossage fixup.
2000-02-24 Tor Lillqvist <tml@iki.fi>
* libgimp/gimp.h (Win32): Include <stdlib.h> for __argc and__argv.
* libgimp/{gimp,gimpui}.def: Add new entry points.
* libgimp/gimpenv.c (Win32): Make compileable, with no geteuid etc.
* app/makefile.{cygwin,msc}
* libgimp/makefile.{cygwin,msc}: Update object file list.
2000-02-15 Tor Lillqvist <tml@iki.fi>
* libgimp/gimp.def
* libgimp/gimpui.def
* libgimp/makefile.{cygwin,msc}
* app/makefile.{cygwin,msc}
* plug-ins/makefile.{cygwin,msc}: Updates.
* app/datafiles.c (is_script): New Win32-only function, which
tests if a file's extension matches one of the extensions in the
PATHEXT environment variable (which the cmd.exe command
interpreter also uses). This is to avoid starting applications
associated with any random data file the user might have dropped
in the plug-ins folder, while still supporting plug-ins written in
scripting languages.
* app/gimpparasite.c (gimp_parasiterc_save): (Win32:) Cannot
rename to an existing file.
* plug-ins/Lighting/lighting_image.c
* plug-ins/Lighting/lighting_share.c
* plug-ins/MapObject/mapobject_preview.c
* plug-ins/MapObject/mapobject_shade.c: Use G_PI.
* plug-ins/common/gz.c: #ifdef G_OS_WIN32 was used before its
potential definition via glib.h.
* plug-ins/common/jpeg.c: Also recognize Exif files, which are
typically produced by digital cameras. The usually have a .jpg
file name extension, and would thus already match this plug-in,
but add the magic string just in case. They are loaded just fine
by libjpeg even if they don't have the JFIF signature.
* plug-ins/common/tiff.c: Set TIFF warning and error handler, so
we get to pass libtiff's messages through the normal channels.
2000-01-27 Tor Lillqvist <tml@iki.fi>
* app/main.c (on_signal): No need to use an #ifdef for G_OS_WIN32
as the whole function is already bypassed on Win32.
* libgimp/gimp.def
* libgimp/gimpui.def: Updates.
* plug-ins/makefile.cygwin
* plug-ins/makefile.msc: Goodbye to the megawidget library.
* plug-ins/common/papertile.c: MAIN() must be after PLUG_IN_INFO
definition.
2000-01-04 Tor Lillqvist <tml@iki.fi>
* libgimp/makefile.{cygwin.msc}: Add gimpcolorspace object.
* libgimp/gimp.def: Add functions from it.
Fixes from Hans Breuer:
* app/datafiles.c: redefine the executable flag for Win32
to _S_IREAD, to get _all_ files from the plug-in dirs as
executables (including scripts)
* app/main.c: Win32-specific changes to allow building Gimp as a
console application, with all its benefits (like inheriting the
console), but hide it if the user doesn't want it. Also, if stdout
goes to a console, give the user a chance to read the help or
version messages. (tml: I am not convinced that it is better to
build gimp as a console application, but let's try it this way for
a while.)
* app/makefile.{cygwin,msc}: Build as console application, and
link with shell32 library.
* app/paint_core.c (paint_core_motion): Pass the value of a call
to the function gimage_active_drawable() to the paint_func,
instead of just passing the address of gimage_active_drawable...
(tml: This code is only called when the TOOL_TRACES_ON_WINDOW flag
is on, and only the clone tool sets that, and the clone tool's
paint_func doesn't use the drawable argument, so this hasn't
caused any trouble.)
* app/plug_in.c: On Win32, to support scripts, use new function
xspawn() instead of _spawnv. Add some more code to properly kill
plug-ins.
* libgimp/color_display.h: Add G_MODULE_EXPORT declarations.
1999-10-25 Tor Lillqvist <tml@iki.fi>
* app/cursorutil.h: Uncomment the inclusion of gdkcursor.h that
should happen only with GTk+ 1.3, anyway? Why was it commented
out?
* app/tile_swap.c: Close before unlinking on Win32, too.
* libgimp/gimp.def: Updates, sorted.
* plug-ins/makefile.{cygwin,msc}: Add the gap and imagemap
plug-ins. Remove palette plug-in (what happened to it?).
Portability fixes from Hans Breuer:
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/gap/*.c:
* plug-ins/gimpressionist/gimpressionist.c:
* plug-ins/common/spheredesigner.c: Ifdefify system-dependent includes.
* plug-ins/common/psp.c: Remove an unused variable.
* plug-ins/imagemap/{imap_csim.y,imap_csim_parse.c}: Use
<string.h>, not <strings.h>.
* plug-ins/imagemap/imap_rectangle.c (rectangle_near_sash): Use
the & operator for function names to return pointers to them.
* plug-ins/winsnap/winsnap.c (sendBMPToGimp):
gimp_drawable_flush() should be called before resizing the layer
and image. Now the snapshot of a window is returned the correct
size, it's not padded in width to a multiple of four pixels.
1999-09-02 Tor Lillqvist <tml@iki.fi>
* libgimp/parasiteio.[ch]: New files. Types and functions related
to "standard" parasite types. Used for the
gimp-brush-pipe-parameters parasite that the gpb and psp plug-ins
handle, and the value of which is stored in gih files, from
which gimpbrushpipe.c parses it.
* libgimp/{Makefile.am,makefile.{cygwin,msc}}: Add new files.
* libgimp/gimp.def: Add its entry points.
* libgimp/gimp.h: Fix cosmetic argument name error.
* app/gimpbrushpipe.c: Remove code that previously
was copied here, use functions from parasiteio.c.
* plug-ins/common/gpb.c: Ditto. Add brush cell width and height
fields to the gih save dialog. Add cleverness to update rows and
columns as cell size is changes. (Still too easy for the user to
get confused, though.) Display corresponding guide grid on the
image. Unfortunately updating the guidelines doesn't seem to work.
* plug-ins/common/psp.c: Use functions from parasiteio.c.
1999-08-24 Tor Lillqvist <tml@iki.fi>
* plug-ins/common/gpb.c: Added saving of .gih files.
* plug-ins/common/psp.c: Small changes, renamed the parasite.
* docs/parasites.txt: Suggesta a parasite for pixmap brush pipes.
* docs/gih.txt: Add the above parasite on the second line after
the number of brushes. Suggest how to edit brush pipes.
* docs/gpb.txt: Mention the gpb plug-in.
* app/pixmapbrush.c: Small clarification.
Fixes by Hans Breuer:
* libgimp/gimp.def: Add missing entries.
* app/gimpimage.h: Added declaration of gimp_image_{freeze,thaw}_undo.
* modules/makefile.msc: Drop the .msvc from dll names.
* plug-ins/common/jpeg.c: Guard inclusion of
unistd.h. (save_dialog): Restrict text box height to help people
with small displays.
1999-08-21 Tor Lillqvist <tml@iki.fi>
* app/errorconsole.c: Also provide a Clear button.
* app/gimprc.c: Add a missing static function declaration.
* app/makefile.{cygwin,msc}: Add new files.
* libgimp/gimp.def: Add new entry points.
* plug-ins/common/jpeg.c: Must include glib.h first. You don't
want to know why.
* plug-ins/common/psp.c: New file. This plug-in Loads Paint Shop
Pro files (.psp and .tub). Doesn't yet save them. Handles only 24-
bit images (with or without alpha) correctly so far.
* plug-ins/makefile.{cygwin,msc}: Build psp. Somebody please add
it to the auto* build system, too. I guess a test for zlib (which it
needs) is needed in configure.in.
* app/makefile.cygwin
* app/makefile.msc
* plug-ins/makefile.cygwin
* plug-ins/makefile.msc
* modules/makefile.cygwin
* modules/makefile.msc
* tools/gcg/makefile.cygwin: Various updates. GCC-compiled DLL
name change.
* app/context_manager.c: Include paint_options.h for prototype.
* app/gimpimage.c (gimp_image_initialize_projection): Break out of
loop as soon as possible.
* app/menus.c (menus_last_opened_cmd_callback): Check if referring
to entry not in list.
* app/module_db.c (valid_module_name): (Win32) Require module DLL
names to include name of compiler built with.
* app/paths_dialog.c (paths_draw_segment_points): No use to draw
lines if we have less that two points.
* app/qmask.c: Include stdio.h and floating_sel.h.
* libgimp/makefile.cygwin: New file.
* libgimp/Makefile.am: Distribute above file.
* libgimp/gimp.def: Update.
* libgimp/gimpenv.c (gimp_directory): Don't warn about missing
home directory on Win32, it is perfectly natural.
* plug-ins/sel2path/global.h: Bypass unused declarations, some
of which clash with functions in MSVCRT.
* plug-ins/sel2path/math.c
* modules/colorsel_water.c: Define M_PI if necessary.
* plug-ins/sel2path/sel2path.c: Include config.h and
glib.h. Define rint() if needed.
* plug-ins/sel2path/vector.c: Include glib.h (for hypot() renaming
on Win32; In the MS C runtime, as hypot() is non-ANSI, it's called
_hypot(), sigh).
* plug-ins/sinus/sinus_logo.h: Use indexed format, it is easier on
some compilers than the huge string.
* README.win32: Advice about gcc.
* libgimp/gimp.{c,h,def}: New way to get address of PLUG_IN_INFO
to the gimp dll, similar as used by the EMX port. Much cleaner.
Works well with gcc also now.
* app/gimprc.c: Remove gratuituous printf.
* app/makefile.msc: Update with new files.
* plug-ins/makefile.msc: Small updates.
* plug-ins/makefile.cygwin: New file.
* plug-ins/gfig/gfig.c
* plug-ins/script-fu/script-fu-scripts.c: Include <glib.h> early.
* */makefile.msc: Use the DEBUG nmake variable to determine
whether to build for debugging or not.
* libgimp/gimp.def: Add some missing entry points.
* plug-ins/makefile.msc: Redo as to Yosh's reorg of the
sources. Add some plug-ins missing earlier. (For instance print,
which only prints to files on Win32. We still need a real Win32
print plug-in. Much code probably could be lifted from the bmp
plug-in.)
* plug-ins/MapObject/arcball.c: Change Qt_ToMatrix() to void,
instead of returning the address of its parameter (dubious
practise), as its value is never used anyway.
For the following changes, thanks to Hans Breuer:
* plug-ins/FractalExplorer/Dialogs.h: Check for feof, not to get
into an endless loop on malformed files.
* plug-ins/common/header.c: Support indexed images.
* plug-ins/common/sunras.c
* plug-ins/common/xwd.c
* plug-ins/print/print.h
* plug-ins/sgi/sgi.h: Include config.h, guard inclusion of
unistd.h.
* plug-ins/print/print.c: Guard for SIGBUS being undefined. Open
output file in binary mode.
* po/makefile.msc: Add no.
* libgimp/gimp.c: No need for <io.h> on Win32.
* libgimp/{gimp,gimpui}.def: Add two entry points.
* libgimp/gimp.h: Can't use __declspec(dllexport) for PLUG_IN_INFO
when compiling with gcc on Win32. Also handle __argc, __argv and
_stdcall differently with gcc on Win32
* libgimp/gimpenv.c: Include <string.h>.
* libgimp/gimpfeatures.h.in: Remove lots of extraneous trailing blanks.
* libgimp/gimpfileselection.c: Include <glib.h> early, see above.
* libgimp/{gimpwire,parasite}.c: Test for NATIVE_WIN32, not
_MSC_VER.
* libgimp/makefile.msc: Miscellaneous updates. The gimpi library
is now built as a static library.
* config.h.win32, README.win32: Small changes.
* tools/pdbgen/pdb/*.pdb: Include <string.h>.
* app/*_cmds.c: Autogenerated files reflect above changes.
* libgimp/makefile.msc app/makefile.msc: Various updates,
including new object files. Gtk+ directory now should be called
gtk+ (not gtk-plus). Use win32-specific gdk subdir. Glib directory
now should be called just glib.
* libgimp/gimp.def: Updates.
* libgimp/gimpfeatures.h.win32: Made current with
gimpfeatures.h.in.
* libgimp/gimpfileselection.c: Define S_ISDIR and S_ISREG if
necessary.
* tools/pdbgen/pdb/fileops.pdb: Must have a
statement (even an empty one) after a label.
* app/fileops_cmds.c: Autogenerated file reflects above changes.
* app/crop.c: Include <string.h>.
* app/{app_procs,batch,fileops,datafiles,errorconsole,general,
plug_in,temp_buf,tile_swap}.c: Test NATIVE_WIN32, not
_MSC_VER. (NATIVE_WIN32 means we are using the Microsoft C
runtime, even if we might be compiling with gcc.)
* app/fileops.c: Don't include <process.h> here.
* app/fileops.h: Do include <process.h> here.
* app/gimpparasite.c: Include config.h, guard inclusion of
<unistd.h>. (Is the inclusion of unistd.h in source files all over
the place really necessary?)
* app/ink.c: MSC doesn't handle conversion from unsigned __int64
to double, so cast to signed.
* app/lut_funcs.c: Include config.h, and define rint() if necessary.
* app/pixel_processor.c: Include config.h without "..", like in
all the other places. Include <string.h>
* app/text_tool.c: Guard the "POINTS" identifier that clashes with
<windows.h>, sigh.