2001-05-20 Michael Natterer <mitch@gimp.org>
* app/base/Makefile.am
* app/base/base.[ch]: new files for base_init() and base_exit()
which initialize/shutdown the paint_funcs and the tile_cache.
* app/app_procs.c: removed the stuff here.
* app/widgets/gimpchannellistitem.c: commented out unused code.
2001-05-19 Sven Neumann <sven@gimp.org>
* app/main.c: s/USE_GCC_INTEL_MMX/HAVE_ASM_MMX/
* app/path_curves.c: fixed some warnings and changed code so it
does not try to draw unconfigured points.
* app/base/temp-buf.[ch]: added a warning not to use the data field
from the TempBuf struct directly.
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.
2001-03-31 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/pixel_surround.[ch]: lowlevel stuff taken out of the transform
tool.
* app/tools/gimpscaletool.[ch]: minor cleanups, declare
gimp_scale_tool_register() publically.
* app/tools/gimptransformtool.[ch]: removed the PixelSurround stuff,
hardcode tr_tool->interactive to TRUE, removed the no_draw() function,
register the tool options, misc. other fixes and bad hacks that need
to go away.
(All this non-interactive stuff needs to be done outside the tool
system. A "non-interactive tool" is just pure nonsense)
* app/tools/gimptool.h: spacing.
* app/tools/tool_manager.c: tool_manager_register_tool_options():
return after warning, don't simply continue and crash.
* app/tools/tools.c: register the bezier select tool.
2001-02-21 Daniel Egger <egger@suse.de>
* app/gimpchecks.h: New file containing the check types.
* app/image_render.h: ... definitions taken from here.
* app/temp_buf.c:
* app/temp_buf.h: New function temp_buf_new_check to create
a new checked temp_buf.
2001-02-05 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/gimpcontainergridview.[ch]: new widget providing a grid view
in the style of the current brush and pattern selections.
* app/gimpcontainerlistview.[ch]
* app/gimppreview.[ch]: the constructors take "width" and "height"
parameters now.
* app/gimpviewable.c: if the viewable is not able to generate
a static (cached) preview, create a new one and cache it ourselves.
* app/gimppattern.c: produce a nice preview.
* app/temp_buf.[ch]: changed temp_buf_copy_area() to take a
destination offset instead of a border parameter. This function
was not used at all before.
* app/commands.[ch]
* app/menus.c: test dialogs for the grid view.
2001-02-04 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/apptypes.h
* app/gimpviewable.[ch]: new object. Everything that can have a
preview will be a GimpViewable. The virtual functions are
"invalidate_preview", "preview" and "preview_new".
* app/gimpmarshal.[ch]: new marshaller needed for the viewable.
* app/gimpdrawable.[ch]
* app/gimpimage.[ch]: derived from GimpViewable. Removed the
preview stuff from the public interface.
Made a single boolean out of GimpImage's "comp_preview_valid"
array because we have only one copposite preview.
* app/gimplayer.c: made the preview stuff private.
* app/gimppreviewcache.[ch]: removed gimp_preview_scale()...
* app/temp_buf.[ch]: ...and added it as temp_buf_scale() here.
* app/gimpdrawablepreview.[ch]: is a private method of
GimpDrawable now.
* app/channels_dialog.c
* app/convert.c
* app/drawable.c
* app/fileops.c
* app/floating_sel.c
* app/gimage.c
* app/gimage_mask.c
* app/gimpchannel.c
* app/gimpcontainer.c
* app/gimpdnd.c
* app/layer_select.c
* app/layers_dialog.c
* app/lc_dialog.c
* app/nav_window.c
* app/palette_import.c
* app/undo.c
* app/undo_history.c
* app/pdb/drawable_cmds.c
* app/pdb/image_cmds.c
* app/tools/crop.c
* app/tools/edit_selection.c
* app/tools/ink.c
* app/tools/paint_core.c
* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/image.pdb
* po/POTFILES.in: changed accordingly.
2001-01-24 Michael Natterer <mitch@gimp.org>
* Makefile.am
* configure.in
* gimptool.in: added the new library below.
* libgimpwidgets/Makefile.am
* libgimpwidgets/gimpchainbutton.[ch]
* libgimpwidgets/gimpcolorarea.[ch]
* libgimpwidgets/gimpcolorbutton.[ch]
* libgimpwidgets/gimpdialog.[ch]
* libgimpwidgets/gimpfileselection.[ch]
* libgimpwidgets/gimphelpui.[ch]
* libgimpwidgets/gimppatheditor.[ch]
* libgimpwidgets/gimppixmap.[ch]
* libgimpwidgets/gimpquerybox.[ch]
* libgimpwidgets/gimpsizeentry.[ch]
* libgimpwidgets/gimpunitmenu.[ch]
* libgimpwidgets/gimpwidgets.[ch]
* libgimpwidgets/gimpwidgets.def
* libgimpwidgets/gimpwidgetstypes.h: new shared library.
Currently there are some ugly dependencies into libgimp. These
will be removed and go to a "libgimpglue" library which will be
a library for functions which share a common interface between
plug-ins and the app but have different implementations.
Include "libgimp/gimpunit.h" from "libgimpwidgets/gimpwidgetstypes.h"
to simulate this upcoming separation.
* libgimp/Makefile.am
* libgimp/gimpchainbutton.[ch]
* libgimp/gimpcolorarea.[ch]
* libgimp/gimpcolorbutton.[ch]
* libgimp/gimpdialog.[ch]
* libgimp/gimpfileselection.[ch]
* libgimp/gimphelpui.[ch]
* libgimp/gimppatheditor.[ch]
* libgimp/gimppixmap.[ch]
* libgimp/gimpquerybox.[ch]
* libgimp/gimpsizeentry.[ch]
* libgimp/gimpunitmenu.[ch]
* libgimp/gimpwidgets.[ch]: removed from here.
* libgimp/gimpui.h
* libgimp/gimpuitypes.h
* libgimp/makefile.mingw.in
* libgimp/makefile.msc: changed accordingly.
* app/[all ui files]
* app/pdb/palette_cmds.c
* app/pdb/tools_cmds.c
* tools/pdbgen/pdb/palette.pdb
* tools/pdbgen/pdb/tools.pdb: #include "libgimpwidgets/gimpwidgets.h"
and removed useless includes.
* app/apptypes.h: #include "libgimpwidgets/gimpwidgetstypes.h"
* app/Makefile.am
* plug-ins/[all makefiles which link against libgimpui]:
link against libgimpwidgets.la
* po-libgimp/POTFILES.in: changed file locations.
2001-01-24 Sven Neumann <sven@gimp.org>
* app/paint_funcs.c: brought the array used for optimization back in
sync with the LayerModeEffects enum. This was causing really strange
rendering errors. Started to clean up the file up and removed the
unused layer_mode names.
* app/tile.[ch]
* plug-ins/common/colortoalpha.c: small cleanups
* po/POTFILES.in: removed app/paint_funcs.c
2001-01-22 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/toolbox.[ch]: new files containing most of the code
from app/interface.[ch]
* app/interface.[ch]: only contains create_display_shell() now.
Needs to be somehow merged with other arbitrarily named display
files around.
* app/app_procs.c
* app/menus.c
* po/POTFILES.in: changed accordingly.
* app/asupsample.c
* app/gradient.c
* app/tile.c: cleanup.
2001-01-12 Sven Neumann <sven@gimp.org>
* TODO.xml: updated status
* app/gimpcontext.c: added temporary functions to make it compile
* app/pixel_processor.c: include tile.h when ENABLE_MP is defined
* libgimp/gimpcolor.[ch]: added more GimpRGB functions
* plug-ins/common/aa.c: merged fix from gimp-1-2
* plug-ins/common/colorify.c
* plug-ins/common/colortoalpha.c
* plug-ins/common/exchange.c
* plug-ins/common/film.c
* plug-ins/common/grid.c: use GimpRGB whereever possible.
Still work in progress.
2001-01-02 Daniel Egger <egger@suse.de>
* app/temp_buf.c:
* app/temp_buf.h: Add a new function "temp_buf_data_clear" to
get a nulled chunk of memory.
* app/iscissors.c: Use it here instead of two expensive for
loops. Clean up the source a little.
2000-12-31 Michael Natterer <mitch@gimp.org>
More preparation for LibGCK removal:
* libgimp/gimpcolorspace.[ch]: added a "_int" suffix to all functions
operating on 3 gint pointers, just like the gdouble functions have
a "_double" suffix.
* app/color_balance.c
* app/hue_saturation.c
* app/paint_funcs.c
* modules/colorsel_triangle.c
* plug-ins/common/CML_explorer.c
* plug-ins/common/scatter_hsv.c
* plug-ins/common/sparkle.c
* plug-ins/common/vinvert.c
* plug-ins/gflare/gflare.c: changed accordingly.
2000-12-29 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/channel_pvt.h
* app/drawable_pvt.h
* app/gdisplayF.h
* app/gimpdrawableP.h
* app/gimpimageP.h
* app/layer_pvt.h
* app/toolsF.h: removed these files.
* app/apptypes.h
* tools/pdbgen/enums.pl: added tons of opaque typedefs and enums.
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/color.pdb
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/display.pdb
* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/help.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/pattern_select.pdb
* tools/pdbgen/pdb/patterns.pdb
* tools/pdbgen/pdb/selection.pdb
* tools/pdbgen/pdb/tools.pdb
* app/*: chainsaw #include cleanup:
- Never (never!!) include stuff in header files except where we
need access to structures' contents (like derived objects).
- Added prototypes and proper formating in many files.
- The #include order in *all* *.c files is as follows:
#include "config.h"
#include <system stuff>
#include <gtk/gtk.h>
#include "apptypes.h"
#include "gimp stuff"
#include "libgimp stuff"
#include "libgimp/gimpintl.h"
By following this scheme we can easily see a file's dependencies
from it's #include's and can grep for the inclusion to find out
where a file is used.
* tools/pdbgen/app.pl: changed to follow the include scheme above.
* libgimp/Makefile.am
* libgimp/gimpuitypes.h: new file, included from libgimp/gimpui.h
and from app/apptypes.h.
* libgimp/gimpcolorbutton.[ch]
* libgimp/gimpdialog.[ch]
* libgimp/gimphelpui.[ch]
* libgimp/gimpparasite.[ch]
* libgimp/gimppatheditor.[ch]
* libgimp/gimpprotocol.c
* libgimp/gimpquerybox.[ch]
* libgimp/gimpsizeentry.[ch]
* libgimp/gimptypes.h
* libgimp/gimpui.h
* libgimp/gimpunit.h
* libgimp/gimpunitmenu.[ch]
* libgimp/gimpwidgets.[ch]: changed accordingly.
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/gdyntext/message_window.c
* plug-ins/imagemap/imap_default_dialog.c
* plug-ins/imagemap/imap_file.c: these files used to include
"libgimp/gimpui.h" without including "libgimp/gimp.h". This is
no longer possible because the libgimpui headers don't inlcude
"libgimp/gimpunit.h" any more.
2000-12-19 Sven Neumann <sven@gimp.org>
* app/curves.c: applied a patch from David Hodson that reverts
the curves tool back to its old behaviour (start with the identical
transform), but keeps the fix for bug #33403.
2000-12-19 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/gimphistogramP.h: removed.
* app/gimphistogram.[ch]
* app/histogramwidget.[ch]: Histogram cleanup: replaced the
channel #define's by a properly named enum and use this enum
type as parameter in functions instead of "int".
* app/curves.c
* app/histogram_tool.c
* app/levels.c: changed accordingly.
2000-12-17 Sven Neumann <sven@gimp.org>
* app/curves.c: preview the curve settings in the image window when
initializing the tool. This way the new curves behaviour (init with
last settings) is visible.
* app/user_install.c: check that strings are non-NULL before passing
them to strcmp.
* libgimp/gimpfileselection: do not try to pass a NULL text to
gtk_entry_set_text, use an empty string instead.
Thu Nov 30 23:26:07 GMT 2000 Andy Thomas <alt@gimp.org>
* app/curves.c
* app/levels.c
Fix for gimp bug #33403. The curves and levels dialogs should now
work in GRAYA images.
2000-11-29 Austin Donnelly <austin@gimp.org>
* app/curves.c: Applied patch from David Hodson
<hodsond@ozemail.com.au> to fix Bug#33399: GIMP crashes when
applying curve to Grayscaled image when preview is off.
Previously the curves tool attempted a reset when changing
image, but didn't correctly do this. Now it has the
(more useful) behaviour of doing a partial reset, where the
curve remains the same across multiple invocations, allowing
you to apply the same tweak to multiple images. The internal
state relevant to image type/depth is correctly reset,
stopping the segfault behaviour seen before.
Still no fix for Bug#33403: Curves/Levels Tool does not work
on GRAYA-Images.
* app/image_render.c:
* app/tile.h: Removed the JIT calculation of the tile_shift
value and replaced it by a constant called TILE_SHIFT in tile.h.
This gives the compiler a better chance to optimize the code.
Also added a few consts all over the place to give the compiler
some hints.