Commit Graph

29 Commits

Author SHA1 Message Date
Sven Neumann 5f464b9f5d Show what line you are drawing when using <Shift> on paint-tools.
Needs some work for the clone-tool, since it seems to behave different then
the rest...


--Sven
1999-05-15 00:02:47 +00:00
jaycox 628e07eb47 set the fg or bg color if ctrl or alt is held. use the new dropper cursor.
* app/paint_core.[ch]: set the fg or bg color if ctrl or alt is
 	held.  use the new dropper cursor.

	* app/cursorutil.[ch], app/gdisplay.[ch], app/rect_select.c: Use
 	GimpCursorType enum values > GDK_CURSOR_LAST instead of seperate
 	functions to choose between cursor types.

	* app/color_picker.c: use the new dropper cursor.

	* app/paintbrush.c, app/airbrush.c, app/paintbrush.c: use the new
 	color picking feature of paint_core.

	* cursors/dropper, cursors/droppermsk: new cursor for the color
 	picker tool. (this cursor is REALLY ugly, someone should fix it)
1999-05-13 11:12:32 +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
Michael Natterer ca2cbd3257 First version of per-tool paint options. No PDB interface yet. The tool
1999-04-22  Michael Natterer  <mitschel@cs.tu-berlin.de>

	First version of per-tool paint options. No PDB interface yet.
	The tool options dialog got rather big when in per-tool mode, so
	it will probably have to become a notebook.

	It's not yet 100% consistent. If switched off, everything should
	behave exactly like before.

	* app/Makefile.am
	* app/paint_options.h: new file

	* app/tool_options.c: PaintOptions gui. Maintain a list of all
	paint tools' ToolOptions to enable switching between global and
	per-tool paint options.

	* app/brush_select.[ch]: changed packing boxes, tables, ...
	The paint options in the brush selection can be hidden now.
	Moved create_paint_mode_menu() to paint_options.h and
	tool_options.c and renamed it to paint_mode_menu_new().

	* app/gimage_mask.c
	* app/gimpbrush.[ch]
	* app/gimpbrushlist.[ch]
	* app/paint_core.c: moved gimp_brush_[set|get]_spacing() from
	gimpbrushlist.[ch] to gimpbrush.[ch].
	Moved gimp_brush_[get|set]_[opacity|paint_mode]() to
	paint_options.h and tool_options.c and renamed them to
	paint_options_*_*().  They are "global paint options" now.

	* app/airbrush.c
	* app/blend.c
	* app/bucket_fill.c
	* app/clone.c
	* app/convolve.c
	* app/eraser.c
	* app/ink.c
	* app/paintbrush.c
	* app/pencil.c: all paint tools' options are derived from
	"PaintOptions" now. Opacity and paint mode are obtained through
	macros which take into account the current paint options mode.

	* app/buildmenu.h: #include <gtk/gtk.h>

	* app/color_picker.c
	* app/text_tool.c: changed spacings.

	* app/gimprc.[ch]: new gimprc option "global-paint-options"

	* app/preferences_dialog.c: Added a "Tool Options" page. Code
	cleanup. Some work on the convenience constructors test site.

	* app/tools.c: fixed "unused variable" warning.
1999-04-22 14:34:00 +00:00
BST 1999 Austin Donnelly 5026bd5015 add the new args to gimp-paintbrush PDB calls.
Tue Apr 20 23:38:26 BST 1999  Austin Donnelly  <austin@gimp.org>

	* app/bezier_select.c: add the new args to gimp-paintbrush PDB
	    calls.

	* app/blend.c
	* app/bucket_fill.c
	* app/invert.c: check return from procedural_db_run_proc() rather
	    than dereferencing NULL.

	* app/paintbrush.c: plumb the non-gui fade_out option into the
	    functions that actually do the work, rather than using
	    an uninitialised value.

	* app/procedural_db.c: better error messages on PDB typecheck fail
	    in procedural_db_run_proc.  Also now valid to
	    procedural_db_destroy_args() on a NULL pointer.
	* app/procedural_db.h: pdb_type_name() function added, plus
	    comment urging people to keep the enum and strings in step.

	* tools/pdbgen/README: added paragraph on how to run pdbgen.pl

	* tools/pdbgen/pdb/tools.pdb: fade_out parameter is valid to be 0
	* app/tools_cmds.c: new version of generated file
