Commit graph

63 commits

Author SHA1 Message Date
Michael Natterer c73b233f8a app/color_select.c app/colormaps.[ch] removed unused global variables
2000-04-26  Michael Natterer  <mitch@gimp.org>

	* app/color_select.c
	* app/colormaps.[ch]
	* app/context_manager.c: removed unused global variables
	[foreground|background]_pixel and [old|new]_color_pixel.

	Initialize the colormap and visual stuff with GdkRGB instead of
	GtkPreview functions (which are deprecated).

	* app/[62 files]: removed #include's (started with colormaps.h and
	couldn't stop). Also ordered them consistently and did some small
	unrelated cleanups.
	Removed variuos <stdlib.h> et.al. but checked the files carefully
	before doing so. If I was too radical and you get warnings on your
	platform, please flame me or just put them back :)
2000-04-27 17:27:28 +00:00
Sven Neumann 763e495d06 cleaned up the messy spanish translation someone added
fixed compiler warnings, changed some gints to gbooleans

cleaned up namespace and documentation

updated libgimp documentation



--Sven
2000-04-22 19:46:23 +00:00
Garry R. Osgood 0b0742afdc app/bezier_select.c Closes the most recent bezier segfault report; about
2000-04-22 Garry R. Osgood <gosgood@idt.net>
* app/bezier_select.c
Closes the most recent bezier segfault report;
about plotting anchor points on- and off-image.
unable to cite because bugs.gnome.org is not
well. Andrew Thomas handled the only other
buglet I'm aware of at this time.
2000-04-22 18:48:51 +00:00
BST 2000 dfb76fdb64 app/bezier_select.c
Sat Apr 22 14:01:06 BST 2000 <alt@gimp.org>

	* app/bezier_select.c

	Fixed problem pointed out by Garry R. Osgood (manipulating
	control points where curve is closed). Thanks
	again Garry for pointing it out.
2000-04-22 13:09:44 +00:00
Andy Thomas a677128f0a Sun Apr 2 16:55:47 BST 2000
* app/bezier_select.c

	Curves/Path tool
	Fixed propblem with deleting points. You can now delete the first
	and last point on any open curve (as well as mid-points).

	Also fixed some problems where some points would leave the markers
	on screen after they had been deleted.

	Note you have always been able to delete whole curves by pressing
	the "shift" key when over a point to be deleted in "remove mode".
2000-04-02 16:33:28 +00:00
Garry R. Osgood b9afb940c2 gimp/app/bezier_select.c No fooling, #6903 was not that hard to close; in
2000-04-01 Garry R. Osgood <gosgood@idt.net>

* gimp/app/bezier_select.c
No fooling, #6903 was not that hard to close;
in bezier_edit_point_on_curve(),when point
deletion reduces a curve below the minimum
with which the implementation can cope (2
anchors, four controls) we put it out of its
misery with an invocation of delete_whole_curve().
2000-04-02 01:33:26 +00:00
Garry R. Osgood 3baaaaa33b gimp/app/bezier_select.c in bezier_add_point(), when a BEZIER_MOVE type
2000-03-26 Garry R. Osgood <gosgood@idt.net>

* gimp/app/bezier_select.c
in bezier_add_point(), when a BEZIER_MOVE type
point is being added to a path with at least
one extant segment, the point is re-typed
to a BEZIER_ANCHOR (which is old behavior)
and designated as the current anchor
(which is new behaviour). With this change,
motion events move the (second) control point
and indicia are properly updated. This closes
#6225.
2000-03-26 22:42:14 +00:00
Michael Natterer 723662a460 Makefile.am a proper naming scheme for all cursor files. Added zoom_in and
2000-03-01  Michael Natterer  <mitch@gimp.org>

	* Makefile.am
	* cursors/*: a proper naming scheme for all cursor files. Added
	zoom_in and zoom_out cursors.

	* app/bezier_select.c
	* app/by_color_select.c
	* app/cursorutil.[ch]
	* app/rect_select.c
	* app/scale.[ch]: changed according to the new cursor names. Some
	minor fixes.

	* app/magnify.[ch]: made the zoom_in/zoom_out toggle a proper
	tool_toggle and show cursors for the two modes.

	* plug-ins/print/print-util.c: patch from Robert Kravitz which
	fixes printing layers with alpha.
2000-03-01 19:32:41 +00:00
Sven Neumann 1cde0279ff Moved some functions out of paths_dialog.c into the new file
paths.c and did a general namespace cleanup:
s/PATHP/Path*/  s/PATHIMAGELISTP/PathList/ and friends.

