Commit Graph

40 Commits

Author SHA1 Message Date
Michael Natterer 6cfb041479 app/gimpdrawable.[ch] did some code review: s/0/NULL/,
2000-10-28  Michael Natterer  <mitch@gimp.org>

	* app/gimpdrawable.[ch]
	* libgimp/gimpsizeentry.c: did some code review: s/0/NULL/,
	s/sprintf/g_snprintf/, spacing.
2000-10-28 15:43:56 +00:00
Manish Singh f764c56d03 Be smarter about emitting the "invalidate_preview" signal.
comitted using Yosh's account...


--Sven
2000-06-03 18:19:22 +00:00
Michael Natterer 6fa33d6855 Libgimp cleanup part II (with a little help from Yosh who moved the CVS
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.
2000-05-27 01:30:21 +00:00
Michael Natterer 863f7e1c44 Final (1.2) libgimp namespace cleanup part I:
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,
	                      s/parasite_*/gimp_parasite_*/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.
2000-05-26 22:28:40 +00:00
Sven Neumann b101e7bc85 enabled the (commented out) signal "invalidate_preview".
2000-05-12  Sven Neumann  <sven@gimp.org>

* gimpdrawable.c: enabled the (commented out) signal
  "invalidate_preview".

* 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


--Sven
2000-05-12 17:07:54 +00:00
Sven Neumann ad55aef27e gimp_drawable_get_color_at() now silently returns NULL again if the
* 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
here.

* app/image_map.c: indentation


--Sven
2000-03-09 11:58:03 +00:00
Michael Natterer a48c1d7065 gimp_drawable_get_color_at(): put the check below back but only require a
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).
2000-03-01 22:05:22 +00:00
Michael Natterer c52aec7129 gimp_drawable_get_color_at(): don't g_return_val_if_fail(!indexed, NULL)
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?
2000-03-01 21:42:57 +00:00
Garry R. Osgood bdbb45d87c gimp/app/by_color_select.c gimp/app/color_picker.c gimp/app/gimpdrawable.c
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.
2000-02-28 02:40:44 +00:00
Manish Singh 45842e262a added 2000 to the copyrights
* 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

-Yosh
2000-02-17 11:44:27 +00:00
GMT 2000 Andy Thomas 8f6bca3234 gimp/app/gimpdrawable.c gimp/app/channel.c gimp/app/layer.c
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)).
2000-02-15 23:49:03 +00:00
Sven Neumann c9482821ab mostly header cleanup and i18n
--Sven
2000-01-31 23:59:05 +00:00
Sven Neumann 4006d434df more sanity checks in gimpdrawable.c and a few i18n issues
--Sven
2000-01-31 13:07:39 +00:00
Manish Singh 120c64dfa6 added an assert for name != NULL
* app/gimpdrawable.c: added an assert for name != NULL

* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/layer.pdb: sanity check the name parameters

-Yosh
1999-12-21 00:36:07 +00:00
Marc Lehmann 88e0cc3155 api change #2, fix #1 1999-10-24 20:49:09 +00:00
Marc Lehmann ec40ac728b API PATCH #2 or so 1999-10-17 00:07:55 +00:00
Austin Donnelly 11409e97fb comment typo fix, plus add %D* to default image-title-format string, so
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
	    undo_push_qmask.
	* 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:
	    LAYER_{ADD,REMOVE}_UNDO, LAYER_MASK_{ADD,REMOVE}_UNDO,
	    LAYER_RENAME_UNDO, and PARASITE_{ATTACH,DETACH}_UNDO.
	* 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
1999-10-01 18:43:24 +00:00
EDT 1999 Austin Donnelly bf8db4adc8 Honest, guv, it's not a feature - it's a tightly integrated package of
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
	    available.
	* app/undo_types.h: broken out of undo.h to fix circular includes.

	MODIFIED FILES:
	* app/Makefile.am: compile undo_history.c
	* app/channel.h: use enum for channel undo type, not just magic
	    numbers.
	* 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
	    properly.

	* app/paths_dialog.c: bad idea to call gimp_image_dirty()
	    directly.  Even though it's currently commented out.
1999-09-20 17:15:20 +00:00
Manish Singh 9fb081a7e6 add gimpmath.h
* 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