1999-04-20 23:03:31 +00:00
Manish Singh ccac10a4b0 new file, containes the PDB stuff for most of the tools
* app/tools_cmds.c: new file, containes the PDB stuff for most
of the tools

* app/gimprc_cmds.c: new file, PDB interface stuff for gimprc
access

* app/Makefile.am: added tools_cmds.c and gimprc_cmds.c

* app/airbrush.[ch]
* app/blend.[ch]
* app/bucket_fill.[ch]
* app/by_color_select.[ch]
* app/clone.[ch]
* app/color_picker.[ch]
* app/convolve.[ch]
* app/crop.[ch]
* app/ellipse_select.[ch]
* app/eraser.[ch]
* app/flip_tool.[ch]
* app/free_select.[ch]
* app/fuzzy_select.[ch]
* app/gimprc.[ch]
* app/paintbrush.[ch]
* app/pencil.[ch]
* app/perspective_tool.[ch]
* app/rect_select.c app/rect_select.h
* app/rotate_tool.[ch]
* app/scale_tool.[ch]
* app/shear_tool.[ch]: bye bye PDB stuff (exported necessary enums
functions, vars, etc.)

* app/internal_procs.c: use register_foo functions

* app/blend.[ch]: GradientType enum case changed

* app/bucket_fill.[ch]: s/FillMode/BucketFillMode/, made the enum
more consistent

* app/clone.[ch]: capitalized the CloneType enum

* app/color_picker.[ch]: changed get_color to pick_color so we don't
conflict with colormaps.c get_color

* app/convolve.[ch]: capitalized the ConvolveType enum

* app/paint_core.h: made a GradientPaintMode enum

* app/transform_core.h: BoundingBox enum

* app/scale_tool.c: use the generic bounding box enum for X1, Y1, etc.

* app/shear_tool.[ch]: turned HORZ and VERT into a ShearType enum

-Yosh
1999-04-18 21:22:41 +00:00
Michael Natterer 9e1879d964 fixed a sensitive setting bug I introduced with the last change.
1999-04-18  Michael Natterer  <mitschel@cs.tu-berlin.de>

        * app/paintbrush.c: fixed a sensitive setting bug I introduced
        with the last change.

        * app/text_tool.c: added a toggle button which enables calling
        gDynText.

        * app/tool_options.c: the toggle callback does some more sensitive
        settings.
1999-04-18 18:55:49 +00:00
Michael Natterer 2d54cc6406 app/bucket_fill.c app/clone.c app/convolve.c app/flip_tool.c app/ink.c
1999-04-18  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/bucket_fill.c
	* app/clone.c
	* app/convolve.c
	* app/flip_tool.c
	* app/ink.c
	* app/paintbrush.c
	* app/transform_tool.c: remember all radio buttons in the
	ToolOptions structures. This enables arbitrary default values and
	gui feedback for the "toggle key" feature.
