2002-02-10 Sven Neumann <sven@gimp.org>
* app/batch.c
* app/general.c
* app/core/gimpbrushgenerated.c
* app/core/gimpbrushpipe.c
* app/core/gimpdata.c
* app/file/file-open.c
* app/file/file-save.c
* app/file/file-utils.c: don't include ctype.h, use g_ascii_*
functions from GLib instead.
* app/gui/file-open-dialog.c: disabled multiple selection in the
file open dialog until this is fixed in GTK+.
2002-02-10 Adam D. Moss <adam@gimp.org>
* app/core/gimpimage-convert.[ch]:
RGB->Indexed quantizer version 3.0 (the rest of the commit started
a year ago -- whoops). Divide colours within CIE L*a*b* space using
CPercep module (cpercep.[ch]), colour-match and dither likewise,
change the underlying box selection criteria and division point
logic, bump luminance precision upwards, etc. etc.
* app/core/cpercep.[ch] (new files): utility module used by
quantizer for quantifying perceptual colour distances
* app/core/gimpimage-convert-data.h (new file): move the big
static data arrays out of gimpimage-convert.c
* app/core/gimpimage-convert-fsdither.h: static-ify data
* app/core/Makefile.am: add cpercep.[ch] and gimpimage-convert-data.h
2002-02-10 Michael Natterer <mitch@gimp.org>
* app/undo.c: removed #if 0'ed old display update hackery. Don't
flush the displays here at all and include nothing from
"display/".
* app/undo_history.c
* app/gui/edit-commands.c: call gdisplays_flush() if undo_pop() or
undo_redo() return TRUE.
* app/core/gimpimage-contiguous-region.[ch]: allow a contiguous
transparent region to be selected/filled (#71058).
* app/core/gimpdrawable-bucket-fill.[ch]
* app/core/gimpimage-mask-select.[ch]: take a boolean
fill_transparent/select_transparent parameter and pass it to the
contiguous region funcion.
* app/display/gimpdisplayshell-dnd.c: pass
fill_transparent == FALSE to bucket_fill_full because we fill the
whole drawable anyway here.
* app/tools/gimpbucketfilltool.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/selection_options.[ch]: added toggle buttons to the
tool options and pass the value to the fill and select core
functions.
* tools/pdbgen/pdb/misc_tools.pdb
* tools/pdbgen/pdb/selection_tools.pdb: hardcode
"select_transparent" to FALSE to get the old behaviour. Should
export the new feature to plug-ins however.
* app/pdb/misc_tools_cmds.c
* app/pdb/selection_tools_cmds.c: regenerated.
2002-02-08 Sven Neumann <sven@gimp.org>
* app/config/gimprc.[ch]: added gimp_rc_duplicate() and started to
add inline documentation.
* app/config/test-config.c: test the new functionality.
2002-02-07 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-new.[ch]: renamed the image size utility
functions from foo_size_bar() to foo_memsize_bar(), use "gsize"
instead of "gdouble". Also take the selection mask into account
for the initial image size.
* app/display/gimpdisplayshell.c
* app/gui/file-new-dialog.c: changed accordingly.
* app/display/gimpdisplayshell-handlers.c: connect to "undo_event",
not "dirty" and "clean" to dirty the image title.
* app/tools/gimpmovetool.c: factored common code out to
gimp_move_tool_start_guide(), also set a useful cursor there.
2002-02-07 Sven Neumann <sven@gimp.org>
* app/widgets/gimpwidgets-utils.c (gimp_message_box): changed the
message dialog icon to WARNING since we mostly use this for
warnings. We should change the API so that gimp_message knows
about the severity of the message it displays.
* themes/Default/images/stock-wilber-16x16.png
* themes/Default/images/stock-wilber-32x32.png
* themes/Default/images/stock-wilber-48x48.png
* themes/Default/images/stock-wilber-64x64.png: slightly better icons.
* themes/Default/Makefile.am
* themes/Default/images/Makefile.am
* themes/Default/images/stock-wilber-eek.png: added a new eek wilber
based on suggestions made in bug-report #65194. Actually I'd like it
be more eeeky, so feel free to submit a better one.
* libgimpwidgets/gimpstock.[ch]: register the new stock icon.
* app/gui/gui.c (gui_really_quit_dialog): use STOCK_WILBER_EEK.
2002-02-07 Sven Neumann <sven@gimp.org>
* app/gui/file-new-dialog.c
* app/gui/resize-dialog.c
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcroptool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimpposterizetool.c
* app/tools/gimpthresholdtool.c
* app/tools/gimptransformtool.c: moved Cancel button to the left.
* data/images/Makefile.am
* data/images/tips_wilber.png: removed ...
* data/images/wilber-tips.png: ... and readded under a new name.
* app/gui/tips-dialog.c: changed accordingly.
* data/images/wilber-wizard.png: new wilber for the user installation
dialog.
* app/gui/user-install-dialog.c: use the new wilber icon. We still
need a good new eeek wilber.
* themes/Default/gtkrc: don't change the default font size.
2002-02-06 Michael Natterer <mitch@gimp.org>
* app/core/gimpobject.c: made the gimp_object_get_memsize()
debugging output configurable by a global "gimp_debug_memsize"
boolean.
* app/display/gimpdisplay.c: removed duplicated prototype.
* app/display/gimpdisplayshell.[ch]: renamed the various cursor
functions to be more consistent and shorter. Compress window title
updates by adding a "gboolean title_dirty" and updating the title
in gimp_display_shell_flush(). Added "%m" (memory size) to the
possible title string substitutions.
* app/display/gimpdisplay-foreach.c
* app/display/gimpdisplayshell-handlers.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimptool.c: changed accordingly.
* app/display/gimpdisplayshell-callbacks.c: forgot to grab the
pointer when dragging guides from the rulers. Coincidentially,
this also fixes the buggy offset between guide and mouse
pointer...
Cleaned up the main tool event callback a but more.
* app/widgets/gimppreview.c
* app/gui/commands.c: set the new global "gimp_debug_memsize"
toggle to TRUE while calling gimp_object_get_memsize().
* app/gui/preferences-dialog.c: added a image title example
containing the new "%m" feature.
* docs/gimprc-1.3.5.in: document "%m" in the manpage.
* app/tools/gimpbezierselecttool.c: reordered some statements.
* app/tools/gimpdrawtool.[ch]: store the GimpDisplay passed to
gimp_draw_tool_start() in draw_tool->gdisp and use it for
coordinate transfomration. This way we can paint on a display
which is not tool->gdisp.
* app/tools/gimppainttool.c: changed the gimp_draw_tool_foo()
calls needed to make the straight_line preview work in a way
that does not interfere with paint_tool subclasses which want
to do their own drawing (like the clone tool).
Also changed the paint_tools PRETRACE_PAINT and POSTTRACE_PAINT
flags usage in a way that subclasses can use them without major
hackery: don't simply wrap gimp_display_flush_now() with
PRETRACE/POSTTRACE calls, but wrap the actual painting calls, so
subclasses are able to do useful things with paint_tool->*_coords.
* app/tools/gimpclonetool.c: removed poking around in draw_tool
internals and simply suspend()/resume() it in
PRETRACE_PAINT/POSTTRACE_PAINT to get the clone_src indicator
drawn correctly.
2002-02-05 Michael Natterer <mitch@gimp.org>
Removed pointer grabbing from all tools:
* app/tools/gimptool.[ch]: added "gboolean perfectmouse" which
defaults to FALSE but can be set to TRUE in a tool's instance_init
function.
* app/display/gimpdisplayshell-callbacks.c: look at
active_tool->perfectmouse and gimprc.perfectmouse and do the
pointer grab/ungrab here. The pointer is now grabbed right before
dispatching the button_press to the tool and ungrabbed after
the tool's button_release has returned. It is also grabbed
*always*, not only if tool->state got ACTIVE by button_press,
which makes it all much simpler...
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpcroptool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpfliptool.c
* app/tools/gimpfreeselecttool.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimpinktool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.c
* app/tools/gimprectselecttool.c
* app/tools/gimpselectiontool.c
* app/tools/gimptexttool.c
* app/tools/gimptransformtool.c: removed
gdk_pointer_grab()/ungrab() calls all over the place. Also removed
inclusion of "display/gimpdisplayshell.h" from most of them.
2002-02-04 Michael Natterer <mitch@gimp.org>
* app/tools/gimptool.[ch]: added fields for both the tool's
toggled and untoggled GdkCursorType, GimpToolCursorType and
GimpCursorModifier. Added a default implementation of
gimp_tool_cursor_update() which uses the new fields. Added
gimp_tool_set_cursor() as simple wrapper around the resp.
GimpDisplayShell functions so tools don't need to know them.
Tool implementations can either set the new fields in their
cursor_update() function and chain up or call the new wrapper.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimperasertool.c
* app/tools/gimpfliptool.c
* app/tools/gimpinktool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.[ch]
* app/tools/gimppathtool.c
* app/tools/gimpselectiontool.c
* app/tools/gimpsmudgetool.c
* app/tools/gimptexttool.c
* app/tools/gimptransformtool.c: changed accordingly:
- set default values in the tools' instance_init functions.
- changed the cursor_update() stuff.
- removed inclusion of subclasses in gimppainttool.c
- the cursor_update() functions are better than before but still evil.
- i probably broke some of them...
2002-02-03 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/scripts/frosty-logo.scm: don't redefine min.
Thanks to Jeff Trefftzs <trefftzs@tcsn.net> for spotting this.
2002-02-03 Michael Natterer <mitch@gimp.org>
* app/display/Makefile.am
* app/display/display-types.h
* app/display/gimpstatusbar.[ch]: new widget derived from
GtkStatusbar. Contains the coordinates display, a progress bar
which is also used for status message display and a cancel button.
Added a simplified API for pushing/popping messages which takes a
string as context_id and does the conversion to guint internally
on each call.
* app/display/gimpdisplayshell.[ch]: removed the status bar code.
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell-handlers.c
* app/display/gimpdisplayshell-scale.c
* app/gui/view-commands.c
* app/gimpprogress.c: changed accordingly.
Removed knowledge about GimpDisplayShell from tools:
* app/tools/gimptool.[ch]: added gimp_tool_push_status() and
gimp_tool_pop_status() so tools don't need to fiddle with
display details.
* app/tools/gimpdrawtool.[ch]: pass a GimpDisplay instead of
a GdkWindow to gimp_draw_tool_start() (the window passed was
always gdisp->shell->canvas->window).
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.[ch]
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpcroptool.[ch]
* app/tools/gimpeditselectiontool.c
* app/tools/gimpfreeselecttool.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.[ch]
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.[ch]
* app/tools/gimppathtool.c
* app/tools/gimprectselecttool.[ch]
* app/tools/gimptransformtool.c: changed accordingly:
- pass GimpDisplay to gimp_draw_tool_start().
- use GimpTool's new status push/pop functions.
- removed the statusbar context_id from all tool structs.
* app/gui/dialogs-constructors.[ch]: a bit cleanup in preparation
of dockable editor dialogs.
2002-02-02 Manish Singh <yosh@gimp.org>
* configure.in
* Makefile.am
* app/Makefile.am
* docs/Makefile.am
* plug-ins/print/Makefile.am
* tools/Makefile.am
* (the various manpages): versioned the binaries and manpages.
Added an --enable-default-binary switch to configure to make
symlinks for unversioned things (defaults to no for 1.3). The
perl stuff isn't touched, but that's disabled in the build here
anyway.
2002-02-01 Manish Singh <yosh@gimp.org>
* libgimpwidgets/gimppatheditor.[ch]: treeviewized and undeprecated
* plug-ins/webbrowser/webbrowser.c: set_size_request takes a 0 size
and makes it 1 instead of -1 like set_usize did, so pass -1
2002-01-31 Simon Budig <simon@gimp.org>
* plug-ins/rcm/rcm.c: register as "plug_in_rotate_colormap"
instead of "plug-in-rotate-colormap". This fixes the usage
in gimp-python (despite the fact that there is no PDB
interface)
2002-01-31 Michael Natterer <mitch@gimp.org>
* app/core/gimp.c
* app/core/gimpdocuments.c
* app/core/gimpmodules.c
* app/core/gimppalette.c: fixed some get_memsize()
implementations, give useful names to some global objects so the
new mem profile of "the_gimp" looks nicer.
* app/gui/menus.c
* app/gui/commands.[ch]: added a "Debug" menu to the toolbox,
offer a mem profile of the global "Gimp" instance.
2002-01-31 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer.[ch]: removed gimp_layer_has_alpha(), use
gimp_drawable_has_alpha() instead.
* app/core/gimpimage-convert.c
* app/core/gimpimage-merge.c
* app/core/gimpimage-projection.c
* app/display/gimpdisplayshell.c
* app/gui/layers-commands.c: changed accordingly.
* app/core/gimpimage.[ch]: added gimp_image_has_alphe(), made some
variable names more verbose and use enum types instead of "gint"
in functions calling initial_region() and combine_regions().
* app/widgets/gimpchannellistview.c: show an alpha channel preview
only if the image has alpha.
* app/widgets/gimppreview.c: reordered functions,
gimp_preview_render_and_flush(): fixed channel preview rendering,
calculate the component byte offsets before entering the render
loop instead of duplicating the render code for the gray/alpha
case.
2002-01-31 Sven Neumann <sven@gimp.org>
* app/widgets/gimpfontselection-dialog.c: use GtkTreeViews instead of
deprecated GtkCLists.
* app/widgets/gimpfontselection.c: use a proper size for the eeky hack.
2002-01-31 Manish Singh <yosh@gimp.org>
* app/gui/file-open-dialog.c: fixed up so it works with the patch
I posted to gtk-devel-list. Real fix pending discussion there.
2002-01-30 Sven Neumann <sven@gimp.org>
* app/gui/about-dialog.c: GDK_RGB_DITHER_NORMAL should be good enough.
* app/gui/preferences-dialog.c: undef GTK_DISABLE_DEPRECATED for
GtkListItem.
* app/widgets/gimpcomponentlistitem.c: don't use GtkPreview methods
on a GimpPreview. The component views are still broken but at least
the warnings are gone.
* app/widgets/gimpfontselection.c: fixed warnings by hardcoding a
font size when validating a font name :-(
* app/widgets/gimppreview.c: set allocation to desired size.
* libgimpwidgets/gimpcolorarea.c: flipped so it looks like before
the port to GtkDrawingArea. Use GDK_RGB_DITHER_MAX to render.
2002-01-30 Sven Neumann <sven@gimp.org>
* configure.in: depend on glib-1.3.13, pango-0.24 and gtk+-1.3.13.
Bumped our version number to 1.3.3.
* NEWS: updated.
2002-01-30 Manish Singh <yosh@gimp.org>
* app/gui/file-open-dialog.c: ported to the new treeviewized file
selection widget. Unfortunately, multiple selections aren't supported
anymore so it's still broke. I'll make a patch to gtk to address this
after I get some sleep.
* app/widgets/gimppreview.h
* libgimpwidgets/gimpcolorarea.h
* plug-ins/FractalExplorer/Events.c
* plug-ins/common/film.c
* plug-ins/common/plugindetails.c
* plug-ins/fp/fp_misc.c
* plug-ins/rcm/rcm_callback.c
* plug-ins/rcm/rcm_misc.c: REALLY REALLY ugly hack to get things to
build under the latest enum deprecations. Of course, we'll remove
these when these files compile with deprecation turned on
* plug-ins/dbbrowser/dbbrowser_utils.c: warning cleanup
* libgimpwidgets/Makefile.am
* libgimpwidgets/gimpoffsetarea.c: need a custom marshaller for
our signal since the gtk marshaller we used went away.
2002-01-29 Sven Neumann <sven@gimp.org>
* plug-ins/common/screenshot.c: added a call to gtk_widget_show() that
got lost during porting. Now you can shoot the whole screen again.
2002-01-27 Sven Neumann <sven@gimp.org>
* app/gui/file-new-dialog.c: moved the memory size information out
of the frame label to avoid redrawing the whole frame for every change.
2002-01-25 Michael Natterer <mitch@gimp.org>
* configure.in: CPPFLAGS: added -DGTK_DISABLE_DEPRECATED
* libgimpwidgets/gimpdialog.c: still use the deprecated
gtk_window_set_policy() but spit out a #warning.
* app/widgets/widgets-types.h
* app/widgets/gimpitemfactory.[ch]: made it a GtkItemFactory
subclass. This way we can reproduce the effect of
gtk_item_factory_get_from_path() which is deprectated for good
reasons. For GIMP, using it its perfectly OK since we only have
one item factory per "<prefix>".
* app/widgets/gimpbrushfactoryview.[ch]
* app/widgets/gimpbufferview.[ch]
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpdatafactoryview.[ch]
* app/widgets/gimpdialogfactory.[ch]
* app/widgets/gimpdock.c
* app/widgets/gimpdockbook.c
* app/widgets/gimpdocumentview.[ch]
* app/widgets/gimpdrawablelistview.[ch]
* app/widgets/gimppreview.c
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell.[ch]: pass around GimpItemFactory
pointers instead of "const gchar *" item factory identifiers.
Replaced gtk_window_set_policy() by gtk_window_set_resizable()
and other recommended stuff.
* app/gui/about-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/dialogs.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gradient-editor.c
* app/gui/menus.c
* app/gui/offset-dialog.c
* app/gui/splash.c
* app/gui/tips-dialog.c
* app/gui/toolbox.c: lots of
s/gtk_item_factory_from_path/gimp_item_factory_from_path/,
gtk_window_set_policy() replacements, misc fixes.
* plug-ins/gdyntext/charmap_window.c
* plug-ins/gdyntext/gdyntext_ui.c
* plug-ins/gdyntext/message_window.c
* plug-ins/imagemap/imap_main.c: replaced gtk_window_set_policy().
2002-01-22 Sven Neumann <sven@gimp.org>
* gimptool-1.3.in: fixed usage info.
* themes/Default/images/Makefile.am: should really install the stock
icons defined in our gtkrc.