2001-10-22 Michael Natterer <mitch@gimp.org>
General cleanup of the selection tools and their PDB wrappers:
* app/core/Makefile.am
* app/core/gimpimage-contiguous-region.[ch]
* app/core/gimpimage-mask-select.[ch]: new files providing a clean,
uniform API for the selection functionalities. Changed order of
parameters to be consistent, removed code duplication.
The region returned by the "by_color" function is not really
contiguous but the API is so similar to "by_seed" and it's used
in the same context so it's fair enough to put them together.
Also, I'm not sure if the two is_pixel_sufficiently_different()
I've optimized away were meant to do *exactly* the same. Added
a comment there to remember the former difference.
* app/core/gimpchannel.[ch] (gimp_channel_feather): removed the
"output" channel parameter and made it optionally push an undo
(like the other channel operations do).
* app/core/gimpimage-mask.c: call gimp_channel_feather() with
"push_undo == TRUE", removed some useless comments.
* app/tools/gimpbycolorselecttool.[ch]
* app/tools/gimpellipseselecttool.[ch]
* app/tools/gimpfreeselecttool.[ch]
* app/tools/gimpfuzzyselecttool.[ch]
* app/tools/gimprectselecttool.[ch]: removed all the actual
selection functionality and call the new gimp_image_mask_select_*()
and gimp_image_contiguous_region_*() functions instead.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpiscissorstool.c: use new function
gimp_image_mask_select_channel() instead of doing the same manually.
* app/tools/gimpbucketfilltool.c: find_contiguous_region() ->
gimp_image_contiguous_region_by_seed().
* tools/pdbgen/Makefile.am
* tools/pdbgen/groups.pl
* tools/pdbgen/pdb/selection_tools.pdb: added new group "Selection
Tools" which depends only on "core/" stuff (not on "tools/" any
more, brrrr).
* tools/pdbgen/pdb/text_tool.pdb: don't include "appenv.h"
* tools/pdbgen/pdb/tools.pdb: removed the selection tools.
* app/pdb/Makefile.am
* app/pdb/selection_tools_cmds.c: new file.
* app/pdb/internal_procs.c
* app/pdb/text_tool_cmds.c
* app/pdb/tools_cmds.c: regenerated.
* libgimp/Makefile.am
* libgimp/gimp_pdb.h
* libgimp/gimpselectiontools_pdb.[ch]: new files.
* libgimp/gimptools_pdb.[ch]: regenerated
Misc cleanups:
* app/app_procs.c: call splash_create() with "no_splash_image"
as parameter.
* app/display/gimpdisplay-render.c
* app/display/gximage.c: don't include "appenv.h".
* app/gui/gui.c: call session_restore() only if "restore_session"
is TRUE.
* app/gui/session.c: don't "if(restore_session)" here and don't
include "appenv.h"
* app/gui/splash.[ch]: added "gboolean show_image" parameter to
splash_create(), don't include "appenv.h"
* app/tools/gimppainttool.[ch]: added a "GimpGradient" parameter
to gimp_paint_tool_get_color_from_gradient().
* app/tools/gimppaintbrushtool.c: pass the gradient.
* app/tools/gimpselectiontool.c
* app/tools/gimptransformtool.c
* app/tools/tool_manager.c: s/GDisplay/GimpDisplay/.
* app/widgets/gimpcontainergridview.[ch]: removed the "white_style"
class variable and don't fiddle around with colors and styles...
* themes/Default/gtkrc: ...do the same here with a simple rc style.
2001-08-07 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpbutton.[ch]: cleanup.
* app/Makefile.am
* app/errorconsole.[ch]: removed...
* app/gui/Makefile.am
* app/gui/error-console-dialog.[ch]: ...added here. Lots of cleanup,
create a vbox instead of a dialog.
* app/gui/dialogs-constructors.c
* app/gui/dialogs.c: added a dockable for the error console.
* app/errors.c
* app/gui/gui.c
* app/gui/menus.c: changed accordingly.
* app/widgets/gimpcontainerview.c: conntect "extended_clicked" to
the "extended_clicked" callback, not "clicked".
* app/widgets/gimplayerlistview.c: set the layer option box'
spacing in "style_set".
* app/widgets/gimplistitem.c: argh.
* themes/Default/gtkrc: changed the default theme to set a smaller
font only for the dockable because that's where saving screen
estate really makes sense. May need some further tweaking.
2001-08-06 Michael Natterer <mitch@gimp.org>
* configure.in
* themes/Default/images/Makefile.am
* themes/Default/images/tools/Makefile.am: some new Makefiles to
make it installable.
* Makefile.am
* gtkrc: removed...
* themes/Default/Makefile.am
* themes/Default/gtkrc: ...added here.
* themes/Default/imagerc: new file (not used, just for
documentation) which loads the default theme's images in the same
way the inlined pixbufs are registered with the stock system.
* gimprc.in
* gimprc.win32
* user_install
* user_install.bat
* app/gimprc.[ch]: added "theme-path" and "theme" gimprc variables.
* app/app_procs.c: prase gimprc before initializing the GUI.
* app/core/gimpdatafiles.[ch]: added support for getting only
subdirectories in the callback.
* libgimpbase/gimpenv.c: as a temp_hack gimp_gtkrc(); returns the
default theme's gtkrc.
* app/gui/gui.c: build a hash of theme directories and select
the one configured in gimprc.theme. Use gimp_gtkrc()'s default
value if there is no theme installed or configured.
* app/gui/preferences-dialog.c: Added theme_path to the GUI. No
stuff for selection the theme yet.
* app/gui/menus.c: beautify <Image>/Tools/
* app/tools/gimpcroptool.c: register in <Image>/Tools/Transform Tools/
2001-08-05 Michael Natterer <mitch@gimp.org>
* Makefile.am
* configure.in
* themes/.cvsignore
* themes/Makefile.am
* themes/Default/.cvsignore
* themes/Default/Makefile.am
* themes/Default/images/.cvsignore
* themes/Default/images/*.png
* themes/Default/images/tools/.cvsignore
* themes/Default/images/tools/*.png: new place for all images
which are registered with the stock system. The default images are
all inlined but we will install the default theme later along with
an appropriate gtkrc as a template for custom themes.
Added PNGs of all tools icons. Thanks to syngin :)
* pixmaps/.cvsignore
* pixmaps/Makefile.am: reverted everything to the old state. This
directory will go away soon.
* libgimpwidgets/gimpstock.[ch]: changed accordingly. Register
stock icons in GTK_ICON_SIZE_BUTTON for all tools.
* app/core/gimptoolinfo.[ch]
* app/tools/tool_manager.[ch]: GimpToolInfo wants a stock_id and a
pre-rendered GdkPixbuf instead of ugly icon_data now. Added some
workarounds until GimpPreview is a GtkImage and uses GdkPixbuf
instead of TempBuf.
* app/tools/Makefile.am
* app/tools/icons.h: die, uglyness, die.
* app/tools/[all tools].c: register with a stock_id, not a
icon_data pointer.
* app/gui/dialogs-constructors.c: Oops, GIMP badly crashed on
changing the image for the past few days :)
* app/gui/menus.c: create the tools' menu entries with stock
icons.
* app/gui/toolbox.c: use GtkImages instead of GimpPreviews for
the toolbox buttons. Will need to change this back as soon
as GimpPreview actually _is_ a GtkImage.