-Yosh
1999-09-02 01:41:18 +00:00
EDT 1999 Austin Donnelly 0a7dca9110 Dirty flag now correct in all cases. Can be displayed in image window
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
	    undo_push_cantundo().
	* TODO: added idea for undo history window.
1999-08-23 14:34:58 +00:00
Michael Natterer 1e08aa1ef7 app/color_area.[ch] app/color_panel.[ch] enabled dnd for colors
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, ...
1999-08-22 11:45:31 +00:00
Tor Lillqvist f6858e21d1 Actually use the enum types GimpImageType, GimpImageBaseType,
* 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
	NORMAL, ABSOLUTE and NEGATIVE with _CONVOL. Use NORMAL_MODE
	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.)
1999-08-18 23:41:39 +00:00
BST 1999 Andy Thomas 9b7d21dab5 gimp/app/gimppreviewcache.c gimp/app/gimppreviewcache.h
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.
1999-06-23 23:01:14 +00:00
Manish Singh b8c19394dc gave parasite undo a MISC_UNDO class for now so it compiles
* 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
crop_image

* 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,
s/active_dialogs/grad_active_dialogs/

* app/patterns.[ch]: removed PDB procs

* app/pattern_select.[ch]: removed PDB procs,
s/active_dialogs/pattern_active_dialogs/

* 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)

-Yosh
1999-04-23 20:54:02 +00:00
jaycox d996031ab0 removed some nonfunctional code.
* 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
1999-04-23 06:07:09 +00:00
jaycox dde3603123 build color_cmds, lut_funcs, and pixel_processor feedback in the splash
* app/Makefile.am: build color_cmds, lut_funcs, and pixel_processor
	* app/app_procs.c: feedback in the splash screen when loading
 	parasites.
	* 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
	variables/includes.

	* 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
	color_cmds.h.

	* 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.
1999-04-09 06:00:11 +00:00
Tor Lillqvist a27cedc001 First batch of changes to merge the Win32 version. This will be
done in pieces, don't expect to be able to compile on Win32 from
these sources yet.  Ans of course, the official version of GTk+
doesn't include the Win32 stuff yet.
1999-02-20 23:20:54 +00:00
jaycox a26f8d3f5c new source files that implement pixel Look Up Table functions.
* 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
 	parasite_compare.

	* 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.
1999-02-16 08:53:54 +00:00
Marc Lehmann 446a11e938 *** empty log message *** 1999-02-13 18:19:44 +00:00
Tor Lillqvist 1420685bd2 Fix adding of numbers after drawable copies. We used to get pairs of
* 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.)
1999-02-02 22:08:33 +00:00
GMT 1999 Austin Donnelly ee5f898649 oops - should use the image resolution, not the screen resolution. D'oh!
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
	    one.

	* plug-ins/emboss/emboss.c: small optimisation: use
 	    gimp_drawable_mask_bounds() to calculate only the pixels that
 	    are actually in the selection.
1999-01-27 22:00:44 +00:00
Manish Singh 15c56a1b3d nice file from Xach
* NEWS: nice file from Xach

* libgimp/parasite.c
* app/gimpdrawable.c: warning fixups

-Yosh
1998-12-22 06:03:53 +00:00
jaycox fe3fa4e2e5 libgimp/gserialize.c Changed the enum values to allow for simpler future
* libgimp/gserialize.c
	* libgimp/gserialize.h: Changed the enum values to allow for
 	simpler future expansion.

	* libgimp/parasite.c
	* libgimp/parasite.h: s/persistant/persistent/.
 	new accessor functions for parasites.  #defines for new flags.

	* app/paintbrush.c: added timeing code for brush strokes.
  	It is #ifed out, and is only valid for shift clicks.

	* app/parasite_cmds.h: fixed a warning

	* app/parasitelist.h
	* app/parasitelist.c: added _for_each and _length functions

	* app/gimpdrawable.c:  set the dirty flag when adding or removing a
 	persistent parasite

	* app/gimpimage.c: set the dirty flag when adding or removing a
 	persistent parasite.  Fixed bug and removed debug statements in
 	merge_down.

	* app/xcf.c: save and load resolution, parasites, and tattoos.

	* app/main.c: updated the deserialize test.

	* plug-ins/tiff/tiff.c
	* plug-ins/gif/gif.c: use PARASITE_PERSISTENT define instead of 1

	* plug-ins/bmp/bmp.c
	* plug-ins/bmp/bmp.h: declare some struct variable as extern.

	* app/paint_funcs.c: Lots of optimizations aimed at speeding up
 	painting.  Should see a 2-4X speed up on most painting
 	(depending on paint modes, brush size etc.)

	* app/drawable.c: check for NULL drawable in drawable_ID.
  	this stops us from being crashed by ill-behaved plug-ins