1999-04-17 23:18:43 +00:00
Michael Natterer c79944a449 Checked in wrong version before. 1999-04-12 18:09:55 +00:00
Michael Natterer 8dbd5f9b65 app/airbrush.c app/bezier_select.c app/blend.c app/brightness_contrast.c
1999-04-12  Michael Natterer  <mitschel@cs.tu-berlin.de>

        * app/airbrush.c
        * app/bezier_select.c
        * app/blend.c
        * app/brightness_contrast.c
        * app/bucket_fill.c
        * app/by_color_select.c
        * app/clone.c
        * app/color_balance.c
        * app/color_picker.c
        * app/convolve.c
        * app/crop.c
        * app/curves.c
        * app/ellipse_select.c
        * app/eraser.c
        * app/flip_tool.c
        * app/free_select.c
        * app/fuzzy_select.c
        * app/histogram_tool.c
        * app/hue_saturation.c
        * app/ink.c
        * app/iscissors.c
        * app/levels.c
        * app/magnify.c
        * app/move.c
        * app/paintbrush.c
        * app/pencil.c
        * app/posterize.c
        * app/rect_select.[ch]
        * app/text_tool.c
        * app/threshold.c
        * app/transform_tool.c

        * app/tools.[ch]
        * app/toolsF.h: again: all tools :(

        * app/Makefile.am
        * app/tool_options.[ch]
        * app/selection_options.h
        * app/tool_options_ui.h: new files.

        Ok, this time it's general enough for future extensions:

        - The tool options structures are organized like the gtk object
          system to allow derived tool options.
        - Renamed all create and reset functions to *_options_new() and
          *_options_reset() to reflect this.
        - Changed tools_register() again. Now it takes just a pointer to a
          ToolOptions structure.
        - Moved almost the entire tool options gui code to tool_options.c.
        - Visually separated the common selection options from the
          tool-specific ones. I'd like to do the same with opacity/paint
          mode in all paint tool options but I think this needs some more
          discussion.

        * app/histogram_tool.c: changed packing boxes, label alignments.

        * app/paintbrush.c: some more sensitive settings. The gradient
        feature can now be toggled with a button. Hopefully didn't break
        anything.
1999-04-12 17:55:06 +00:00
Michael Natterer f1b0a8835c app/airbrush.c app/bezier_select.c app/blend.c app/brightness_contrast.c
1999-04-08  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/airbrush.c
	* app/bezier_select.c
	* app/blend.c
	* app/brightness_contrast.c
	* app/bucket_fill.c
	* app/by_color_select.c
	* app/clone.c
	* app/color_balance.c
	* app/color_picker.c
	* app/convolve.c
	* app/crop.[ch]
	* app/curves.c
	* app/ellipse_select.c
	* app/eraser.c
	* app/flip_tool.c
	* app/free_select.c
	* app/fuzzy_select.c
	* app/histogram_tool.c
	* app/hue_saturation.c
	* app/ink.c
	* app/iscissors.c
	* app/levels.c
	* app/magnify.c
	* app/move.c
	* app/paintbrush.c
	* app/pencil.c
	* app/posterize.c
	* app/rect_select.[ch]
	* app/text_tool.[ch]
	* app/threshold.c
	* app/transform_tool.c

	* app/tools.[ch]
	* app/toolsF.h: in other words: all tools

	Implemented the "reset tool options" feature.
	- All tools register with a title string and a reset function now.
	- The tool options' variables have two related <var>_d (default)
	  and <var>_w (widget) variables to restore the default values.

	"Standardized" the tool options UI:
	- Put the stuff info a frame to give a hint that the dialog's
	  contents will change.
	- table layout, sensitive setting, spacings, borders, ...

	As I had them all in my emacs simultaneously, I couldn't resist to
	standardize the tools' *.c files declaration parts ;) Ansi stuff.
1999-04-08 22:25:54 +00:00
Asbjørn Pettersen 323fa245f0 don't use c++ comments 1999-04-03 18:46:11 +00:00
EST 1999 Adrian Likins 21b5cd4467 added the ability to select the gradient repeat mode from the gui. Made
Sun Mar 28 00:28:57 EST 1999 Adrian Likins <adrian@gimp.org>

        * app/paintbrush.c: added the ability to select the
        gradient repeat mode from the gui. Made the gradient
        length slider hopefully a bit more useful (ie, a
        more useful range)

-adrian
1999-03-28 05:27:34 +00:00
EST 1999 Adrian Likins 1436b4ef77 oops, forgot to make fade work again after the gradient stuff. Fixed.
Sun Mar 21 23:11:31 EST 1999  Adrian Likins <adrian@gimp.org>

        * app/paintbrush.c: oops, forgot to make fade work
        again after the gradient stuff. Fixed.

-adrian
1999-03-22 04:10:58 +00:00
EST 1999 Adrian Likins 7e28ed4ce3 app/paintbrush.c app/paint_core.c moved all the code for figuring out the
Thu Mar 18 19:35:48 EST 1999  Adrian Likins <adrian@gimp.org>

        * app/paintbrush.c
        * app/paint_core.c
        * app/paint_core.h: moved all the code for figuring out the
        paint_core->distance to color stuff to paint_core.[ch]. Updated
        paintbrush.c to use the new function. Also now can either loop
        thorugh the gradient (sawtooth, start->end, start->end or
        triangle start->end,end->start). Also mode for going
        thought the gradient once, forwards or backwards. None of these
        options are available from the gui or the PDB yet though.

-adrian
1999-03-19 00:42:27 +00:00
EST 1999 Adrian Likins 15da4abaf2 paintbrush_motion, added the ability to paint with the colors from a
Tue Mar 16 23:39:26 EST 1999 Adrian Likins <adrian@gimp.org>

        * app/paintbrush.c: paintbrush_motion, added the ability
        to paint with the colors from a gradient. In
        create_paint_options, added a scale for the length
        of the gradient to paint. Also added a PDB call.

        *  app/paintbrush.h, internal_procs.c: exported
         gimp_paintbrush_extended_gradient to the PDB


-adrian
1999-03-17 05:40:16 +00:00
Federico Mena Quintero 10bc5237a7 Updated gtk_toggle_button_set_state() to gtk_toggle_button_set_active() in
1999-01-15  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* Updated gtk_toggle_button_set_state() to
	gtk_toggle_button_set_active() in all the files.
1999-01-15 17:35:04 +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 d2ea549d27 stuff from patches/i18n by Daniel Egger
* app/*: stuff from patches/i18n by Daniel Egger

* app/channels_dialog.c: fixes minor buglets in the channels dialog

-Yosh
1998-12-16 00:37:09 +00:00
Marc Lehmann 42e2c63ce5 API-mega-break-it-all patch part one: removed the unnecessary PDB_IMAGE
* airbrush.c, blend.c, brightness_contrast.c, bucket_fill.c
        by_color_select.c, channel_ops.c, clone.c, color_balance.c
        color_picker.c, convolve.c, curves.c, desaturate.c, edit_cmds.c
        equalize.c, eraser.c, flip_tool.c, fuzzy_select.c,
        gimage_mask_cmds.c histogram_tool.c, hue_saturation.c, invert.c,
        levels.c, pencil.c paintbrush.c, perspective_tool.c, posterize.c,
        rotate_tool.c scale_tool.c, shear_tool.c, text_tool.c, threshold.c:

        API-mega-break-it-all patch part one: removed the unnecessary
        PDB_IMAGE argument from many functions.

Affected functions:
gimp_airbrush gimp_blend gimp_brightness_contrast gimp_bucket_fill
gimp_by_color_select gimp_channel_ops_offset gimp_clone gimp_color_balance
gimp_color_picker gimp_convolve gimp_curves_explicit gimp_curves_spline
gimp_desaturate gimp_edit_clear gimp_edit_copy gimp_edit_cut gimp_edit_fill
gimp_edit_paste gimp_edit_stroke gimp_equalize gimp_eraser
gimp_eraser_extended gimp_flip gimp_fuzzy_select gimp_histogram
gimp_hue_saturation gimp_invert gimp_levels gimp_paintbrush
gimp_paintbrush_extended gimp_pencil gimp_perspective gimp_posterize
gimp_rotate gimp_scale gimp_selection_float gimp_selection_layer_alpha
gimp_selection_load gimp_shear gimp_threshold
1998-11-13 20:40:00 +00:00
jaycox b7d8e6ea91 Modified Files: ChangeLog app/Makefile.am app/airbrush.c app/app_procs.c
Modified Files:
 	ChangeLog app/Makefile.am app/airbrush.c app/app_procs.c
 	app/brush_select.c app/brush_select.h app/clone.c
 	app/colormaps.c app/commands.c app/convolve.c app/devices.c
 	app/eraser.c app/gimage_mask.c app/gimpobject.h app/ink.c
 	app/internal_procs.c app/paint_core.c app/paint_core.h
 	app/paintbrush.c app/pencil.c app/preferences_dialog.c
      Minor modifications to support new brush functionality

 Added Files:
 	app/brush_edit.c app/brush_edit.h app/gimpbrush.c
 	app/gimpbrush.h app/gimpbrushgenerated.c
 	app/gimpbrushgenerated.h app/gimpbrushlist.c
 	app/gimpbrushlist.h
      new files to support vector generated brushes and
      reorganization/objectification of the brush class

 Removed Files:
 	app/brushes.c app/brushes.h
    Obsoleted by gimpbrush.? and gimpbrushlist.?

 ----------------------------------------------------------------------
1998-07-09 05:31:06 +00:00
Owen Taylor f6a5a9383c app/Makefile.am app/app_procs.c app/brushes.c app/commands.[ch]
Fri Jun  5 22:37:40 1998  Owen Taylor  <otaylor@gtk.org>

	* app/Makefile.am app/app_procs.c app/brushes.c app/commands.[ch]
	  app/disp_callbacks.c app/gdisplay.[ch] app/gimprc.c
	  app/interface.[ch] app/menus.c app/paint_core.[ch]
	  app/paintbrush.c app/palette.c app/scroll.c
	  app/tools.[ch] app/undo.c

	- Added two new dialogs - input devices; (GtkInputDialog)
	  and DeviceStatus - which shows the tool/color for
	  each device.

	- Added device_status_update() call that gets called
	  whenever the tool/color etc. are changed.

	- Added ~/.gimp/devicerc file to store settings

	- Code to draw cursor on canvas for non XFree86 XInput
	  where device can't control cursor and extended input
	  device simultaneously.

	- Changed input handling so that we always use the pointer
	  position from the device, not from gdk_input_window_get_cursor,
	  so that motion and cursor position sync.

	- Various changes so things work with non-integer coordinates

	- Pay attention to pressure and tilt in basic tool support.

        - New paint mode PRESSURE that changes the brush based on
	  the brush pressure

	- Left in a few XInput hacks that should be removed, but I no longer
	  remember what they are.
1998-06-06 03:49:01 +00:00
Manish Singh 84abd5d700 Have fun recompiling gimp everyone. It's the great FSF address change!
-Yosh
1998-04-13 05:44:11 +00:00
Adrian Likins 9132cbb666 appied most of gimp-hpux-980316-0.patch from ???? Mostly added static's
* blend.c brightness_contrast.c brush_select.c brushes.c
          bucket_fill.c by_color_select.c channels_dialog.c
          color_balance.c convolve.c crop.c curves.c eraser.c fileops.c
          frac.c gradient.c histogram_tool.c hue_saturation.c
          image_render.c indexed_palette.c layers_dialog.c levels.c
          move.c paintbrush.c pattern_select.c pencil.c
          perspective_tool.c posterize.c rect_select.c scale_tool.c
          threshold.c tips_dialog.c:
                 appied most of gimp-hpux-980316-0.patch
        from ???? Mostly added static's here and there
         and casting stuff.

        * app/indexed_palette.c: made dialog non-resizeable

-adrian
1998-03-18 22:35:31 +00:00
Manish Singh 0fc01db1ed Fixed a stoopid speeling erorr.
-Yosh
1998-03-01 06:06:19 +00:00
Manish Singh 2afd3ffb75 From the Changelog:
* Makefile.am: don't do docs generation by default

        * configure.in: -lXt for webbrowser plugin

        * libgimp/gimp.c
        * libgimp/gimpprotocol.c
        * libgimp/gimptile.c
        * libgimp/gimpwire.c
        * app/plug_in.c: applied memory leak patch from Mattias Gronlund

        * app/eraser.c
        * app/eraser.h
        * app/internal_procs.c
        * app/paintbrush.c
        * app/paintbrush.h: incremental modes for eraser and paintbrush,
        as well as a "hard eraser"

        * plug-ins/ifscompose/ifscompose.c: pixmap visual fixups

-Yosh
1998-03-01 01:18:45 +00:00
Manish Singh 2ce0e15023 Misc changes for .18
* app/indexed_palette.c: fix for wrong color selected in indexed
        palette dialog

        * app/xcf.c: don't crash on bad input (0 byte files)

        * app/plug_in.h
        * app/plug_in.c: fixes Gimp's most obscure bug. Failed plugin
        queries are handle correctly now

        * app/commands.c: added marching ants speed to preferences

        * plug-ins/tiff/tiff.c: correction for inversion for MINISWHITE
        images without alpha

        * plug-ins/pcx/pcx.c: updated to new version

        * app/paint_funcs.h: changed OPAQUE and TRANSPARENT to
        OPAQUE_OPACITY and TRANSPARENT_OPACITY to avoid possible
        conflicts. All affects .c files changed.

-Yosh
1998-01-25 01:24:46 +00:00
scott c267c55bbe Rewrite to make drawables (layers, channels, layer masks) into GtkObjects.
--sg
1998-01-22 07:02:57 +00:00
Elliot Lee 32cefec8f7 Initial revision 1997-11-24 22:05:25 +00:00