Paths are now copied on image duplicate (fixes bug #5726).

Removed Path Tool and XInput Airbrush from the build and
renamed "Layers & Channels" to "Layers, Channels & Paths".

Applied patch from Wolfgang Hofer to xjt.c that enables loading
and saving of paths based on Andy's change explained below.


--Sven
2000-02-16 01:47:22 +00:00
Michael Natterer 4923047146 removed BOUNDS, MINIMUM and MAXIMUM. No need to include both <glib.h> and
2000-01-25  Michael Natterer  <mitch@gimp.org>

	* app/appenv.h: removed BOUNDS, MINIMUM and MAXIMUM. No need to
	include both <glib.h> and <gtk/gtk.h>.

	* app/*
	* tools/pdbgen/pdb/text_tool.pdb: s/BOUNDS/CLAMP/,
	same for MIN and MAX.

	* app/preferences_dialog.c: the "Check Size" widget was connected
	to the transparency_type variable.

	* plug-ins/common/sobel.c: removed definitions of MIN and ROUND.

	* libgimp/gimp.h: #include "gimplimits.h" and "gimpcolorspace.h".

	* plug-ins/*: don't include the two files.
2000-01-25 23:06:12 +00:00
Sven Neumann 2f445a6fc5 exchanged the big fat bigcirc cursors against a new one in the style of
the others


--Sven
2000-01-19 20:40:58 +00:00
GMT 1999 Andy Thomas 19e856f0f6 app/bezier_select.c
Thu Dec  2 23:49:17 GMT 1999 Andy Thomas <alt@gimp.org>

	* app/bezier_select.c

	Fixed bug number #3904. - [gimp-bug] no undo for path strokes.
	Undo menu item is now enabled correctly after the path has been
	stroked.
1999-12-02 23:57:31 +00:00
Sven Neumann 7427a53c95 Layer to Imagesize in C
--Sven
1999-11-27 14:00:26 +00:00
GMT 1999 Andy Thomas 70b0232405 app/bezier_select.c
Mon Nov 22 22:43:59 GMT 1999 Andy Thomas <alt@gimp.org>

        * app/bezier_select.c

        Stroking bezier paths made up of multiple segments
        now all get put in a single undo group.
1999-11-22 23:05:31 +00:00
Michael Natterer b3144e7ccc app_procs.c app/commands.[ch] app/interface.c app/menus.c app/session.c
1999-10-30  Michael Natterer  <mitch@gimp.org>

	* app_procs.c
	* app/commands.[ch]
	* app/interface.c
	* app/menus.c
	* app/session.c
	* app/tools.[ch]: namespace cleanups: changed the
	"tools_options_*" functions to "tool_options_*" and prefixed all
	dialog menu callbacks with "dialogs_*".
	Allow dropping a tool to the tool options dialog.

	* app/bezier_select.c: change the active tool using context
	functions.

	* app/dialog_handler.[ch]: replaced the uppercase datatype names
	by standard mixed upper/lowercase ones. Provide a function to
	register the fileload dialog instead of accessing it as global
	variable.

	* app/disp_callbacks.c: switch to the move tool using context
	functions. Fixed the drop color/pattern functions to convert the
	dropped thing to the dest. image's color space.

	* app/fileops.c: don't export the fileload dialog as global
	variable but register it with the dialog handler instead.

	* app/paths_dialog.[ch]: replaced all the uppercase struct names
	defined here by mixed upper/lowercase. Introduced a
	"set_menu_sensitivity" function like in layers/channels instead of
	calling single button on/off functions from various places.
	Added a menu entry for "Selection to Path".
1999-10-30 10:39:48 +00:00
Michael Natterer a74d52fbbf Use the context almost everywhere. 1999-10-26 18:27:27 +00:00
BST 1999 Andy Thomas 6e28558948 app/bezier_select.c app/edit_selection.c app/flip_tool.c app/gimage_mask.c
Mon Oct 18 21:24:47 BST 1999 Andy Thomas <alt@gimp.org>

	* app/bezier_select.c
	* app/edit_selection.c
	* app/flip_tool.c
	* app/gimage_mask.c
	* app/paths_dialog.c
	* app/paths_dialogP.h
	* app/undo.c
	* app/tools.h
	* app/tools.c

	1) Fixed some problems with the paths tool. Now the tool suboption
	"new point" is selected automatically when appropriate. Eg if you
	have the "add point" suboption selected and click  on a point
	not on the curve the "new point" option will become selected and the
	new point will be added.

	2) The "new point" option is defaulted to on when a new image is created	or a new image is selected from the image menu.

	3) Move and flip tool now effect the path if it is locked.

	4) Edit stroke now uses the currently selected tool as it should do
	when stroking.
1999-10-18 20:55:25 +00:00
Sven Neumann ba211f07f2 i18n patch from Daniel Egger
--Sven
1999-09-23 11:49:16 +00:00
Tor Lillqvist 6ef23d984f app/appenv.h New file. Includes <math.h>. Move G_PI, RINT(), ROUND() etc
1999-09-01  Tor Lillqvist  <tml@iki.fi>

* app/appenv.h
* libgimp/gimpmath.h: New file. Includes <math.h>. Move G_PI,
RINT(), ROUND() etc from app/appenv.h here, so plug-ins can
use them, too. Remove some commented-out old stuff in appenv.h.

* libgimp/gimp.h: Include gimpmath.h.

* libgimp/gimp.c (gimp_main): Win32: Don't install signal
handlers, we can't do anything useful in the handler ourselves
anyway (it would be nice to print out a backtrace, but that seems
pretty hard to do, even if not impossible). Let Windows inform the
user about the crash. If the plug-in was compiled with MSVC, and
the user also has it, she is offered a chance to start the
debugger automatically anyway.

* app/*several*.c: Include gimpmath.h for G_PI etc. Don't include
<math.h>, as gimpmath.h includes it.

* plug-ins/*/*many*.c: Include config.h. Don't include <math.h>.
Remove all the duplicated definitions of G_PI and rint(). Use
RINT() instead of rint().

* app/app_procs.[ch]: app_exit() takes a gboolean.

* app/batch.c
* app/commands.c
* app/interface.c: Call app_exit() with FALSE or TRUE.

* app/main.c (on_error): Call gimp_fatal_error. (main): Don't
install any signal handler on Win32 here, either.

* app/errors.c (gimp_fatal_error, gimp_terminate): Win32: Format
the message and call MessageBox with it.  g_on_error_query doesn't
do anything useful on Win32, and printf'ing a message to stdout or
stderr doesn't do anything, either, in a windowing application.
1999-09-01 20:30:56 +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
BST 1999 Andy Thomas 954151d601 ./app/clone.c ./app/airbrush.c ./app/bezier_select.c ./app/paintbrush.c
Fri Jul 23 00:01:05 BST 1999 Andy Thomas <alt@gimp.org>

	* ./app/clone.c
	* ./app/airbrush.c
	* ./app/bezier_select.c
	* ./app/paintbrush.c
	* ./app/eraser.c
	* ./app/convolve.c
	* ./app/smudge.c
	* ./app/dodgeburn.c
	* ./app/pencil.c
	* ./app/paint_core.c

	Better stroking of paths.
	First point in stroke path is now correctly painted (try stroking
	with a brush spacing of > 100.0 in gimp 1.0.x).
	Fixed problem in paint_core_interpolate() where points were
	missed in some cases.
	(BTW for those who do not know the brush spacing means as follows:-
	A spacing of 100.0 means brush strokes are placed next to each other
	exactly with no gaps or overlaps. A spacing of 200.0 means only
	alternate spaces are filled with the brush paint. A setting of 50.0
	means the brush paints positions overlap by 50% of the brush width.
	So 100.0 corresponds to exactly the brush width! It took me
	ages to figure this simple thing out!)
1999-07-22 23:11:46 +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
BST 1999 Andy Thomas 6c28319bc3 app/indicator_area.c app/paths_dialog.c app/tools_cmds.c app/airbrush.c
Mon Jul 19 23:40:56 BST 1999 Andy Thomas <alt@gimp.org>

	* app/indicator_area.c
	* app/paths_dialog.c
	* app/tools_cmds.c
	* app/airbrush.c
	* app/airbrush.h
	* app/bezier_select.c
	* app/paintbrush.c
	* app/paintbrush.h
	* app/clone.c
	* app/clone.h
	* app/eraser.c
	* app/eraser.h
	* app/convolve.c
	* app/convolve.h
	* app/smudge.c
	* app/smudge.h
	* app/dodgeburn.c
	* app/dodgeburn.h
	* app/internal_procs.c
	* plug-ins/sel2path/sel2path.c
	* tools/pdbgen/pdb/tools.pdb
	* tools/pdbgen/enums.pl

	1) Fixed the brushpreview popup problem where it remained onscreen
           if the mouse button was released in another GTK window that accepted
	   mouse events.

	2) Selection to path now works on all types of images (it should have
	   anyway).

	3) Fixed PDB so you can once again use the PDB interfaces to the clone
	   and airbrush tools.

	4) PDB Function to add a path to an image now adds it correctly.

	5) airbrush/paintbrush/clone/eraser/convolve New PDB functions that
           use the options dialogs settings (or sane defaults if option dialog
           not present)

	6) Added PDB functions for Smudge & DodgeBurn tools.

	7) Path stroke command (from the LCP dialog) can now use any of the
	   painting tools (airbrush/paintbrush/clone/eraser/convolve/smudge/
           dodgeburn except ink). Just have the tool selected when you
	   press the stroke button.