1998-12-16 11:23:30 +00:00
Manish Singh cb80e23d3b applied gimp-stric-981116-1, lots o files changes in app. i18n patch.
* applied gimp-stric-981116-1, lots o files changes in app. i18n patch.

* plug-ins/gfig/gfig.c: applied gimp-tml-981121-0, use proper PDB params

-Yosh
1998-11-23 14:47:09 +00:00
jaycox 682b1f3c65 Modified Files: ChangeLog app/Makefile.am app/app_procs.c app/channel.c
Modified Files:
 	ChangeLog app/Makefile.am app/app_procs.c app/channel.c
	app/channel.h app/file_new_dialog.c app/gimage_cmds.c
 	app/gimage_cmds.h app/gimpdrawable.c app/gimpdrawable.h
 	app/gimpdrawableP.h app/gimpimage.c app/gimpimage.h
 	app/gimpimageF.h app/gimpimageP.h app/internal_procs.c
 	app/layer.c app/layer.h app/parasite_cmds.c
 	app/parasite_cmds.h app/plug_in.c app/preferences_dialog.c
 	libgimp/Makefile.am libgimp/gimp.h libgimp/gimpdrawable.c
 	libgimp/gimpfeatures.h.in libgimp/gimpimage.c
 	libgimp/gimpmatrix.h libgimp/parasite.c libgimp/parasite.h
 	plug-ins/script-fu/script-fu-console.c
 	plug-ins/script-fu/script-fu.c
 Added Files:
 	app/gimpparasite.c app/gimpparasite.h app/parasitelist.c
 	app/parasitelist.h app/parasitelistF.h app/parasitelistP.h
 	libgimp/gimpparasite.c

lots of parasite related changes.
1998-10-30 10:21:33 +00:00
jaycox c5a8b43846 Modified Files: ChangeLog app/Makefile.am app/channel.c app/channel.h
Modified Files:
 	ChangeLog app/Makefile.am app/channel.c app/channel.h
 	app/channel_cmds.c app/channel_cmds.h app/drawable_cmds.c
 	app/gimage_cmds.c app/gimpdrawable.c app/gimpdrawable.h
 	app/gimpdrawableP.h app/gimpimage.c app/gimpimage.h
 	app/gimpimageP.h app/internal_procs.c app/layer.c app/layer.h
 	app/layer_cmds.c app/layer_cmds.h app/parasite_cmds.c
 	app/perspective_tool.c app/plug_in.c app/procedural_db.c
 	app/rotate_tool.c app/scale_tool.c app/shear_tool.c
 	app/transform_core.c app/transform_core.h docs/parasites.txt
 	libgimp/Makefile.am libgimp/gimp.c libgimp/gimp.h
 	libgimp/gimpdrawable.c libgimp/gimpimage.c
 	libgimp/gimpprotocol.c libgimp/gimpprotocol.h
 	plug-ins/gif/gif.c plug-ins/script-fu/script-fu.c
 	plug-ins/tiff/tiff.c
 Added Files:
 	libgimp/gimpmatrix.c libgimp/gimpmatrix.h libgimp/parasite.c
 	libgimp/parasite.h libgimp/parasiteF.h libgimp/parasiteP.h
 Removed Files:
 	app/parasite.c app/parasite.h app/parasiteF.h app/parasiteP.h
 	libgimp/gimpparasite.c libgimp/gimpparasite.h

