because the packing options are different for GtkH/VBox and GtkBox
itself which is now instantiable. Instead, always use
gtk_box_pack_start() and specify expanding explicitely.
2009-01-17 Michael Natterer <mitch@gimp.org>
* all files with a GPL header and all COPYING files:
Change licence to GPLv3 (and to LGPLv3 for libgimp).
Cleaned up some copyright headers and regenerated the parsers in
the ImageMap plugin.
svn path=/trunk/; revision=27913
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.
2004-07-31 Sven Neumann <sven@gimp.org>
* libgimp/gimpmenu.c (gimp_menu_make_preview): use a GtkImage and
a GdkPixbuf instead of the deprecated GtkPreview widget.
2004-04-22 Sven Neumann <sven@gimp.org>
* plug-ins/flame/flame.c
* plug-ins/gimpressionist/brush.c: ported the last two users of
gimpmenu.h to GimpDrawableComboBox.
* libgimp/gimpmenu.[ch]: declared the functions found here as
deprecated.
* plug-ins/common/plugindetails.c
* plug-ins/ifscompose/ifscompose.c: silent the compiler.
2004-04-21 Sven Neumann <sven@gimp.org>
* libgimp/gimpdrawablecombobox.c
* libgimp/gimpimagecombobox.c
* libgimp/gimpmenu.c: changed the label for the empty menu from
"None" to "Empty" since that's what GTK+ uses.
* libgimpwidgets/gimpintcombobox.[ch]: added convenience function
gimp_int_combo_box_connect().
* plug-ins/common/bumpmap.c
* plug-ins/common/compose.c
* plug-ins/common/depthmerge.c
* plug-ins/common/displace.c
* plug-ins/common/lic.c
* plug-ins/common/warp.c: ported to GimpDrawableComboBox.
* plug-ins/Lighting/lighting_ui.c
* plug-ins/MapObject/mapobject_ui.c
* plug-ins/common/sample_colorize.c: use
gimp_int_combo_box_connect(). This restores the correct behaviour
of setting the drawable_ID to the first drawable from the list if
it's invalid.
2004-04-21 Sven Neumann <sven@gimp.org>
* libgimp/gimpmenu.c (gimp_menu_add_none): use the same label as
in the new combo_box widgets.
* libgimpwidgets/gimpintcombobox.[ch]
* libgimpwidgets/gimpintstore.[ch]: use LibGIMP copyright headers.
2004-01-12 Sven Neumann <sven@gimp.org>
* libgimp/gimpmenu.c (gimp_image_menu_new): call the callback with
the selected image which is not necessarily the requested one
(fixes bug #92586).
Also changed all menu constructors to always call the registered
callback even when the value is -1 because the menu is empty.
* app/gui/plug-in-commands.c (plug_in_run_cmd_callback): run the
procedure even if there's no active GIMP display. The display and
screen is then taken from the current cursor position.
* app/gui/gui-vtable.c (gui_get_display_name): don't call
gimp_display_get_by_ID() unless gdisp_ID is > 0.
2003-07-24 Michael Natterer <mitch@gimp.org>
* libgimp/gimpmenu.c: removed the GWeakNotify stuff again and free
the ID arrays after creating the menu. Pass the ID as user_data to
the "activate" callback using GINT_TO_POINTER(). Added previews
to gimp_image_menu_new(). More cleanup.
2003-07-23 Michael Natterer <mitch@gimp.org>
* libgimp/gimpmenu.h: changed the return value of
GimpConstraintFunc from gint to gboolean.
* libgimp/gimpmenu.c: fixed bug introduced by my latest cleanup:
Don't free the drawable arrays after creating the menus since they
are used in the callbacks. Instead, free them using a GWeakNotify
on the menu. Factored menu and item creation out to utility
functions to reduce code duplication. Cleanup.
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-06-19 Sven Neumann <sven@gimp.org>
* libgimp/gimpmenu.c: when idle dispatching calls to plug-ins, use
the data from the last call, not the first one. This fixes some
weird behaviour that the brush/font/gradient/pattern selection
widgets showed under certain circumstances.
* plug-ins/gfig/gfig.c (select_brush_callback): removed debugging
output that I forgot to remove before my last commit.
2003-03-28 Sven Neumann <sven@gimp.org>
* app/gui/Makefile.am
* app/gui/font-select.[ch]: added font selection GUI to be used
through the PDB.
* app/gui/brush-select.c
* app/gui/gradient-select.c
* app/gui/palette-select.c
* app/gui/pattern-select.c: unified preview and dialog sizes.
* tools/pdbgen/Makefile.am
* tools/pdbgen/pdb/font_select.pdb: added new file that provides
PDB accessors to the font selection GUI.
* app/pdb/font_select_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimp_pdb.h
* libgimp/gimpfontselect_pdb.[ch]
* tools/pdbgen/groups.pl: regenerated.
* libgimp/Makefile.am
* libgimp/gimpfontmenu.c
* libgimp/gimpmenu.[ch]: added a simple font selection widget to
be used by plug-ins and scripts.
* plug-ins/script-fu/script-fu-scripts.c: use the new font
selection widget. Fixes bug #105610.
2003-01-05 Manish Singh <yosh@gimp.org>
* many files in app, modules and libgimp*: cleanup, removed unecessary
G_OBJECT() casts. Should do the same for plug-ins, when more of them
get undeprecated.
2002-05-13 Sven Neumann <sven@gimp.org>
* libgimp/gimpmenu.c: use gimp_image_get_name().
* plug-ins/common/deinterlace.c: don't use 'O' as mnemonic, it's
already taken by the _OK button.
2001-07-24 Michael Natterer <mitch@gimp.org>
Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)
* configure.in: require glib/gtk+ >= 1.3.7, commented out the
gtkxmhtml stuff.
From now on, you will need glib, pango, atk and gtk+ HEAD from CVS
to hack or use GIMP HEAD.
Beware, it crashes randomly :)
* app/core/Makefile.am
* app/core/gimpmarshal.list: new file plus rules to generate
gimpmarshal.[ch] from it.
* app/core/*
* app/tools/*
* app/widgets/*
* libgimpwidgets/*: started to use the glib object system. All
core/ objects are still gtk objects however. All signals are
created using g_signal_new(). There are many gtk+ artefacts left.
Finally, we will _not_ use the gtk_signal_foo() wrappers and
friends any more.
* app/colormaps.c
* app/devices.[ch]
* app/disp_callbacks.c
* app/errorconsole.c
* app/file-save.[ch]
* app/interface.c
* app/module_db.c
* app/nav_window.c
* app/ops_buttons.c
* app/scroll.c
* app/user_install.c
* app/gui/about-dialog.c
* app/gui/brush-editor.c
* app/gui/brushes-commands.c
* app/gui/color-notebook.c
* app/gui/colormap-dialog.c
* app/gui/dialogs-commands.c
* app/gui/dialogs-constructors.c
* app/gui/file-commands.c
* app/gui/file-dialog-utils.c
* app/gui/file-new-dialog.c
* app/gui/file-open-dialog.[ch]
* app/gui/file-save-dialog.c
* app/gui/gradient-editor.c
* app/gui/gradients-commands.c
* app/gui/image-commands.c
* app/gui/info-dialog.[ch]
* app/gui/layer-select.c
* app/gui/layers-commands.c
* app/gui/menus.c
* app/gui/offset-dialog.c
* app/gui/palette-editor.c
* app/gui/palettes-commands.c
* app/gui/patterns-commands.c
* app/gui/preferences-dialog.c
* app/gui/resize-dialog.[ch]
* app/gui/splash.c
* app/gui/tips-dialog.c
* app/gui/tool-options-dialog.c
* app/gui/toolbox.c
* app/gui/tools-commands.c
* libgimp/gimpbrushmenu.c
* libgimp/gimpmenu.c
* libgimp/gimppatternmenu.c
* libgimp/gimpui.c
* libgimpbase/gimpenv.c: tons and tons of changes like "const
gchar*", switch from GdkDeviceInfo to GdkDevice (very incomplete
and currently disables), lots of s/gtk_signal/g_signal/,
removal/replacement of deprecated stuff,
s/GtkSignalFunc/GCallback/ and lots of small changes and fixes
while I was on it, zillions of warnings left...
* modules/Makefile.am: disabled the water color selector
temporarily (XInput issues).
* plug-ins/Makefile.am
* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am
* plug-ins/common/plugin-defs.pl: simply excluded all plug-ins
which did not build (including Script-Fu). They are trivial to
fix.
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.
Tue Jul 6 22:16:07 BST 1999 Andy Thomas <alt@gimp.org>
* ./app/layer.c.orig
* ./app/lc_dialog.c.orig
* ./app/paths_dialog.c.orig
* ./app/pathsP.h.orig
* ./libgimp/gimpmenu.c.orig
* ./tools/pdbgen/pdb/paths.pdb.orig
* ./app/paths_cmds.c
* ./app/internal_procs.c
Fixed small LCP menu preview problems. Now works for all
image types and updated correctly when alpha channel added.
Additional PDB functions for paths. Fixed some PDB functions
(gimp_paths_set_points). Now works as advertised.
Wed Jun 23 23:52:54 BST 1999 Andy Thomas <alt@gimp.org>
* gimp/app/gimppreviewcache.c
* gimp/app/gimppreviewcache.h
* gimp/app/drawable_cmds.c
* gimp/app/gdisplay.c
* gimp/app/gimpdrawableP.h
* gimp/app/gimage_cmds.c
* gimp/app/Makefile.am
* gimp/app/layers_dialog.c
* gimp/app/channel.c
* gimp/app/lc_dialog.c
* gimp/app/lc_dialog.h
* gimp/app/lc_dialogP.h
* gimp/app/layer.c
* gimp/app/gimpdrawable.c
* gimp/app/internal_procs.c
* gimp/libgimp/gimp.h
* gimp/libgimp/gimpimage.c
* gimp/libgimp/gimpdrawable.c
* gimp/libgimp/gimpmenu.c
* gimp/tools/pdbgen/pdb/drawable.pdb
* gimp/tools/pdbgen/pdb/gimage.pdb
Added thumbnail image preview functions.
Previews are visible on the L&C&P dialogs as well as in the
drawables/channels/ menus generated for plugins
(see the bumpmap & Mapobject plugins).
PDB interface exists to simply extract a thumbnail preview
of a given size. This is much quicker & more efficient
than getting the image data tile-by-tile if you only need a small
image since a "preview cache" has been implemented. This cache also
reduces the number of times the tiles cached is scanned since smaller
previews are always generated from large ones if they exists and
are valid.
Some possible usages (I don't intend to implement these ideas. Just
suggestions). More plugins using the thumbnail preview (ie any that
use multiple images). Indication of "active image" somewhere.....
Actually almost anywhere a drawable/image name appears.
Sat Oct 31 14:57:40 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/gradient.c
* app/gradient.h
* app/internal_procs.c
* app/plug_in.c
* app/session.c
* app/session.h
* libgimp/Makefile.am
* libgimp/gimpmenu.h
* libgimp/app/gimprc.c
* libgimp/libgimpmenu.c
* plug-ins/script-fu/scripts/test-sphere.scm
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu.c
* plug-ins/script-fu/script-fu-scripts.c
New file:-
* libgimp/gimpgradientmenu.c
New gradient selector widget (smaller than the editor). This can now
be controlled via the PDB.
New widget which gives easy way to do gradient selections. This
new widget is used by script-fu (see the test->sphere script).
gradient.c needs to be split up (source is almost already split
I will complete this RSN).
Tue Oct 20 23:20:40 BST 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/brush_select.h
* app/brush_select.c
* app/internal_procs.c
* app/gimpbrushlist.c
* libgimp/Makefile.am
* libgimp/gimpmenu.h
* libgimp/gimpmenu.c
* plug-ins/script-fu/scripts/3d-outline.scm
* plug-ins/script-fu/scripts/test-sphere.scm
* plug-ins/script-fu/scripts/trochoid.scm
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu.c
New file libgimp/gimpbrushmneu.c.
Brush dialog can now be fully controlled via the PDB. New widget (not
true widget) type added to libgimpui (gimp_brush_select_widget()).
Plugins should easily be able to control & select brushes. Script-fu
updated to use new widget. See the test script for example.
Started to change some of the scripts to use the new widget types.
Thu Oct 1 22:39:14 BST 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/patterns.c app/pattern_select.c app/internal_procs.c
* app/patterns.h app/pattern_select.h app/plug_in.c
* libgimp/gimpmenu.h libgimp/gimpmenu.c libgimp/Makefile.am
* plug-ins/gfig/gfig.c plug-ins/script-fu/scripts/test-sphere.scm
* plug-ins/script-fu/script-fu.c plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu-scripts.c
* New libgimp/gimppatternmenu.c
Pattern dialog can now be controlled via the PDB. New widget (not true
widget) type added to libgimpui (gimp_pattern_select_widget()). Plugins
should easily be able to control & select patterns. Script-fu
updated to use new widget. See the test script for example.
* Upgraded to libtool 1.2b
* Reversioned libgimp to use gtk-style without a funky soname
* configure.in: craft GLIB_CFLAGS and GLIB_LIBS
* Makefile.am (pretty much all of em): changed to use new library
naming scheme. Only link libgimpui and libgtk et al to the plugins
that actually need them.
* app/gimage_cmds.c: corrected typo that resulted in corrupt PDB
record
* libgimp/gimp.h
* libgimp/gimpwire.h
* libgimp/gimpmenu.[ch]: clean up the callback code
* Removed unecessary inclusion of gtk headers for plugins that
don't use em
* plug-ins/zealouscrop/zealouscrop.c: use gint8 instead of gboolean,
save some mem
* plugged some warnings in animationplay, flame, fp, gee, gfig
* gimptool.in: changes for library reversioning, added --nogimpui
option for not linking in libgimpui
* configure.in: added finnish translation
-Yosh
Sat Sep 19 01:19:18 BST 1998 Andy Thomas <alt@picnic.demon.co.uk>
* app/blend.c app/brush_select.c app/brush_select.h app/bucket_fill.c
app/gimpbrushlist.c app/internal_procs.c app/plug_in.c libgimp/gimp.c
libgimp/gimp.h libgimp/gimpmenu.c libgimp/gimptile.c
plug-ins/gfig/gfig.c
Infrastructure to allow gimp dialogs to be controlled from plugins.
Brush dialog can now be invoked multiple times. Dialogs invoked
via plugins do not control the active brush (dialog only used for
selections).
New gimp_interactive_selection_brush() function to popup dialog
Example of usage in the gfig plugin.
Other dialogs should be able to use this method of invocation.