1999-07-19 22:42:49 +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 aef2a0331a added some functions. Still does nothing.
1999-06-19  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/gimpcontext.[ch]: added some functions. Still does nothing.

	* app/bezier_select.c
	* app/devices.c
	* app/tools.[ch]: removed global variable active_tool_type
	because it was always equal to active_tool->type.
1999-06-19 20:20:59 +00:00
Michael Natterer ac98e8fa81 app/Makefile.am app/lc_dialog.[ch] app/lc_dialogP.h new files
1999-06-06  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/Makefile.am
	* app/lc_dialog.[ch]
	* app/lc_dialogP.h
	* app/paths_dialogP.h: new files

	* app/channels_dialog.[ch]
	* app/layers_dialog.[ch]
	* app/layers_dialogP.h
	* app/paths_dialog.[ch]
	* app/menus.[ch]
	* app/file_new_dialog.c: modified

	- Moved the toplevel L&C dialog code to lc_dialog.[ch]. Only
	  these files need knowledge about how to create/update/...
	  the sub-dialogs, so the corresp. functions are defined in
	  lc_dialogP.h.
	- The popup menus are now created by menus.c. The command
	  callbacks are defined in [layers|channels|paths]_dialog.h.
	- Private functions to be used by "friend files" are defined in
	  [layers|paths]_dialogP.h.
	- Changed the order of the ops_buttons in the paths dialog to
	  match the order in the layers and channels dialogs.
	- The paint mode menu and preview stuff still needs to go out of
	  layers_dialog.[ch].
	- I'm not sure about the keybindings in the layer dialog's "Stack"
	  submenu because the list widget has it's own idea of PageUp/Down.
	- Hopefully fixed the update problem with new images by calling
	  lc_dialog_flush() after creating a new image.

	* app/app_procs.c
	* app/bezier_select.c
	* app/commands.c
	* app/floating_sel.c
	* app/gdisplay.c
	* app/gimage.c
	* app/gimage_mask.c
	* app/paint_core.c
	* app/preferences_dialog.c
	* app/transform_core.c
	* app/undo.c: changed #include's according to the new L&C file
	structure.
