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-09-02 Michael Natterer <mitch@gimp.org>
* tools/test-clipboard.c (test_clipboard_copy_callback): don't
quit the main loop after transferring the data to GTK, it needs a
running main loop to get the chunks tranferred to X.
2005-08-05 Manish Singh <yosh@gimp.org>
* tools/pdbgen/pdbgen.pl: store canonical names of proc names and
args in the proc structure.
* tools/pdbgen/app.pl
* tools/pdbgen/lib.pl: use the above.
* app/pdb/*_cmds.c: regenerated.
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>
* app/core/gimpdrawable-foreground-extract.[ch]: added a progress
parameter.
* app/tools/gimpforegroundselecttool.[ch]: changed the "select"
method to take a GimpDisplay instead of a GimpImage.
* tools/pdbgen/pdb/drawable.pdb
* app/tools/gimpforegroundselecttool.c: changed accordingly.
* app/pdb/drawable_cmds.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-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-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-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-25 Michael Natterer <mitch@gimp.org>
* tools/test-clipboard.c: added --store option which tries to
store a file in the clipboard manager, improved error reporting.
2005-05-22 Sven Neumann <sven@gimp.org>
* tools/gimp-mkenums (parse_trigraph): use quotewords() from
Text::ParseWords to split the trigraph. This function correctly
deals with commas inside quotes.
* app/core/core-enums.[ch]: tweaked descriptions in the
GimpDashPreset enum.
2005-05-22 Michael Natterer <mitch@gimp.org>
* tools/test-clipboard.c: added --selection-type option which
allows operating on any of PRIMARY, SECONDARY and CLIPBOARD.
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-15 Michael Natterer <mitch@gimp.org>
* app/pdb/Makefile.am
* app/pdb/procedural-db-query.[ch]: new files containing all the
evil string matching and DB dump code.
* tools/pdbgen/pdb/procedural_db.pdb: removed the evilness here
and use the new functions.
* app/pdb/procedural_db_cmds.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-14 Michael Natterer <mitch@gimp.org>
* app/pdb/procedural_db.h
* tools/pdbgen/pdb/procedural_db.pdb: removed pdb_type_name()
uglyness.
* app/pdb/procedural_db.c: add private function
procedural_db_type_name() instead which uses gimp_enum_get_value()
and always returns a newly allocated string. Use it for the error
messages.
* app/pdb/procedural_db_cmds.c: regenerated.
2005-05-04 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-proc-def.[ch] (plug_in_proc_def_find): new
function which finds a proc_def in a GSList by its procedure name.
* app/plug-in/plug-in-message.c
* app/plug-in/plug-ins.c
* tools/pdbgen/pdb/plug_in.pdb: use it instead of iterating and
comparing manually.
* app/pdb/plug_in_cmds.c: regenerated.
* app/plug-in/plug-in-def.c: minor cleanups.
2005-05-04 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-proc-def.[ch] (plug_in_proc_def_set_icon):
new function.
* tools/pdbgen/pdb/plug_in.pdb: removed the same code here and use
the new function.
* app/pdb/plug_in_cmds.c: regenerated.