2002-03-22 Sven Neumann <sven@gimp.org>
* app/plug-in/plug-in-rc.c
* app/plug-in/plug-ins.c
* app/tools/tool_manager.c
* app/widgets/gimppreview.c
* app/widgets/gimptoolinfopreview.c: plugged a couple of mem leaks
found using valgrind.
* libgimpwidgets/gimpcolorarea.c (gimp_color_area_expose): don't draw
anything if an idle update is pending.
2002-03-20 Sven Neumann <sven@gimp.org>
* app/Makefile.am: moved display after gui to make the build work
with the latest "truly ugly hack" in app/display/Makefile.am.
* app/tools/gimpcolorbalancetool.[ch]: dialog overhaul.
2002-03-20 Sven Neumann <sven@gimp.org>
* app/core/core-enums.[ch]: registered GimpConvertDitherType.
* app/gui/convert-dialog.c: simplified a lot by using enums.
* app/tools/paint_options.c: include gimpenummenu.h.
2002-03-19 Sven Neumann <sven@gimp.org>
* app/base/Makefile.am
* app/base/base-enums.c
* app/core/Makefile.am
* app/core/core-enums.c
* app/widgets/Makefile.am
* app/widgets/widgets-enums.c: purely cosmetic change.
* app/paint/Makefile.am
* app/paint/paint-enums.[ch]: generate paint-enums.c with registered
enums. Skip GIMP_BRUSH_PRESSURE and GIMP_CUSTOM_CONVOLVE so they
don't get exported to libgimp and are not registered as enum values.
* tools/pdbgen/pdb/paint_tools.pdb: removed special casing of
GimpBrushApplicationMode and GimpConvolveType since the forbidden
values are now skipped anyway.
* libgimp/gimpcompat.h: removed compat defines for the forbidden
enum values. They shouldn't have been used.
* app/tools/Makefile.am
* app/tools/tools-enums.[ch]: generate tools-enums.c with registered
enums.
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
* app/paint/gimpclone.[ch]
* app/paint/gimpconvolve.h
* app/paint/gimpdodgeburn.h
* app/tools/gimpclonetool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.[ch]
* app/tools/gimpdodgeburntool.c
* app/tools/paint_options.c: changed accordingly. Added more enum
radio frames and enum option menus.
2002-03-19 Michael Natterer <mitch@gimp.org>
* app/tools/tools-types.h: added enum GimpMotionMode which can be
one of { EXACT, HINT, COMPRESS }.
* app/tools/gimptool.[ch]: removed tool->perfectmouse and added
tool->motion_mode. Default to GIMP_MOTION_MODE_HINT.
* app/tools/gimpinktool.c
* app/tools/gimppainttool.c: set GIMP_MOTION_MODE_EXACT.
* app/tools/gimpfuzzyselecttool.c: set GIMP_MOTION_MODE_COMPRESS.
* app/tools/gimpeditselectiontool.[ch]: ditto. Removed
gtkutil_compress_motion().
* app/display/gimpdisplayshell-callbacks.c: look at
active_tool->motion_mode and perform pointer grabbing and motion
compression accordingly. Also, don't request motion hints from
XInput devices because the wacom driver sends crap (fixes#6901).
This change also brings hints and ordinary motions back in sync
albeit compression, so IMHO it also fixes#68542 and #22375, but
this needs further investigation.
2002-03-18 Sven Neumann <sven@gimp.org>
* app/widgets/Makefile.am
* app/widgets/widgets-enums.[ch]: use gimp_mkenums to create
widgets-enums.c, added it to CVS since it contains translatable
messages now.
* app/widgets/gimpenummenu.[ch]: added new functions
gimp_enum_radio_box_new() and gimp_enum_radio_frame_new() that create
groups of radio buttons out of enum types.
* app/core/core-enums.[ch]: registered more enums.
* app/paint/gimpdodgeburn.h
* app/tools/gimpbucketfilltool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpmagnifytool.c
* app/tools/transform_options.[ch]: use gimp_enum_radio_frame_new()
for some tool options.
2002-03-18 Michael Natterer <mitch@gimp.org>
* app/paint/gimppaintoptions.h
* app/tools/paint_options.c: put the "Fade Out" and "Gradient" stuff
into separate frames with togglebutton titles.
* app/widgets/gimpchannellistview.c: use
gimp_image_mask_select_channel() instead of reinventing the wheel.
* app/widgets/gimpvectorslistview.c: removed unneeded inclusion
of "core/gimpimage-mask.h".
* app/widgets/gimpcolormapeditor.c: set the hex entry to 7 digits,
some cleanup.
* app/widgets/gimppaletteeditor.c: set the vertical scrollbar
to GTK_POLICY_AUTOMATIC.
Added support for configuring some more GUI dimensions using
widget class style properties:
* app/widgets/gimpdock.c: made "separator_height" work correctly.
* app/widgets/gimpdockbook.c: added "tab_height".
* app/widgets/gimpeditor.c: added "button_icon_size".
* app/widgets/gimpimagedock.c: added "minimal_width".
* app/widgets/gimptoolbox.c: added "tool_icon_size".
* themes/Default/gtkrc: set the properties to their default values
for documentation.
* etc/gtkrc_user: added a (commented out) example style which makes
lots of things a smaller.
2002-03-17 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpwidgets.[ch]: new function to set the sensitivity
of an option_menu.
* app/base/base-enums.[ch]: register and describe GimpHistogramChannel.
* app/core/Makefile.am
* app/core/core-enums.[ch]: build with gimp-mkenums, added core-enums.c
to CVS, added descriptions for GimpPreviewSize.
* app/display/Makefile.am
* app/display/display-enums.[ch]: build with gimp-mkenums, added
display-enums.c to CVS, added descriptions for GimpCursorMode.
* app/gui/preferences-dialog.c: more GimpEnumMenus.
* app/tools/gimpcurvestool.c
* app/tools/gimphistogramtool.c
* app/tools/gimplevelstool.c: use a GimpEnumMenu for the Channel menu.
Allow alpha channel in HistogramView. These tools needs more work...
2002-03-17 Sven Neumann <sven@gimp.org>
* configure.in: define GIMP_MKENUMS for use in Makefile.am.
* tools/Makefile.am
* tools/gimp-mkenums: a modified version of glib-mkenums that parses
literal descriptions for enum values out of the header file.
* app/base/Makefile.am
* app/base/base-enums.h: added descriptions for the InterpolationType.
* app/base/base-enums.c: added to CVS although it is generated since
translatable messages are extracted from this file and translators
shouldn't need to build stuff.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpenummenu.[ch]: new widget to create a GtkMenu or a
GtkOptionMenu directly from a registered enum.
* app/gui/preferences-dialog.c
* app/gui/resize-dialog.c
* app/tools/transform_options.c: use gimp_enum_option_menu_new() for
the Interpolation menus.
2002-03-14 Manish Singh <yosh@gimp.org>
* app/tools/gimpfuzzyselecttool.c: add missing support for
anchoring a selection (bugfix ported from stable branch)
2002-03-14 Michael Natterer <mitch@gimp.org>
Re-enabled the display filters. They work exactly the same way
as before except for the color_area pseudo-display. More stuff
to come...
* app/display/Makefile.am: build them again.
* app/display/gimpdisplayshell-filter-dialog.[ch]
* app/display/gimpdisplayshell-filter.[ch]: changed to the new
namespace, work on GimpDisplayShell instead of GimpDisplay.
* app/display/gimpdisplayshell-render.c
* app/display/gimpdisplayshell.[ch]: changed accordingly.
* app/gui/dialogs-constructors.c: enabled the dialog constructor.
* app/gui/gui.c: call the init() function.
* app/gui/menus.c: enabled the menu entry, but moved it to
<Image>/View. Moved "Undo History..." to <Image>/Image.
* modules/Makefile.am: build and install the modules.
* modules/cdisplay_gamma.c
* modules/cdisplay_highcontrast.c: made them compile with minimal
changes.
Unrelated:
* app/undo_history.c: connect to the image's "disconnect", not
"destroy" signal.
* app/tools/gimpselectiontool.c: mask out the irrelevant parts of
the "state" passed to the modifier_key() func, so tool_options
button toggling works with other modifiers (e.g. num_lock)
pressed.
2002-03-12 Michael Natterer <mitch@gimp.org>
* app/gimprc.[ch]
* app/gui/preferences-dialog.c
* app/paint/gimppaintoptions.[ch]
* app/tools/paint_options.[ch]
* app/tools/tool_manager.[ch]: removed the "global_paint_options"
gimprc option because it doesn't quite fit the new dockable dialog
architecture.
* app/gui/brush-select.[ch]
* app/gui/gradient-select.[ch]
* app/gui/palette-select.[ch]
* app/gui/pattern-select.[ch]: removed the "Global Brush/Pattern/...
Selection" part of them. They are now only used for temp popup
selections and the PDB. *Lots* of cleanup.
* app/gui/convert-dialog.c
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/gui.c
* app/gui/menus.c
* app/gui/palette-import-dialog.c
* app/plug-in/plug-in.c: changed accordingly.
Cleaned up the palette and other data PDB stuff:
* tools/pdbgen/Makefile.am
* tools/pdbgen/groups.pl: added "palette_select" and "palettes".
* tools/pdbgen/pdb/palette_select.pdb: new file. Makes the palette
selection PDB controllable.
* tools/pdbgen/pdb/palettes.pdb: new file cut out of palette.pdb
because of API symmetry with brushes, patterns, ...
* tools/pdbgen/pdb/palette.pdb: removed from here.
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/palette.pdb
* tools/pdbgen/pdb/pattern_select.pdb
* tools/pdbgen/pdb/patterns.pdb: lots of cleanup.
Autogenerated stuff:
* app/pdb/Makefile.am
* app/pdb/palette_select_cmds.c
* app/pdb/palettes_cmds.c: new files.
* app/pdb/brush_select_cmds.c
* app/pdb/brushes_cmds.c
* app/pdb/gradient_select_cmds.c
* app/pdb/gradients_cmds.c
* app/pdb/internal_procs.c
* app/pdb/palette_cmds.c
* app/pdb/pattern_select_cmds.c
* app/pdb/patterns_cmds.c: regenerated.
* libgimp/Makefile.am
* libgimp/gimp_pdb.h
* libgimp/gimppalettes_pdb.[ch]
* libgimp/gimppaletteselect_pdb.[ch]: new files.
* libgimp/gimpgradientselect_pdb.[ch]
* libgimp/gimppalette_pdb.[ch]
* libgimp/gimppatterns_pdb.c: regenerated.
* devel-docs/libgimp/tmpl/gimpgradients.sgml
* devel-docs/libgimp/tmpl/gimppalette.sgml: regenerated.
2002-03-10 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpwidgets.h: removed type checking casts from
macros which return parts of pseudo-widgets.
* app/widgets/gimpbrushfactoryview.c: changed accordingly.
* app/widgets/gimpdialogfactory.c: added a "dispose"
implementation used to destroy all dialogs the factory has
created.
* app/gui/toolbox.[ch]: removed toolbox_free(), removed the static
"toolbox_shell" variable, set the active tool correctly on
creation, don't show the window here (fixes session menagement),
take the vbox' spacing into account when calculating the window's
resize hints.
* app/gui/gui.c: don't include "toolbox.h", don't call
toolbox_free().
* app/widgets/gimpfontselection.c: set the width of the entry to
16 chars on creation so it doesn't fall back to it's insanely
large default width, minor stuff.
* app/tools/gimptexttool.c
* app/tools/selection_options.c: some more scale_entries.
2002-03-10 Michael Natterer <mitch@gimp.org>
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/tool-options-dialog.[ch]: made the tool options dialog
dockable. Create a fancy tab for it which looks like the old
dialog header.
* app/gui/gui.c
* app/gui/menus.c
* app/gui/toolbox.c: changed accordingly.
* app/tools/gimpbucketfilltool.c
* app/tools/gimpcroptool.c
* app/tools/gimperasertool.c: moved the tool toggling widgets to
the top.
* app/tools/paint_options.c: show the paint mode menu for all
paint tools but set it insensitive where it makes no sense.
Reduces flickering and makes the tools' similarity more obvious.
* app/widgets/gimpdataeditor.c: fixed segfault in
gimp_data_editor_set_data() (data may be NULL), don't pass NULL to
gtk_entry_set_text(), make the name entry insensitive if data ==
NULL.
* app/widgets/gimpdialogfactory.c: fixed longstanding bug which
made newly created docks steal the first session entry with a NULL
widget instead of the first _dock_ session entry with a NULL
widget. Added even more debugging output. Cleanup.
* app/widgets/gimpdockbook.c: made the tab/menu widget code more
general to cover the tool options tab.
2002-03-08 Michael Natterer <mitch@gimp.org>
* app/core/core-types.h: added GimpPaletteEntry typedef.
* app/core/gimppalette.h: removed it here.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpeditor.[ch]: new widget which is the base class
for everything which is a vbox and has a button area at the
bottom.
* app/widgets/gimpcontainerview.[ch]: derived from GimpEditor now.
* app/widgets/gimpdataeditor.[ch]: a GimpEditor subclass which is
the base class for the new data editors below.
* app/widgets/gimpbrushfactoryview.c
* app/widgets/gimpbufferview.c
* app/widgets/gimpchannellistview.c
* app/widgets/gimpdatafactoryview.c
* app/widgets/gimpdocumentview.c
* app/widgets/gimpitemlistview.c
* app/widgets/gimplayerlistview.c
* app/widgets/gimpvectorslistview.c
* themes/Default/gtkrc: chagec accordingly.
* app/gui/Makefile.am
* app/gui/brush-editor.[ch]
* app/gui/gradient-editor.[ch]
* app/gui/palette-editor.[ch]: removed...
* app/widgets/gimpbrusheditor.[ch]
* app/widgets/gimpgradienteditor.[ch]
* app/widgets/gimppaletteeditor.[ch]: ...and added back as
GimpDataEditor subclasses. Lots of cleanup and stuff...
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/gradient-editor-commands.c
* app/gui/gui-types.h
* app/gui/palette-select.c
* app/tools/gimpcolorpickertool.c: changed accordingly.
2002-03-03 Michael Natterer <mitch@gimp.org>
Use gdouble in a [0.0..1.0] range for opacity values in the whole
core's API. Convert them using (opacity * 255.999) when passing
them to base/ and paint-funcs/
Affected functions:
* app/core/gimpchannel.[ch]: gimp_channel_[set|get]_opacity()
* app/core/gimpimage.[ch]: gimp_image_[apply|replace]_image()
* app/paint/gimppaintcore.[ch]: gimp_paint_core_[paste|replace]_canvas()
* app/core/core-types.h: added defines GIMP_OPACITY_TRANSPARENT
and GIMP_OPACITY_OPAQUE, just like the ones from
paint-funcs/paint-funcs-types.h
* app/gimprc.c
* app/image_map.c
* app/core/gimpcontext.c
* app/core/gimpdrawable-blend.c
* app/core/gimpdrawable-bucket-fill.c
* app/core/gimpdrawable.c
* app/core/gimpedit.c
* app/core/gimplayer.c
* app/core/gimplayer-floating-sel.c
* app/core/gimppalette.c
* app/paint/gimpairbrush.c
* app/paint/gimpclone.c
* app/paint/gimpconvolve.c
* app/paint/gimpdodgeburn.c
* app/paint/gimperaser.c
* app/paint/gimppaintbrush.c
* app/paint/gimpsmudge.c
* app/tools/gimpinktool.c
* app/widgets/gimpcolorpanel.c
* app/widgets/gimplayerlistitem.c
* app/widgets/gimppreview.c
* app/xcf/xcf-load.c: changed accordingly, use the new constants.
2002-03-03 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-mask-select.[ch]: changed
gimp_image_mask_select_channel() to not take "drawable" and
"sample_merged" parameters (which are silly in some contexts) but
simply the offsets of the passed channel.
* app/gui/channels-commands.c
* app/tools/gimpbezierselecttool.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimpiscissorstool.c: changed accordingly.
* app/tools/gimpdrawtool.[ch]: chaged gimp_draw_tool_draw_lines()
and _draw_strokes() to take an additional "use_offsets" parameter
like the other drawing functions.
* app/path_curves.c
* app/tools/gimpvectortool.c: changed accordingly.
* app/paint/gimppaintcore.c: removed #if 0'ed code which was
identical to other functions.
* app/tools/gimpselectiontool.c: use the GimpEditSelectionTool's
"arrow_key_func" so it's now possible to keyboad-move the current
layer and selection with all selection tool. Needs some more
tweaking...
* app/tools/gimpiscissorstool.[ch]
* app/tools/gimpvectortool.[ch]: derive them from GimpSelectionTool
to make the modifier key <-> tool options interaction work. Ported
IScissors to the new way the draw_tool works.
2002-02-27 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimppaintinfo.[ch]: new object for registering
GimpPaintCore subclasses, just like GimpToolInfo for tools.
* app/core/gimp.h: added gimp->paint_info_list to hold them.
* app/core/gimptoolinfo.[ch]: removed the "pdb_string" and
"paint_core_name" pointers and added a GimpPaintInfo pointer
instead.
* app/core/gimpimage-mask.c
* app/gui/vectors-commands.c
* app/tools/gimpbezierselecttool.c
* app/tools/tool_manager.c: changed accordingly.
* app/paint/paint-types.h
* app/paint/paint.c: added paint class registration stuff like
the tool_manager does.
* app/paint/gimpairbrush.[ch]
* app/paint/gimpclone.[ch]
* app/paint/gimpconvolve.[ch]
* app/paint/gimpdodgeburn.[ch]
* app/paint/gimperaser.[ch]
* app/paint/gimppaintbrush.[ch]
* app/paint/gimppencil.[ch]
* app/paint/gimpsmudge.[ch]: added register functions which are
called from paint_init().
The core object system lives not only in "core/", but in
core, paint, vectors, file, plug-in and xcf, so I had to hack
a bit to keep the deps working:
* app/pdb/pdb-types.h: don't include "paint/paint-types.h"...
* app/core/core-types.h: ...because it's included here. Moved
the inclusions of the core's subsystems' "foo/foo-types.h"
files to the end of the file.
* app/paint/Makefile.am: Some slimy radioactive uglyness.
* app/gui/drawable-commands.c
* app/tools/gimpblendtool.c: removed calling core functions via
the PDB because it makes no sense to do it manually in only a few
places. This needs to be done generically using generated
wrappers living in "app/commands/" or something...
2002-02-26 Michael Natterer <mitch@gimp.org>
* app/paint/gimppaintcore-stroke.[ch]: added
gimp_paint_core_stroke_vectors() which strokes the whole vector
using one undo step.
* app/gui/vectors-commands.c: use the new function.
* app/tools/gimpvectortool.c: changed to do evil voodoo in
gimp_vectors_tool_set_vectors() and thus to always find a
display to show the vectors.
2002-02-26 Simon Budig <simon@gimp.org>
* app/gui/vectors-commands.c
* app/tools/gimpvectortool.c
* app/tools/gimpvectortool.h: fixed a name of a function
and corrected gimp_vector_tool_set_vectors.
2002-02-26 Michael Natterer <mitch@gimp.org>
Added some kind of paint core registry. It's ugly and will change...
* app/core/gimp.c: call paint_init() and paint_exit().
* app/core/gimptoolinfo.[ch]: added "gchar *paint_core_name" to
the GimpToolInfo structure and the contstructor.
* app/tools/tool_manager.c: pass the class names of the
GimpPaintCore subclasses to gimp_tool_info_new().
* app/paint/Makefile.am
* app/paint/paint.[ch]: new files. Simlply ref/unref all paint
core classes so we can find them using g_type_from_name().
* app/paint/gimppaintcore-stroke.[ch]: changed to take an array
of GimpCoords, not just gdouble.
* tools/pdbgen/pdb/paint_tools.pdb: convert the stroke array here.
* app/gui/vectors-commands.c: ad-hoc implementation of vectors
stroking. Double click now sets the active vectors in the vectors
tool.
* app/pdb/paint_tools_cmds.c: regenerated.
2002-02-26 Simon Budig <simon@gimp.org>
* app/tools/gimpdrawtool.c
* app/tools/gimpdrawtool.h: Added function gimp_draw_tool_draw_strokes
to be able to draw lines from a GimpCoords array.
* app/vectors/gimpanchor.h: removed "active", since this should
be a GUI thing.
* app/vectors/gimpstroke.c
* app/vectors/gimpstroke.h
* app/vectors/gimpbezierstroke.c
* app/vectors/gimpbezierstroke.h: Implemented (and fixed API) for
interpolation.
* app/tools/gimpvectortool.c
* app/tools/gimpvectortool.h: Changed accordingly, we can actually
draw polylines now.
2002-02-25 Simon Budig <simon@gimp.org>
* app/vectors/gimpbezierstroke.c
* app/tools/gimpvectortool.[ch]
* app/vectors/gimpstroke.[ch]
* app/vectors/gimpvectors.[ch]: Fixed various bugs, *including*
the nasty one from this morning (thanks Mitch).
2002-02-25 Simon Budig <simon@gimp.org>
* app/vectors/gimpvectors.c
* app/vectors/gimpvectors.h: Changed to a container of
GimpStrokes. This will enable it to contain different
Stroke-types in one Vectors-Object (think Entry in path
dialog)
* app/vectors/gimpstroke.c
* app/vectors/gimpstroke.h
* app/vectors/gimpbezierstroke.c
* app/vectors/gimpbezierstroke.h: New Objects: A connected
component in a vector.
* app/vectors/gimpbezier.c
* app/vectors/gimpbezier.h: Removed, obsoleted by gimpstroke
and gimpbezierstroke.
* app/tools/gimpvectortool.c
* app/vectors/Makefile.am
* app/vectors/vectors-types.h
* app/vectors/gimpanchor.h: Changed accordingly.
There is a nasty bug I am yet unable to find in the tool.
Don't use it. For some reason a wrong function instead of
gimp_stroke_real_anchor_get_next gets called. I have *no*
idea, whats wrong here. I stared at the code for hours.
If somebody has an idea I'd appreciate a hint.
2002-02-23 Michael Natterer <mitch@gimp.org>
General undo cleanup:
* app/undo.[ch]: made all undo structs private. Changed all
undo_push_foo() functions to take useful parameters instead of
"gpointer foo_ptr" and create the undo structs internally.
Renamed lots of functions so they are more self-explanatory
(like undo_push_gimage_mod -> undo_push_image_size). Added some
undo functions (channel reordering is undoable now). Never pass
in a UndoType, as they are reseved for groups now (see below).
Lots of cleanup and stuff...
* app/undo_types.h: is a private header now which defines "enum
UndoImplType" which is reserved for actual undo operations.
All enum values are named "FOO_UNDO".
* app/core/core-types.h: added the "UndoType" enum here and don't
include "undo_types.h" any more. The UndoType values are all
named "FOO_UNDO_GROUP" and are reserved for undo groups.
The ID space of actual undo operations and undo groups
is now strictly disjunct.
* app/core/gimpchannel.h
* app/core/gimpimage.h
* app/core/gimplayer.h
* app/core/gimplayermask.h
* app/paint/gimppaintcore.h
* app/tools/gimptransformtool.h: removed undo stuct definitions.
* app/undo_history.c
* app/path_transform.h
* app/core/gimpchannel.c
* app/core/gimpdrawable-transform.c
* app/core/gimpedit.c
* app/core/gimpimage-convert.c
* app/core/gimpimage-crop.c
* app/core/gimpimage-mask.c
* app/core/gimpimage-merge.c
* app/core/gimpimage-qmask.c
* app/core/gimpimage-resize.c
* app/core/gimpimage-scale.c
* app/core/gimpimage.c
* app/core/gimplayer-floating-sel.c
* app/core/gimplayer.c
* app/display/gimpdisplayshell-dnd.c
* app/gui/channels-commands.c
* app/gui/image-commands.c
* app/gui/layers-commands.c
* app/gui/paths-dialog.c
* app/paint/gimppaintcore.c
* app/tools/gimpbezierselecttool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/tools/gimptexttool.c
* app/tools/gimptransformtool.c
* tools/pdbgen/pdb/guides.pdb
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/undo.pdb: changed accordingly.
* app/pdb/guides_cmds.c
* app/pdb/layer_cmds.c
* app/pdb/undo_cmds.c: regenerated.
* app/core/gimpimage.[ch]: added infrastructure for holding a
GimpList of GimpVectors objects. The API is the same as for layers
and channels. Not used yet.
2002-02-22 Simon Budig <simon@gimp.org>
* app/vectors/Makefile
* app/vectors/Makefile.am
* app/vectors/Makefile.in
* app/vectors/gimpanchor.h
* app/vectors/gimpbezier.c
* app/vectors/gimpbezier.h
* app/vectors/gimpvectors.c
* app/vectors/gimpvectors.h
* app/vectors/vectors-types.h: new files, the beginning
of a new vector infrastructure for gimp.
* configure.in
* app/Makefile.am
* app/core/core-types.h: changed accordingly.
* app/tools/Makefile.am
* app/tools/gimpvectortool.c
* app/tools/gimpvectortool.h
* app/tools/tools.c: New tool without practical use (yet),
using the new infrastructure.
to be continued...
2002-02-21 Michael Natterer <mitch@gimp.org>
Made the paint tool PDB wrappers work again (a bit at least...)
* app/Makefile.am: changed linking order. libtool sucks.
* app/undo.c: check if active_tool is a GimpPaintTool before
casting it.
* app/paint/Makefile.am
* app/paint/paint-types.h: added new files/types.
* app/paint/gimppaintoptions.[ch]: new files cut out of
tools/paint_options.h. Prefixed everything with "Gimp". There is
still GtkWidget* cruft hanging around in the structs...
* app/paint/gimppaintcore-stroke.[ch]: utility function
which paints a stroke array. Needed for the PDB wrappers.
* app/paint/gimpairbrush.[ch]
* app/paint/gimpclone.[ch]
* app/paint/gimpconvolve.[ch]
* app/paint/gimpdodgeburn.[ch]
* app/paint/gimperaser.[ch]
* app/paint/gimppaintbrush.c
* app/paint/gimppaintcore.[ch]
* app/paint/gimppencil.c
* app/paint/gimpsmudge.[ch]: added *_options_new() functions which
create correctly initialized options structures without widgets.
* app/tools/paint_options.[ch]: removed the options struct
definitions and value initialisations.
* app/tools/gimpairbrushtool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpclonetool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimperasertool.c
* app/tools/gimpinktool.c
* app/tools/gimppaintbrushtool.c
* app/tools/gimppainttool.c
* app/tools/gimppenciltool.c
* app/tools/gimpsmudgetool.c: changed all paint_options functions
accordingly, s/PaintOptions/GimpPaintOptions/g etc., removed all
#if 0'ed non_gui functions.
* tools/pdbgen/pdb/paint_tools.pdb: use gimp_paint_core_stroke().
We currently leak all paint_options structs created by the PDB
wrappers, more stuff to come...
* app/pdb/paint_tools_cmds.c: regenerated.
2002-02-21 Michael Natterer <mitch@gimp.org>
* app/tools/gimpdrawtool.c: return the corrent value in
g_retuen_val_if_fail().
* app/tools/gimppainttool.c: removed some more painting logic...
* app/paint/gimppaintcore.[ch]: ...and added it here so the PDB
wrappers can use it too. Added "gboolean use_pressure" which needs
to be set by GimpPaintTool so we don't need access to GdkDevices.
2002-02-20 Michael Natterer <mitch@gimp.org>
Implemented #10125 ("quick" colour picker does not honour
"sample merged")
* app/tools/gimpcolorpickertool.[ch]: made definition of
GimpColorPickerToolOptions public.
* app/tools/gimppainttool.c: get the color picker's tool_options
and pick colors accordingly. Also draw a rectangle for
"sample_average".
2002-02-20 Michael Natterer <mitch@gimp.org>
Oops, yesterday's "fix" for #10466 made it even worse :)
* app/core/gimpdrawable-transform.c: need the 0.5 offset to
the pixel's center only for INTERPOLATION_NONE, as the LINEAR
and CUBIC algorithms already know about their errors.
* app/tools/gimpperspectivetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c: some more s/gint/gdouble/ so the
tools can detect pointer motions again...
2002-02-19 Michael Natterer <mitch@gimp.org>
Fixed#10466 (disappearing pixels when rotating by 90 deg):
* app/core/gimpdrawable-transform.c: when transforming backwards
to find the destination line's sub-pixel source coordinates, we
need to transform the pixels _center_, not it's upper left corner.
* app/core/gimpdrawable-transform-utils.[ch]: added
gimp_drawable_transform_matrix_rotate_center() which takes double
center coordinates instead of an integer pixel bounding box.
* app/tools/gimptransformtool.[ch]: use double instead of int for
all coordinates except the original bounding box.
* app/tools/gimprotatetool.c: use double whenever touching the
"center" value, so it can be sub-pixel positioned.
2002-02-18 Michael Natterer <mitch@gimp.org>
* app/tools/tools-types.h
* app/tools/*.[ch]: chain up unconditionally in control(),
s/ToolAction/GimpToolAction/g, s/ToolState/GimpToolState/g.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpinktool.c
* app/tools/gimppainttool.c: don't touch tool->paused_count
(setting it to 0 was a hack which should no longer be needed).
* app/tools/gimpdrawtool.c: check if the draw tool has actually
been started (draw_tool->gdisp != NULL) before calling it's
draw() function.
* app/tools/tool_manager.c: simplified tool_manager_control_active():
simply call gimp_tool_control() if gdisp == tool->gdisp.
* app/tools/gimptool.[ch]: gimp_tool_control(): do all the PAUSE,
RESUME and HALT voodoo here.
* app/tools/gimppainttool.c: implemented #9902 (Drawing straight
lines does not work between different views). It's an evil hack,
but clearly marked in the source.
2002-02-17 Michael Natterer <mitch@gimp.org>
Fixed#34633 (wheel mouse zooming leaves straigth-line helpline on
image) and maybe some other stuff caused by the misbehaviour
described below:
* app/tools/tools-types.h
* app/tools/tool_manager.c (tool_manager_control_active):
Removed the "PAUSED" ToolState.
The possible state transitions were INACTIVE <-> ACTIVE <-> PAUSED,
where the ACTIVE <-> PAUSED transition was done only in the
tool_manager, causing the tools's control() never to be called
when the tool was INACTIVE.
The GimpPaintTool however wants to draw on the display when it's
INACTIVE, and of course wants to be suspended/resumed correctly
while fiddling with display repainting/scaling/...
The PAUSED state was also redundant information, since
(tool->paused_count > 0) is the same information (only more
correct and independent of tool activity).
* app/display/gimpdisplayshell-scale.[ch]: suspend/resume the
active tool around _all_ changes to the display's "scale" and
"offset" fields. Added new function
gimp_display_shell_scale_by_values() which does that and is called
from all places which need to change these values.
* app/tools/gimpmagnifytool.c: changed accordingly.
Unrelated stuff:
* app/paint/gimpairbrush.c: added a #warning FIXME.
* app/tools/gimpdrawtool.c: made a warning more verbose.
* app/tools/gimppainttool.c: put one more drawable offset
calculation in { .. }, will make a utility function out of it...
2002-02-15 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-handlers.c: added back the handler
which invalidates the display_title on dirty/clean. Removing it
was simply wrong.
* app/display/gimpdisplayshell-scale.c: don't call
gimp_display_shell_update_title() directly but set
shell->title_dirty to TRUE before calling gdisplays_flush().
* app/paint/gimppaintcore.[ch]: added gimp_paint_core_constrain()
which does the "snap to 15 degrees" stuff formerly done in
GimpPaintTool. Call gimp_brush_select_brush() in
gimp_paint_core_paint() if paint_state == MOTION, not in several
other places. Reordered functions, added some comments and
documentation.
* app/paint/gimpairbrush.c
* app/paint/gimpclone.c
* app/paint/gimpconvolve.c
* app/paint/gimpdodgeburn.c
* app/paint/gimperaser.c
* app/paint/gimppaintbrush.c
* app/paint/gimppencil.c
* app/paint/gimpsmudge.c:
s/CORE_CAN_HANDLE_CHANGING_BRUSH/CORE_HANDLES_CHANGING_BRUSH/g,
minor cleanup.
* app/pdb/pdb-types.h: include "paint/paint-types.h"
* app/tools/gimppainttool.[ch]: use gimp_paint_core_constrain(),
removed paint_tool->state because it's not needed any more,
lots of cleanup.
* tools/pdbgen/app.pl: another eeky special case for "paint/".
* tools/pdbgen/pdb/paint_tools.pdb: include stuff from "paint/",
not "tools/".
* app/pdb/paint_tools_cmds.c: regenerated.
2002-02-14 Michael Natterer <mitch@gimp.org>
Core/UI separation for the paint tools:
* configure.in
* app/Makefile.am
* app/paint/.cvsignore
* app/paint/Makefile.am: added new directory for the paint methods
without GUI and tools around them.
* app/paint/paint-types.h: typedefs for this module.
* app/paint/gimppaintcore-kernels.h
* app/paint/gimppaintcore.[ch]: the general paint logic taken
from GimpPaintTool.
* app/paint/gimpairbrush.[ch]
* app/paint/gimpclone.[ch]
* app/paint/gimpconvolve.[ch]
* app/paint/gimpdodgeburn.[ch]
* app/paint/gimperaser.[ch]
* app/paint/gimppaintbrush.[ch]
* app/paint/gimppencil.[ch]
* app/paint/gimpsmudge.[ch]: subclasses of GimpPaintCore,
implementing their own paint() methods. Needs more hacking
to get the GtkWidget pointers out of the options structs.
* app/tools/gimppainttool_kernels.h: removed.
* app/tools/tools-types.h: removed the paint tool enums.
* app/tools/gimpairbrushtool.[ch]
* app/tools/gimpclonetool.[ch]
* app/tools/gimpconvolvetool.[ch]
* app/tools/gimpdodgeburntool.[ch]
* app/tools/gimperasertool.[ch]
* app/tools/gimppaintbrushtool.[ch]
* app/tools/gimppainttool.[ch]
* app/tools/gimppenciltool.[ch]
* app/tools/gimpsmudgetool.[ch]: all paint tools are pure GUI
things now. PaintOptions and friends still need to be chopped up
though...
* app/undo.c: changed PaintUndo to GimpPaintCoreUndo, some minor
cleanup.
* tools/kernelgen.c: changed accordingly.
* tools/pdbgen/Makefile.am: scan paint/paint-types.h for enums.
* tools/pdbgen/pdb/paint_tools.pdb: hardcode "success = FALSE" for
all paint PDB wrappers. The non-gui stuff is completely broken.
More commits to come...
* app/pdb/paint_tools_cmds.c
* tools/pdbgen/enums.pl: regenerated.
2002-02-13 Michael Natterer <mitch@gimp.org>
* app/tools/gimppainttool.[ch]: moved all global variables into
the GimpPaintTool structure so they have a proper lifecycle and
it's easier to move them to the upcoming GimpPaintCore (??)
object.
* app/tools/gimppainttool_kernels.h
* tools/kernelgen.c: s/SUBSAMPLE/KERNEL_SUBSAMPLE/
2002-02-12 Sven Neumann <sven@gimp.org>
* app/base/base-enums.h: renamed GimpInterpolationType values to
something sane and unexported it from the PDB since it was never
used in any PDB calls.
* app/gimprc.c
* app/config/gimpcoreconfig.c
* app/core/gimpcoreconfig.c
* app/core/gimpdrawable-transform.c
* app/core/gimplayer.c
* app/gui/preferences-dialog.c
* app/gui/resize-dialog.c
* app/paint-funcs/paint-funcs.c
* app/pdb/transform_tools_cmds.c
* app/tools/transform_options.c
* tools/pdbgen/pdb/transform_tools.pdb: changed accordingly.
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
2002-02-11 Michael Natterer <mitch@gimp.org>
* app/tools/gimpbucketfilltool.c
* app/tools/selection_options.c: added missing tooltips, enabled
"reset" for the new select/fill transparent toggles.
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.
* app/tools/gimptoolmodule.[ch]: split registering classes and
registering tools into separate functions. Makes tool plug-ins
actually work!
* app/tools/tools.c: replaced extremely ugly temporary hack for
loading tool modules with ugly temporary hack for loading tool
modules.
* app/tools/gimptoolmodule.[ch]: New class that uses GTypeModule to
dynamically load tool plugins. Does not quite work yet, but builds
correctly.
* app/tools/tools.c: added some code to test the GimpToolModule code.
* app/tools/Makefile.am: added gimptoolmodule to the build.
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/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 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.
2001-12-28 Sven Neumann <sven@gimp.org>
* app/tools/gimpmagnifytool.c: calculate mouse movement in screen
coordinates. Reset threshold to default value when the Reset button
is pressed.
2001-12-20 Sven Neumann <sven@gimp.org>
* app/tools/gimptexttool.c (text_render): fixed text positioning by
removing a workaround for a bug that has finally been fixed in Pango.
2001-12-18 Michael Natterer <mitch@gimp.org>
* configure.in: added -DGDK_PIXBUF_DISABLE_DEPRECATED to CPPFLAGS.
* app/core/gimpbuffer.[ch]: gimp_buffer_get_[width|height]:
added "const" to the GimpBuffer parameter.
* app/core/gimpchannel.c: indentation and comment changes.
* app/core/gimpdrawable-desaturate.c: don't include
"paint-funcs/paint-funcs.h".
* app/display/gimpdisplayshell.c: don't include "base/temp-buf.h".
* app/gui/gui.c: removed the image container's "name_changed"
handler.
* app/gui/palette-import-dialog.[ch]: use GimpPreview and
GimpContainerMenu instead of doing the same manually. Removed lots
of code. Not perfect yet.
* app/tools/gimpfuzzyselecttool.c: no need to include tile stuff.
* app/widgets/gimpcontainerview-utils.c: better g_warning() message.
* tools/pdbgen/pdb/paint_tools.pdb: don't include
"base/tile-manager.h".
* app/pdb/paint_tools_cmds.c: regenerated.
* data/images/Makefile.am
* data/images/gimp_logo.ppm: removed...
* data/images/gimp_logo.png: ...and added as PNG.
* app/gui/about-dialog.c: use gdk_pixbuf_new_from_file() to load
the PNG logo instead of manually parsing the PPM.
2001-12-14 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.[ch]: added
GIMP_IMAGE_TYPE_IS_[RGB|GRAY|INDEXED]() and
GIMP_IMAGE_TYPE_BASE_TYPE() macros.
* app/plug-in/plug-in.[ch]: new enum PlugInImageType instead of
multiple #defines.
* app/gui/file-dialog-utils.[ch]: file_dialog_update_menus(): take
a GimpImageType instead of the PlugInImageType.
* app/core/gimpdrawable-preview.c
* app/core/gimpdrawable-transform.c
* app/core/gimpdrawable.c
* app/core/gimpimage-contiguous-region.c
* app/core/gimpimage-mask.c
* app/core/gimpimage-merge.c
* app/core/gimplayermask.c
* app/core/gimppalette-import.c
* app/display/gimpdisplay-handlers.c
* app/display/gimpdisplayshell-render.c
* app/gui/file-save-dialog.c
* app/gui/toolbox.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/image.pdb: use the new macros, cleanups like
storing GimpImageType in GimpImageType variables, not just gint.
* app/pdb/convert_cmds.c
* app/pdb/image_cmds.c: regenerated.
* app/widgets/gimpdialogfactory.c: save the state of the "Auto"
button in sessionrc.
2001-12-12 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpimage-pick-color.[ch]: new files.
gimp_image_pick_color() doesn't set the FG or BG color and doesn't
touch the current palettte.
* app/tools/gimpcolorpickertool.[ch]: removed the actual picking
code, set the user_context's FG or BG color here.
* app/gui/palette-editor.[ch]:
s/palette_set_active_color/palette_editor_update_color/, don't set
the FG and BG color here. The function is still #if 0'ed.
* app/gui/toolbox.c: fixed WM resize hints in toolbox_style_set(),
code cleanup.
* app/tools/gimppainttool.[ch]: some cleanup before chopping.
* app/tools/gimpsmudgetool.c: changed accordingly.
* tools/pdbgen/pdb/misc_tools.pdb: removed the possibility to set
the FG or BG color or add the picked color to the active palette
bacause it doesn't belong here. Palette PDB wrappers are on the
TODO anyway.
* app/pdb/misc_tools_cmds.c
* libgimp/gimpmisctools_pdb.[ch]: regenerated.
* plug-ins/perl/examples/image_tile
* plug-ins/perl/examples/logulator
* plug-ins/script-fu/scripts/hsv-graph.scm
* plug-ins/script-fu/scripts/title-header.scm: changed accordingly.
2001-12-08 Sven Neumann <sven@gimp.org>
* tools/pdbgen/enumgen.pl: introduced new trigraph keyword
/*< pdb-skip >*/ used to skip enums for inclusion in libgimp when
parsing headers. The keyword /*< skip >*/ is still used to skip
enum values. This change is necessary since glib-mkenums also uses
/*< skip >*/.
* app/base/base-types.h * app/base/base-enums.h: moved
GimpCheckType and GimpCheckSize to base-enums.h so they get
registered with the type system, marked them as /*< pdb-skip >*/.
* app/core/core-types.h * app/display/display-types.h *
app/paint-funcs/paint-funcs-types.h * app/tools/gimppainttool.h *
app/tools/tools-types.h: changed /*< skip >*/ to /*< pdb-skip >*/.
2001-12-08 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am
* app/core/core-enums.h: new file that holds enums that are registered
with the type system and is used to generate core-enums.c.
* app/core/core-types.h: include core-enums.h
* app/base/base-types.h: namespace cleanup. Prefix all enumeration
types with Gimp and their values with GIMP. Moved GimpLayerModeEffects
enum ...
* app/base/base-enums.h: ... here.
* app/image_map.c
* app/base/temp-buf.c
* app/core/gimpcontext.[ch]
* app/core/gimpdrawable-transform.c
* app/core/gimpdrawable.c
* app/core/gimpedit.c
* app/core/gimpimage-mask.c
* app/core/gimpimage-merge.c
* app/core/gimpimage-new.c
* app/core/gimpimage-projection.c
* app/core/gimpimage.[ch]
* app/core/gimplayer.[ch]
* app/display/gimpdisplayshell-dnd.c
* app/display/gimpdisplayshell-render.c
* app/gui/brush-select.c
* app/gui/layers-commands.c
* app/gui/preferences-dialog.c
* app/gui/toolbox.c
* app/paint-funcs/paint-funcs.[ch]
* app/tools/gimpconvolvetool.c
* app/tools/gimperasertool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimppainttool.[ch]
* app/tools/gimptexttool.c
* app/tools/paint_options.c
* app/widgets/gimplayerlistview.c
* app/widgets/gimpwidgets-constructors.[ch]
* app/xcf/xcf-load.c
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/color.pdb
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/tools.pdb: changed accordingly.
* libgimpbase/gimpbasetypes.h: no need to chop GIMP prefix off the
enums any longer.
* app/pdb/brush_select_cmds.c
* app/pdb/brushes_cmds.c
* app/pdb/color_cmds.c
* app/pdb/layer_cmds.c
* app/pdb/message_cmds.c
* app/pdb/procedural_db_cmds.c
* app/pdb/tools_cmds.c
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
* app/gimprc.c: removed code to parse for "plug_in" keyword which was
left over from some very early gimp days.
* app/plug-in/plug-in.[ch]: removed now unused function plug_in_add().
2001-12-07 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/devices.[ch]: removed, chopped...
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/gui/Makefile.am
* app/widgets/gimpdeviceinfo.[ch]
* app/widgets/gimpdevices.[ch]
* app/gui/device-status-dialog.[ch]
* app/gui/input-dialog.[ch]: ...and added here.
Made GimpToolInfo a GimpContext subclass. Create a GimpDeviceManager
struct in gimpdevices.c and attach it to the Gimp instance.
* app/core/gimp.[ch]: removed gimp_create_context(). It was a bad
idea in the first place beause it prevented GimpContext subclasses
from being be properly registered with their Gimp instance.
* app/core/gimpcontext.c: moved the stuff which used to be in
gimp_create_context() back here. Added a "gimp" property which
must be set on construction. Added a "dispose" implementation
which removes the context from it's Gimp's context_list.
* app/gimprc.c
* app/core/gimptoolinfo.[ch]
* app/display/gimpdisplayshell-callbacks.c
* app/gui/brush-select.c
* app/gui/dialogs-constructors.c
* app/gui/gradient-editor.c
* app/gui/gradient-select.c
* app/gui/gui.c
* app/gui/menus.c
* app/gui/palette-editor.c
* app/gui/palette-select.c
* app/gui/pattern-select.c
* app/gui/toolbox.c
* app/tools/gimppainttool.c
* app/tools/tool_manager.c
* app/widgets/gimpimagedock.c: changed accordingly.
* app/gui/tools-commands.[ch]: made all callback signatures
the same.
* app/gui/preferences-dialog.c: cleaned up the
display_format_string GtkCombo code.
2001-12-03 Michael Natterer <mitch@gimp.org>
* app/devices.c: use the passed Gimp pointer instead of
using "the_gimp".
* app/base/temp-buf.c: indentation.
* app/gui/preferences-dialog.c: prefs_toggle_callback(): fixed
segfault when trying to find the prefs_dlg widget from a menu
item callback (Fixes#65757).
* app/gui/offset-dialog.[ch]: fixed public prototype, include
the header in the .c file.
* app/gui/menus.c: some menu cleanup: moved all functions which
operate on the active layer/drawable to <Image>/Layer. Renamed
"Layers" to "Layer".
* app/display/gimpdisplayshell.c: changed menu update function
accordingly.
* app/gui/image-commands.[ch]
* app/gui/layers-commands.[ch]: moved stuff from image-commands.*
to layers-commads.*-
* app/tools/gimpblendtool.c
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcurvestool.c
* app/tools/gimphistogramtool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimplevelstool.c
* app/tools/gimpposterizetool.c
* app/tools/gimpthresholdtool.c
* app/tools/paint_options.c
* app/tools/transform_options.c
* plug-ins/common/align_layers.c
* plug-ins/common/autocrop.c
* plug-ins/common/autostretch_hsv.c
* plug-ins/common/c_astretch.c
* plug-ins/common/color_enhance.c
* plug-ins/common/guillotine.c
* plug-ins/common/normalize.c
* plug-ins/common/rotate.c
* plug-ins/common/threshold_alpha.c
* plug-ins/common/zealouscrop.c
* plug-ins/rcm/rcm.c
* plug-ins/fp/fp.c: register under <Image>/Layer, some cosmetic
fixes.
2001-12-03 Sven Neumann <sven@gimp.org>
Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs-mmx.h: removed redefiniton of HAS_ALPHA
macro.
* app/core/gimp.c: reverted Daniel's change; it doesn't make the code
simpler, only more error-prone.
* app/gui/info-dialog.h
* app/gui/resize-dialog.h
* app/core/gimp.h
* app/core/gimpbrushgenerated.h
* app/core/gimpbrushpipe.h
* app/core/gimpchannel.[ch]
* app/core/gimpcontainer.h
* app/core/gimpcoreconfig.h
* app/core/gimpdata.h
* app/core/gimpdatafactory.[ch]
* app/core/gimpdrawable-blend.c
* app/core/gimpdrawable.[ch]
* app/core/gimpimage.h
* app/core/gimpimagefile.h
* app/core/gimplayer.h
* app/core/gimplayermask.h
* app/core/gimpmoduleinfo.h
* app/core/gimppalette.h
* app/core/gimpundo.h
* app/widgets/gimpbrushfactoryview.h
* app/widgets/gimpconstrainedhwrapbox.h
* app/widgets/gimpcontainermenu.h
* app/widgets/gimpcontainerview.h
* app/widgets/gimpdialogfactory.h
* app/widgets/gimpimagedock.h
* app/widgets/gimplistitem.h
* app/widgets/gimpmenuitem.h
* app/widgets/gimpnavigationpreview.h
* app/widgets/gimppreview.h
* app/gimprc.h
* app/pathP.h
* app/tools/gimpbezierselecttool.h
* app/tools/gimpcolorbalancetool.h
* app/tools/gimpcurvestool.h
* app/tools/gimpdodgeburntool.c
* app/tools/gimpfreeselecttool.h
* app/tools/gimphuesaturationtool.h
* app/tools/gimpinktool-blob.h
* app/tools/gimpinktool.h
* app/tools/gimpiscissorstool.h
* app/tools/gimpmagnifytool.h
* app/tools/gimpmeasuretool.h
* app/tools/gimppainttool.h
* app/tools/gimppathtool.h
* app/tools/gimprectselecttool.h
* app/tools/gimpthresholdtool.h
* app/tools/gimptool.h
* app/tools/gimptransformtool.h
* app/base/base-config.h
* app/base/gimplut.[ch]
* app/base/pixel-region.h
* app/base/pixel-surround.[ch]
* app/base/temp-buf.[ch]
* app/base/tile-manager-private.h
* app/base/tile-manager.[ch]
* app/base/tile-private.h
* app/base/tile.[ch]
* app/display/gimpdisplay.h
* app/display/gimpdisplayshell-selection.h
* app/display/gimpdisplayshell.h
* app/gui/brush-select.h
* app/gui/gradient-editor.h
* app/gui/gradient-select.h: reverted most of Daniel's changes.
There's no reason to use unsigned integers here and in lots of places
it is even wrong.
Then it's way too early to convert gbooleans into bitfields. This
change may make sense in a few places but can happen later when the
API has settled and the code is more stable.
* app/gimprc.c: reverted Daniel's change. This is a GCC-ism and this
code is about to die soon anyway.
2001-12-01 Michael Natterer <mitch@gimp.org>
* app/errors.c: forgot a "return".
* app/gui/error-console-dialog.c: the menu item signals were
connected "swapped", which is wrong.
* app/tools/gimperasertool.c: added a cursor_update_func(), update
the "toggled" state there and chain up. Fixes wrong cursor
updating.
Made brush_pipe slection work again, removed the #warnings:
* app/core/gimpbrush.[ch]
* app/core/gimpbrushpipe.c: changed brush_class->select_brush()
and brush_class->want_null_motion() to be proper virtual
functions. Pass last_coords and cur_coords to them.
* app/tools/gimppainttool.c: call the functions again.
2001-12-01 Michael Natterer <mitch@gimp.org>
* app/main.c
* app/appenv.h: moved "message_handler" from here...
* app/core/gimp.[ch]: ...to here. Added gimp_message() and a
"gui_message_func" pointer...
* app/gui/gui.c: ...which gets set here to gui_message().
* app/errors.c: don't include any gui stuff but simply call
gimp_message().
* app/app_procs.c: don't set "message_handler" here, it's done in
gui.c now.
* app/gui/error-console-dialog.[ch]: use gimp->message_handler.
* app/gui/dialogs-constructors.c: pass a Gimp pointer to
error_console_create().
* app/widgets/gimpwidgets-utils.[ch]: made the "message" parameter
of gimp_message_box() a const gchar*, not just gchar*.
* tools/pdbgen/pdb/message.pdb: use gimp->message_handler, don't
include "appenv.h".
* app/pdb/message_cmds.c: regenerated.
* app/devices.[ch]: cleanup before chopping: removed global
variable "current_device", added devices_get_current(), pass lots
of Gimp pointers around.
* app/gimprc.c: pass a Gimp pointer to devices_rc_update().
* app/display/gimpdisplayshell-callbacks.c
* app/gui/toolbox.c
* app/tools/gimppainttool.c: use devices_get_current(), pass Gimp
pointers to all devices_foo() functions.
* app/core/gimpimage-mask.c: no need to include "pdb/pdb-types.h".
2001-11-30 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/plug_in.[ch]: removed...
* app/plug-in/Makefile.am
* app/plug-in/plug-in-types.h
* app/plug-in/plug-in.[ch]: ...and added here.
* app/appenv.h: removed StackTraceMode and MessageHandlerType...
* libgimpbase/gimpbasetypes.h: ...and added them here.
* tools/pdbgen/Makefile.am: don't scan "app/apptypes.h" for enums.
* tools/pdbgen/enumcode.pl: added a general check to prevent
enums which are defined in libgimp* from being written to
"libgimp/gimpenums.c".
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
* app/core/core-types.h: include "pdb/pdb-types.h" so including
"core/core-types.h" gets the whole core type space.
* app/core/gimp.[ch]: added a "stack_trace_mode" parameter to the
constructor and store it in the Gimp struct because the value is
also passed to plug-ins and nobody should include "appenv.h".
* app/gimprc.[ch]: pass the alternate_system_gimprc and
alternate_gimprc filenames from the command line to gimprc_prase()
so we don't need to include "appenv.h".
* app/batch.[ch]: pass the "batch_cmds" as parameter, don't
include "append.h".
* app/app_procs.c: pass more parameters around.
* app/devices.c
* app/errors.c
* app/gimphelp.c
* app/main.c
* app/core/gimpgradient.c
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell.c
* app/file/file-open.c
* app/file/file-save.c
* app/file/file-utils.c
* app/gui/commands.c
* app/gui/error-console-dialog.c
* app/gui/file-dialog-utils.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/paths-dialog.c
* app/gui/user-install-dialog.c
* app/tools/gimpbezierselecttool.c
* app/tools/xinput_airbrush.c
* app/xcf/xcf.c
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/help.pdb
* tools/pdbgen/pdb/message.pdb
* tools/pdbgen/pdb/plug_in.pdb: changed accordingly:
- changed "plug-in.h" include where needed.
- don't call gimp_fatal_error() directly, it's called via the log
handler when calling g_error().
- don't incude "errors.h" except from main.c.
- changed stack_trace and message_handler enum names.
- get "stack_trace_mode" from Gimp.
- removed many inclusions of "appenv.h".
* app/pdb/fileops_cmds.c
* app/pdb/help_cmds.c
* app/pdb/message_cmds.c
* app/pdb/plug_in_cmds.c
* app/pdb/procedural_db.c: regenerated.
2001-11-30 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/colormaps.[ch]: removed.
* app/app_procs.c: don't call it.
* app/gui/gui.c: configure GdkRGB here.
* app/display/gimpdisplayshell.c
* app/display/gximage.c
* app/gui/color-notebook.c
* app/gui/color-select.c
* app/gui/colormap-dialog.c
* app/gui/info-window.c
* app/gui/preferences-dialog.c
* app/tools/gimpmovetool.c
* app/display/gimpdisplayshell-selection.c: changed accordingly
(simply removed the unneded include or use
gdk_gc_set_rgb_[fg|bg]_color() instead).
* app/display/gimpdisplayshell.c
* app/display/gimpdisplayshell-callbacks.[ch]: chopped
gimp_display_shell_canvas_events() in smaller callbacks. Only the
events that trigger tool actions are handled in a single callback.
2001-11-29 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell.[ch]: replaced the QMask radio
buttons ba a single check button. Still needs some tuning.
* app/display/gimpdisplayshell-handlers.c
* app/display/gimpdisplayshell-qmask.[ch]: changed accordingly.
* app/tools/gimptool.[ch]: added "gboolean handle_empty_image" to
the GimpTool structure.
* app/tools/gimpmovetool.c: set it to TRUE.
* app/tools/gimpfuzzyselecttool.c: don't gimp_[set|unset]_busy()
while calculating the selection but set the busy cursor on the
display manually (we have the pointer grabbed anyway).
* app/display/gimpdisplayshell-callbacks.c: don't check for
GIMP_IS_MODE_TOOL(active_tool) but look at
active_tool->handle_empty_image. Removed the checks for
GIMP_IS_FUZZY_SELECT_TOOL(active_tool) because fuzzy_select
doesn't set GIMP busy while it's active any more.
* app/tools/transform_options.[ch]
* app/tools/gimptransformtool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c: added widgets for the transform tools'
constraints (one more #51108 issue fixed).
* app/tools/gimperasertool.c: cosmetic.
* app/widgets/gimpdockbook.c: don't hardcode GtkNotebook's
tab_border to 0 but add a style property for it...
* themes/Default/gtkrc: ...and set it to 0 here.
2001-11-28 Michael Natterer <mitch@gimp.org>
* app/base/base-types.h: include the new
"paint-funcs/paint-funcs-types.h".
* app/paint-funcs/Makefile.am
* app/paint-funcs/paint-funcs-types.h: new file. Includes
"base/base-types.h".
* app/paint-funcs/paint-funcs.[ch]: removed the enums here,
include "paint-funcs-types.h".
* app/widgets/widgets-types.h: include "display/display-types.h"
* app/display/display-types.h: include "widgets/widgets-types.h".
* app/tools/tools-types.h: include "display/display-types.h"
* app/gui/gui-types.h: include "tools/tools-types.h".
The order of namespaces/dependencies should be (but is not):
(base, paint-funcs) -> (core, file, xcf, pdb) ->
(widgets, display) -> tools -> gui
* app/path.c: include "tools/tools-types.h".
* app/core/Makefile.am
* app/core/gimpimage-guides.[ch]
* app/core/gimpimage-merge.[ch]
* app/core/gimpimage-resize.[ch]
* app/core/gimpimage-scale.[ch]: new files.
* app/core/gimpimage.[ch]: removed the stuff which is in the new
files. Reordered all functions in both the .h and .c files,
commented the groups of functions.
* app/core/gimpcontainer.c: create the handler_id using a counter,
not the address of a pointer, because the address *may* be the
same twice, added debugging output.
* app/core/gimpviewable.[ch]: added primitive support for getting
a preview GdkPixbuf.
* app/nav_window.c
* app/undo.c
* app/undo_history.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-mask.[ch]
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell-dnd.c
* app/display/gimpdisplayshell-render.c
* app/display/gimpdisplayshell-scale.c
* app/display/gimpdisplayshell-scroll.c
* app/gui/image-commands.c
* app/gui/info-window.c
* app/gui/layers-commands.c
* app/gui/palette-import-dialog.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/widgets/gimpcontainerview-utils.c
* app/xcf/xcf-load.c: changed accordingly, some cleanup.
* tools/pdbgen/pdb/guides.pdb
* tools/pdbgen/pdb/image.pdb: changed accordingly, reordered functions.
* app/plug_in.c: set the labels of the "Repeat" and "Re-Show" menu
items to the name of the last plug-in (Fixes#50986).
* app/display/gimpdisplayshell.[ch]: set the labels of "Undo" and
"Redo" to the resp. undo names. Much simplified the WM icon stuff
by removing most code and using gimp_viewable_get_new_preview_pixbuf().
* app/widgets/gimpbrushfactoryview.c: forgot to assign the GQuark
returned by gimp_container_add_handler().
* app/pdb/guides_cmds.c
* app/pdb/image_cmds.c
* libgimp/gimpimage_pdb.[ch]: regenerated.
2001-11-28 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpimage-projection.[ch]: new files. Changed function
names to be consistent.
* app/core/gimpimage.[ch]: removed the projection stuff
here. Removed the gimp_image_composite_blah() functions becauee
they were just calling the resp. gimp_image_projection ones.
* app/core/gimpimage-contiguous-region.c
* app/core/gimpimage-convert.c
* app/core/gimpimage-crop.c
* app/core/gimppalette-import.c
* app/undo.c
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell-render.c
* app/gui/info-window.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpiscissorstool.c: changed accordingly.
2001-11-26 Michael Natterer <mitch@gimp.org>
* tools/authorsgen/contributors: added Rebecca Walter (bex).
* AUTHORS
* app/gui/authors.h: regenerated.
* app/widgets/widgets-types.h: added GimpPreviewSize enum.
* app/gimprc.c
* app/gui/menus.c
* app/gui/preferences-dialog.c
* app/widgets/gimpdockbook.c: use the new enum.
* app/tools/gimpbucketfilltool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimperasertool.c
* app/tools/gimpfliptool.c
* app/tools/gimpmagnifytool.c: added "(<Ctrl>)" and "(<Alt>)" to
some tool options strings.
* app/tools/gimpmovetool.c: some more widgets for hidden tool
options (#51108).
* app/tools/transform_options.c: renamed to "Tool Paradigm" stuff
to something more understandable.
* app/widgets/gimpdock.c: added a style property for the height
of the separator.
* themes/Default/gtkrc: show how to use the new property.
* app/widgets/gimpcontainerview.c
* app/widgets/gimpdockable.c
* app/widgets/gimplayerlistview.c: waste less lines when calling
gtk_widget_style_get().
2001-11-25 Simon Budig <simon@gimp.org>
* app/tools/gimperasertool.c
* app/tools/gimperasertool.h
* tools/pdbgen/pdb/tools.pdb: Removed the color_erase option of
the eraser.
* app/pdb/tools_cmds.c: regenerated.
2001-11-23 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontainer.c: removed a useless g_return_if_fail().
* app/widgets/gimpcontainereditor.h: removed GimpViewType enum.
* app/widgets/widgets-types.h: added it here.
* app/widgets/gimpcontainerview-utils.[ch]: added a utility function
which gets the GimpContainerView out of a GimpDockable.
* app/widgets/gimpdialogfactory.[ch]: added support for saving and
loading of each GimpDockable's preview size. Store the dialog's
default preview size in the GimpDialogFactoryEntry. Pass the
preview_size to each created dialog.
* app/gui/menus.c: added menu items for setting the preview_size
and switching between list and grid view. Removed the item
overkill in the "Add Tab" submenu.
* app/gui/dialogs-commands.[ch]: added callbacks for the new items.
* app/widgets/gimpdockbook.c: set the item's state before showing
the menu.
* app/errors.c
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/edit-commands.c
* app/gui/gui.c
* app/gui/indicator-area.c
* app/gui/toolbox.c: changed accordingly.
* app/tools/selection_options.[ch]: cleaned up the selection
options and added some tooltips. Much more to do...
2001-11-23 Sven Neumann <sven@gimp.org>
* configure.in: bumped version number to 1.3.1.
Require Glib/GTK+-1.3.11 and Pango-0.22. Removed GDK_DISABLE_COMPAT_H
and GTK_DISABLE_COMPAT_H from our default CFLAGS since they don't
exist any longer.
* RELEASE-TO-CVS.patch: removed since the glib/gtk+ API is supposed to
be frozen now.
* HACKING: removed reference to RELEASE-TO-CVS.patch
* app/gui/menus.c
* app/tools/gimptexttool.c: applied RELEASE-TO-CVS.patch to conform
to the new GTK+/Pango API.
* app/core/Makefile.am: generate marshallers with gimp_marshal prefix.
* app/core/gimpmarshal.list: added all marshallers we use.
* app/core/gimpmarshal.[ch]: regenerated.
* app/[lots of .c files]: use gimp_marshal_* for all marshallers.
* data/images/
* app/app_procs.c
* app/gui/splash.c:
* libgimpbase/Makefile.am
* libgimpbase/gimpbase.h
* libgimpbase/gimputils.[ch]: removed since they are no longer needed.
* app/gimprc.c
* plug-ins/common/ps.c
* plug-ins/gdyntext/gdyntext.c
* plug-ins/gdyntext/gdyntextcompat.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c
* plug-ins/script-fu/script-fu-scripts.c: use glib functions instead
of gimp_strescape() and gimpstrcompress().
* cleaned up all header files: use G_BEGIN_DECLS/G_END_DECLS, declared
all _get_type function as G_GNUC_CONST.
* tools/pdbgen/enumcode.pl
* tools/pdbgen/lib.pl: make them generate header files using
G_BEGIN_DECLS/G_END_DECLS.
* pixmaps/Makefile.am
* pixmaps/wilber3.xpm: removed ...
* data/images/tips_wilber.png: ... and added here as PNG
* app/gui/tips-dialog.c: load the Wilber on demand using GdkPixbuf.
* data/images/gimp_splash.ppm: removed ...
* data/images/gimp_splash.png: ... and added as PNG
* app/app_procs.c
* app/gui/splash.[ch]: load the splash image using GdkPixbuf.
* app/gui/about-dialog.c: sink the GtkPreview.
2001-11-22 Michael Natterer <mitch@gimp.org>
* app/tools/gimpclonetool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpmagnifytool.c
* app/tools/paint_options.c
* app/tools/transform_options.c: removed the remaining cases of
we-rely-on-the-radio-buttons-being-in-the-same-order-as-the-enum
and use gimp_radio_group_set_active() instead.
Use GINT_TO_POINTER(gint) instead of (gpointer)gint all over
the place.
2001-11-22 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpstock.c: added stock *items* (not only icons)
for all tools so they can be used as action buttons.
* app/tools/gimptransformtool.[ch]: added
transform_tool->use_center so subclasses can switch on/off center
detection/cursor_update . Added an oper_update() implementation
and figure the current handle out there. Reordered button_press()
so we don't need to call it recursively.
* app/tools/gimpperspectivetool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c: use the new stock items instead of
_("Rotate") etc.
* app/tools/gimpperspectivetool.c
* app/tools/gimpscaletool.c: allow the whole thing being dragged
around by handling the center separately.
* app/tools/gimpdrawtool.c: gimp_draw_tool_on_handle(): need to
use the radius, not the diameter to check if being over a
GIMP_HANDLE_CIRCLE handle.
2001-11-22 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpwidgets.[ch]: use "gimp-item-data" instead of
"user_data" as data key when attaching values to radio buttons or
menu items. (For backward compat, attach "user_data" additionally,
but don't use it to _get_data()).
Added gimp_radio_group_set_active() which works like
gimp_options_menu_set_history() and sets the active item by
attached "gimp-item-data" value.
* app/gui/brush-select.c
* app/gui/file-new-dialog.c
* app/gui/info-window.c
* app/gui/preferences-dialog.c
* app/gui/resolution-calibrate-dialog.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpselectiontool.c
* app/tools/paint_options.c
* app/tools/selection_options.c
* app/widgets/gimplayerlistview.c: removed all kinds of
"user_data" stuff and evil hacks to find a radio button by the
value it represents (simply call gimp_radio_group_set_active()).
* app/tools/gimpdrawtool.c: added a g_return_if_fail().
* app/tools/gimpfliptool.c: don't set draw_tool_class->draw to NULL,
* app/tools/gimptransformtool.[ch]: fixed some stuff i broke when
removing the old "interactive" boolean (there is no
non-interactive transform tool any more). Put the info_dialog
pointer and the old_trans_info array into the GimpTransformTool
instance. Added gimp_transform_tool_info_dialog_connect(). Don't
include any subclasses any more.
* app/tools/gimpperspectivetool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c: use
gimp_transform_tool_info_dialog_connect() to create and connect
the info dialogs' action_area.
2001-11-21 Michael Natterer <mitch@gimp.org>
* app/tools/gimptexttool.c: seems I've comitted something which
should only be in RELEASE-TO-CVS.patch. Sorry...
2001-11-21 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-callbacks.c: key press and release
events were sent swapped to tools.
* app/tools/selection_options.[ch]: added radio buttons for the
selection operation (REPLACE, ADD, ...). Partly fixes#51108.
* app/tools/gimpselectiontool.[ch]: honor the new tool options
stuff. Do evil things in gimp_selection_tool_modifier_key().
* app/tools/gimpbycolorselecttool.[ch]: removed most of the
widgets from the by_color_select window because they are all in
the selection_options now.
* libgimpwidgets/gimpstock.[ch]: added new stock items for the
buttons.
* themes/Default/Makefile.am
* themes/Default/images/Makefile.am
* themes/Default/images/stock-button-selection-add.png
* themes/Default/images/stock-button-selection-intersect.png
* themes/Default/images/stock-button-selection-replace.png
* themes/Default/images/stock-button-selection-subtract.png: new
stock images.
2001-11-20 Michael Natterer <mitch@gimp.org>
* app/tools/tools-types.h: added GimpToolRegisterFunc,
GimpToolRegisterCallback and GimpToolOptionsNewFunc typedefs
which are used to register tools.
* app/tools/tools.c: put the register funcs in an array of
GimpToolRegisterFuncs. Pass a Gimp pointer *plus* a
GimpToolRegisterCallback (which is tool_manager_register_tool())
to the tools' register functions.
* app/tools/tool_manager.[ch]: added a GimpToolOptionsNewFunc to
the parameters of tool_manager_register_tool(). Create the tool
options here, not in each tool.
* app/tools/paint_options.[ch]
* app/tools/selection_options.[ch]
* app/tools/tool_options.[ch]
* app/tools/transform_options.[ch]: all _init() and _new()
functions take a GimpToolInfo pointer now. The _reset() func needs
to be set manually now.
* app/tools/[all_tools].[ch]: changed accordingly:
- pass GimpToolOptionsNewFuncs to the register callback.
- don't create the tool options in the tools' _init() function.
- removed all static tool options variables.
- get the options from the tool system in the cases i missed
in my last commit.
- added minor hacks to get rid of the static options pointer
in some pathological cases :) (i.e. the ink tool).
2001-11-20 Michael Natterer <mitch@gimp.org>
* app/tools/gimpdrawtool.[ch]
* app/tools/gimppainttool.[ch]
* app/tools/gimprectselecttool.[ch]
* app/tools/gimptool.[ch]
* app/tools/gimptransformtool.[ch]: use simple virtual functions
instead of signals for all tools because they are much faster and
don't need to be signals at all.
2001-11-20 Michael Natterer <mitch@gimp.org>
* app/core/gimp.c: put a g_object_ref() on a different line.
* app/core/gimpdrawable-bucket-fill.c
* app/core/gimpmodules.c: ne need to #include "core/..." here.
* app/display/gimpdisplay-handlers.c: added debugging output
because we have an image refcounting problem :(
* app/display/gimpdisplayshell-handlers.c: fixed a signal
disconnection.
* app/tools/gimpbezierselecttool.[ch]
* 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/gimpellipseselecttool.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/gimprectselecttool.c
* app/tools/gimpsmudgetool.c: get the tool's options via
tool->tool_info->tool_options, not from the local statis pointer.
Some minor cleanups & function reordering.
* app/widgets/gimpdockbook.c: return TRUE from the notebook tabs'
"button_press" handler, connect DND before cnnecting to
"button_press" because we now stop it's emission.
2001-11-19 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplay-foreach.c: forgot to commit last time.
Transform stuff cleanup:
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpdrawable-transform.[ch]: new files implementing
the actual transform functions cut from tools/gimptransformtool.*.
* app/core/gimpdrawable-transform-utils.[ch]: new files implementing
transform matrix assembly utility functions.
* app/tools/gimptransformtool.[ch]: removed the stuff here. cleanup.
* app/tools/transform_options.[ch]: removed all stuff which does
not belong here, e.g. the transform_tool_* functions and the
global "transform_options" variable. Works like all other tool
options now.
* app/tools/gimpfliptool.[ch]
* app/tools/gimpperspectivetool.[ch]
* app/tools/gimprotatetool.[ch]
* app/tools/gimpscaletool.[ch]
* app/tools/gimpsheartool.[ch]: massive code removal because
we can use core/gimpdrawable-fransform* functions now. cleanup.
* tools/pdbgen/Makefile.am
* tools/pdbgen/groups.pl: added new PDB group "transform_tools".
* tools/pdbgen/pdb/tools.pdb: removed the transform stuff here...
* tools/pdbgen/pdb/transform_tools.pdb: and added *much*
simplified versions which use the new core/gimpdrawable-transform*
utilities.
* app/pdb/Makefile.am
* app/pdb/transform_tools_cmds.c: new file.
* app/pdb/internal_procs.c
* app/pdb/tools_cmds.c: regenerated.
* libgimp/Makefile.am
* libgimp/gimp_pdb.h
* libgimp/gimptransformtools_pdb.[ch]: new files.
* libgimp/gimptools_pdb.[ch]: regenerated.
2001-11-16 Michael Natterer <mitch@gimp.org>
Wishlist item #57669:
* app/gimprc.[ch]: replaced gimprc option "allow-resize-windows"
by "resize-windows-on-zoom" and "resize-windows-on-resize".
* app/gui/preferences-dialog.c: added a toggle for
"resize-windows-on-resize".
* app/display/gimpdisplayshell-handlers.c
* app/display/gimpdisplayshell-scale.c
* app/tools/gimpmagnifytool.c
* docs/gimprc.5.in
* etc/gimprc.in
* etc/gimprc.win32: changed accordingly.
* app/display/gimpdisplay-area.[ch]: added gimp_area_new().
* app/display/gimpdisplay.c: cleanup usage of GimpArea.
* app/display/gimpdisplayshell.[ch]: added configurable canvas
padding color and a small color_panel to change it in the upper
right corner of the window.
* app/display/gimpdisplayshell-callbacks.[ch]: added a callback
for the color_panel, initialize the color in the "realize"
callback.
Wishlist item #51548.
* app/display/gimpdisplayshell-selection.[ch]
* app/gui/menus.c
* app/gui/view-commands.[ch]: made the layer boundary toggleable
separately from the selection.
* app/gui/color-notebook.c: #if 0'ed a debugging g_print().
2001-11-15 Michael Natterer <mitch@gimp.org>
Gimp's opacity values are a pain... the core actually *should*
only accept and expose values in a [0.0..1.0] range.
* app/core/gimpdrawable-blend.c
* app/core/gimpdrawable-bucket-fill.c: take 0.0 <= opacity <= 1.0,
*not* 0.0 < opacity <= 100.0.
* app/tools/gimpblendtool.c: don't (opacity * 100.0) before passing.
* tools/pdbgen/pdb/tools.pdb: (opacity / 100.0) before passing.
* app/display/gimpdisplayshell-dnd.c: paint_mode and opacity were
swapped in the call to gimp_drawable_bucket_fill_full().
* app/pdb/tools_cmds.c: regenerated.
2001-11-15 Michael Natterer <mitch@gimp.org>
* app/tools/gimpdrawtool.[ch]: restructured the new draw utility
functions and added gimp_draw_tool_draw_handle() and
gimp_draw_tool_on_handle().
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpcroptool.[ch]
* app/tools/gimpiscissorstool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.c
* app/tools/gimptransformtool.c: use the new functions all over
the place so handle drawing and mouse_over detection work the same
for all tools.
2001-11-14 Michael Natterer <mitch@gimp.org>
* app/tools/tool_manager.[ch]: added
tool_manager_button_press_active() and friends functions.
* app/display/gimpdisplayshell-callbacks.c:
gimp_display_shell_canvas_events(): use the functions instead of
re-fetching the active_tool whenever it may have changed
(which requires knowledge about the tools' implementation).
Also moved lots of variables around.
2001-11-12 Michael Natterer <mitch@gimp.org>
* HACKING: small fix.
* configure.in: changed --disable-perl to --enable-perl because
it doesn't build properly at the moment.
* pixmaps/Makefile.am: removed stuff which is no longer there
from EXTRA_DIST.
* plug-ins/Makefile.am: put back the $(GIMP_PERL) line in SUBDIRS.
* app/widgets/gimpmenuitem.c. include "libgimpwidgets/gimpwidgets.h".
* data/Makefile.am
* data/brushes/Makefile.am
* data/gradients/Makefile.am
* data/palettes/Makefile.am
* data/patterns/Makefile.am: removed the old "files" hack and put
the stuff to EXTRA_DIST.
* app/Makefile.am
* app/base/Makefile.am
* app/core/Makefile.am
* app/file/Makefile.am
* app/gui/Makefile.am
* app/paint-funcs/Makefile.am
* app/pdb/Makefile.am
* app/tools/Makefile.am
* app/widgets/Makefile.am
* app/widgets/gimpmenuitem.c
* app/xcf/Makefile.am
* cursors/Makefile.am
* libgimp/Makefile.am
* libgimpbase/Makefile.am
* libgimpcolor/Makefile.am
* libgimpmath/Makefile.am
* libgimpwidgets/Makefile.am
* m4macros/Makefile.am
* themes/Makefile.am
* themes/Default/Makefile.am
* themes/Default/images/Makefile.am
* themes/Default/images/tools/Makefile.am: removed "files" target.
2001-11-12 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-callbacks.c: use
gimp_display_shell_[install|remove]_override_cursor() to set the
middle mouse button move cursor so we get the original cursor back
after scrolling.
* app/tools/gimpdrawtool.[ch]: added lots of drawing functions
(gimp_draw_tool_draw_rectangle() etc.) which work in image (or
active drawable) coordinates.
* app/tools/gimpblendtool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpellipseselecttool.c
* app/tools/gimpfreeselecttool.c
* app/tools/gimpiscissorstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.c
* app/tools/gimprectselecttool.c
* app/tools/gimptransformtool.[ch]
* app/tools/path_tool.[ch]: use the new functions. Removed tons of
gdk_draw_foo() and gdisplay_transform_foo() calls. Most drawing
functions look *much* nicer now. Ported some tools to detect
handle clicks in display coordinates while I was on it, misc
fixes.
* app/tools/gimpmovetool.[ch]: derive from GimpDrawTool instead
of drawing manually.
2001-11-10 Michael Natterer <mitch@gimp.org>
* app/qmask.c: fixed qmask callbacks to check if the toggle is
active before performing any action.
* app/core/core-types.h: added the GimpCoords type here because it
will be used by core functions as soon as the painting stuff is
separated from the painting tools.
* app/core/gimpdrawable-bucket-fill.c: fixed g_return_if_fail()s
to not disable any useful operation :-) Still didn't figure out
how I broke display color and pattern dropping :-(
* app/display/gimpdisplayshell.[ch]: added
gimp_display_shell_[un]transform_coords() which work on two
GimpCoords pointers.
* app/display/gimpdisplayshell-callbacks.c: use the new functions
instead of the gdisplay_* ones.
* app/gui/image-commands.c: GimpImage emits "disconnect", not
"destroy".
* app/tools/tools-types.h
* app/tools/gimptool.h: removed GimpCoords here.
* app/tools/gimpconvolvetool.c: fixed modifier_key() implementation.
* app/tools/gimpcroptool.c: cleanup.
* app/tools/paint_options.c: don't need a separator in the ink
tool options.
* app/tools/gimprectselecttool.c
* app/tools/selection_options.[ch]: implemented wish #50352:
Added "Auto Shrink Selection" and "Sample Merged" toggles to
the rect_select and ellipse_select tools. Put the "Fixed size"
widgets in a frame. Removed the separators after the common
selection tool options because I didn't like them any more
(feel free to comment ;)
2001-11-09 Michael Natterer <mitch@gimp.org>
* app/undo.c: should set the fs.backing_store TileManager pointer
to NULL after deleting it. Why the heck didn't this crash
before...?
* app/core/Makefile.am
* app/core/gimpdrawable-blend.[ch]: the blend stuff taken from
the blend tool.
* app/core/core-types.h: added the blend enums.
* app/tools/gimpblendtool.[ch]: removed the stuff here.
* tools/pdbgen/pdb/tools.pdb: changed blend wrapper accordingly.
* app/pdb/tools_cmds.c: regenerated.
* tools/pdbgen/Makefile.am: don't scan tools/gimpblendtool.c.
* tools/pdbgen/enums.pl: regenerated.
* app/tools/gimpbucketfilltool.c: fixed crash caused by my last
change.
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell.c: removed lots of uglyness by
using GtkImages for the qmask and navigation buttons. Don't realize
anything before the shell is shown. Connect the realize
callback and do stuff there. Don't call the realize callback
from gimp_display_shell_canvas_events() any more.
* pixmaps/navbutton.xpm
* pixmaps/qmasknosel.xpm
* pixmaps/qmasksel.xpm: removed.
* themes/Default/Makefile.am
* themes/Default/images/Makefile.am
* themes/Default/images/stock-menu-navigation.png
* themes/Default/images/stock-menu-qmask-off.png
* themes/Default/images/stock-menu-qmask-on.png: new PNGs instead.
* libgimpwidgets/gimpstock.[ch]: register them as stock icons.
2001-11-08 Michael Natterer <mitch@gimp.org>
* app/Makefile.am: build display/ before tools/.
* app/devices.c: devices_check_change(): added all events
which have a GdkDevice pointer.
* app/gimpprogress.c: include "display-types.h" instead of
"core-types.h".
* app/core/Makefile.am
* app/core/gimpdrawable-bucket-fill.[ch]: new files: the bucket_fill
stuff taken from tools/gimpbucketfilltool.[ch].
* app/core/core-types.h: added "BucketFillMode".
* app/core/gimpimage-mask-select.[ch]: cleanup.
* app/core/gimpmarshal.list: added more marshallers for GimpTool's
new signal signatures.
* app/core/gimpmarshal.[ch]: regenerated.
* app/display/Makefile.am
* app/display/gimpdisplayshell-dnd.[ch]
* app/display/gimpdisplayshell-layer-select.[ch]: new files: the
canvas drop callbacks from gimpdisplayshell-callbacks.[ch] and
the stuff formerly knows as gui/layer-select.[ch].
* app/display/gimpdisplay.h: don't include "gui/gui-types.h".
* app/display/gximage.c: include "display-types.h".
* app/display/gimpdisplay-foreach.c
* app/display/gimpdisplayshell.[ch]: call gdsplay_delete(), don't
destroy the shell widget.
* app/gui/Makefile.am
* app/gui/layer-select.[ch]: removed.
* app/gui/gradients-commands.c: fixed "Save as POV" fprintf()s.
* app/gui/preferences-dialog.c: removed the layer_select stuff
because it is useless with the new preview system.
* app/gui/tool-options-dialog.c: send the correct data to the
close_callback.
* app/gui/tools-commands.c: changed to follow the new
gimp_tool_initialize() semantics (see below).
Tool & canvas event handling chainsawing:
* app/tools/tools-types.h: new struct GimpCoords which contains
x, y, pressure, tilt etc.
* app/display/gimpdisplayshell-callbacks.[ch]: added utility
functions which transparently retreive the current event's
GimpCoords or take it from the device directly if the event has
none. Pass GimpCoords _in_image_coordinates_ to all tool
functions.
Most important: don't pass GdkEvents and display coordinates to
tools any more.
* app/tools/gimptool.[ch]: changed virtual functions to take
GimpCoords, time and state separately instead of GdkEvents.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.[ch]
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.[ch]
* app/tools/gimpcurvestool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpdrawtool.c
* app/tools/gimpeditselectiontool.[ch]
* app/tools/gimperasertool.c
* app/tools/gimpfliptool.c
* app/tools/gimpfreeselecttool.[ch]
* 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.[ch]
* app/tools/gimprectselecttool.c
* app/tools/gimprotatetool.c
* app/tools/gimpselectiontool.[ch]
* app/tools/gimpsmudgetool.c
* app/tools/gimptexttool.c
* app/tools/gimptransformtool.[ch]
* app/tools/path_tool.[ch]
* app/tools/selection_options.c: tons and tons of changes:
- changed to use the new virtual function parameters.
- removed zillions of gdisplay_untransform_coords().
- get the active drawable's offsets manually in many cases.
(questionable, but IMHO ok because it's obvious and not simply a
"TRUE" passed to some function)
- reordered some functions to be consistent across tools.
- some tools had to be changed to work on image coords, not
display ones (esp. crop).
- fixed strange rotate tool behaviour which should be backported
to stable.
- some stuff i came across.
- indentation and other paranoia.
- rounding of coordinated may be broken in some tools.
- new bugs guaranteed.
* app/tools/tool_manager.[ch]: new semantic of
tool_manager_initialize_active() (looked at the places where it
was used from and put common code together). Should be a bit
better now :)
* app/tools/gimpblendtool.c
* app/tools/transform_options.c: use the new GTK+ feature that a
widget (toggle button) can be a frame's title for this tools' tool
options.
* app/widgets/widgets-types.h: stuff.
* themes/Default/gtkrc: s/GtkDialog/GimpDialog/.
* tools/pdbgen/Makefile.am: don't scan tools/gimpbucketfilltool.h
any more.
* tools/pdbgen/enums.pl: regenerated.
* tools/pdbgen/pdb/tools.pdb: changed bucket_fill wrapper.
* app/pdb/tools_cmds.c: regenerated.
2001-11-02 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-scroll.c: stop synthesizing expose
events but use gdk_window_invalidate_rect() and
gdk_window_process_updates() (both with "update_children == FALSE"
because the canvas has no children).
* app/tools/gimpmagnifytool.c: nothing.
2001-11-01 Michael Natterer <mitch@gimp.org>
* app/display/Makefile.am
* app/display/gimpdisplay-callbacks.[ch]
* app/display/gimpdisplay-render.[ch]
* app/display/gimpdisplay-scale.[ch]
* app/display/gimpdisplay-scroll.[ch]: removed and added as
gimpdisplayshell-foo.[ch] because they are all methods of the
shell.
* app/display/gimpdisplay.[ch]
* app/display/gimpdisplayshell.[ch]: moved the "offset" and "size"
variables from GimpDisplay to GimpDisplayShell. GimpDisplay
should know nothing about screen coordinates.
The gdisplay_[un]transform_foo() methods are still part of
GimpDisplay but will be moved to GimpDisplayShell as soon as the
tools' vitrual functions speak in image coordinates instead of
GdkEvents.
* app/display/gimpdisplayshell-callbacks.[ch]: prefixed all
functions with gimp_display_shell_*. Moved some stuff to a
"realize" callback File still has to be renamed.
* app/display/gimpdisplay-foreach.[ch]: removed
gdisplays_shrink_wrap().
* app/gui/menus.c
* app/gui/view-commands.[ch]
* app/display/gimpdisplayshell-scale.[ch]: implemented "Zoom to
Fit Window" function (#57670).
* app/nav_window.c
* app/display/gimpdisplay-handlers.c
* app/display/gimpdisplayshell-render.[ch]
* app/display/gimpdisplayshell-scale.[ch]
* app/display/gimpdisplayshell-scroll.[ch]
* app/gui/colormap-dialog.c
* app/gui/gui.c
* app/gui/preferences-dialog.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmovetool.c
* app/widgets/gimppreview.c: changed according to variable
and filename changes.
* app/tools/tool_manager.c: tool_manager_select_tool(): send the
active tool a "HALT" command before selecting the new one. Fixes
stale tool dialogs which were there because some other hack was
removed (This is IMHO the right place to shut down the active
tool).
* app/tools/gimpcroptool.c: don't shrink wrap after cropping but
let gimprc.allow_resize_windows decide.
* app/tools/gimpselectiontool.c: gimage_mask_value() takes image,
not screen coordinates. A good example of how braindead it is to
pass GdkEvents to tools :-) Fixes incorrect cursor and oper
update of the selection tools.
* app/tools/gimptransformtool.c
* app/undo.c: removed (#if 0 for now) some strange code which did
manual exposing of GimpDisplayShell areas. This was definitely a
hack and should not be there given the image emits correct
"update" signals.
2001-10-30 Simon Budig <simon@gimp.org>
* app/pdb/tools_cmds.c
* app/tools/gimperasertool.c
* app/tools/gimperasertool.h
* tools/pdbgen/pdb/tools.pdb
Added a "color erase" feature to the eraser. This is ported from
the colortoalpha plugin and is utterly cool.
The "Color Erase" Option should be disabled when the drawable
has no alpha channel, however, I have no idea how to do this.
2001-10-29 Sven Neumann <sven@gimp.org>
* app/base/temp-buf.c (temp_buf_to_gray): rewrote so gcc-3.0 doesn't
complain.
* app/widgets/gimpfontselection-dialog.c: use g_ascii_strcasecmp().
* libgimp/gimpintl.h
* libgimp/stdplugins-intl.h
* plug-ins/script-fu/script-fu-intl.h: don't call gtk_set_locale()
since gtk_init() does it for us now. Don't set LC_NUMERIC to "C".
INIT_I18N_UI() is the same as INIT_I18N_UI() now.
* app/devices.c
* app/gimprc.c
* app/core/gimpbrushgenerated.c
* app/core/gimpgradient.c
* app/gui/color-notebook.c
* app/gui/gradients-commands.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c
* plug-ins/gimpressionist/presets.c
* plug-ins/ifscompose/ifscompose_storage.c: use g_ascii_formatd() and
g_ascii_strtod() to serialize and deserialize floats. These functions
are locale-independent. There are probably more places that need to be
fixed in this fashion.
* plug-ins/script-fu/script-fu-console.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-server.c
* plug-ins/script-fu/script-fu.c: s/INIT_I18N_UI/INIT_I18N/
* tools/gimp-remote.c
* app/widgets/gimpwidgets-utils.c
* app/core/gimpimage-contiguous-region.c
* app/paint-funcs/paint-funcs-indexeda.c
* app/paint-funcs/paint-funcs.c
* app/tools/gimppathtool.c
* app/tools/path_tool.c
* modules/colorsel_triangle.c
* plug-ins/common/mpeg.c
* plug-ins/imagemap/imap_csim_parse.c: cleanups
2001-10-29 Michael Natterer <mitch@gimp.org>
Cleanup weekend...
* app/app_procs.c: pass "no_interface" to gimp_new().
* app/core/gimp.[ch]: added "gboolean no_interface" and the
load_procs and save_procs GSLists.
* app/core/gimptoolinfo.[ch]: added a "Gimp" pointer to the
GimpToolInfo object so more functions find their context without
accessing the global "the_gimp" variable.
* app/display/display-types.h: removed the GDisplay -> GimpDisplay
typedef.
* app/display/gimpdisplay.c: look at gimp->no_interface, don't
include "appenv.h".
* app/file/file-open.[ch]
* app/file/file-save.[ch]: don't use "the_gimp" any more. Instead,
pass around lots of "Gimp" pointers. Removed the global load_procs
and save_procs variables here. Use access() to find out whether a
file is readable/writable, removed the manual voodoo and it's
Win32 wrappers. Added an optional (can be NULL) "PlunInProcDef"
parameter to file_save(), removed file_save_with_proc().
* app/gui/menus.c: Use the unused "gpointer data" parameter of the
GtkItemFactory callbacks to pass a "Gimp" pointer to all of them.
This reduces the usage of the global "the_gimp" hack to zero
in app/gui/... yeah.
* app/gui/channels-commands.c
* app/gui/edit-commands.c
* app/gui/file-commands.c
* app/gui/image-commands.c
* app/gui/layers-commands.c
* app/gui/palettes-commands.c
* app/gui/select-commands.c
* app/gui/test-commands.c
* app/gui/tools-commands.c
* app/gui/view-commands.c: use the passed "Gimp" pointer.
* app/gui/color-area.[ch]
* app/gui/convert-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/file-new-dialog.[ch]
* app/gui/file-open-dialog.[ch]
* app/gui/file-save-dialog.[ch]
* app/gui/gui.c
* app/gui/info-window.[ch]
* app/gui/module-browser.[ch]
* app/gui/palette-editor.c
* app/gui/palette-import-dialog.[ch]
* app/gui/paths-dialog.c
* app/gui/preferences-dialog.[ch]
* app/gui/resize-dialog.[ch]
* app/gui/tool-options-dialog.[ch]
* app/gui/toolbox.c: pass around lots more "Gimp" and
"GimpContext" pointers and don't use "the_gimp" any more.
* app/tools/gimptool.h: added a pointer to the corresponding
GimpToolInfo object (which in turn has a pointer to a Gimp).
* app/tools/tool_manager.[ch]: set the pointer after creating the
tool object. Removed tool_manager_get_info_by_tool() as there is a
tool->tool_info pointer now.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpconvolvetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpcurvestool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpdrawtool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpellipseselecttool.c
* app/tools/gimperasertool.c
* app/tools/gimpfliptool.c
* app/tools/gimphistogramtool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimpinktool.c
* app/tools/gimplevelstool.c
* app/tools/gimpmagnifytool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c
* app/tools/gimppathtool.c
* app/tools/gimpperspectivetool.c
* app/tools/gimpposterizetool.c
* app/tools/gimprectselecttool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c
* app/tools/gimptexttool.c
* app/tools/gimpthresholdtool.c
* app/tools/path_tool.c
* app/tools/xinput_airbrush.c: s/GDisplay/GimpDisplay/g.
Use tool->tool_info and tool_info->gimp in some places to get
rid of using "the_gimp".
Removing the remaining ones involves changing the tool options
system and is scheduled next...
* app/widgets/gimpdnd.c
* app/widgets/gimpdocumentview.c: pass a "Gimp" pointer to all
file_open_*() functions.
* app/gdisplay_color.[ch]
* app/gdisplay_color_ui.[ch]
* app/image_map.[ch]
* app/nav_window.[ch]
* app/path.c
* app/path_bezier.c
* app/path_transform.h
* app/qmask.[ch]: s/GDisplay/GimpDisplay/g
* tools/pdbgen/pdb/fileops.pdb: load_procs and save_procs are
members of the "Gimp" object now.
* tools/pdbgen/pdb/plug_in.pdb: use gimp->no_interface, don't
include "appenv.h".
* app/pdb/fileops_cmds.c
* app/pdb/plug_in_cmds.c: regenerated.
2001-10-24 Michael Natterer <mitch@gimp.org>
* app/file-open.c
* app/file-utils.c
* app/gimprc.c
* app/plug_in.c
* app/user_install.c
* app/base/base.c
* app/base/temp-buf.c
* app/core/gimpdata.c
* app/core/gimpdatafiles.c
* app/core/gimpimagefile.c
* app/gui/about-dialog.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gui.c
* app/gui/menus.c
* app/gui/splash.c
* app/gui/tips-dialog.c
* app/tools/gimpcurvestool.c
* app/tools/gimplevelstool.c
* libgimpbase/gimpenv.c
* plug-ins/FractalExplorer/FractalExplorer.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c
* tools/pdbgen/pdb/fileops.pdb: use g_build_filename() all over
the place instead of g_strconcat() and friends together with
G_DIR_SEPARATOR_S. Also removed all attempts to manually detect
double dir separators. LibGimpBase's searchpath utility functions
don't append a G_DIR_SEPARATOR_S to all paths any more.
* app/pdb/fileops_cmds.c: regenerated.
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-10-16 Michael Natterer <mitch@gimp.org>
* app/gimpprogress.[ch]
* app/undo.c: s/GDisplay/GimpDisplay/
* app/plug_in.[ch]: removed unused boolean "destroy" field of
the PlugIn struct.
* app/core/gimpedit.c: don't include "app_procs.h"
* app/display/gimpdisplay-callbacks.c: moved the "grab_abd_scroll"
stuff from gimpdisplay-scroll.* here (less complicated and easier
to cleanup...)
* app/display/gimpdisplay-scroll.[ch]: removed here.
* app/display/gimpdisplay-render.[ch]
* app/display/gimpdisplay-selection.[ch]
* app/display/gimpdisplayshell.c: s/GDisplay/GimpDisplay/g
* app/display/gimpdisplay.[ch]: ditto, removed gdisplay_active()
which was just a wrapper around
"gimp_context_get_display (gimp_get_user_context (the_gimp))"
(which is more to type but makes the use of the global
"the_gimp" variable more obvious).
* app/gui/color-area.h
* app/gui/edit-commands.c
* app/gui/file-commands.c
* app/gui/file-dialog-utils.c
* app/gui/image-commands.c
* app/gui/info-window.h
* app/gui/paths-dialog.h
* app/gui/select-commands.c
* app/gui/tool-options-dialog.c
* app/gui/tools-commands.c
* app/gui/view-commands.c: s/GDisplay/GimpDisplay/, gdisplay_active()
removal, include "app_procs.h" for "the_gimp".
* app/tools/gimpbezierselecttool.h
* app/tools/gimpbrightnesscontrasttool.[ch]
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpcolorbalancetool.[ch]
* app/tools/gimpcurvestool.[ch]
* app/tools/gimpeditselectiontool.h
* app/tools/gimphistogramtool.[ch]
* app/tools/gimphuesaturationtool.[ch]
* app/tools/gimplevelstool.[ch]
* app/tools/gimpmovetool.h
* app/tools/gimpperspectivetool.h
* app/tools/gimpposterizetool.[ch]
* app/tools/gimprotatetool.h
* app/tools/gimpscaletool.h
* app/tools/gimpsheartool.h
* app/tools/gimptexttool.h
* app/tools/gimpthresholdtool.[ch]
* app/tools/gimptool.[ch]
* app/tools/gimptransformtool.h
* app/tools/tool_manager.[ch]: lots of s/GDisplay/GimpDisplay/, made
all *_dialog_hide() functions private, cleanup.
* app/widgets/*: removed GtkType and gtk_type_* stuff entirely and
use GObject functions, removed lots of empty "destroy" methods and
use more type checking class cast macros instead of casting
directly.
* app/widgets/gimpcontainermenu.c: fixed item insert order.
* app/widgets/gimphistogramview.[ch]: cleaned up and renamed all
functions.
* app/widgets/gimpwidgets-utils.[ch]: removed gimp_dialog_hide() as
Gtk+ does the right thing (TM) now.
* tools/pdbgen/pdb/color.pdb: implemented "histogram" without
digging into tools/ and widgets/ (needs to be done for all
color PDB functions).
* tools/pdbgen/pdb/gimprc.pdb: no need to use "the_gimp" in a PDB
function as a "Gimp" pointer is passed to them all.
* tools/pdbgen/pdb/image.pdb: don't include "app_procs.h"
* app/pdb/color_cmds.c
* app/pdb/gimprc_cmds.c
* app/pdb/image_cmds.c: regenerated.
* app/pdb/procedural_db.c: don't include "app_procs.h"
2001-09-25 Michael Natterer <mitch@gimp.org>
* app/gdisplay.[ch]: renamed it to GimpDisplay and made it a
GimpObject subclass.
* app/disp_callbacks.[ch]
* app/gdisplay_ops.[ch]
* app/scale.[ch]
* app/scroll.[ch]
* app/display/display-types.h: changed accordingly.
* app/core/gimpimage.[ch]: new signal "selection_control".
* app/core/core-types.h: moved the SelectionControl enum and all
other core enums here.
* app/gui/gui.c: connect to the images' "selection_control" signal
and call gdisplays_selection_visibility().
* app/core/gimpcontext.c
* app/core/gimpdrawable-offset.h
* app/core/gimpimage-convert.h
* app/core/gimpimage-mask.c
* app/core/gimplayer.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpinktool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c: changed accordingly.
* app/gui/colormap-dialog.[ch]: GObject porting.
* tools/pdbgen/Makefile.am: removed headers which no longer
contain enums.
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/drawable.pdb: include files which are no longer
included automatically by the enum voodoo.
* app/pdb/convert_cmds.c
* tools/pdbgen/enums.pl: regenerated.
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-09-20 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpdialog.[ch]: made a real object (GtkDialog
subclass) out of it. The API will change soon too.
* libgimpwidgets/gimpwidgetstypes.h: added GimpDialog typedef.
* libgimpwidgets/gimpbutton.[ch]
* libgimpwidgets/gimpchainbutton.[ch]
* libgimpwidgets/gimpcolorarea.[ch]
* libgimpwidgets/gimpcolorbutton.[ch]
* libgimpwidgets/gimpfileselection.[ch]
* libgimpwidgets/gimpoffsetarea.[ch]
* libgimpwidgets/gimppatheditor.[ch]
* libgimpwidgets/gimppixmap.c
* libgimpwidgets/gimpsizeentry.c
* libgimpwidgets/gimpunitmenu.c: removed GtkType stuff and use
GType in all get_type() functions. Some random GObject porting.
* app/gui/info-dialog.c
* app/gui/info-window.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpcroptool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimptransformtool.c: changed accordingly.
2001-09-19 Sven Neumann <sven@gimp.org>
* configure.in: require GTK+-1.3.8 and PangoFT2-0.19.
* app/devices.c:
* app/tools/gimppainttool.c: removed intermediate hacks that are no
longer needed with the new GTK+ release.
* app/plug_in.c
* libgimp/gimp.[ch]
* libgimp/gimpui.c
* libgimpbase/gimpprotocol.[ch]: removed use_xshm and color_cube
variables and accessor functions.
* app/errors.c: use gtk_exit() instead of gdk_exit().
* app/gdisplay.c: use Pango API to determine cursor label width. This
does not work correctly, but at least it compiles...
* app/gui/splash.c: follow Pango API changes.
* app/tools/gimpcurvestool.[ch]: use PangoLayouts to draw text.
* app/tools/gimptexttool.c: follow Pango API changes.
* app/widgets/gimpfontselection-dialog.c
* app/widgets/gimpfontselection.c: mostly rewritten following the
changes in GtkFontSelection. This is unusable at the moment and
crashes, but at least it compiles again...
* plug-ins/Makefile.am: temporarily disabled build of ifscompose since
it does not compile any longer after the latest GDK cleanups.
* plug-ins/common/nlfilt.c: gimp_color_cube() is obsolete.
2001-09-09 Sven Neumann <sven@gimp.org>
* app/devices.c
* app/tools/gimppainttool.c: readded the old code here in case the
old GDK variable is defined. Since GTK+-1.3.7 is finally out, we want
to try to keep GIMP compile against this release as long as possible.
* plug-ins/common/gif.c: applied a patch from David Odin
<dindinx@wanadoo.fr> that brings the GIF plug-in back to live.
* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am
* plug-ins/common/plugin-defs.pl: build it again.
2001-09-08 Daniel Egger <egger@interearth.com>
* app/devices.c
* app/tools/gimppainttool.c: Use new gdk_device_get_core_pointer ()
instead of the former gdk_core_pointer variable. You will need a
recent CVS gtk to compile it!
2001-08-30 Michael Natterer <mitch@gimp.org>
* app/plug_in.c
* libgimpbase/gimpwire.c
* libgimp/gimp.c: removed GIOChannel "channel->funcs->io_foo()"
hacks and use plain g_io_channel_[read|write]_chars(). An
additional g_io_channel_set_buffered (channel, FALSE); is needed
to make the channels work in binary mode. Fixed misc other stuff
in the GIOChannel code.
* app/tools/gimpdrawtool.c
* app/tools/gimpmovetool.c
* app/tools/gimptransformtool.c
* app/widgets/gimpdialogfactory.c
* libgimpwidgets/gimpcolorarea.c
* libgimp/gimpui.c: replaced some deprecated GDK functions.
* app/gui/palette-editor.c: block the color_name entry's "changed"
signal while setting it. Fixes invalid UTF-8 warnings.
2001-08-19 Sven Neumann <sven@gimp.org>
* app/devices.h
* app/disp_callbacks.c
* app/interface.c: applied a patch from <David.Odin@bigfoot.com> that
changes some function prototype to return gboolean instead of gint.
* app/tools/gimpblendtool.c: pixel_regions_register() and
pixel_regions_process() return a gpointer, not (gpointer *).
2001-08-17 Michael Natterer <mitch@gimp.org>
* configure.in: added app/display/ and app/plug-in/. Empty for
now except for the types files.
* app/Makefile.am
* app/appenums.h
* app/apptypes.h: removed.
* app/display/Makefile.am
* app/display/display-types.h
* app/plug-in/Makefile.am
* app/plug-in/plug-in-types.h
* app/gui/Makefile.am
* app/gui/gui-types.h
* app/pdb/Makefile.am
* app/pdb/pdb-types.h: new files for typedefs.
* app/appenv.h: added MessageHandlerType and StackTraceMode here.
* app/undo_types.h: moved undo struct typedefs here.
* app/tools/tools-types.h
* app/core/core-types.h: added some enums and Tattoo here
(renamed to GimpTattoo).
* app/gdisplay.h: temp_hack: #include "display/display-types.h"
* app/gimphelp.c: s/gtk_idle_add/g_idle_add/
* app/gimprc.c: don't use "gimprc" in token handlers but the
passed "val1p" and "val2p".
* app/image_map.[ch]: cleanup in preparation of making a GObject
out of it.
* app/base/pixel-region.[ch]: no need to pass the
PixelRegionIterator around as void pointer.
* app/core/gimp.[ch]
* app/core/gimpcontext.[ch]
* app/core/gimptoolinfo.[ch]
* app/tools/tool_manager.c
* app/widgets/gimpdnd.c: added the standard_tool_info to the Gimp
object.
* app/batch.c
* app/file-open.c
* app/file-save.c
* app/file-utils.c
* app/interface.c
* app/main.c
* app/path.[ch]
* app/pathP.h
* app/plug_in.h
* app/core/gimpdrawable.[ch]
* app/core/gimpimage-mask.c
* app/core/gimpimage.[ch]
* app/core/gimplayer.c
* app/gui/color-area.c
* app/gui/color-notebook.c
* app/gui/colormap-dialog.c
* app/gui/dialogs-commands.c
* app/gui/dialogs-constructors.c
* app/gui/error-console-dialog.c
* app/gui/gradient-editor.c
* app/gui/gradient-select.c
* app/gui/indicator-area.c
* app/gui/info-dialog.c
* app/gui/palette-editor.c
* app/gui/palette-select.c
* app/gui/pattern-select.c
* app/gui/session.c
* app/gui/splash.c
* app/gui/view-commands.c
* app/tools/gimpinktool-blob.c
* app/widgets/gimpcolorpanel.c
* app/widgets/gimpdockbook.c
* app/widgets/gimppreview.c
* app/xcf/xcf-load.c
* app/xcf/xcf-save.c
* app/xcf/xcf.c: changed accordingly: s/Tattoo/GimpTattoo/, include
the new types files, include <glib-object.h> instead of >gtk/gtk.h>.
Bad hacks to get rid of SELECTION_OFF and friends in core/ (will
be replaced ba a signal soon).
* tools/pdbgen/Makefile.am: changed list of headers scanned for
enums accordingly.
* app/pdb/procedural_db.c
* tools/pdbgen/app.pl
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/display.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/pattern_select.pdb: same fixes as above, added
hacks to ensure that all foo-types.h files are included before all
other gimp internal includes, include "pdb-types.h" unconditionally.
* tools/pdbgen/enums.pl
* app/pdb/*_cmds.c: regenerated.
2001-08-15 Michael Natterer <mitch@gimp.org>
* app/tools/gimptool.[ch]
* app/tools/tool_manager.[ch]: removed all *_get_PDB_string()
functions and GimpToolClass' "pdb_string" field as this info is
stored independent from a specific tool instance in GimpToolInfo
* app/tools/gimpbezierselecttool.c: use GimpToolInfo's "pdb_string".
2001-08-14 Michael Natterer <mitch@gimp.org>
* app/gdisplay.h: an evil temp_hack which lets GimpContext managing
the active display withoug including "gdisplay.h". Will go away as
soon ad context properties are registered dynamically.
* app/module_db.c: cleaned up the object code in preparation of
moving it to core/.
* app/path.c: connect to GimpImage's
* app/core/gimpobject.[ch]: derive it from GObject, not from
GtkObject any more (yeah :-)
* app/core/*.c: #include <glib-object.h> instead of <gtk/gtk.h>,
removed some remaining GtkObject-isms.
(left in a few #include <gtk/gtk.h> where bigger changes are needed
to get rid of the UI dependency).
* app/core/core-types.h: #include <gdk-pixbuf/gdk-pixbuf.h> here
temporarily.
* app/core/gimp.c (gimp_create_display): unref the image after
creating it's first display.
* app/core/gimpbrush.[ch]: disabled the parts of the code which
depend on GimpPaintTool.
* app/core/gimpbrushgenerated.c
* app/core/gimpbrushpipe.c: changed accordingly.
* app/core/gimpcontext.[ch]: evil hack (see above) to manage the
active display without including "gdisplay.h"
* app/core/gimpimage-mask.[ch]: pass a context to
gimage_mask_stroke() and get the current tool's PDB string from
there.
* app/core/gimpedit.c: changed accordingly.
* app/core/gimpimage.c: use gimp_image_update() instead of
gdisplays_update_full().
* app/gui/color-area.c
* app/gui/colormap-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/edit-commands.c
* app/gui/image-commands.c
* app/gui/toolbox.c: changed accordingly (don't use Gtk methods on
GObjects).
* app/gui/menus.c: fix some const warnings by explicit casting.
* app/tools/*.[ch]: ported all tools to GObject, some minor
cleanup while i was on it.
* app/widgets/gimpdialogfactory.[ch]: ported to GObject.
* app/widgets/gimplayerlistview.h: added FOO_GET_CLASS() macro.
* tools/pdbgen/app.pl: added a "widgets_eek" hack like "tools_eek"
which inserts #include "widgets/widgets-types.h" before ordinary
includes.
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/edit.pdb
* app/pdb/brush_select_cmds.c
* app/pdb/edit_cmds.c: changed according to the stuff above.
2001-08-14 Sven Neumann <sven@gimp.org>
* app/tools/gimptexttool.c: take image resolution and choosen unit
into account for font and border size.
* app/widgets/gimpfontselection-dialog.[ch]
* app/widgets/gimpfontselection.[ch]
* app/widgets/widgets-types.h: added an indicator for font validity.
Added a font preview to the font selection dialog.
* libgimpwidgets/gimpfileselection.c: return FALSE from
gimp_file_selection_entry_focus_out_callback() since we do not want
to stop signal emission.
2001-08-12 Michael Natterer <mitch@gimp.org>
Switched to GObject reference counting:
* app/core/gimpcontainer.c: only ref(), not ref()/sink() children
of strong containers. Reordered gimp_container_remove() so we
don't need to ref the object while removing it.
* app/core/gimpcontext.c: misc fixes. Needs to be badly tortured...
* app/app_procs.c
* app/gdisplay.c
* app/gimprc.c
* app/core/gimp.c
* app/core/gimpbrush.c
* app/core/gimpbrushpipe.c
* app/core/gimpdatafactory.c
* app/core/gimpdocuments.c
* app/core/gimpgradient.c
* app/core/gimpimage.c
* app/core/gimplayer.c
* app/core/gimplist.c
* app/core/gimpobject.c
* app/core/gimpparasite.c
* app/core/gimppattern.c
* app/core/gimpundostack.c
* app/gui/dialogs.c
* app/tools/gimpbezierselecttool.c
* app/tools/gimpfuzzyselecttool.c: changed accordingly: don't
ref()/sink() any more, unref all (??) objects after adding them to
strong containers, misc. minor fixes.
* app/gui/dialogs-constructors.c
* app/widgets/gimpwidgets.c: use g_object_add_weak_pointer()
instead of simply crashing because g_object_weak_ref() was used
with gtk_widget_destroyed, brrr.
* app/widgets/gimpdnd.c: removed unneeded g_return_if_fail()'s.
2001-08-11 Sven Neumann <sven@gimp.org>
* app/tools/gimptexttool.c: return the created layer.
* app/pdb/text_tool_cmds.c
* libgimp/gimptexttool_pdb.c
* tools/pdbgen/pdb/text_tool.pdb: hacked a bit so scripts using the
text_*_fontname procedures work again with the new text tool.
The fontname is however no longer a X Logical Font Description, but
the much simpler scheme that Pango understands:
"[FAMILY-LIST] [STYLE-OPTIONS]". Interactive font selection is still
broken. The variants of the text PDB calls that pass the XLFD fields
directly should also work since the PDB now translates this to a
Pango-conform fontname. Later this API will die, but for the moment,
some backward compatibility can't hurt...
2001-08-11 Michael Natterer <mitch@gimp.org>
* app/core/gimp.c: split "destroy" up in "dispose" and "finalize".
* app/core/gimpcontext.c: objects need to be passed around with
g_param_spec_object() or bad things will happen.
* app/gui/channels-commands.c
* app/gui/edit-commands.c
* app/gui/file-commands.c
* app/gui/gui.c
* app/gui/layers-commands.c
* app/gui/resize-dialog.c
* app/gui/select-commands.c
* app/tools/gimpclonetool.c
* app/widgets/gimpdatafactoryview.c
* app/widgets/gimppreview.c: removed many connections to
"destroy": Connect to "dispose" or use g_object_weak_ref()
instead.
2001-08-11 Michael Natterer <mitch@gimp.org>
* configure.in: fsck^^^ -- lovely autofoo wants "changequote([,])dnl"
* app/core/gimpcontext.[ch]: lots of GObject porting.
* app/core/gimpobject.[ch]: added a "disconnect" signal, which
like gtk's "destroy" is emitted in dispose(). This is ugly but
I don't see another "clean" way to implement weak containers.
* app/core/gimpcontainer.c: connect to the "disconnect" signal of
the children of weak containes.
* app/core/gimpimage.[ch]: replaced the "destroy" implementation
with "dispose" + "finalize". Removed gimage->undo_history.
* app/devices.c
* app/gui/dialogs-constructors.c
* app/gui/tools-commands.c
* app/tools/tool_manager.c
* app/widgets/gimpimagedock.c: changed accordingly.
2001-08-11 Sven Neumann <sven@gimp.org>
* app/tools/gimptexttool.c: allow to specify size and border.
* app/widgets/gimpfontselection.c: use GTK_STOCK_SELECT_FONT icon.
2001-08-11 Sven Neumann <sven@gimp.org>
* configure.in: added dependency on PangoFT2 (Pango compiled with
FreeType2 support).
* app/Makefile.am: link against PangoFT2.
* app/tools/Makefile.am
* app/tools/gimptexttool.[ch]: rudimentary new text tool. Still needs
lots of work.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h:
* app/widgets/gimpfontselection-dialog.[ch]
* app/widgets/gimpfontselection.[ch]: added font selection widgets.
* libgimpwidgets/Makefile.am
* libgimpwidgets/gimpwidgetstypes.h
* libgimpwidgets/gimpfontselection.[ch]: removed font selection code
from here since the fonts need to be selected from the core's
PangoContext. Will add PDB-controlled font selection later.
2001-08-10 Michael Natterer <mitch@convergence.de>
* app/nav_window.c: fix compiler warning.
* app/core/gimp.[ch]: added gimp->documents which will be an MRU
list of GimpImagefile objects.
* app/core/gimpcontainer.c: added some g_return_if_fail().
* app/gui/palette-editor.c: use GtkImage instead of GtkPixmap,
s/gtk_signal_*/g_signal_*/.
* app/widgets/gimppreview.c: render the checkerboard only for
channel == -1. In particular, don't render it for channel
previews.
* app/module_db.c
* app/core/*.c
* app/gui/colormap-dialog.c
* app/tools/gimpairbrushtool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimperasertool.c
* app/tools/gimppaintbrushtool.c
* app/tools/gimppenciltool.c
* app/tools/gimpsmudgetool.c
* app/tools/tool_manager.c
* app/widgets/*.c
* libgimpwidgets/*.c: s/gtk_type_new/g_object_new/
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>
* libgimpwidgets/gimpstock.[ch]: register the button icons with
GTK_ICON_SIZE_BUTTON, but set them as scalable fallbacks for
themselves so they get scaled for menus.
* app/gui/menus.c: set stock icons for much more menu entries.
* app/widgets/gimpwidgets-utils.[ch]: new utility function
gimp_item_factory_popup_with_data().
* app/disp_callbacks.[ch]
* app/gui/brushes-commands.c
* app/gui/channels-commands.c
* app/gui/gradients-commands.c
* app/gui/layers-commands.c
* app/gui/palettes-commands.c
* app/gui/paths-dialog.c
* app/gui/patterns-commands.c: use the new function.
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcurvestool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimplevelstool.c
* app/tools/gimpposterizetool.c: s/_("Reset")/GIMP_STOCK_RESET/
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpcontainerview.[ch]: moved the button_box utility
functions from the container editor to GimpContainerView itself.
* app/widgets/gimpbufferview.c
* app/widgets/gimpchannellistview.c
* app/widgets/gimpcomponentlistitem.c
* app/widgets/gimpcontainergridview.[ch]
* app/widgets/gimpdatafactoryview.c
* app/widgets/gimpdrawablelistitem.c
* app/widgets/gimpdrawablelistview.[ch]
* app/widgets/gimplayerlistitem.c
* app/widgets/gimplayerlistview.c: changed accordingly. Removed
lots of duplicated code and use stock images instead of pixmaps.
* libgimpwidgets/gimpfileselection.[ch]
* libgimpwidgets/gimppatheditor.c: use stock images instead of
pixmaps.
* pixmaps/Makefile.am: removed "yes" and "no", added "stroke".
* pixmaps/anchor.xpm
* pixmaps/delete.xpm
* pixmaps/lower.xpm
* pixmaps/new.xpm
* pixmaps/paste-as-new.xpm
* pixmaps/paste-into.xpm
* pixmaps/paste.xpm
* pixmaps/raise.xpm
* pixmaps/refresh.xpm
* pixmaps/toselection.xpm: made them all 16x16 so they are scaled
nicely in menus. Should probably be 18x18.
2001-07-29 Michael Natterer <mitch@gimp.org>
* app/gimphelp.c: code formating paranoia.
* app/core/gimp.c: one more g_signal_connect().
* app/tools/gimpmeasuretool.c: a gtk_widget_show() was optimized
away :)
* plug-ins/Makefile.am: re-enabled script-fu and dbbrowser.
* plug-ins/dbbrowser/dbbrowser_utils.[ch]
* plug-ins/script-fu/script-fu-console.[ch]
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-text-console.[ch]
* plug-ins/script-fu/script-fu.c: use GtkTextBuffer/GtkTextView
all over the place. GUI code cleanup in the dbbrowser and
the script-fu console.
2001-07-28 Hans Breuer <hans@breuer.org>
* */*/makefile.msc : updated for GTK2 build
* app/widgets/makefile.msc : (new file) forgot this one last time
* plug-ins/common/animationplay.c : reflect that GTK2 has its
gdk<x|win32|fb>.h files in the back-end sub directories
* plug-ins/common/gif.c :
* plug-ins/common/jpeg.c :
* plug-ins/dbbrowser/dbbrowser_utils.c :
* plug-ins/gap/gap_dbbrowser_utils.c :
* plug-ims/gimpressionist/presets.c :
* plug-ims/gimpressionist/imap_setting.c :
* plug-ims/gimpressionist/imap_source.c :
* plug-ims/script-fu/script-fu-console.c :
* plug-ims/script-fu/script-fu-scripts.c : #define GTK_ENABLE_BROKEN
and include <gtk/gtktext.h> to make them compile/work again
* plug-ins/common/spheredesigner.c : gtk_color_selction_set_opacity
renamed to gtk_color_selction_set_current_alpha
* plug-ins/gflare/gtkmultioptionmenu.c : ported ny removing the
virtual draw function and style->xthickness and ythickness via
direct access, klass field isn't available anymore
* plug-ins/common/nlfilt.c :
* plug-ims/gap/gap_movdialog.c :
* plug-ims/gimpressionist/gimpressionist.c : gtk_widget_set_default_visible is
neither available nor needed anymore
* plug-ins/common/plugindetails.c : ported to GtkTextBuffer
and reflect gtk_paned api changes
* plug-ims/gimpressionist/imap_preview.c : replace GTK_WIDGET(a)->klass
access by GTK_WIDGET_GET_CLASS(a)
* plug-ims/gimpressionist/imap_selection.c :
* plug-ims/gimpressionist/imap_toolbar.c :
* plug-ims/gimpressionist/imap_tools.c : gtk_toolbar api changes
2001-07-27 Michael Natterer <mitch@gimp.org>
* app/errorconsole.c
* app/user_install.c: use GtkTextView.
* app/gui/preferences-dialog.c: use GtkTextView correctly :)
* app/interface.c: a quick hack which enables setting the
canvas padding color via gtkrc.
* app/file-utils.c
* app/plug_in.c
* app/pdb/fileops_cmds.c
* tools/pdbgen/pdb/fileops.pdb: s/g_basename/g_path_get_basename/
* app/tools/gimpinktool.c
* app/tools/gimppainttool.c: stupid /me disabled all paint tools
by setting pressure to 0.0 instead of 1.0, fixed now.
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.
2001-07-17 Michael Natterer <mitch@gimp.org>
* app/path.[ch]: removed path_to_beziersel() so this file can be
safely included from core/.
* app/tools/gimpbezierselecttool.[ch]: added it here.
* app/core/core-types.h: added a GimpToolOptions typedef. Removes
deps into tools/ and will later be a core object anyway.
* app/tools/tools-types.h: removed the ToolOptions typedef here.
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-mask.c
* app/core/gimpimage.c
* app/core/gimptoolinfo.[ch]: removed deps into tools/, misc stuff.
* app/tools/tool_manager.[ch]: some ugly temp hacks. Please ignore.
* app/widgets/gimpdialogfactory.[ch]: added a "remember_if_open" field
to the GimpDialogFactoryEntry so we can manage dialogs which should
not be re-opened on startup.
* app/gui/dialogs-constructors.c
* app/gui/dialogs.c: register & create all editor dialog with the
"global_dialog_factory".
* app/gui/tool-options-dialog.c
* app/tools/*: s/ToolOptions/GimpToolOptions/
2001-07-10 Michael Natterer <mitch@gimp.org>
* app/app_procs.[ch]: removed the gimp_busy boolean, check whether
user_installation is needed here, not in user_install.c, parse
gtkrc an friends only if(!no_interface), create the Gimp object
before parsing gimp's rc files an pas it to the parse functions,
many other cleanups.
* app/appenums.h: added MessageHandlerType and StackTraceMode.
* app/appenv.h: removed MessageHandlerType, declare all global
variables from main.c (no more hidden global stuff please).
* app/errors.[ch]: added the fatal message func here (from main.c),
removed the StackTraceMode enum.
* app/gimprc.[ch]: renamed functions to gimprc_*(), pass a Gimp
pointer to some functions.
* app/gimpunit.c
* app/unitrc.h: ok, this is ugly: renamed all functions to
_gimp_unit_*() and made them public. The unit list is part
of the Gimp object now, so pass a Gimp* to all functions.
* app/libgimp_glue.[ch]: added EEKy wrappers for all gimp_unit_*()
functions which are used by widgets.
* app/main.c: cleaned up the global variables, removed the fatal
message handler, call app_init() directly, not via the
user_install stuff, misc. cleanups.
* app/user_install.[ch]: removed the check if user_installation is
needed (done by app_procs.c now).
* app/core/gimp.[ch]: added the user_unit list and the "busy"
boolean. Moved gimp_[set|unset]_busy() here. Added
gimp_initialize() which is called after unitrc and gimprc are
parsed.
* app/batch.c
* app/colormaps.c
* app/devices.c
* app/disp_callbacks.c
* app/gdisplay_ops.c
* app/gimphelp.c
* app/module_db.c
* app/nav_window.c
* app/plug_in.c
* app/core/gimpcontext.c
* app/core/gimpdatafiles.c
* app/core/gimpimage-convert.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage.c
* app/core/gimpparasite.c
* app/core/gimpparasitelist.h
* app/gui/file-open-dialog.c
* app/gui/gui.[ch]
* app/gui/info-dialog.c
* app/gui/info-window.c
* app/gui/preferences-dialog.c
* app/gui/session.c
* app/gui/tips-dialog.c
* app/gui/toolbox.c
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimptransformtool.c
* app/tools/tool_manager.c
* app/widgets/gimpcolorpanel.c
* app/widgets/gimpcursor.c
* app/xcf/xcf-load.c
* app/xcf/xcf-save.c
* app/xcf/xcf.c
* tools/pdbgen/Makefile.am
* tools/pdbgen/app.pl
* tools/pdbgen/enums.pl
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/message.pdb
* tools/pdbgen/pdb/unit.pdb
* app/pdb/image_cmds.c
* app/pdb/message_cmds.c
* app/pdb/unit_cmds.c: changed accordingly, minor cleanups.
2001-07-07 Michael Natterer <mitch@gimp.org>
* app/tools/tool_manager.[ch]: put all tool_manager variables into
a struct which is attached to a "Gimp". Pass a Gimp* to all
tool_manager functions.
* app/disp_callbacks.c
* app/gdisplay.c
* app/gimage.c
* app/scale.c
* app/scroll.c
* app/undo.c
* app/gui/convert-dialog.c
* app/gui/edit-commands.c
* app/gui/tool-options-dialog.c
* app/gui/tools-commands.c: changed accordingly.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpcurvestool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimphistogramtool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimplevelstool.c
* app/tools/gimpposterizetool.c
* app/tools/gimptexttool.c
* app/tools/gimpthresholdtool.c
* app/tools/gimptool.c
* app/tools/gimptransformtool.c: mostly bad hacks for tool dialogs
which exist without a real context. Needs some more review.
2001-07-07 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/context_manager.[ch]: removed.
* app/app_procs.c: call tool_mananger instead of context_manager
functions, pass "the_gimp" to some more functions.
* app/drawable.[ch]: pass a GimpContext to drawable_fill().
* app/errors.c: behave according to "stack_trace_mode" when using
the debugging signal handler.
* app/gimprc.[ch]: removed the core/ config variables.
* app/selection.c: set the selection's state to INVISIBLE in
selection_pause().
* app/core/Makefile.am
* app/core/gimpcoreconfig.[ch]: new files (the configuration
variables used by core/).
* app/core/gimpcontext.[ch]: removed the global contexts (user,
default, ...) and their functions. It's no longer possible to pass
NULL to the context functions to manipulate the current context
(gimpcontext.c doesn't know the current context any more).
* app/core/gimp.[ch]: added them here. The functions are now called
gimp_[set|get]_*_context(). Added gimp_create_context() which is
the only function to create contexts now.
* app/gui/dialogs.[ch]
* app/gui/gui.[ch]: pass "gimp" to all functions.
* app/tools/tool_manager.[ch]
* app/tools/tools.[ch]: pass "gimp" to lots of functions. Added
the "global_tool_context" logic and the global/non-global paint
options switching from the context_manager. Pass "gimp" to all
tools' "register" functions.
* app/tools/*: changed accordingly.
* app/devices.c
* app/disp_callbacks.c
* app/file-open.[ch]
* app/file-save.c
* app/gdisplay.c
* app/gimage.c
* app/libgimp_glue.c
* app/module_db.c
* app/nav_window.c
* app/plug_in.c
* app/qmask.c
* app/undo.c
* app/base/base-config.c
* app/core/gimpbrushpipe.c
* app/core/gimpdrawable-offset.c
* app/core/gimpgradient.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-mask.c
* app/core/gimpimage-new.c
* app/core/gimpimage.c
* app/core/gimppalette.c
* app/core/gimptoolinfo.[ch]
* app/core/gimpundo.c
* app/gui/brush-select.c
* app/gui/channels-commands.c
* app/gui/color-area.c
* app/gui/dialogs-constructors.c
* app/gui/file-new-dialog.c
* app/gui/file-open-dialog.c
* app/gui/gradient-editor.c
* app/gui/gradient-select.c
* app/gui/info-window.c
* app/gui/layers-commands.c
* app/gui/menus.c
* app/gui/palette-editor.c
* app/gui/palette-import-dialog.c
* app/gui/palette-select.c
* app/gui/paths-dialog.c
* app/gui/pattern-select.c
* app/gui/preferences-dialog.c
* app/gui/resize-dialog.c
* app/gui/test-commands.c
* app/gui/tool-options-dialog.c
* app/gui/toolbox.c
* app/gui/tools-commands.c
* app/xcf/xcf-load.c
* app/xcf/xcf-save.c
* app/widgets/gimpchannellistview.c
* app/widgets/gimpdnd.c
* app/widgets/gimpdrawablelistview.[ch]
* app/widgets/gimpimagedock.c
* app/widgets/gimplayerlistview.c
* app/pdb/brushes_cmds.c
* app/pdb/drawable_cmds.c
* app/pdb/gradient_select_cmds.c
* app/pdb/gradients_cmds.c
* app/pdb/palette_cmds.c
* app/pdb/patterns_cmds.c
* app/pdb/procedural_db.c
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/palette.pdb
* tools/pdbgen/pdb/patterns.pdb: changed accordingly: remove usage
of gimp_context_[get|set]_*(NULL), create contexts with
gimp_create_context(). Get the user/current context with
gimp_get_[user|current]_context(). Added/removed access to the
global "the_gimp" variable in some places. Get the core's config
variables from "core_config".
2001-07-04 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimp.[ch]: added an "application object" called Gimp.
Currently, it contains the image list, the clipboard, the data
factories, the procedural hashtable and the tool info list. It's
the toplevel object of the core object system. Finally, creating a
Gimp object will return a standalone gimp core engine instance
with no other global states/variables involved.
* app/app_procs.[ch]: allocate a "Gimp" instance called "the_gimp" :)
Removed stuff which is now done by the "Gimp" object. Merged
gimp_init() into app_init() because gimp_init() is taken now.
* app/context_manager.[ch]: removed stuff done by "Gimp".
* app/batch.[ch]
* app/gimage.[ch]
* app/xcf/xcf-load.[ch]
* app/xcf/xcf.[ch]
* app/core/gimpedit.[ch]
* app/tools/tool_manager.[ch]: pass around an additional "Gimp"
argument.
* app/pdb/procedural_db.[ch]: pass a "Gimp" pointer as first
parameter to all internal procedures and to all procedural_db_*
functions.
* app/core/gimpcontext.[ch]
* app/core/gimpimage.[ch]: added a "Gimp" pointer to the structs.
* app/devices.c
* app/errors.c
* app/file-open.c
* app/file-save.c
* app/gimphelp.c
* app/gimpunit.c
* app/image_new.c
* app/main.c
* app/nav_window.c
* app/plug_in.c
* app/base/base.c
* app/core/gimpdatafactory.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-mask.c
* app/core/gimptoolinfo.[ch]
* app/gui/brush-select.c
* app/gui/convert-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/edit-commands.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gradient-editor.c
* app/gui/gradient-select.c
* app/gui/gui.c
* app/gui/image-commands.c
* app/gui/info-window.c
* app/gui/menus.c
* app/gui/palette-editor.c
* app/gui/palette-import-dialog.c
* app/gui/palette-select.c
* app/gui/paths-dialog.c
* app/gui/pattern-select.c
* app/gui/preferences-dialog.c
* app/gui/test-commands.c
* app/gui/toolbox.c
* app/gui/tools-commands.c
* app/tools/gimpbezierselecttool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimppainttool.h
* app/tools/gimptexttool.c
* app/tools/gimptransformtool.h
* app/widgets/gimpbufferview.c
* app/widgets/gimpcontainerview-utils.c
* app/widgets/gimpcursor.c
* app/widgets/gimpdnd.c
* app/widgets/gimpimagedock.c: changed accordingly. Cleaned up
lots of includes. Many files still access the global "the_gimp"
variable exported by app_procs.h.
* tools/pdbgen/app.pl
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/edit.pdb
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/palette.pdb
* tools/pdbgen/pdb/pattern_select.pdb
* tools/pdbgen/pdb/patterns.pdb
* tools/pdbgen/pdb/procedural_db.pdb: changed accordingly. Don't
use "the_gimp" here because all procedures get passed a "Gimp"
pointer now.
* app/pdb/*: regenerated.
2001-06-26 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/color_transfer.[ch]: removed.
* app/tools/Makefile.am
* app/tools/gimpcolorbalancetool-transfer.[ch]: added.
* app/tools/gimpcolorbalancetool.c: changed accordingly.
* app/base/Makefile.am
* app/base/tile-manager-crop.[ch]: formerly known as crop_buffer().
* app/tools/gimptexttool.c: changed accordingly.
* app/context_manager.[ch]: added the global clipboard and the
named buffer list here.
* app/app_procs.c: don't call color_transfer_init() and don't free
the buffer stuff (done by the context manager now).
* app/errorconsole.c: don't #include "gui/commands.h"
* app/global_edit.[ch]: removed lots of stuff which is now done by
gui/edit-commands.* or the new GimpBuffer object. The "paste
named" dialog will go away and this file will be moved to core/
soon.
* app/image_new.c: no need to declare the global_buffer extern any
more.
* app/qmask.c: don't #include "global_edit.h"
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpbuffer.[ch]: new object (aka named buffer)
* app/core/gimpcontext.[ch]: added a GimpBuffer attribute.
* app/core/gimpimage.[ch]: one s/int/gboolean/.
* app/core/gimppattern.c: hmm...
* app/gui/commands.[ch]: split up in small files:
* app/gui/Makefile.am
* app/gui/edit-commands.[ch]
* app/gui/file-commands.[ch]
* app/gui/image-commands.[ch]
* app/gui/select-commands.[ch]
* app/gui/view-commands.[ch]: new files.
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c: added the named buffer list & grid.
* app/gui/file-new-dialog.[ch]
* app/gui/menus.c
* app/gui/palette-editor.c
* app/gui/test-commands.c: changed accordingly.
* app/pdb/edit_cmds.c
* tools/pdbgen/pdb/edit.pdb: changed for the global_edit stuff.
* app/widgets/Makefile.am
* app/widgets/gimpbufferpreview.[ch]
* app/widgets/gimpbufferview.[ch]
* app/widgets/gimpcontainereditor.[ch]: new widgets.
* app/widgets/gimpcontainerview-utils.c
* app/widgets/gimpdatafactoryview.[ch]
* app/widgets/gimpdnd.[ch]
* app/widgets/gimpdrawablepreview.c
* app/widgets/gimplayerlistview.c
* app/widgets/gimppreview.c
* app/widgets/widgets-types.h: changed accordingly for the new
GimpBuffer object and it's views, misc. cleanups.
* pixmaps/Makefile.am
* pixmaps/paste-as-new.xpm
* pixmaps/paste-into.xpm
* pixmaps/paste.xpm: new pixmaps (they all look the same... Tigert? ;-)
* po/POTFILES.in: added the new files.
2001-06-18 Michael Natterer <mitch@gimp.org>
* app/nav_window.[ch]: major cleanup. After being finished, I
decided that it needs to be factored out to a widget (see below),
so like 90% of this file will go away soon.
* app/apptypes.h: added opaque NavigationDialog typedef.
* app/gdisplay.[ch]: Added gdisplay_selection_visibility() which
is called from gdisplays_selection_visibility(). Capitalized the
SelectionControl enum values. Cleaned up the GDisplay struct and
it's initialisation while i was on it.
* app/gimage.c: gimage_size_changed_handler(): removed stuff which
is now done by GimpImage itself.
* app/scale.c
* app/scroll.c: also update the navigation popup, not only the
dialog.
* app/selection.[ch]: major indentation & cleanup attack. Maybe
found the "Selection vanishes" bug (the timeout id was assinged to
a gint, not a _guint_).
* app/undo.c: s/gimp_image_size_changed/gimp_viweable_size_changed/
* app/core/gimpdrawable.c: invalidate the image's preview from our
"invalidate_preview" implementation. This means that the image's
preview is invalidated way too often currently, which cries for
some general freeze/thaw mechanism on the GimpViewable level.
(Note that previews are rendered in the idle loop, so this is not
really a major performance impact, it's just ugly).
* app/core/gimpimage.[ch]: removed the "size_changed" signal...
* app/core/gimpviewable.[ch]: ...and added it here.
* app/core/gimplayer.c: invalidate_preview(): always chain up,
also if it's a floating selection.
* app/gui/info-dialog.[ch]
* app/gui/info-window.c: minor cleanups.
* app/gui/preferences-dialog.c: no need to invalidate the image
after we have invalidated all it's layers.
* app/core/gimpimage-mask.c
* app/gui/commands.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpinktool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c: capitalized the SelectionCommand enum
values.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpnavigationpreview.[ch]: new widget.
* app/widgets/gimppreview.[ch]: added a non-working
non-dot-for-dot mode. Added xres/yres params to the
gimp_preview_calc_size() helper function.
Cache the "size" value which was passed to the simple function
variants (gimp_preview_new() and gimp_preview_set_size()) so we
can re-calculate the preview's extents on the underlying
viewable's "size_changed" signal and on gimp_preview_set_viewable().
* app/widgets/gimpdrawablepreview.c
* app/widgets/gimpimagepreview.c: changed accordingly.
2001-06-07 Michael Natterer <mitch@gimp.org>
* configure.in: added zh_TW.Big5 to ALL_LINGUAS. Added the
STRIP_BEGIN and STRIP_END macros from gtk+.
* app/base/makefile.msc: unmodified copy of app/core/makefile.msc
(just to make "make dist" work).
* */Makefile.am: use @STRIP_BEGIN@ and @STRIP_END@ all over the
place. The Makefiles are a bit uglier now but it makes compiling
output much more readable.
2001-06-05 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/base/Makefile.am
* app/core/Makefile.am
* app/gui/Makefile.am
* app/paint-funcs/Makefile.am
* app/pdb/Makefile.am
* app/tools/Makefile.am
* app/widgets/Makefile.am: no need to build .la objects for
convenience libraries which are never linked into another dynamic
library. Create simple .a files instead. Reduces compilation time
of app/ by about 50%.
2001-06-05 Michael Natterer <mitch@gimp.org>
* app/global_edit.c: some s/0/FALSE/
* app/resize.[ch]: removed resize_scale_implement() and
resize_check_layer_scaling(), cleanup.
* app/core/gimpimage.[ch]: added gimp_image_check_scaling().
* app/gui/commands.c: added image_scale_implement() as static
function.
* app/gui/tool-options-dialog.[ch]: add the tool options widgets
to the dialog when they are first needed. Removed
tool_options_dialog_add().
* app/tools/tool_manager.c: don't call tool_options_dialog_add().
2001-06-03 Dave Neary <dneary@eircom.net>
* app/gimprc.[ch]: Made all the global options members of one
struct, gimprc.
* lots of .c files in app, app/core, app/tools, app/widgets &
app/gui: Changed accordingly.
2001-06-01 Dave Neary <dneary@eircom.net>
* app/tools/gimpbycolorselecttool.c: added a call to
by_color_select_close_callback() in _tool_destroy() to close
the dialog on exiting the tool.
2001-05-31 Dave Neary <dneary@eircom.net>
* app/core/gimpimage.[ch]
* app/core/gimpimage-mask.c
* app/tools/gimpbycolorselecttool.c
* app/undo.c: Added a "mask_changed" signal, to allow
gimpbycolorselect to update it's dialog properly, and take out a
silly dependency in gimpimage.
One outstanding issue is that now the dialog doesn't close
automatically when the tool context changes. Working on it :)
2001-05-25 Michael Natterer <mitch@gimp.org>
All tools are back :)
* app/tools/Makefile.am
* app/tools/brightness_contrast.[ch]
* app/tools/color_balance.[ch]
* app/tools/curves.[ch]
* app/tools/histogram_tool.[ch]
* app/tools/hue_saturation.[ch]
* app/tools/levels.[ch]
* app/tools/posterize.[ch]
* app/tools/threshold.[ch]: removed...
* app/tools/gimpbrightnesscontrasttool.[ch]
* app/tools/gimpcolorbalancetool.[ch]
* app/tools/gimpcurvestool.[ch]
* app/tools/gimphistogramtool.[ch]
* app/tools/gimphuesaturationtool.[ch]
* app/tools/gimplevelstool.[ch]
* app/tools/gimpposterizetool.[ch]
* app/tools/gimpthresholdtool.[ch]: ...and ported to the new tool
system. Yes, the toolbox looks strange right now.
* app/tools/gimpimagemaptool.[ch]: base class for all image_map
tools. Does nothing at all right now.
* app/tools/gimpbucketfilltool.h: removed _new() function
declaration.
* app/tools/gimptool.c: removed obsolete stuff and STUB()s.
* app/tools/tools.c: register the new tools.
* app/menus.c: removed the #if 0 around the code which reorders
the color tool menu entries.
* app/app_procs.c
* tools/pdbgen/Makefile.am
* tools/pdbgen/enums.pl
* tools/pdbgen/pdb/color.pdb
* app/pdb/color_cmds.c
* po/POTFILES.in: changed accordingly.
2001-05-24 Michael Natterer <mitch@gimp.org>
* config.guess
* config.sub: new versions from CVS (at least that's what my
debian package says...)
* app/Makefile.am
* app/gimppreviewcache.[ch]: removed.
* app/core/Makefile.am
* app/core/gimppreviewcache.c: added.
* app/core/gimpdrawable.c: reordered #includes
* app/apptypes.h: make ImageMap a proper opaque typedef, not
simply a gpointer.
* app/image_map.[ch]: changed accordingly. cleanup.
* app/tools/color_balance.h
* app/tools/curves.h
* app/tools/gimptool.c
* app/tools/histogram_tool.h
* app/tools/hue_saturation.h
* app/tools/threshold.h: changed here too.
* libgimpbase/gimpbasetypes.h: /*< skip >*/ GIMP_UNIT_PERCENT as
it's a UI convenience thing and no unit.
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
* libgimpwidgets/gimpbutton.c: maybe this change makes GimpButton
behave even more careful when changing GtkButton's private stuff.
2001-05-21 Michael Natterer <mitch@gimp.org>
* Makefile.am
* configure.in
* gimptool-1.4.in: added new directory libgimpbase/
* app/Makefile.am: link against the new lib.
* app/appenums.h: removed the PDB enums which are in
libgimpbase/gimpbasetypes.h now. They are all "Gimp" prefixed.
* app/apptypes.h: #include "libgimpbase/gimpbasetypes.h"
* app/[lots]
* app/core/[of]
* app/gui/[files]
* app/tools/: changed includes and all PDB types.
* app/pdb/*: regenerated.
* libgimp/Makefile.am: don't build libgimpi.a uglyness any more.
* libgimp/gimpenv.[ch]
* libgimp/gimplimits.[hh]
* libgimp/gimpparasite.[ch]
* libgimp/gimpparasiteio.[ch]
* libgimp/gimpprotocol.[ch]
* libgimp/gimpsignal.[ch]
* libgimp/gimpunit.h
* libgimp/gimputils.[ch]
* libgimp/gimpwire.[ch]: removed...
* libgimpbase/*: ...and added here as new library.
* libgimp/gimp.[ch]
* libgimp/gimpdrawable.[ch]
* libgimp/gimpenums.h
* libgimp/gimpimage.[ch]
* libgimp/gimptile.c
* libgimp/gimptypes.h
* libgimp/gimpunit.c: changed accordingly. Added the
gimp_*_add_new_parasite to gimp.[ch], gimpdrawable.[ch] and
gimpimage.[ch].
* libgimpwidgets/gimppatheditor.c
* libgimpwidgets/gimpquerybox.c
* libgimpwidgets/gimpsizeentry.c
* libgimpwidgets/gimpunitmenu.c
* libgimpwidgets/gimpwidgets.c
* libgimpwidgets/gimpwidgetstypes.h: changed includes accordingly.
* plug-ins/*/Makefile.am
* plug-ins/common/mkgen.pl: link against libgimpbase.
* tools/pdbgen/Makefile.am: scan libgimpbase/gimpbasetypes.h, so
the enums are known to pdbgen...
* tools/pdbgen/enumcode.pl: ...but don't write them out to
libgimp/gimpenums.h
* tools/pdbgen/app.pl: include libgimp/gimpbase.h in all *_cmds.c
files. Added GIMP_ to the type names ganerated in app/.
* tools/pdbgen/enums.pl: regenerated.
* tools/pdbgen/pdb.pl
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/procedural_db.pdb
* tools/pdbgen/pdb/unit.pdb: changed includes.
2001-05-20 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* plug-ins/script-fu/Makefile.am: put the regex and MMX sources to
EXTRA_DIST so they get distributed unconditionally.
* tools/pdbgen/pdb/layer.pdb: re-enabled the layer_mask procs but
let them use accessors (which don't exist)...
* app/pdb/pdb_glue.h: ... #define the accessors as macros here.
Yes, this is ugly, but I simply don't fully understand pdbgen
yoshcode.
* app/pdb/internal_procs.c
* app/pdb/layer_cmds.c
* libgimp/gimplayer_pdb.[ch]: regenerated with the layer_mask
accessors.
* app/tools/Makefile.am: add the files which are not built to
EXTRA_DIST.
* pixmaps/Makefile.am
* pixmaps/channel.xbm
* pixmaps/eye.xbm
* pixmaps/layer.xbm
* pixmaps/linked.xbm
* pixmaps/mask.xbm: removed.
* plug-ins/Makefile.am: build XJT again because the layer_mask
stuff is back. Perl also seems to build again.
* plug-ins/common/aa.c: explicit casting fixes some warnings.
* plug-ins/script-fu/interp_regex.c: #include "config.h".
2001-05-15 Michael Natterer <mitch@gimp.org>
* app/gimpcontextpreview.[ch]: removed (was not used).
* app/apptypes.h: removed the Guide typedef.
* app/core/core-types.h: added it here as GimpGuide (everything in
core/ must be "Gimp"-prefixed).
* app/gimage.[ch]: removed the global "next_guide_id" variable,
don't destroy the guides in the "destroy" handler.
* app/core/gimpimage.[ch]: destroy them in destroy().
* app/xcf.c: use GimpImage accessors to add the guides, so we
don't need "next_guide_id".
* app/gdisplay.[ch]
* app/undo.c
* app/core/gimpimage-duplicate.c
* app/tools/gimpcroptool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.[ch]
* tools/pdbgen/pdb/guides.pdb: s/Guide/GimpGuide/, cleanup.
2001-05-15 Michael Natterer <mitch@gimp.org>
* configure.in: new directory app/base/
* app/Makefile.am
* app/boundary.[ch]
* app/brush_scale.[ch]
* app/gimpchecks.h
* app/gimplut.[ch]
* app/pixel_processor.[ch]
* app/pixel_region.[ch]
* app/pixel_surround.[ch]
* app/temp_buf.[ch]
* app/tile.[ch]
* app/tile_cache.[ch]
* app/tile_manager.[ch]
* app/tile_manager_pvt.h
* app/tile_pvt.h
* app/tile_swap.[ch]: moved to base/
* app/base/Makefile.am
* app/base/base-types.h
* app/base/*: new directory for the sub-object pixel maniplation
and storage stuff. Does not include Gtk+ or anything outside
base/. Did some cleanup in all files.
* app/appenums.h
* app/apptypes.h
* app/core/gimpimage.h: removed types which are now in
base/base-types.h.
* app/base/base-config.[ch]
* app/gimprc.[ch]: put the config variables for base/ to their own
file so base/ doesn not have to include gimprc.h (does not yet
work, i.e. the variables are un-configurable right now)
* app/main.c: set a log handler for "Gimp-Base".
* app/paint-funcs/Makefile.am
* app/paint-funcs/paint-funcs.[ch]: removed the color hash which
maps RGB to color indices because it's a totally standalone system
which has nothing to do with the paint-funcs and introduced a
GimpImage dependency.
paint-funcs/ should be considered on the same sub-object
(glib-only) level as base/, only in a different directory.
* app/core/Makefile.am
* app/core/gimpimage-colorhash.[ch]: put the color hash here.
* app/gimage.c: don't invalidate the color hash here...
* app/core/gimpimage.c: ... but in the colormap_changed() default
inplementation. Initialize the hash in class_init().
* tools/pdbgen/Makefile.am: scan app/base/base-types.h for enums.
* tools/pdbgen/enums.pl: regenerated.
* app/[lots]
* app/core/[of]
* app/gui/[files]
* app/pdb/[all]
* app/tools/[over]
* app/widgets/[the]
* tools/pdbgen/pdb/[place]: changed #includes accordingly. And use
base_config->value instead of the stuff from gimprc.h.