1. 10 Jan, 2001 3 commits
    • Michael Natterer's avatar
      removed the "name" parameter and use GimpObject's name instead. · 6642bc2c
      Michael Natterer authored
      2001-01-10  Michael Natterer  <mitch@gimp.org>
      	* app/gimpdrawable.[ch]: removed the "name" parameter and use
      	GimpObject's name instead.
      	* app/channel.c
      	* app/channel_ops.c
      	* app/channels_dialog.c
      	* app/drawable.h
      	* app/gimpimage.c
      	* app/interface.c
      	* app/layer.c
      	* app/layer_select.c
      	* app/layers_dialog.c
      	* app/qmask.c
      	* app/undo.c
      	* app/xcf.c: changed accordingly, cleanup.
    • Michael Natterer's avatar
      app/gimpbrushlist.c forgot to remove #include "gimpsignal.h" · 65543971
      Michael Natterer authored
      2001-01-10  Michael Natterer  <mitch@gimp.org>
      	* app/gimpbrushlist.c
      	* app/gimpdrawable.c: forgot to remove #include "gimpsignal.h"
      	* app/gimpobject.[ch]: added a "name" argument (not used yet).
    • Michael Natterer's avatar
      app/Makefile.am removed. added. · 92c45a90
      Michael Natterer authored
      2001-01-10  Michael Natterer  <mitch@gimp.org>
      	* app/Makefile.am
      	* app/gimpsignal.[ch]: removed.
      	* app/gimpmarshal.[ch]: added.
      	* app/channel.[ch]
      	* app/gimpbrush.[ch]
      	* app/gimpbrushgenerated.c
      	* app/gimpbrushlist.[ch]
      	* app/gimpbrushpipe.[ch]
      	* app/gimpcontext.c
      	* app/gimpdrawable.c
      	* app/gimpimage.c
      	* app/gimplist.[ch]
      	* app/gimpobject.[ch]
      	* app/gimpset.[ch]
      	* app/layer.c
      	* app/layers_dialog.c
      	* app/module_db.c
      	* app/parasitelist.[ch]: removed gimp_signal_new() and
      	GIMP_TYPE_INIT(). Fixed lots of object related uglyness.
  2. 30 Dec, 2000 1 commit
    • Michael Natterer's avatar
      removed all the "typedef gimage_function gimp_image_function" stuff so we · 4a0f7c58
      Michael Natterer authored
      2000-12-30  Michael Natterer  <mitch@gimp.org>
      	* app/gimage.[ch]: removed all the
      	"typedef gimage_function gimp_image_function" stuff so we can clearly
      	see what is really a GImage function.
      	Removed gimage_get_ID(). Use pdb_id_to_image() instead.
      	* app/airbrush.c
      	* app/desaturate.c
      	* app/disp_callbacks.c
      	* app/equalize.c
      	* app/fileops.c
      	* app/floating_sel.c
      	* app/gdisplay_ops.c
      	* app/gimpdrawable.c
      	* app/global_edit.c
      	* app/image_map.c
      	* app/invert.c
      	* app/lc_dialog.c
      	* app/paths_dialog.c
      	* app/plug_in.c
      	* app/xcf.c
      	* app/color_cmds.c
      	* app/convert_cmds.c
      	* app/image_cmds.c
      	* tools/pdbgen/pdb/color.pdb
      	* tools/pdbgen/pdb/convert.pdb
      	* tools/pdbgen/pdb/image.pdb: changed accordingly.
  3. 29 Dec, 2000 1 commit
    • Michael Natterer's avatar
      app/Makefile.am app/channel_pvt.h app/drawable_pvt.h app/gdisplayF.h · 8d6c335f
      Michael Natterer authored
      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.
  4. 28 Dec, 2000 1 commit
    • Michael Natterer's avatar
      app/channel.[ch] app/drawable.h app/gimpdrawable.[ch] app/gimpdrawableP.h · 0d440e10
      Michael Natterer authored
      2000-12-28  Michael Natterer  <mitch@gimp.org>
      	* app/channel.[ch]
      	* app/drawable.h
      	* app/gimpdrawable.[ch]
      	* app/gimpdrawableP.h
      	* app/gimpimage.[ch]
      	* app/gimpimageP.h
      	* app/layer.[ch]
      	* app/layer_pvt.h: started a major cleanup of all image/drawable
      	files. Added tons of "const GimpImage *" declarations and properly
      	formated the headers.
      	* app/bezier_select.c
      	* app/channels_dialog.c
      	* app/crop.c
      	* app/fileops.[ch]
      	* app/fuzzy_select.c
      	* app/gdisplay.c
      	* app/layers_dialog.c
      	* app/move.c
      	* app/paint_funcs.[ch]
      	* app/qmask.c
      	* app/undo.c: changed accordingly plus the usual portion of coding
      	style paranoia. This is not finished but Sven promised to buy me
      	a beer if I commit now ;)
  5. 18 Dec, 2000 1 commit
    • Sven Neumann's avatar
      Jens Lautenbacher <jtl@gimp.org> · 3cff8419
      Sven Neumann authored
      2000-12-18  Sven Neumann  <sven@gimp.org>
      	    Jens Lautenbacher <jtl@gimp.org>
      	* app/Makefile.am
      	* app/gimpbrushlistP.h
      	* app/gimpbrushpipeP.h
      	* app/gimpobjectP.h: removed these three files
      	* app/parasitelistP.h
      	* app/channels_dialog.c
      	* app/docindex.c
      	* app/gimpdrawable.c
      	* app/gimpdrawableP.h
      	* app/gimpimage.c
      	* app/gimpimageP.h
      	* app/gimplist.[ch]
      	* app/gimpobject.c
      	* app/gimpobject.h
      	* app/gimpsetP.h: changed according to header removal
      	* app/airbrush.c
      	* app/brush_select.[ch]
      	* app/brushes_cmds.c
      	* app/gimpbrush.[ch]
      	* app/gimpbrushgenerated.[ch]
      	* app/gimpbrushlist.[ch]
      	* app/gimpbrushpipe.[ch]
      	* app/gimpcontextpreview.c
      	* app/paint_core.c
      	* app/paintbrush.c
      	* app/pencil.c
      	* tools/pdbgen/pdb/brushes.pdb: Big Brushes Cleanup.
      	The GimpBrush* object hierarchy and the file formats were broken by
      	"design". This made it overly difficult to read and write pixmap
      	brushes and brush pipes, leading to the situation that The GIMP was
      	not able to read it's very own file formats. Since the GimpBrush
      	format did support arbitrary color depths, the introduction of a
      	file format for pixmap brushes was unnecessary.
      	The GimpBrushPixmap object is dead. GimpBrush has an additional
      	pixmap temp_buf and handles pixmap brushes transparently. The file
      	format of pixmap brushes is not any longer a grayscale brush plus
      	a pattern, but a simple brush with RGBA data. The old brushes can
      	still be loaded, but the .gpb format is deprecated.
      	GimpBrushPipe derives from GimpBrush. The fileformat is still a text
      	header, followed by a number of brushes, but those brushes are stored
      	in the new GimpBrush format (no pattern anymore). The pipe does not
      	care about the depth of the contained GimpBrushes, so we get
      	grayscale BrushPipes for free. Since the brush loader still loads the
      	old format, old .gih files can also still be loaded.
      	Since the brushes in the GimpBrushPipe do not any longer contain a
      	pointer to the pipe object, we do only temporarily switch brushes
      	in the paint_core routines. This is not very elegant, but the best
      	we can do without a major redesign.
      	* app/patterns.[ch]: changed the loader to work with a filedescriptor
      	instead of a filehandle to make it work with the new brush loading
      	* plug-ins/common/.cvsignore
      	* plug-ins/common/Makefile.am
      	* plug-ins/common/plugin-defs.pl
      	* plug-ins/common/gih.c: new plug-in that saves GIH files in the
      	new format (loader will follow soon)
      	* plug-ins/common/gpb.c: removed since Pixmap Brushes are no longer
      	supported as a special file format.
      	* plug-ins/common/gbr.c: load and save brushes in the new brush format
      	which allows RGBA brushes too.
      	* plug-ins/common/pat.c: load and save grayscale patterns too
  6. 16 Dec, 2000 1 commit
    • Sven Neumann's avatar
      Last-minute cleanup: · dfa2bed5
      Sven Neumann authored
      2000-12-16  Sven Neumann  <sven@gimp.org>
      	Last-minute cleanup:
      	* app/gimpdrawableF.h
      	* app/gimphistogramF.h
      	* app/gimpimageF.h
      	* app/gimplistF.h
      	* app/gimplutF.h
      	* app/gimpobjectF.h
      	* app/gimpsetF.h
      	* app/layerF.h
      	* app/parasitelistF.h: removed these files
      	* app/Makefile.am
      	* tools/pdbgen/Makefile.am: changed accordingly
      	* app/[almost every file]: include cleanup
  7. 13 Dec, 2000 1 commit
    • Sven Neumann's avatar
      app/color_picker.c app/convert.c app/curves.c app/gimpdrawable.c · 2458bfcb
      Sven Neumann authored
      2000-12-13  Sven Neumann  <sven@gimp.org>
              * app/color_picker.c
              * app/convert.c
              * app/curves.c
              * app/gimpdrawable.c
              * app/gimpimage.c
              * app/gimpimage.h
              * app/image_map.c
              * app/info_window.c
              * app/layer.c
              * app/undo.c: couldn't resist: renamed TYPE_HAS_ALPHA() to
              * plug-ins/common/sunras.c
              * plug-ins/common/xwd.c: small cleanups
  8. 28 Oct, 2000 1 commit
  9. 03 Jun, 2000 1 commit
  10. 27 May, 2000 1 commit
    • Michael Natterer's avatar
      Libgimp cleanup part II (with a little help from Yosh who moved the CVS · 6fa33d68
      Michael Natterer authored
      2000-05-27  Michael Natterer  <mitch@gimp.org>
      	Libgimp cleanup part II (with a little help from Yosh
      	who moved the CVS files).
      	* libgimp/Makefile.am
      	* libgimp/gimpchannel_pdb.c
      	* libgimp/gimpdisplay_pdb.c
      	* libgimp/gimpdrawable_pdb.c
      	* libgimp/gimpgradient_pdb.c
      	* libgimp/gimphelp_pdb.c
      	* libgimp/gimpimage_pdb.c
      	* libgimp/gimplayer_pdb.c
      	* libgimp/gimppalette_pdb.c
      	* libgimp/gimpparasite_pdb.c
      	* libgimp/gimpselection_pdb.c
      	* libgimp/gimpunit_pdb.c: new names of all files which contain
      	PDB wrappers.
      	* modules/Makefile.am
      	* libgimp/gimpcolordisplay.h
      	* libgimp/gimpcolorselector.h
      	* modules/gimpmodregister.[ch]: renamed.
      	* libgimp/gimpparasiteF.h
      	* libgimp/gimpparasiteP.h: removed because gimp.h had to include
      	the private header anyway.
      	* app/color_notebook.c
      	* app/color_select.c
      	* app/gdisplay_color.[ch]
      	* app/gdisplay_color_ui.c
      	* app/gimpbrushpipe.c
      	* app/gimpdrawable.[ch]
      	* app/gimpimage.c
      	* app/gimpimage.h
      	* app/gimpparasite.[ch]
      	* app/gimprc.c
      	* app/image_new.c
      	* app/layer.c
      	* app/parasite_cmds.c
      	* app/parasitelist.[ch]
      	* app/plug_in.c
      	* app/procedural_db.c
      	* app/undo.c
      	* app/xcf.c
      	* libgimp/gimp.[ch]
      	* libgimp/gimpcolordisplay.h
      	* libgimp/gimpparasite.[ch]
      	* modules/cdisplay_gamma.c
      	* modules/cdisplay_highcontrast.c
      	* modules/colorsel_gtk.c
      	* modules/colorsel_triangle.c
      	* modules/colorsel_water.c
      	* plug-ins/FractalExplorer/Dialogs.c
      	* plug-ins/FractalExplorer/Events.c
      	* plug-ins/Lighting/lighting_apply.c
      	* plug-ins/Lighting/lighting_shade.c
      	* plug-ins/MapObject/mapobject_image.c
      	* plug-ins/common/gpb.c
      	* plug-ins/common/psp.c
      	* plug-ins/sel2path/sel2path.c
      	* po-libgimp/POTFILES.in
      	* tools/pdbgen/pdb.pl
      	* tools/pdbgen/pdb/parasite.pdb: changed includes accordingly.
  11. 26 May, 2000 1 commit
    • Michael Natterer's avatar
      Final (1.2) libgimp namespace cleanup part I: · 863f7e1c
      Michael Natterer authored
      2000-05-26  Michael Natterer  <mitch@gimp.org>
      	Final (1.2) libgimp namespace cleanup part I:
      	* app/gimpbrushpipe.c
      	* app/gimpdrawable.[ch]
      	* app/gimpimage.[ch]
      	* app/gimpparasite.[ch]
      	* app/gimprc.c
      	* app/image_new.c
      	* app/parasite_cmds.c
      	* app/parasitelist.[ch]
      	* app/parasitelistP.h
      	* app/plug_in.c
      	* app/undo.c
      	* app/xcf.c
      	* libgimp/color_display.h
      	* libgimp/gimp.[ch]
      	* libgimp/gimpdrawable.c
      	* libgimp/gimpimage.c
      	* libgimp/gimpparasite.c
      	* libgimp/gimpprotocol.c
      	* libgimp/parasite.[ch]
      	* libgimp/parasiteF.h
      	* libgimp/parasiteP.h
      	* libgimp/parasiteio.[ch]
      	* modules/cdisplay_gamma.c
      	* modules/cdisplay_highcontrast.c
      	* plug-ins/common/csource.c
      	* plug-ins/common/gif.c
      	* plug-ins/common/gpb.c
      	* plug-ins/common/jpeg.c
      	* plug-ins/common/psp.c
      	* plug-ins/common/tiff.c
      	* plug-ins/common/xbm.c
      	* plug-ins/gap/gap_exchange_image.c
      	* plug-ins/gdyntext/gdyntext.c
      	* plug-ins/ifscompose/ifscompose.c
      	* plug-ins/xjt/xjt.c: s/Parasite/GimpParasite/g,
      	* libgimp/gimpcompat.h: added the old names.
      	* tools/pdbgen/pdb.pl
      	* tools/pdbgen/pdb/parasite.pdb: dito and an ugly perl hack to work
      	around a substitution clash. Perl gurus, feel free to fix it.
  12. 12 May, 2000 1 commit
    • Sven Neumann's avatar
      enabled the (commented out) signal "invalidate_preview". · b101e7bc
      Sven Neumann authored
      2000-05-12  Sven Neumann  <sven@gimp.org>
      * gimpdrawable.c: enabled the (commented out) signal
      * app/layers_dialog.c: connect to the "invalidate_preview"
        signal to catch changes that need to be shown in the layer
        previews. Synthetize an expose event when a layer changes.
        Expose events are optimzed away by GTK+ if the widget is not
        visible. Therefore, previews not visible in the layers_dialog
        are not redrawn when they invalidate. Later the preview gets
        validated by the image_preview in lc_dialog but is never
        propagated to the layer_pixmap. We work around this by using an
        additional flag "layer_pixmap_valid" so that the pixmap gets
        updated once the preview scrolls into sight.
        Fixes bugs #10549, #10300 and #8787.
      * app/channel.[ch]
      * app/layer.[ch]: code review and indentation
  13. 09 Mar, 2000 1 commit
    • Sven Neumann's avatar
      gimp_drawable_get_color_at() now silently returns NULL again if the · ad55aef2
      Sven Neumann authored
      * app/gimpdrawable.c: gimp_drawable_get_color_at() now silently
      returns NULL again if the coordinates are out of range. A lot of
      code using this function relies on this feature and correctly
      checks the return value. No need to emit critical warnings here.
      The GTK_CHECK_TYPE macro test for obj != NULL, no need to do this
      check twice. Removed lots of unnecessary calls to g_return_if_fail().
      * app/color_picker.c: with the old behaviour of
      gimp_drawable_get_color_at() the code is a bit simpler.
      * app/fuzzy_select.c: fuzzy_select relied on drawable_offsets()
      returning off_x = off_y = 0 if drawable == NULL. Decided to change
      this here, fixes bug #7077.
      * app/gimpimage.[ch]: Even though we made bad experiences with the
      changes in gimpdrawable.c, I have introduced similar argument checks
      * app/image_map.c: indentation
  14. 01 Mar, 2000 2 commits
    • Michael Natterer's avatar
      gimp_drawable_get_color_at(): put the check below back but only require a · a48c1d70
      Michael Natterer authored
      2000-03-01  Michael Natterer  <mitch@gimp.org>
      	* app/gimpdrawable.c: gimp_drawable_get_color_at(): put the check
      	below back but only require a non-indexed drawable if the drawable
      	doesn't have an image.
      	(The function may call gimp_image_get_color() with gimage == NULL
      	for RGB and GRAY colors because we don't need a colormap to
      	transform them to RGB space).
      	This was the obscure special case (TM).
    • Michael Natterer's avatar
      gimp_drawable_get_color_at(): don't g_return_val_if_fail(!indexed, NULL) · c52aec71
      Michael Natterer authored
      2000-03-01  Michael Natterer  <mitch@gimp.org>
      	* app/gimpdrawable.c: gimp_drawable_get_color_at(): don't
      	g_return_val_if_fail(!indexed, NULL) because the function seems to
      	work fine for all kinds of drawables. Fixes #6756. Or is this
      	check needed for some obscure special case?
  15. 28 Feb, 2000 1 commit
    • Garry R. Osgood's avatar
      gimp/app/by_color_select.c gimp/app/color_picker.c gimp/app/gimpdrawable.c · bdbb45d8
      Garry R. Osgood authored
      2000-02-27 Garry R. Osgood <gosgood@idt.net>
      * gimp/app/by_color_select.c
      * gimp/app/color_picker.c
      * gimp/app/gimpdrawable.c
      * gimp/app/image_map.c
      * gimp/app/paint_core.c
      Inadvertent logic error in g_return_val_if_fail()
      style sanity checks implemented in
      gimp_drawable_get_color_at() gave rise to
      segment violation reported in #6624;
      error admitted out-of-bounds x&y that
      do not map to tiles. Closes #6624.
      GTK-critical warnings which result from
      this new sanity check require that
      gimp_drawable_get_color_at() clients
      perform initial culling of out-of-bounds
      x & y coordinates.
  16. 17 Feb, 2000 1 commit
    • Manish Singh's avatar
      added 2000 to the copyrights · 45842e26
      Manish Singh authored
      * tools/pdbgen/*.pl: added 2000 to the copyrights
      * tools/pdbgen/lib.pl: it's foo_pdb.[ch] now
      * tools/pdbgen/pdb/drawable.pdb
      * tools/pdbgen/pdb/parasite.pdb: reenabled sanity checks for the
      drawable IDs and the parasite names
      * app/drawable.c
      * app/gimpdrawable.c: added a bunch of g_return_if_fail's, instead
      of the silent check and return in many functions. This should also
      be done in gimpimage.c and the like too.
      * app/gimpdrawable.h
      * app/layer.c: cosmetic code fix
  17. 15 Feb, 2000 1 commit
    • GMT 2000 Andy Thomas's avatar
      gimp/app/gimpdrawable.c gimp/app/channel.c gimp/app/layer.c · 8f6bca32
      GMT 2000 Andy Thomas authored
      Tue Feb 15 23:27:42 GMT 2000 Andy Thomas <alt@gimp.org>
      	 * gimp/app/gimpdrawable.c
      	 * gimp/app/channel.c
      	 * gimp/app/layer.c
      	 * gimp/app/channel.h
      	 * gimp/app/layer.h
      	 * gimp/app/gimpimage.c
      	 * gimp/app/gimpimage.h
      	 * gimp/app/gimpdrawable.h
      	 * gimp/tools/pdbgen/pdb/paths.pdb
      	 * gimp/tools/pdbgen/pdb/layer.pdb
      	 * gimp/tools/pdbgen/pdb/channel.pdb
      	 * gimp/tools/pdbgen/pdb/gimage.pdb
      	 * gimp/app/channel_cmds.c
      	 * gimp/app/gimage_cmds.c
      	 * gimp/app/internal_procs.c
      	 * gimp/app/layer_cmds.c
      	 * gimp/app/paths_cmds.c
      	New gimp_*_set_tattoo procedures. This allows save/load plugins
              to save/restore tattoo states of layers, channels and paths. Note the
      	internal tattoo state can also be set, however rigorous checks are
      	performed to make sure that the internal tattoo states of layer,
      	channels and paths are consistent and that the new state value is
      	newval > MAX(MAX(layertattoo),MAX(channeltattoo),MAX(pathtattoo)).
  18. 31 Jan, 2000 2 commits
  19. 21 Dec, 1999 1 commit
    • Manish Singh's avatar
      added an assert for name != NULL · 120c64df
      Manish Singh authored
      * app/gimpdrawable.c: added an assert for name != NULL
      * tools/pdbgen/pdb/channel.pdb
      * tools/pdbgen/pdb/layer.pdb: sanity check the name parameters
  20. 24 Oct, 1999 1 commit
  21. 17 Oct, 1999 1 commit
  22. 01 Oct, 1999 1 commit
    • Austin Donnelly's avatar
      comment typo fix, plus add %D* to default image-title-format string, so · 11409e97
      Austin Donnelly authored
      Fri Oct  1 12:46:12 1999  Austin Donnelly  <austin@gimp.org>
      	* gimprc.in: comment typo fix, plus add %D* to default
      	    image-title-format string, so people get a '*' in the titlebar
      	    if their image is dirty.
      	* app/fileops.c: initialise filename before using it.
      	* app/gdisplay.c: empty parameter list () is K&R - should be
      	    stronger (void) in ANSI C.
      	* app/gimpdrawable.c: gimp_drawable_{dirty,clean} functions
      	    removed - no one uses them anyway.  Parasite undo type is
      	    proper parasite undo type, not MISC_UNDO.
      	* app/gimpdrawableP.h: drawable dirty bit removed.
      	* app/gimpimage.c: don't change the resolution if there's no
      	    difference from the old one.  Call gdisplay_shrink_wrap() to
      	    re-calculate scale factors and refresh the display on
      	    resolution change.  Layer undo doesn't have sub-types
      	    anymore, uses main UndoType instead.
      	* app/layer.h: Remove LayerUndoType
      	* app/qmask.c: fix qmask undo so it actually works.
      	* app/undo.h: new types for undo_push_layer{,_mask} and
      	* app/undo.c: change way group boundaries are represented:
      	    each Undo has a group_boundary boolean set to TRUE if this is
      	    the start or the end of a group, and the type of the Undo is
      	    the group's type.  Within a group, each Undo keeps its own
      	    type.  This allows pop funcs and free funcs to do
      	    type-specific things (eg needed by layer and channel stuff).
      	    Don't maintain per-drawable dirty flags anymore.   Floating
      	    sel to layer and layer rename now uses meaningful undo types.
      	* app/undo_types.h: more specific undo types:
      	* app/undo_history.c: oops - undo stack was being placed into gtk
      	    list in wrong order.
      	* app/edit_selection.c: push more descriptive LAYER_DISPLACE_UNDO
      	    rather than MISC_UNDO.
      	* app/layers_dialog.c: better tagging of undo types
  23. 20 Sep, 1999 1 commit
    • EDT 1999  Austin Donnelly's avatar
      Honest, guv, it's not a feature - it's a tightly integrated package of · bf8db4ad
      EDT 1999 Austin Donnelly authored
      Mon Sep 20 12:51:30 EDT 1999  Austin Donnelly  <austin@gimp.org>
      	Honest, guv, it's not a feature - it's a tightly integrated
      	package of undo system cleanups and fixes.
      	NEW FILES:
      	* app/undo_history.c: window showing recent undo (and redo) steps
      	* app/undo_types.h: broken out of undo.h to fix circular includes.
      	* app/Makefile.am: compile undo_history.c
      	* app/channel.h: use enum for channel undo type, not just magic
      	* app/layer.h: same for layer undos.
      	* app/commands.c: edit_show_undo_history_cmd_callback() function to
      	    pull up undo history window.
      	* app/commands.h: prototype for above.
      	* app/gdisplay.c: make undo / redo menu items sensitive according
      	    to whether they would do anything.  Would be easy to change
      	    the text to say what would be undone/redone, but I don't know
      	    the GTK.
      	* app/gimpimage.c: new signal emitted by gimage:
      	    UNDO_EVENT. gimp_image_undo_event() function to emit it.
      	* app/gimpimage.h: prototype for above.
      	* app/gimpimageP.h: pushing_undo_group member is now an undo_type,
      	    not an int.  Keep undo history widget here too (if created).
      	* app/menus.c: add "Edit/Undo history..." to image menu.
      	* app/undo.c: new types: enums undo_type and undo_state rather than
      	    ints and magic numbers.  All undo_pop_* and undo_free_*
      	    functions made static.  New static function
      	    undo_type_to_name().  Issue undo event signals on various
      	    important events (eg undo pushed, undo popped etc).
      	    undo_push() now takes a "dirties_image" arg to say whether
      	    image should be dirtied.  Layer moves now dirty the image.  A
      	    couple of g_return_if_fails () on undo_pop and undo_redo to
      	    assert we're not in the middle of an undo group.
      	    undo_get_{undo,redo}_name() to peek at names of top items on
      	    undo and redo stacks resp.   undo_map_over_{undo,redo}_stack()
      	    to run a function for each item or group on stack.  Layer and
      	    channel undos use symbolic names rather than 0 or 1.  Array
      	    mapping undo types to names.
      	* app/undo.h: split out undo types to undo_types.h.  Prototypes
      	    for functions described above.  undo_event_t enum.
      	    undo_history_new() prototype lives here too.
      	Random other fixes:
      	* app/gimpdrawable.c
      	* app/image_render.c: default labels in switches to keep egcs happy.
      	* app/nav_window.c: some fixes to (sort of) cope with image res !=
      	    screen res.  Still needs work to handle non-square pixels
      	* app/paths_dialog.c: bad idea to call gimp_image_dirty()
      	    directly.  Even though it's currently commented out.
  24. 02 Sep, 1999 1 commit
    • Manish Singh's avatar
      add gimpmath.h · 9fb081a7
      Manish Singh authored
      * libgimp/Makefile.am: add gimpmath.h
      * app/gtkwrapbox.[ch]
      * app/gtkhwrapbox.[ch]: wrapbox widget from gle
      * app/Makefile.am: added those files
      * app/interface.c: use an hwrapbox for the toolbar. Still not perfect
      yet, working on it.
      * app/gimpdrawable.c
      * app/about_dialog.c
      * app/airbrush.c
      * app/blend.c: some minor code cleanup
  25. 23 Aug, 1999 1 commit
    • EDT 1999  Austin Donnelly's avatar
      Dirty flag now correct in all cases. Can be displayed in image window · 0a7dca91
      EDT 1999 Austin Donnelly authored
      Mon Aug 23 10:15:32 EDT 1999  Austin Donnelly  <austin@gimp.org>
      	Dirty flag now correct in all cases.  Can be displayed in image
      	window title too.  See NOTE near gimp_image_dirty() for details.
      	* app/fileops.c: gimp_image_clean_all() after reverting an image.
      	* app/gdisplay.c: register handlers for gimage dirty and clean
      	    signals to update image title.  New image-title-format
      	    expansion: %Dx expands to x if the image is dirty.
      	* app/gdisplay_ops.c: gimage->dirty flags != 0 is the correct
      	    condition to test to see if an image is dirty.
      	* app/gimpdrawable.c: gimp_image_dirty() should never be called
      	    except from an undo_push_* function.  Call
      	    undo_push_cantundo() if you want to dirty the image but can't
      	    be bothered writing an undo handler (be ashamed of yourself!).
      	* app/gimpimage.c: new gimage signal: clean.  Emitted when an undo
      	    operation takes place.  Gimage changes when either dirty or
      	    clean is emitted, so if you need to update previews etc, look
      	    for both!  Move group_count into gimage structure, since
      	    leaving it as a static in undo.c is bad if two undo groups are
      	    started on different images at the same time.  More changes
      	    of gimp_image_dirty() to undo_push_cantundo()
      	    (parasite-related, plus layer moves).  See the NOTE on dirty
      	    counter near gimp_image_dirty() for the full story.
      	    gimp_image_dirty() and gimp_image_clean() simplified - counter
      	    can go negative.
      	* app/gimpimageP.h: group_count moved from undo.c
      	* app/layers_dialog.c: push undo for layer name change, rather
      	    than dirtying the image.
      	* app/undo.c: layer rename undo functions
      	    added. undo_push_cantundo() convenience functions added.
      	    group_count made per-gimage since everything else is.  When
      	    blowing away redo stack, make image infinitely dirty if redo
      	    info contained file save point.
      	* app/undo.h: added undo_push_layer_rename() and
      	* TODO: added idea for undo history window.
  26. 22 Aug, 1999 1 commit
    • Michael Natterer's avatar
      app/color_area.[ch] app/color_panel.[ch] enabled dnd for colors · 1e08aa1e
      Michael Natterer authored
      1999-08-22  Michael Natterer  <mitschel@cs.tu-berlin.de>
      	* app/color_area.[ch]
      	* app/color_panel.[ch]
      	* app/gimpdnd.[ch]: enabled dnd for colors (compatible with the
      	standard gtk/gnome color dnd). The color selection is now invoked
      	on a real click, not on button_down to avoid confusion with dnd.
      	* app/channels_dialog.c
      	* app/disp_callbacks.c
      	* app/interface.c
      	* app/layers_dialog.c: minor dnd updates/fixes.
      	* app/channel.[ch]
      	* app/channel_pvt.h
      	* app/docindex.[ch]
      	* app/docindexif.[ch]
      	* app/drawable.[ch]
      	* app/floating_sel.c
      	* app/gimage.[ch]
      	* app/gimage_mask.c
      	* app/gimpdrawable.[ch]
      	* app/gimpdrawableP.h
      	* app/gimpimage.[ch]
      	* app/gimpimageP.h
      	* app/layer.[ch]
      	* app/layer_pvt.h
      	* app/undo.c
      	* app/xcf.c: wanted to do some s/int/gboolean/ in the layer files
      	where appropriate and found myself spending the whole night doing
      	a big code review for layers/channels/drawables/images:
      	s/int/gboolean/, s/<type>/g<type>/, lots of indentation, removed
      	some old global variables and deprecated functions, #include
      	cleanups, proper prototypes, copyright headers, ...
  27. 18 Aug, 1999 1 commit
    • Tor Lillqvist's avatar
      Actually use the enum types GimpImageType, GimpImageBaseType, · f6858e21
      Tor Lillqvist authored
      	* app/*.[ch]: Actually use the enum types GimpImageType,
      	GimpImageBaseType, LayerModeEffects, PaintApplicationMode,
      	BrushApplicationMode, GimpFillType and ConvertPaletteType, instead
      	of just int or gint. Hopefully I catched most of the places
      	where these should be used.
      	Add an enum ConvolutionType, suffix the too general constants
      	instead of NORMAL in some places (this was what was intended). Fix
      	some minor gccisms.
      	* app/apptypes.h: New file. This file contains the above
      	enumeration types, and some opaque struct typedefs. It was
      	necessary to collect these in one header that doesn't include
      	other headers, because when we started using the above mentioned
      	types in the headers, all hell broke loose because of the
      	spaghetti-like cross-inclusion mess between headers.
      	(An example: Header A includes header B, which includes header C
      	which includes A. B uses a type defined in A. This is not defined,
      	because A hasn't defined it yet at the point where it includes B,
      	and A included from B of course is skipped as we already are
      	reading A.)
  28. 23 Jun, 1999 1 commit
    • BST 1999 Andy Thomas's avatar
      gimp/app/gimppreviewcache.c gimp/app/gimppreviewcache.h · 9b7d21da
      BST 1999 Andy Thomas authored
      Wed Jun 23 23:52:54 BST 1999 Andy Thomas <alt@gimp.org>
      	* gimp/app/gimppreviewcache.c
      	* gimp/app/gimppreviewcache.h
      	* gimp/app/drawable_cmds.c
      	* gimp/app/gdisplay.c
      	* gimp/app/gimpdrawableP.h
      	* gimp/app/gimage_cmds.c
      	* gimp/app/Makefile.am
      	* gimp/app/layers_dialog.c
      	* gimp/app/channel.c
      	* gimp/app/lc_dialog.c
      	* gimp/app/lc_dialog.h
      	* gimp/app/lc_dialogP.h
      	* gimp/app/layer.c
      	* gimp/app/gimpdrawable.c
      	* gimp/app/internal_procs.c
      	* gimp/libgimp/gimp.h
      	* gimp/libgimp/gimpimage.c
      	* gimp/libgimp/gimpdrawable.c
      	* gimp/libgimp/gimpmenu.c
      	* gimp/tools/pdbgen/pdb/drawable.pdb
      	* gimp/tools/pdbgen/pdb/gimage.pdb
      	Added thumbnail image preview functions.
      	Previews are visible on the L&C&P dialogs as well as in the
      	drawables/channels/ menus generated for plugins
      	(see the bumpmap & Mapobject plugins).
      	PDB interface exists to simply extract a thumbnail preview
      	of a given size. This is much quicker & more efficient
      	than getting the image data tile-by-tile if you only need a small
      	image since a "preview cache" has been implemented. This cache also
      	reduces the number of times the tiles cached is scanned since smaller
      	previews are always generated from large ones if they exists and
      	are valid.
      	Some possible usages (I don't intend to implement these ideas. Just
      	suggestions). More plugins using the thumbnail preview (ie any that
      	use multiple images). Indication of "active image" somewhere.....
      	Actually almost anywhere a drawable/image name appears.
  29. 23 Apr, 1999 2 commits
    • Manish Singh's avatar
      gave parasite undo a MISC_UNDO class for now so it compiles · b8c19394
      Manish Singh authored
      * app/gimpdrawable.c: gave parasite undo a MISC_UNDO class for now
      so it compiles
      * app/tools_cmds.c: fix crop invoker to give correct args to
      * app/color_cmds.c: s/GRAY/GRAY_LUT/g;
      * app/brush_select.[ch]: removed PDB procs, export brush_active_dialogs,
      brush_select_dialog, s/active_dialogs/brush_active_dialogs/
      * app/gimage_cmds.[ch]
      * app/channel_ops.[ch]: removed channel ops PDB procs, moved duplicate
      function from gimage_cmds to channel_ops, export offset and duplicate
      * app/gimpbrushlist.[ch]: removed PDB procs
      * app/gradient.[ch]: removed PDB procs,
      * app/gradient_header.h: exported G_SAMPLE, GradSelect, num_gradients,
      grad_active_dialogs, gradient_select_dialog
      * app/gradient_select.c: removed PDB procs,
      * app/patterns.[ch]: removed PDB procs
      * app/pattern_select.[ch]: removed PDB procs,
      * app/procedural_db.c: removed PDB procs and supporting functions
      * app/procedrual_db.h: fiddled with enums
      * app/channel_cmds.[ch]
      * app/drawable_cmds.[ch]
      * app/parasite_cmds.[ch]: pdbgenned now, removed header files
      * app/gimpparasite.c: minor cleanup
      * app/internal_procs.c: use pdbgen stuff
      * app/tools_cmds.c
      * app/text_tool_cmds.c: updated from pdbgen
      * app/brushes_cmds.c
      * app/brush_select_cmds.c
      * app/gradient_cmds.c
      * app/gradient_select_cmds.c
      * app/patterns_cmds.c
      * app/pattern_select_cmds.c
      * app/procedural_db_cmds.c: new pdbgen files
      * app/Makefile.am: file shuffle (see above)
    • jaycox's avatar
      removed some nonfunctional code. · d996031a
      jaycox authored
      	* app/edit_selection.c: removed some nonfunctional code.
      	* app/paint_core.c: remove the alt toggles perfectmouse behaviour.
      	* app/paintbrush.c: when ctl (or alt) is held set the fg (or bg) color.
      	* app/gimpparasite.[ch]: made char *name parameters const.
      	* app/parasitelist.c: removed unused static variable.
      	* app/gimpdrawable.c, app/gimpimage.c, app/undo.[ch]: added
       	support for undoing parasite changes.
      	* libgimp/gimp.h, libgimp/gimpimage.c: added
       	gimp_undo_push_group_start and gimp_undo_push_group_end
      	* libgimp/parasite.[ch]: added undoable flag.
      	* plug-ins/gdyntext/font_selection.c: fixed c++ style comment.
      	* plug-ins/gdyntext/gdyntext.c: use the new undoable parasites.
      	* plug-ins/rcm/rcm_misc.c: arctg can't be inline because it is
       	used in other .c files
      	* plug-ins/waterselect/waterselect.c,
      	* plug-ins/rotators/rotators.c, app/tips_dialog.c, app/plug_in.c:
       	fixed some warnings
  30. 09 Apr, 1999 1 commit
    • jaycox's avatar
      build color_cmds, lut_funcs, and pixel_processor feedback in the splash · dde36031
      jaycox authored
      	* app/Makefile.am: build color_cmds, lut_funcs, and pixel_processor
      	* app/app_procs.c: feedback in the splash screen when loading
      	* app/boundary.c: Optimized find_empty_segs.
      	* app/brightness_contrast.[ch]
      	* app/levels.[ch]
      	* app/posterize.[ch]:
       	moved pdb and lut calculation code.  These files now contain only
      	GUI functions.
      	* app/channel.c: Optimized channel_bounds (fewer compares, better
       	use of registers).  Use color_region instead of channel_*_segment
       	in channel_combine_rect.  Optimized channel_combine_ellipse by
       	skipping pixels inside of the ellipse.  Use
       	pixel_region_process_parallel in channel_combine_mask.  Use a
       	GimpLut in channel_invert, and channel_sharpen.
      	* app/invert.c
      	* app/equalize.c: moved the lut functions to lut_funcs.c
      	* app/gimpdrawable.c, app/gimpdrawableP.h
      	* app/gimpimage.c, app/gimpimageP.h: removed unused gimpmatrix
      	* app/gimplut.[ch]: added new function gimp_lut_process_inline
       	that operates on a single PixelRegion.
      	* app/gimpparasite.[ch]: new functions to save/load parasiterc
      	* app/parasitelist.[ch]: new functions to save/load ParasiteLists
       	in/from files.
      	* libgimp/parasite.[ch]: new functions to load/save parasites.
      	* app/internal_procs.c: get some procs from new location in
      	* app/pixel_region.[ch]: moved pixel_regions_process_parallel
       	related functions to a new file.
      	* app/color_cmds.[ch]: new files for PDB
       	definitions/implementations of color correction functions.
      	* app/lut_funcs.[ch]: new files to hold lut creation functions.
      	* app/pixel_processor.[ch]: new files that contain the
       	pixel_regions_process_parallel routines.  Added some new
       	capabilities that are currently unused.
  31. 20 Feb, 1999 1 commit
  32. 16 Feb, 1999 1 commit
    • jaycox's avatar
      new source files that implement pixel Look Up Table functions. · a26f8d3f
      jaycox authored
      	* app/gimplut.[ch]: new source files that implement pixel Look Up
       	Table functions.
      	* app/Makefile.am: build gimplut.[ch]
      	* app/brightness_contrast.c
      	* app/curves.c
      	* app/invert.c
      	* app/levels.c
      	* app/posterize.c: Use the new lut functions.  Use
       	pixel_region_process_parallel in the PDB versions of these routines.
      	* libgimp/parasite.h
      	* libgimp/parasite.c: new functions parasite_name and
      	* app/gimpdrawable.c:
      	* app/gimpdrawable.h: new function
       	gimp_drawable_get_color_at(...) returns the RGBA[color index]
       	value at a specified position in the drawable.  Don't set the dirty
       	bit on the image if a new parasite is the same as the old.
      	* app/gimpimage.c
      	* app/gimpimage.h new function
       	gimp_image_get_color_at(...) returns the RGBA[color index]
       	value at a specified position in the drawable.  Don't set the dirty
       	bit on the image if a new parasite is the same as the old.
      	* app/by_color_select.c
      	* app/color_picker.c: use the new gimp_*_get_color_at
       	functions instead of messing with the tiles.
      	* app/layer.c: fixed a minor warning.
      	* app/commands.c:
      	don't scale the image if the new size == the old size
      	* app/channel.c: optimized channel_bounds by only checking the
       	pixels in a tile if it is not already entirely within the
       	currently computed bounds.
  33. 13 Feb, 1999 1 commit
  34. 02 Feb, 1999 1 commit
    • Tor Lillqvist's avatar
      Fix adding of numbers after drawable copies. We used to get pairs of · 1420685b
      Tor Lillqvist authored
      * app/gimpdrawable.c (gimp_drawable_set_name): Fix adding of
        numbers after drawable copies. We used to get pairs of duplicates
        after adding the same name several times.
      (Try by adding a new layer several times in the layers dialog. You will
      get New Layer, New Layer#2, New Layer#3, New Layer#3 (again!), New Layer#4,
      New Layer#4 (again!), etc.)
  35. 27 Jan, 1999 1 commit
    • GMT 1999  Austin Donnelly's avatar
      oops - should use the image resolution, not the screen resolution. D'oh! · ee5f8986
      GMT 1999 Austin Donnelly authored
      Wed Jan 27 21:52:43 GMT 1999  Austin Donnelly  <austin@gimp.org>
      	* app/scale.c: oops - should use the image resolution, not the
      	    screen resolution.  D'oh!
      	* app/gimpdrawable.c: only merge shadow image if there actually is
      	* plug-ins/emboss/emboss.c: small optimisation: use
       	    gimp_drawable_mask_bounds() to calculate only the pixels that
       	    are actually in the selection.