Commit Graph

51 Commits

Author SHA1 Message Date
Sven Neumann ed81308375 movements restricted to 45 degrees (Ctrl+Alt) feel more natural now
--Sven
1999-08-14 12:34:08 +00:00
Tor Lillqvist 933b866166 Define ROUND(), RINT(), SQR(), G_PI and G_PI_4. The latter two will
* app/appenv.h: Define ROUND(), RINT(), SQR(), G_PI and
	G_PI_4. The latter two will presumably eventually be in
	GLib. RINT() calls rint() if we have it, otherwise adds 0.5 and
	calls floor().

	* app/*.c: Remove the multiple identical definitions of M_PI. Use
	G_PI instead of M_PI. Remove ROUND() and rint() definitions. Use
	RINT() instead of rint().
1999-08-04 23:22:29 +00:00
MEST 1999 Sven Neumann 33167e4c37 Restrict to horizontal/vertical blend when modifiers are pressed.
Mon Jul 26 20:11:01 MEST 1999  Sven Neumann <sven@gimp.org>

        * app/blend.c: Restrict to horizontal/vertical blend when modifiers
        are pressed.

--Sven
1999-07-26 18:13:10 +00:00
Michael Natterer a4c1e8a557 new ui for the "Layer Offset" dialog.
1999-07-22  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/channel_ops.[ch]: new ui for the "Layer Offset" dialog.

	* app/channels_dialog.c
	* app/layers_dialog.c: major code cleanup: Folded some callbacks
	into common ones, "widget" instead of "w", indentation, ...

	* app/commands.c
	* app/interface.[ch]
	* app/global_edit.c: the query boxes must be shown by the caller
	now. There's no need to split up the string for the message box
	manually as the Gtk 1.2 label widget handles newlines corectly.
	Added the "edge_lock" toggle to the "Shrink Selection" dialog.
	Nicer spacings for the query and message boxes.

	* app/ink.c: tried to grab the pointer in the blob preview but
	failed. Left the code there as a reminder (commented out).

	* app/menus.c: reordered <Image>/Select.

	I was bored and grep-ed the sources for ancient or deprecated stuff:

	* app/about_dialog.[ch]
	* app/actionarea.[ch]
	* app/app_procs.c
	* app/brush_edit.c
	* app/brush_select.c
	* app/color_select.c
	* app/convert.c
	* app/devices.c
	* app/gdisplay.c
	* app/gdisplay_ops.c
	* app/histogram_tool.[ch]
	* app/info_window.c
	* app/install.c
	* app/ops_buttons.c
	* app/palette.c
	* app/palette_select.c
	* app/paths_dialog.c
	* app/pattern_select.c
	* app/resize.c
	* app/scale_toolc.c
	* app/text_tool.c:
	s/container_border_width/container_set_border_width/g,
	s/sprintf/g_snprintf/g, replaced some constant string lengths with
	strlen(x).

	* app/bezier_select.c
	* app/blend.c
	* app/boundary.c
	* app/errors.[ch]
	* app/free_select.c
	* app/gimpbrushlist.c
	* app/gimprc.c
	* app/iscissors.c
	* app/main.c
	* app/patterns.[ch]
	* app/text_tool.c: namespace fanaticism: prefixed all gimp error
	functions with "gimp_" and formated the messages more uniformly.

	* app/gradient.c
	* app/gradient_select.c: same stuff as above for the ui
	code. There are still some sub-dialogs which need cleanup.

	Did some cleanup in most of these files: prototypes, removed tons
	of #include's, i18n fixes, s/w/widget/ as above, indentation, ...
1999-07-22 16:21:10 +00:00
MEST 1999 Sven Neumann 27d47091bb give user feedback on the threshold use an optionmenu for the gradient
Tue Jul  6 19:58:48 MEST 1999 Sven Neumann <sven@gimp.org>

        * app/fuzzy_select.c: give user feedback on the threshold
        * app/paintbrush.c: use an optionmenu for the gradient type
        instead of using 4 radiobuttons
        * app/blend.c: indentation paranoia

        Hopefully I have merged in Michaels changes correctly ...

--Sven
1999-07-06 18:13:59 +00:00
Michael Natterer 1058f41dab app/airbrush.c app/blend.c app/bucket_fill.c app/clone.c app/convolve.c
1999-07-06  Michael Natterer  <mitschel@cs.tu-berlin.de>

        * app/airbrush.c
        * app/blend.c
        * app/bucket_fill.c
        * app/clone.c
        * app/convolve.c
        * app/dodgeburn.c
        * app/eraser.c
        * app/ink.c
        * app/paintbrush.c
        * app/pencil.c
        * app/smudge.c: get opacity/paint mode from the current context
        (currently always the user context).

        * app/gimage_mask.c: the "stroke" command uses the paintbrush's
        settings if the current context is the user context and we are in
        per-tool paint options mode.

        * app/context_manager.[ch]
        * app/paint_options.h
        * app/preferences_dialog.c
        * app/tool_options.c
        * app/tools.c: moved the global/per-tool paint options switching
        to the context manager. The tool options themselves only contain
        the widgets for them now. This should fix the segfaults happening
        in per-tool mode.
	Removed the disclaimer from the prefs. dlg. as it seems to work
	now. The impl. in the context manager however is still a hack.

        * app/brush_select.c
        * app/brushes_cmds.c
        * tools/pdbgen/pdb/brushes.pdb: same as above.

        * app/lc_dialog.c: minimal code reduction. No functionality changed.
1999-07-06 15:18:25 +00:00
Michael Natterer a60b2c2f02 the Tool structure is now allocated by a common constructor which sets
1999-07-02  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/[all tools]: the Tool structure is now allocated by a common
	constructor which sets default values and provides default tool
	action functions. To get rid of much code duplication there should
	be a object hierarchy of tools.

	* app/context_manager.c
	* app/tools.[ch]: create and destroy private contexts for the
	paint tools on startup and exit. They are not used yet.

	* app/interface.c
	* app/menus.c
	* app/tools.h: num_tools is now exported in tools.h

	* app/commands.c
	* app/gdisplay.c
	* app/menus.c: made "Toggle Selection" a toggleable menu item.
1999-07-02 17:40:10 +00:00
Michael Natterer c456ba93ba app/[all tool related files] app/commands.c app/disp_callbacks.c
1999-06-26  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/[all tool related files]
	* app/commands.c
	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/gimage.c
	* app/interface.c: hopefully fixed the bugs that appeared with my
	last fix. And some more changes...

	- Slightly changed the conditions which cause the tools to be
	  re-initialized on button_press events and the global
	  initialisation functions.
	- The dialog tools now explicitly set tool->gdisp_ptr so they can
	  be properly hidden on display deletion.
	- Create the crop info dialog only once and avoid ugly redraw bugs
	  by blocking the sizeentries' signal when initializing them.
	- Standardized the tools_new_<tool>() functions. They are
	  scheduled to be moved to a common constructor in tools.c
	- Various stuff...
1999-06-26 11:16:47 +00:00
Michael Natterer f1b5e1ae47 namespace cleanups.
1999-06-21  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/context_manager.c: namespace cleanups.

	* app/commands.[ch]
	* app/menus.c: moved the "Toggle Selection" menu entry to "View",
	sprinkled some separators and made the layers/channels/paths popup
	menus consistent with Tigert's last ops buttons change.

	* app/fileops.c
	* app/plug_in.c: check for gdisplay_active() returning NULL in
	some more places.

	* app/[all tool related files]:

	- Turned the ToolAction and ToolState #define's into typedef'ed
	  enums, so the compiler can do some more sanity checking.
	- Removed one more unused global variable "active_tool_layer".
	- Removed some #include's from tools.c.
	- Standardized the individual tools' structure names.
	- Moved showing/hiding the tool options to separate functions.
	- Stuff...

	* app/commands.c
	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/tools.c: fixed the segfaults which happened when the image
	of one of the tools which have dialogs (levels/posterize/...) was
	deleted. My approach was to do stricter sanity checking and to set
	some gdisplay pointers correctly where appropriate, so I can't
	tell exactly where the bug was.
	The curves tool now(??) updates on every _second_ display change
	only, which is really obscure.
	Finding/changing the display to operate on should definitely be
	done by connecting to the user context's "display_changed"
	signal.

	* app/gimpset.c: emit the "remove" signal _after_ removing the
	pointer from the set. If this was not a bug but a feature, please
	let me know, we'll need two signals then.
1999-06-21 22:12:07 +00:00
Michael Natterer dcfb450b25 app/[all files with resolution info] libgimp/gimp.h libgimp/gimpimage.c
1999-05-22  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/[all files with resolution info]
	* libgimp/gimp.h
	* libgimp/gimpimage.c
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimpunit.[ch]
	* plug-ins/newsprint/newsprint.c
	* plug-ins/pgn/png.c
	* plug-ins/tiff/tiff.c: double instead of float for all resolution
	and unit-factor variables.

	* app/commands.c
	* app/crop.c
	* app/interface.c
	* app/layers_dialog.c
	* app/move_tool.c
	* app/resize.c
	* app/rotate_tool.c
	* app/scale_tool.c: pass the image's unit *and* gdisp->dot_for_dot
	to all functions which create sizeentries. Never create a
	sizeentry with UNIT_PIXEL but with the image's unit and set it's
	unit to UNIT_PIXEL after creation if dot_for_dot is on.
	This way the image's unit can always be picked from the menu
	without selecting "More...".

	* app/interface.c: made the query_*_box() functions use the
	ActionArea.

	* plug-ins/gimpunitmenu.c: GTK_WIN_POS_MOUSE for the unit
	selection dialog.
1999-05-22 17:56:35 +00:00
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
Sven Neumann d342563d60 Moved from toggle_key_func to modifier_key_func.
--Sven
1999-04-27 21:06:00 +00:00
Sven Neumann 8b46a4f9f5 Toggable tools!
I hope I haven't broken too much ;-)


--Sven
1999-04-27 02:09:03 +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
Sven Neumann ff2c915a40 More cosmetic stuff. Getting used to the new tool_options ... ;-)
--Sven
1999-04-20 19:23:38 +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 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
Manish Singh d6116b8d2c new file (from pdbgen)
* text_tool_cmds.c: new file (from pdbgen)

* Makefile.am: add new file, use AM_CPPFLAGS instead of CPPFLAGS

* internal_procs.c: register pdbgened text_tool procs

* text_tool.c: remove PDB stuff, export text_render and
text_get_extents and SizeType and SUPERSAMPLE symbols

* text_tool.c: remove PDB stuff

* blend.[ch]
* bucket_fill.[ch]
* clone.[ch]
* convolve.[ch]: export some enums

* channel.h
* paint_core.h: #define->enum

* channel.c
* gimpparasite.c
* parasitelist.c
* pixel_processor.c: warning cleanup

* convert_cmds.c
* paths_cmds.c: slight pdbgen changes

-Yosh
1999-04-10 04:54:34 +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
Sven Neumann 77f4d4abec More unit/resolution stuff (most if it from Michael).
--Sven
1999-03-03 17:48:29 +00:00
GMT 1999 Adam D. Moss 64a6d4571d app/blend.c app/bucket_fill.c app/convert.c app/crop.c app/cursorutil.c
Sun Jan 17 16:56:25 GMT 1999 Adam D. Moss <adam@gimp.org>

        * app/blend.c app/bucket_fill.c app/convert.c app/crop.c
        app/cursorutil.c app/cursorutil.h app/dialog_handler.c
        app/dialog_handler.h app/fuzzy_select.c app/gdisplay.c
        app/gimage_cmds.c app/gimpimage.c app/scroll.c
        app/transform_core.c app/xcf.c

	Hourglasses also apply to all registered dialogs.  Hourglasses
	added in a couple more important places.  New hack lets
	hourglasses be added and automagically removed again when
	gimp/gtk re-enters the idle loop.
1999-01-17 17:03:54 +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
GMT 1999 Austin Donnelly d8be79f036 Bit of a large checkin this - it's basically three things: 1 - GimpModules
Sun Jan 11 00:24:21 GMT 1999  Austin Donnelly  <austin@greenend.org.uk>

	Bit of a large checkin this - it's basically three things:
	  1 - GimpModules using gmodules to dynamically load and
	       initialise modules at gimp start of day.
	  2 - Color selectors now register themselves with a color
	       notebook.
	  3 - progress bars have been cleaned up a bit, so now have
	       progress indictations on all transform tool and gradient
	       fill operations.  Not done bucket fill, but that seems to
	       be the next candidate.

	New directories:
	* modules/: new directory for dynamically loadable modules.

	New files:
	* modules/.cvsignore
	* modules/Makefile.am
	* modules/colorsel_gtk.c: GTK color selector wrapped up as a
	    color selector the gimp can use.

	* app/gimpprogress.[ch]: progress bars within gimp core, either as
	    popups, or in the status bar.  This is mainly code moved out
	    of plug-in.c

	* app/color_notebook.[ch]: color selector notebook, implementing
	    very similar interface to color_select.h so it can be used as
	    a drop-in replacement for it.

	* libgimp/color_selector.h: API color selectors need to implement
	    to become a page in the color_notebook.

	* libgimp/gimpmodule.h: API gimp modules need to implement to be
	    initialised by gimp at start of day.

	Modified files:
	* Makefile.am: add modules/ to SUBDIRS
	* libgimp/Makefile.am: install gimpmodule.h and color_selector.h
	* app/gimprc.[ch]: recognise module-path variable.
	* gimprc.in: set module-path variable to something sensible
	    (currently "${gimp_dir}/modules:${gimp_plugin_dir}/modules").
	* app/Makefile.am: build color notebook and gimpprogress
	* app/app_procs.c: register internal GIMP color selector with
	    color notebook.
	* app/asupsample.c: call progress function less frequently for
	    better performance.
	* app/asupsample.h: progress_func_t typedef moved to gimpprogress.h
	* app/blend.c: make callbacks to a progress function
	* app/color_area.c: use a color notebook rather than a color selector
	* app/color_panel.c: ditto
	* app/color_select.c: export color selector interface for notebook
	* app/color_select.h: color_select_init() prototype
	* app/flip_tool.c: flip the image every time, rather than every
	    second click.
	* app/interface.c: move progress bar stuff out to
	    gimpprogress.c.  Make the code actually work while we're at it.
	* app/interface.h: move prototypes for progress functions out to
	    gimpprogress.h
	* app/plug_in.c: load and initialise modules (if possible). Move
	    progress bar handling code out to gimpprogress.c
	* app/plug_in.h: keep only a gimp_progress * for each plugin, not
	    a whole bunch of GtkWidgets.
	* app/scale_tool.c
	* app/rotate_tool.c
	* app/shear_tool.c
	* app/perspective_tool.c: progress bar during operation.
	    De-sensitise the dialog to discourage the user from running
	    two transforms in parallel.
	* app/transform_core.c: recalculate grid coords when bounding box
	    changes.  Only initialise the action area of the dialog once,
	    to avoid multiple "ok" / "reset" buttons appearing.  Undraw
	    transform tool with correct matrix to get rid of handle
	    remains on screen.  Call a progress function as we apply the
	    transform matrix.  A few new i18n markups.  Invalidate
	    floating selection marching ants after applying matrix.
	* app/transform_core.h: transform_core_do() takes an optional
	    progress callback argument (and data).
	* plug-ins/oilify/oilify.c: send progress bar updates after every
	    pixel region, not only if they processed a multiple of 5
	    pixels (which was quite unlikely, and therefore gave a jerky
	    progress indication).
1999-01-11 00:57:33 +00:00
GMT 1999 Adam D. Moss bf0dbb2018 Most lengthy UI-blocking operations now put up an hourglass so the user
Sun Jan 10 23:31:45 GMT 1999 Adam D. Moss <adam@gimp.org>

	* app/blend.c app/bucket_fill.c app/convert.c app/crop.c
	app/cursorutil.c app/cursorutil.h app/fuzzy_select.c
	app/gdisplay.c app/gdisplay.h app/gimage_cmds.c
	app/gimpimage.c app/transform_core.c app/xcf.c:

	Most lengthy UI-blocking operations now put up an
	hourglass so the user can see that GIMP is working.
	Let me know if there are other vital cases.
1999-01-10 23:36:29 +00:00
GMT 1999 Andy Thomas d2e598739c app/blend.c plug-ins/script-fu/script-fu.c
Mon Jan  4 23:21:56 GMT 1999 Andy Thomas <alt@picnic.demon.co.uk>

	* app/blend.c
	* plug-ins/script-fu/script-fu.c

	A patch from Federico to add a spiral gradient type. The patch
	has been slightly modified to allow both clockwise and anticlockwise
	spirals and the numbers used to represent these types of gradients
	have been made to follow on from currently allocated numbers (I hope
	this will not break any scripts).
1999-01-04 23:56:37 +00:00
Manish Singh 12085bcb60 remove bogus constification
* app/blend.c: remove bogus constification

* po/sv.po: updates from Tomas Ogren <stric@ing.umu.se>

-Yosh
1999-01-02 03:30:04 +00:00
Manish Singh 49cbf0630d i18n markings from Daniel Egger (mostly removal of tags around PDB stuff),
* i18n markings from Daniel Egger (mostly removal of tags around
PDB stuff), some constification

* I went on a sprintf pogrom. Use g_snprintf or g_strdup_printf
where applicable, to prevent overflows, especially with filenames
and translated strings. suid gimp is now more secure. ;)

-Yosh
1998-12-25 18:22:01 +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 971bc712b1 allow the use of DIVIDE_MODE.
* app/blend.c: allow the use of DIVIDE_MODE.
1998-11-15 12:58:37 +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
EDT 1998 Adrian Likins 25721826d0 Lots of ii8n stuff here and some additions to the de.po. Applied
Wed Oct 14 17:46:15 EDT 1998 Adrian Likins <adrian@gimp.org>

        * app/*, po/de.po, de/POTFILES.in, libgimp/gimpintl.h:
        Lots of ii8n stuff here and some additions to the de.po.
        Applied gimp-egger-981005-1 ,gimp-egger-981006-1,
        gimp-egger-981007-1, gimp-egger-981008-1,
        gimp-egger-981009-1.patch, gimp-egger-981010-1.patch

        * plug-in/guillotine/guillotine.c: added the coordinates
        of the split images from the original image to the title.
        ie foo.jpg (0,0) for the image in the topleft.

        * plug-in/script-fu/scripts/neon-logo.scm,
        perspective-shadow.scm, predator.scm,rendermap.scm,
        ripply-anim.scm, select_to_image.scm,swirltile.scm,
        xach-effect.scm: updated scripts to use new script-fu stuff

wooo boy! a big un!

	in testing this, it looks like some of the po files are busted.
but the code stuff seems okay.

-adrian
1998-10-14 23:23:52 +00:00
BST 1998 Andy Thomas dbb801e2d6 app/blend.c app/brush_select.c app/brush_select.h app/bucket_fill.c
Sat Sep 19 01:19:18 BST 1998 Andy Thomas <alt@picnic.demon.co.uk>

	* app/blend.c app/brush_select.c app/brush_select.h app/bucket_fill.c
	app/gimpbrushlist.c app/internal_procs.c app/plug_in.c libgimp/gimp.c
	libgimp/gimp.h libgimp/gimpmenu.c libgimp/gimptile.c
	plug-ins/gfig/gfig.c

	Infrastructure to allow gimp dialogs to be controlled from plugins.
	Brush dialog can now be invoked multiple times. Dialogs invoked
	via plugins do not control the active brush (dialog only used for
	selections).
	New gimp_interactive_selection_brush() function to popup dialog
	Example of usage in the gfig plugin.
	Other dialogs should be able to use this method of invocation.
1998-09-19 00:40:27 +00:00
scott 85393964a0 Another tile tweak. This one eliminates tile levels (which add
bookkeeping without being used).  Made copy_region more intelligent on
when to use tile sharing; some changes made to pixel_regions to
facilitate this.  Fixed a refcount problem with xcf load and probably
a few other bugs that I've forgotten about.  Added a sanity check in
set_undo_tiles to help with a problem larry is reporting with airbrush
and xinput.  --sg
1998-08-15 19:17:36 +00:00
scott 0ffabfe95b Bunch of tile-related stuff. 1998-08-11 17:35:34 +00:00
Sven Neumann 426322f47b More statusbar stuff.
--Sven
1998-07-26 21:49:42 +00:00
scott 9ccef4a648 Tile overhaul. Mostly minor changes, except for tile*.*, which are
barely recognizable.
1998-07-10 02:43:12 +00:00
scott 217b494f52 Makefile.am blend.c boundary.c by_color_select.c channel.c color_picker.c
* Makefile.am blend.c boundary.c by_color_select.c channel.c
* color_picker.c drawable_cmds.c fuzzy_select.c gimpimage.c
* image_render.c ink.c layer.c main.c paint_core.c paint_funcs.c
* pixel_region.c plug_in.c tile.c tile.h tile_cache.c tile_manager.c
* tile_swap.c transform_core.c undo.c xcf.c: split off tile_pvt.h
from tile.h so changes in the tile implementation don't force a
complete recompile.
--sg
1998-07-08 06:41:58 +00:00
scott 27e90260db Incorporated Adam's copy-on-write patches. Seems to not break anything,
Incorporated Adam's copy-on-write patches.  Seems to not break
anything, but I'm sure they do somewhere. --sg
1998-07-02 23:29:44 +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
Manish Singh 5cc38d44a2 divide paint mode stuff
-Yosh
1998-06-09 04:04:43 +00:00
Manish Singh 1d95a05af0 gimp_message. libgimp also overrides g_message for all plugins. Converted
* redid the error message handling. g_message now calls message_box or prints
to console depending on whether the no_interface is set or not. gimp-message
is also exported to the PDB as a wrapper to g_message, and libgimp has a new
API: gimp_message. libgimp also overrides g_message for all plugins. Converted
lots of messages in app/* to g_message. Made script-fu a little friendlier.

* updated the regex code from grep 2.2

* said goodbye to the old script-fu logo in script-fu.h

-Yosh
1998-05-28 09:03:57 +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
Sven Neumann abdc50068d Applied gimp-simon-980331-0. Cosmetic change to the Layers&Channels-dialog.
I will hopefully finish my changes to the dialog tonight and will upload a
new version of my patch. Could you (the core developers) please make up your
mind whether to include it in 1.0 or not...

The Blend-Tool dialog now changes the repeat_mode_menu to insensitive when
the Gradient-Type is one of the Shapeburst-types.


--Sven
1998-04-01 18:48:34 +00:00
EST 1998 Matthew Wilson 7dcd8e85ab app/gimage.c app/tools.c Added a field in the Tools struct, preserve.
Tue Mar 31 02:21:15 EST 1998 Matthew Wilson <msw@gimp.org>

	* app/gimage.c
	* app/tools.c
	* app/tools.h: Added a field in the Tools struct, preserve.
	During gimage_dirty, if this flag is not set the tool will be
	reset.  This is good for tools that keep a copy of the image
	in cache for local manipulation like transform_core.

	* app/bezier_select.c
	* app/blend.c
	* app/brightness_contrast.c
	* app/bucket_fill.c
	* app/color_balance.c
	* app/color_picker.c
	* app/crop.c
	* app/curves.c
	* app/ellipse_select.c
	* app/free_select.c
	* app/histogram_tool.c
	* app/hue_saturation.c
	* app/levels.c
	* app/move.c
	* app/paint_core.c
	* app/posterize.c
	* app/rect_select.c
	* app/text_tool.c
	* app/transform_core.c: Set the preserve flag to the correct
	values in the new functions and wrapped calls to functions that
	dirty the gimage to prevent tool restarts.

	* app/disp_callbacks.c
	* app/menus.c: Removed Nether's tool patch.

--phew.  Matt
1998-03-31 07:23:50 +00:00
Manish Singh 7cb1950fd7 M_PI madness...
-Yosh
1998-03-18 23:40:52 +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 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
People doing a 16 bpc version of gimp a07e23927d fixed div-by-zero when using custom gradients with offset 100
rayl@netrover.com
1997-12-15 00:21:15 +00:00