1999-06-06 17:26:51 +00:00
BST 1999 Andy Thomas 343de341e3 app/bezier_select.c app/paths_dialog.c
Sun Jun  6 14:19:08 BST 1999 Andy Thomas <alt@gimp.org>

	* app/bezier_select.c
	* app/paths_dialog.c

	Applied bezier/paths patches supplied by David LE CORFEC.
	These fix a couple of segv. problems.
1999-06-06 13:24:26 +00:00
Tor Lillqvist 4e886ad428 Check for mmap.
* configure.in: Check for mmap.

	* app/makefile.msc: Depend on gimpi.lib.

	* app/app_procs.c (app_init): Fix gccism: Allocate filenames (an
 	array with non-constant size) dynamically.

	* app/{datafiles,fileops,general,install,module_db,temp_buf}.c:
 	Include glib.h before standard headers, because of certain obscure
 	details related to compiling with gcc on Win32.

	(If you really want to know: glib.h defines he names of POSIXish
	(but non-ANSI) functions as prefixed with underscore, because
 	that's how they are named in the msvcrt runtime C library we want
 	to use. However, defining stat as _stat causes some problems if
 	done after including the mingw32 <sys/stat.h>. So, it's easiest to
 	include <glib.h> early.)

	* app/main.c: Use _stdcall and __argc, __argv with MSC, but
 	__attribute__((stdcall)) and _argc, _argv with gcc. Don't print
 	the "Passed serialization test" message on Win32. (It would open
 	up an otherwise unnecessary console window.)

	* app/paint_funcs.c (gaussian_blur_region): Don't use variable sum
 	until initialized.

	* app/{bezier_select,paths_dialog}.c: Include config.h and define
 	rint() if necessary.

	* app/plug_in.c: Use _spawnv, not spawnv, on Win32 and OS/2.