Tue Oct 13 19:24:03 1998  Jay Cox  (jaycox@earthlink.net)

        * app/parasite.c
        * app/parasite.h
        * app/parasiteF.h
        * app/parasiteP.h : use a single name field instead of seperate
        creator/type fields.  moved to libgimp/parasite*

        * libgimp/Makefile.am
        * libgimp/gimp.c
        * libgimp/gimp.h
        * libgimp/gimpdrawable.c
        * libgimp/gimpimage.c
        * libgimp/gimpprotocol.c
        * libgimp/gimpprotocol.h
        * app/Makefile.am
        * app/channel.c
        * app/channel.h
        * app/channel_cmds.c
        * app/channel_cmds.h
        * app/drawable_cmds.c
        * app/gimage_cmds.c
        * app/gimpdrawable.c
        * app/gimpdrawable.h
        * app/gimpdrawableP.h
        * app/gimpimage.c
        * app/gimpimage.h
        * app/gimpimageP.h
        * app/internal_procs.c
        * app/layer.c
        * app/layer.h
        * app/layer_cmds.c
        * app/layer_cmds.h
        * app/parasite_cmds.c
        * app/plug_in.c
        * app/procedural_db.c: Add tattoos to layers and drawables.
        Use new style parasites.

        * libgimp/gimpmatrix.c
        * libgimp/gimpmatrix.h: new files for matrix math.

        * app/perspective_tool.c
        * app/rotate_tool.c
        * app/scale_tool.c
        * app/shear_tool.c
        * app/transform_core.c
        * app/transform_core.h: use GimpMatrix instead of the old matrix
        code from transform_core.

        * ligimp/gimpparasite*: removed.  now useing the same source
        for plug-ins and the core.

        * plug-ins/script-fu/script-fu.c
        * plug-ins/tiff/tiff.c
        * plug-ins/gif/gif.c: updated to use new style parasites.
1998-10-14 02:54:02 +00:00
jaycox e2a601d444 Modified Files: ChangeLog app/Makefile.am app/channel.c
Modified Files:
 	ChangeLog app/Makefile.am app/channel.c app/drawable_cmds.c
 	app/drawable_cmds.h app/gimage_cmds.c app/gimage_cmds.h
 	app/gimpdrawable.c app/gimpdrawable.h app/gimpdrawableP.h
 	app/gimpimage.c app/gimpimage.h app/gimpimageP.h
 	app/internal_procs.c app/layer.c app/plug_in.c
 	app/procedural_db.c app/procedural_db.h libgimp/Makefile.am
 	libgimp/gimp.c libgimp/gimp.h libgimp/gimpdrawable.c
 	libgimp/gimpenums.h libgimp/gimpimage.c libgimp/gimpprotocol.c
 	libgimp/gimpprotocol.h plug-ins/dbbrowser/dbbrowser_utils.c
 	plug-ins/script-fu/script-fu.c plug-ins/tiff/tiff.c
 Added Files:
 	app/parasite.c app/parasite.h app/parasiteF.h app/parasiteP.h
 	app/parasite_cmds.c app/parasite_cmds.h libgimp/gimpparasite.c
 	libgimp/gimpparasite.h

   	Allow plug-ins (and scripts) to attach arbitrary data
	(parasites) to images, layers and channels that can be read
	back at a later time.
1998-10-08 08:15:21 +00:00
jaycox 0fb97ecb8e app/channel.[ch] app/channel_cmds.c app/drawable.h app/channels_dialog.c
* app/channel.[ch]
	* app/channel_cmds.c
	* app/drawable.h
	* app/channels_dialog.c
	* app/gimage_cmds.c
	* app/gimpdrawable.[ch]
	* app/gimpimage.c
	* app/layer.[ch]
	* app/layer_cmds.c
	* app/layer_select.c
	* app/layers_dialog.c: enforce unique names for layers and
	channels.  New functions {channel,gimp_drawable,layer}_{get,set}_name
1998-09-24 01:19:57 +00:00
Lauri Alanko 6a02cda396 Started gimpset, a generic class for handling collections of
objects. (And to automatically manage their signals, not implemented
yet)

Moved drawable_apply_image to drawable.c

Created a global context object (image_context) to handle the
collection of images that the app manages.
1998-07-01 23:06:49 +00:00
Lauri Alanko ef3e162eae start collecting some core stuff to libgimpim.a
Started separating crud out of drawables.

	Isolated the id system of images entirely within pdb. Even the
	window titles and menus use pointers instead of ids. Should at
	least remind people that this is a developers' version. :)
1998-06-30 15:31:32 +00:00