1999-05-28 17:47:17 +00:00
BST 1999 Andy Thomas 8fb9f79459 app/bezier_select.c app/bezier_selectP.h app/paths_dialog.c
Wed May 26 21:14:15 BST 1999 Andy Thomas <alt@gimp.org>

	* app/bezier_select.c
	* app/bezier_selectP.h
	* app/paths_dialog.c
	* app/rotate_tool.c
	* app/scale_tool.c
	* app/transform_core.c
	* app/transform_core.h
	* app/transform_tool.c
	* app/transform_tool.h

	Add option to show currently selected path to be displayed
	during the transform tool operations. (Note if > 1 path locked
	only the last selected path will be shown).

	Reduced flashing of control points during update drawing of paths.

	Fixed problem in transform tool rotate/scale when changing
	layer (used to get many gdk assert failures about "gc != NULL")
1999-05-26 20:36:33 +00:00
BST 1999 Andy Thomas df68aba3a7 Changed:- app/bezier_select.c app/bezier_selectP.h app/cursorutil.c
Thu May 13 22:41:26 BST 1999 Andy Thomas <alt@gimp.org>

	Changed:-
	* app/bezier_select.c
	* app/bezier_selectP.h
	* app/cursorutil.c
	* app/cursorutil.h
	* app/curves.c
	* app/paths_dialog.c

	New:-
	* cursor/mouse1_ap
	* cursor/mouse1_apmsk
	* cursor/mouse1_cp
	* cursor/mouse1_cpmsk
	* cursor/mouse1_mm
	* cursor/mouse1_mmmsk
	* cursor/mouse1_sel
	* cursor/mouse1_selm
	* cursor/mouse1_selmmsk
	* cursor/mouse1_selmsk
	* cursor/mouse1_selp
	* cursor/mouse1_selpmsk

	Paths changes:-
	Implemented multi-part paths.
	(Import the path (RMB in paths dialog brings menu up)
	http://www.picnic.demon.co.uk/tmp/gimp.path
	into a 600x256 (WxH) for an example).

	Can copy/paste paths.
	Fully custom cursors when using the Bezier tool. A number of bug
	fixes re boundary problems also fixed.

	Note that heavy use is made of the modifier keys in the bezier tool.
	MB1 inside a closed curve converts it to a selection. The modifiers
	change how the selection interacts with any current selection (in
	much the same way as the selection tool does).

	MB1 + ALT on control point will move a curve, if shift modifier active
	then single curve is moved.


	Curves:-

	In curves dialog you can now press MB1 + shift will add point to
	curves dialog corresponding to the current position in
	the currently selected channel. MB1 + CNTRL will add the point
	to all channels. (Thanks to Carey Bunks for the initial idea).
1999-05-13 22:53:40 +00:00
Michael Natterer c0b24ce90b app/channel.[ch] app/commands.c app/gimage_mask.[ch]
1999-05-07  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/channel.[ch]
	* app/commands.c
	* app/gimage_mask.[ch]
	* app/gimage_mask_cmds.c
	* tools/pdbgen/pdb/gimage_mask.pdb
	* app/interface.c: propagated the indepentent x/y values for
	shrink/grow/border to the interface but not yet to the PDB.

	* app/*_select.c
	* app/paint_funcs.[ch]: implemented indep. x/y feather. It seems
	that cut-and-paste was sufficient, but I didn't really understand
	the code. Jay, could you have a look at this please?

	If the feather/shrink/... amount is specified in pixels,
	everything behaves like before.
	I'm not sure how the built-in feather option of the selection
	tools should behave, so it still defaults to 'pixel' mode.
	Moved the static feather/shrink/... values from gimage_mask.c to
	commands.c because they belong to the interface.

	* app/text_tool_cmds.c
	* tools/pdbgen/pdb/text_tool.pdb: prepared for resolution
	support, but didn't enable it yet.

	* app/unit_cmds.c
	* tool/pdbgen/pdb/unit.pdb: fixed a help text.
1999-05-06 23:10:29 +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
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
BST 1999 Andy Thomas d5fad959c1 Changed:-
Tue Apr 13 22:17:23 BST 1999 Andy Thomas <alt@gimp.org>

	Changed:-

	* app/bezier_select.c
	* app/bezier_select.h
	* app/pathsP.h
	* app/paths_dialog.c
	* app/transform_core.c
	* app/transform_core.h
	* app/undo.c

	New:-

	* pixmap/locked.xpm

	New image. (Your welcome to improve upon it...)

	Paths can now be locked down for transformations. Click next to the
	paths preview and a icon will appear. This path will "locked" during
	transformations (via the transforms tool). Undo for these path
	transformations is also available.

	Fixed bug when creating a path for the first time when no paths dialog
	visible.
1999-04-13 21:50:28 +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
BST 1999 Andy Thomas 67dbf49bf2 Changed:-
Mon Apr  5 22:24:30 BST 1999 Andy Thomas <alt@gimp.org>

	Changed:-

	* app/bezier_select.c
	* app/bezier_selectP.h
	* app/paths_cmds.c
	* app/pathsP.h
	* app/paths_dialog.c
	* app/xcf.c
	* tools/pdbgen/pdb/paths.pdb

	New PDB functions.
	  gimp_path_get_point_at_dist (gets the x,y of a point a given distance
	                          along the curve & the normal at the point).
	  gimp_path_get_tattoo
	  gimp_get_path_by_tattoo


       	Paths now have tattoos (similar to the layer and image tattoos).

	* app/move.c
	* app/scroll.c

	Try to fix the problem where mouse events from the rulers get
	mixed up with those from the canvas causing guides & image dragging
	to "jump" around when the mouse enters the ruler areas.
1999-04-05 23:33:50 +00:00
jaycox ccfe47ad89 removed a c++ style comment
* app/ops_buttons.h: removed a c++ style comment

	* app/paint_funcs.c: applied Craig Wiegert's patch to fix
 	the rounding errors in the scaling code.

	* app/paint_funcs.c: Use a mutex lock in disolve pixels instead of
 	rand_r on linux systems since linux's rand_r appears to be broken.

	* app/bezier_select.c: applied Shuji Narazaki's patch that corrects
 	for layer offsets in bezier_stroke.
1999-03-19 03:19:18 +00:00
GMT 1999 Andy Thomas 7383354574 Changed:-
Fri Mar 12 21:30:57 GMT 1999 Andy Thomas <alt@gimp.org>

	Changed:-

	* app/bezier_select.c
	* app/paths_dialog.c

	Some code cleanups and bug fixes. Fixed problem with "copy" path
	producing very long names.

	Added functionality to import/export paths to files. (It was
	there before!)

	Also added some new bezier_stroke code that Shuji Narazaki posted
	to the gimp-devel list.

	* plug-ins/plugindetails/plugindetails.c

	Removed unwanted <regex.h>.
	Thanks to Tan Koan-Sin <freedom@csie.nctu.edu.tw> for pointing
	this out.
1999-03-12 22:04:30 +00:00
GMT 1999 Andy Thomas 2252863eb6 This is a bit of a biggy. Added paths to layers & channels dialog. This is
Fri Mar  5 21:45:39 GMT 1999 Andy Thomas <alt@picnic.demon.co.uk>

	This is a bit of a biggy. Added paths to layers & channels
	dialog. This is not complete yet (it still has some rough edges ;-)

	New:-

	* paths_dialog.c
	* paths_dialog.h
	* pathsP.h

	These are the core parts of the paths dialog & interaction.

	* tools/penadd.xpm
	* tools/pendel.xpm
	* tools/pennorm.xpm
	* tools/penedit.xpm
	* tools/penstroke.xpm

	New images found in the dialog. Maybe someone with a better
	artistic flair could replace these?

	Changed:-

	* Makefile.am

	Added new files for build

	* layers_dialog.c

	Added new tab for paths.

	* bezier_select.h
	* bezier_selectP.h
	* bezier_select.c

	Rearrangement & fixes. Not finished yet.

	* iscissors.c

	Header file changes. (Need to include more headers).

	* gdisplay.c
	* gdisplay.h

	Hmmm... Added a function that did a mapping from gimage to gdisp.
	This is a little bit of a "hack", but it was needed.. really.

	* ops_buttons.h
	* ops_buttons.c

	Enhanced to create more types of button ops. Used in the paths dialog.

	* channels_dialog.c

	Header file changes?

	* xcf.c

	Paths stored in new PROP. Yosh.. I did as you and Adam suggested.

	* gimpimage.c
	* gimpimage.h
	* gimpimageP.h

	Added paths items to the image structures.
1999-03-05 23:50:24 +00:00
CST 1999 Shawn T. Amundson 43ebe17b0e applied patch from Shuji Narazaki <narazaki@gimp.org> which adds bezier
Mon Feb  8 12:12:18 CST 1999 Shawn T. Amundson <amundson@gimp.org>

        * app/bezier_select.c: applied patch from Shuji Narazaki
          <narazaki@gimp.org> which adds bezier stroke.
1999-02-08 18:16:28 +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
CST 1998 Larry Ewing ee23120c06 fixed the dialog destroy handling in the bezier extends dialog.
Tue Dec  1 22:12:08 CST 1998 Larry Ewing  <lewing@gimp.org>

	* app/bezier_select.c: fixed the dialog destroy handling in the
	bezier extends dialog.
1998-12-02 04:15:48 +00:00
Manish Singh 25f3cc8d31 require GTK+ 1.1.5
* configure.in: require GTK+ 1.1.5

* app/bezier_select.c
* app/channels_dialog.c
* app/global_edit.c
* app/layers_dialog.c
* plug-ins/film/film.c
* plug-ins/gfig/gfig.c
* plug-ins/xd/xd.c
* plug-ins/libgck/gck/gcklistbox.c: fixes for new scrolled window viewport
behavior

* libgimp/gimpwire.c
* app/xcf.c: use g_htonl and friends

* app/main.c: ditch some unused variables

* app/Makefile.am: removed unused pixmap references

-Yosh
1998-11-23 09:25:10 +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
Adam D. Moss 5b6e6cd6f0 On all gimp-core fopen()s changed "[rw]"->"[rw]b" to appease OS/2 folk.
* app/[lots of files].c: On all gimp-core fopen()s
        changed "[rw]"->"[rw]b" to appease OS/2 folk.
1998-07-31 18:34:05 +00:00