Commit graph

558 commits

Author SHA1 Message Date
Michael Natterer 919958e6b8 really cleaning up this time
--Mitch
2000-03-21 17:47:32 +00:00
Sven Neumann c6b6cd9d7a app/fileops.c when reverting an image, reconnect all affected views to the
* app/fileops.c
* app/gdisplay.[ch]: when reverting an image, reconnect all
  affected views to the reverted version. This fixes one of the
  bugs Tigert pointed out at GUADEC.

* app/gimage_mask.[ch]
* app/flip_tool.c: cleanups


--Sven & Mitch
2000-03-21 03:19:11 +00:00
SHIRASAKI Yasuhiro 22634f1990 added missing argument for error message.
* app/text_tool.c: added missing argument for error message.

-- yasuhiro
2000-03-16 10:03:01 +00:00
Sven Neumann c104ee5fda renamed "Custom from Editor" to "Custom Gradient" and added the
possibility to drop gradients onto the blend tooloptions to set
the blend mode and the gradient in one move.


--Sven
2000-03-10 01:57:10 +00:00
Sven Neumann 79757c8248 for indexed images set Index in the info_window to N/A if sample_merged or
* app/color_picker.c: for indexed images set Index in the info_window
  to N/A if sample_merged or sample_average is active.


--Sven
2000-03-09 13:02:11 +00:00
Sven Neumann ad55aef27e gimp_drawable_get_color_at() now silently returns NULL again if the
* app/gimpdrawable.c: gimp_drawable_get_color_at() now silently
returns NULL again if the coordinates are out of range. A lot of
code using this function relies on this feature and correctly
checks the return value. No need to emit critical warnings here.

The GTK_CHECK_TYPE macro test for obj != NULL, no need to do this
check twice. Removed lots of unnecessary calls to g_return_if_fail().

* app/color_picker.c: with the old behaviour of
gimp_drawable_get_color_at() the code is a bit simpler.

* app/fuzzy_select.c: fuzzy_select relied on drawable_offsets()
returning off_x = off_y = 0 if drawable == NULL. Decided to change
this here, fixes bug #7077.

* app/gimpimage.[ch]: Even though we made bad experiences with the
changes in gimpdrawable.c, I have introduced similar argument checks
here.

* app/image_map.c: indentation


--Sven
2000-03-09 11:58:03 +00:00
Tor Lillqvist 85f0393bae app/cursorutil.c (gtkutil_compress_motion) Guard against gdk_event_get
2000-03-08  Tor Lillqvist  <tml@iki.fi>

* app/cursorutil.c (gtkutil_compress_motion)
* app/edit_selection.c (process_event_queue_keys): Guard against
gdk_event_get returning NULL (which can happen at least on Win32).

* libgimp/gimp.def: Add a couple of new entry points.

* plug-ins/makefile.{cygwin,msc}: Update according to the source
file changes. Fix some typos in the .msc file.

Fixes by Hans Breuer:

* app/resize.c: Add some more includes.

* libgimp/gimpenv.c
* plug-ins/gflare/gflare.c: Win32 header lossage fixup.
2000-03-08 18:32:31 +00:00
Michael Natterer 5759a5fff6 immediate cursor_update feedback on modifier events.
2000-03-07  Michael Natterer  <mitch@gimp.org>

	* app/by_color_select.c: immediate cursor_update feedback on
	modifier events.

	* libgimp/gimpwidgets.c: one more s/private_tip/help_data/
2000-03-07 20:00:07 +00:00
Michael Natterer 21e95fdf43 Makefile.am cursors/selection_move.xbm cursors/selection_move_mask.xbm new
2000-03-04  Michael Natterer  <mitch@gimp.org>

	* Makefile.am
	* cursors/selection_move.xbm
	* cursors/selection_move_mask.xbm
	* app/cursorutil.[ch]: new cursor for moving the selection
	mask. Looks imho nicer than the ugly GDK_DIAMOND_CROSS.

	* app/move.c
	* app/rect_select.c: use the new cursor.

	* app/paint_core.c: check for the statusbar's context_id in the
	cursor_update function. Fixes gdk_criticals with the line preview
	(which doesn't need a mouse click). Minor cleanups.

	* app/tool_options.c: put the paint_pressure options in a
	GtkHWrapBox instead of a GtkHBox. Makes the size of the dialog a
	bit less locale-dependent.

	* plug-ins/common/xbm.c: use accessor functions instead of using
	the parasite's fields directly.
2000-03-05 00:06:11 +00:00
Manish Singh da1069cac2 I lied. Real 1.1.18 stuff
-Yosh
2000-03-04 03:39:19 +00:00
Michael Natterer 83bb5a38b8 s/"Only"/"only"/
2000-03-03  Michael Natterer  <mitch@gimp.org>

	* app/crop.c: s/"Only"/"only"/

	* app/iscissors.c: one more cursor_update fix. This time I don't
	claim that it's _really_ correct.

	* app/tool_options.c: don't add a separator after
	opacity/paint_mode if a paint pressure options box follows.

	* cursors/bad.xbm
	* cursors/bad_mask.xbm: made it FAT (no need to use thin lines
	which show as much as possible of the image below because the
	cursor indicates that no operation is possible).

	* libgimp/gimpprotocol.[ch]: s/int/gboolean/ where appopriate,
	indentation paranoia.

	_gp_*_read(): free the already allocated parts of the message if
	reading a subsequent part fails. These cleanups will probably occur
	shortly before the process crashes, but at least they make the
	search for real leaks easier.

	* plug-ins/common/uniteditor.c: some more tooltips.

	* plug-ins/common/xbm.c: store the image comment in the
	"gimp-comment" parasite and the hot spot in the new "hot-spot"
	parasite. Added ui for entering the hot spot.

	* docs/parasites.txt: documented the new "hot-spot" parasite.
2000-03-04 00:24:39 +00:00
Michael Natterer f4917054a9 this time cursor_update feedback is _really_ correct: for closed curves,
2000-03-03  Michael Natterer  <mitch@gimp.org>

	* app/iscissors.c: this time cursor_update feedback is _really_
	correct: for closed curves, show the "point" cursor if a mouse
	click will modify the curve and the "bad" cursor if a mouse click
	will do nothing. Seems it was not too hard to understand how it
	works...

	* plug-ins/common/uniteditor.c: for consistency, did a
	s/"Delete","Undelete"/"Don't Save","Save"/.
2000-03-03 13:01:49 +00:00
Michael Natterer 6e48bd16b7 Iscissors was using rect_select_cursor_update which is totally wrong since
2000-03-02  Michael Natterer  <mitch@gimp.org>

	* app/iscissors.c: Iscissors was using rect_select_cursor_update
	which is totally wrong since the oper_update_func tool method was
	introduced (in fact it didn't even give correct feedback before).

	Added oper_update_func, modifier_key_func, cursor_update_func for
	Iscissors which give correct cursor_update feedback now. The only
	remaining inconsistency occurs when a curve is closed: There's no
	way to find out if the mouse is over a control point/line or
	outside (without touching the Iscissors engine, which I didn't
	want to do because I don't understand how it works ;-).
2000-03-02 20:09:12 +00:00
Sven Neumann ea39b49cc8 fixed my latest "fix"
--Sven
2000-03-02 00:03:28 +00:00
Michael Natterer 9004346179 added a modifier_key_func which gives immediate cursor_update feedback on
2000-03-02  Michael Natterer  <mitch@gimp.org>

	* app/rect_select.[ch]: added a modifier_key_func which gives
	immediate cursor_update feedback on modifier key events.

	* app/ellipse_select.c
	* app/free_select.c
	* app/fuzzy_select.c
	* app/rect_selectP.h: call the new function.
	Added current_[x|y] fields to the tools' structures which get
	updated from the "motion" functions. They have to appear in the
	same order in all structures because the modifier_key_func treats
	them all as rectangular selection tools.
	This is ugly and cries for a object hierarchy of tools.
2000-03-01 23:22:43 +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 9a8a390b65 return without warning if popup_timeout is already set. Suppresses warning
* app/gimpcontextpreview.c: return without warning if popup_timeout
   is already set. Suppresses warning that occured on double-click.

 * app/layers_dialog.[ch]
 * app/menus.c: added "Delete Mask" menu entry and removed dialog
   asking if mask is to applied or discarded on "Apply Mask".

 * app/tools.c: Magnify is not a transform tool


--Sven
2000-02-29 23:19:14 +00:00
Sven Neumann e00de7cbb9 fixed off-by-one error for the x coordinate fixed scaling without
* app/measure.c: fixed off-by-one error for the x coordinate
* app/transform_core.c: fixed scaling without interpolation (bug #6681)


--Sven
2000-02-28 22:56:06 +00:00
GMT 2000 Adam D. Moss f5b589820b added gtkutil_compress_motion() utility function to seek and destroy
Mon Feb 28 19:11:39 GMT 2000  Adam D. Moss <adam@gimp.org>

	* app/cursorutil.c app/cursorutil.h:
	added gtkutil_compress_motion() utility function to seek and
	destroy outstanding pointer motion events from the gdk event queue
	for a given widget.

	* app/edit_selection.c:305: Use gtkutil_compress_motion() to
	do a more thorough job of tracking motion (something recently
	started interleaving our motion events with others, largely
	nullifying the effectiveness of GDK_POINTER_MOTION_HINT_MASK).

	* app/edit_selection.c:704: Yikes, the key-press snooping code
	was turning part of the event queue back-to-front with each
	compressed key-press.  (Still looks a bit bogus overall; looks
	as though it could transplant a whole chunk of the start of
	the event queue right onto the end.  I'll probably disable it
	unless someone points out that I'm a doofus.)
2000-02-28 19:25:42 +00:00
Garry R. Osgood bdbb45d87c gimp/app/by_color_select.c gimp/app/color_picker.c gimp/app/gimpdrawable.c
2000-02-27 Garry R. Osgood <gosgood@idt.net>

* gimp/app/by_color_select.c
* gimp/app/color_picker.c
* gimp/app/gimpdrawable.c
* gimp/app/image_map.c
* gimp/app/paint_core.c
Inadvertent logic error in g_return_val_if_fail()
style sanity checks implemented in
gimp_drawable_get_color_at() gave rise to
segment violation reported in #6624;
error admitted out-of-bounds x&y that
do not map to tiles. Closes #6624.
GTK-critical warnings which result from
this new sanity check require that
gimp_drawable_get_color_at() clients
perform initial culling of out-of-bounds
x & y coordinates.
2000-02-28 02:40:44 +00:00
Michael Natterer ae38b99c21 another leak: don't allocate the PaintPressureOptions structure twice for
2000-02-24  Michael Natterer  <mitch@gimp.org>

	* app/tool_options.c: another leak: don't allocate the
	PaintPressureOptions structure twice for one tool.
2000-02-24 02:11:10 +00:00
Sven Neumann 40779fe370 quick GUI fix for the text_tool
--Sven
2000-02-24 00:51:00 +00:00
Sven Neumann 8dead13522 fixed bug #6526
--Sven
2000-02-23 23:42:25 +00:00
Michael Natterer 863b24917c it's more intelligent to implement the parent_context stuff with
2000-02-22  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontext.[ch]: it's more intelligent to implement the
	parent_context stuff with gtk_signal_connect_object() instead of
	having internal callbacks for each context attribute.
	Exported the existing gimp_context_*_changed() functions and
	changed them to do nothing but emitting the signal.

	* app/app_procs.c
	* app/tools.c
	* app/transform_tool.c: use gimp_context_tool_changed() instead of
	gtk_signal_emit_by_name().
2000-02-22 17:06:44 +00:00
Sven Neumann e836901c83 more places with Solaris compilation problems
--Sven
2000-02-21 12:05:45 +00:00
Michael Natterer 0a5fadee17 app/perspective_tool.c app/rotate_tool.c app/scale_tool.c app/shear_tool.c
2000-02-21  Michael Natterer  <mitch@gimp.org>

	* app/perspective_tool.c
	* app/rotate_tool.c
	* app/scale_tool.c
	* app/shear_tool.c
	* plug-ins/common/gauss_iir.c
	* plug-ins/common/gauss_rle.c: fix Solaris compilation problems
	reported by Ludovic Poitou <ludovic.poitou@france.sun.com>.

	* libgimp/gimppixmap.[ch]: new function gimp_pixmap_set().

	* plug-ins/gfig/gfig.c: hacked the ui to use the libgimp widgets &
	constructors and slightly reorganized it to use fewer screen
	space (not yet perfect). Did a general namespace & code cleanup.

	* plug-ins/FractalExplorer/FractalExplorer.c: use a GimpPathEditor
	widget.
2000-02-21 11:54:33 +00:00
Sven Neumann 65f23289dc do not ignore the mask of the tool icons
--Sven
2000-02-20 02:46:53 +00:00
Sven Neumann c878108f4a ignore motion_events in a time-window of 100ms after the last event. Was
* app/fuzzy_select.c: ignore motion_events in a time-window of
  100ms after the last event. Was intended as a workaround for bug
  #5949, but IMO it makes the tool more responsive and easier to
  control.

* app/nav_window.c: as a workaround for bug #5955 move the
  navigation popup on screen if used to close to the screen borders.
  Moving the cursor will make the image scroll by a large amount
  eventually, but IMHO this is better than having a nonfunctional
  navigation popup.

* plug-ins/common/curve_bend.c
* plug-ins/gap/gap_decode_xanim.c: fixed typos


--Sven
2000-02-19 13:19:08 +00:00
Michael Natterer bf72684e5a app/paint_options.h put the pointer to tool's private context to the
2000-02-18  Michael Natterer  <mitch@gimp.org>

	* app/paint_options.h
	* app/tool_options.h: put the pointer to tool's private context to
	the PaintOptions structure instead of attaching it to the
	paint_mode optionmenu (which does not exist for all paint tools
	which have a private context). Fixes bug #6308.
2000-02-18 21:22:13 +00:00
Sven Neumann defbe35de6 forgot to exclude airbrush_blob.[ch] from the build
* app/Makefile.am: forgot to exclude airbrush_blob.[ch] from the build

* app/gimpbrushgenerated.c
* app/ink.c
* app/measure.c
* app/rotate_tool.c: use gimp_rad_to_deg and gimp_deg_to_rad macros


--Sven
2000-02-18 18:20:04 +00:00
Sven Neumann fde312118a Cleaned up the Path header mess.
--Sven
2000-02-16 13:52:33 +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 2715fd15c8 app/Makefile.am removed.
2000-02-14  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/vector2d.[ch]: removed.

	* app/gimpbrush.h
	* app/paint_core.c: use the vectors from libgimp.
2000-02-14 18:09:33 +00:00
Michael Natterer 260d7b2d1d plug-ins/libgck/gck/Makefile.am plug-ins/libgck/gck/gckcommon.h
2000-02-14  Michael Natterer  <mitch@gimp.org>

	* plug-ins/libgck/gck/Makefile.am
	* plug-ins/libgck/gck/gckcommon.h
	* plug-ins/libgck/gck/gcklistbox.[ch]
	* plug-ins/libgck/gck/gckmath.[ch]
	* plug-ins/libgck/gck/gckvector.[ch]: removed.

	* plug-ins/libgck/gck/gck.h
	* plug-ins/libgck/gck/gcktypes.h: modified accordingly.

	* libgimp/Makefile.am
	* libgimp/gimpvector.[ch]: new files. Modified the vector
	functions from GCK. Changed the licence to LGPL, if there are any
	objections, please let me know.

	* libgimp/gimp.h: #include "gimpvector.h"

	* libgimp/gimpmath.h: added deg <-> rad conversion macros.

	* libgimp/gimpmatrix.[ch]: added a 4x4 vector to rotation angle
	function from GCK,
	s/GimpMatrix,gimp_matrix/GimpMatrix3,gimp_matrix3/

	* plug-ins/Lighting/*
	* plug-ins/MapObject/*:
	s/GckVector,gck_vector/GimpVector,gimp_vector/

	* app/pathsP.h
	* app/paths_dialog.c
	* app/perspective_tool.[ch]
	* app/rotate_tool.[ch]
	* app/scale_tool.[ch]
	* app/shear_tool.[ch]
	* app/tools_cmds.c
	* app/transform_core.[ch]
	* tools/pdbgen/pdb/tools.pdb:
	s/GimpMatrix,gimp_matrix/GimpMatrix3,gimp_matrix3/
2000-02-14 16:29:41 +00:00
Michael Natterer 2b92a59e64 po/POTFILES.in app/Makefile.am removed.
2000-02-13  Michael Natterer  <mitch@gimp.org>

	* po/POTFILES.in
	* app/Makefile.am
	* app/buildmenu.[ch]: removed.

	* app/blend.c
	* app/brush_select.c
	* app/curves.c
	* app/histogram_tool.c
	* app/layers_dialog.c
	* app/lc_dialog.c
	* app/levels.c
	* app/paint_options.h
	* app/paintbrush.c
	* app/tool_options.c: use the libgimp option menu
	constructor. Removed paint_mode_menu_set_history().

	* app/colormap_dialog.i.c
	* app/colormap_dialog.p.h: use a popup menu as in the palette
	dialog instead of a pulldown menu.

	* app/channels_dialog.c: made color dnd to a channel widget work
	again.

	* libgimp/gimpwidgets.[ch]: new function
	gimp_option_menu_set_history() which sets the history according to
	user_data as passed to gimp_option_menu_new().
2000-02-13 22:26:41 +00:00
Michael Natterer f0ae0dccd4 app/brush_select.c app/paint_options.h use new function
2000-02-13  Michael Natterer  <mitch@gimp.org>

	* app/brush_select.c
	* app/paint_options.h
	* app/tool_options.c: use new function
	paint_mode_menu_set_paint_mode() instead of
	gtk_option_menu_set_history() because the order of paint modes in
	the menu is different from the one in the LayerModeEffects enum
	(fixes bug #6190). Create the menu with the libgimp menu
	constructor.
2000-02-13 13:14:34 +00:00
Sven Neumann 1b0928ec7b fixed bug #6092
--Sven
2000-02-10 14:43:51 +00:00
Sven Neumann 630fe55d17 Cleaned up after Adam ;-)
* app/edit_selection.c: Finally moved selections snap to the
   guides again. Layer moves are slightly faster than before, if no
   guides are present.

 * app/gdisplay.c
 * app/gdisplay.h
 * app/gdisplayP.h: Use doubles for snap_to_point. Less rounding
   makes the result much better on low resolution. If it snaps, the
   result should be exactly the guide in almost all cases now. Only
   at very low resolutions, you may end up with an error of 1 pixel.
   Some code cleanup while I was on it... Fixes bug #2353.


--Sven
2000-02-10 14:23:11 +00:00
Marc Lehmann 287455a398 *** empty log message *** 2000-02-10 04:16:52 +00:00
Michael Natterer 22f266494b you can now drag the active tool out of the tool options dialog title.
2000-02-10  Michael Natterer  <mitch@gimp.org>

	* app/tools.c: you can now drag the active tool out of the tool
	options dialog title. Added a tooltip.
2000-02-10 01:49:45 +00:00
Sven Neumann b20f154ac8 app/interface.c app/pixmaps2.h use new icons courtesy by Tigert.
* app/interface.c
 * app/pixmaps2.h
 * app/tools.c: use new icons courtesy by Tigert.

 * plug-ins/common/gauss_iir.c
 * plug-ins/common/gauss_rle.c
 * plug-ins/common/spread.c: enlarged maximum values

--Sven
2000-02-10 01:49:45 +00:00
Sven Neumann d517927260 Use static GdkPixmaps in the image_window and for the tool icons.
--Sven
2000-02-08 23:45:20 +00:00
Michael Natterer 3a0da284c8 show our selection mode cursors (REPLACE, ADD, ...) depending on the
2000-02-08  Michael Natterer  <mitch@gimp.org>

	* app/by_color_select.c: show our selection mode cursors (REPLACE,
	ADD, ...) depending on the modifier state and the "Selection Mode"
	toggles in the tool's dialog.
2000-02-08 23:35:41 +00:00
Sven Neumann 6fe8e7ee61 unref gdk_pixmaps and gdk_bitmaps
cosmetics


--Sven
2000-02-08 20:48:48 +00:00
Sven Neumann a1aeeda486 make it behave like the other non-toolbox tools
--Sven
2000-02-08 12:14:53 +00:00
Michael Natterer ef17866973 app/* libgimp/* plug-ins/* did a global s/GUnit/GimpUnit/ and
2000-02-07  Michael Natterer  <mitch@gimp.org>

	* app/*
	* libgimp/*
	* plug-ins/*
	* tools/pdbgen/*: did a global s/GUnit/GimpUnit/ and
	s/GimpSizeEntryUP/GimpSizeEntryUpdatePolicy/

	* libgimp/gimpcolorspace.c: renamed the parameter names to match
	the names in the header.

	* libgimp/gimphelpui.h
	* libgimp/gimpimage.c
	* libgimp/gimpmatrix.h
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimpunit.[ch]
	* libgimp/gimpunitmenu.[ch]
	* libgimp/gimpwidgets.[ch]: added documentation and use g* types
	all over the place (enables cross-referencing with the glib and
	gtk+ html documentation).

	* plug-ins/common/exchange.c
	* plug-ins/common/max_rgb.c: small cleanups.

	* plug-ins/common/mapcolor.c: the color buttons were attached in
	the wrong order.
2000-02-07 20:35:13 +00:00
Stanislav Brabec ce6050ad5f win32 purification, rgb<->hsv remove 2000-02-07 15:49:54 +00:00
Sven Neumann c9482821ab mostly header cleanup and i18n
--Sven
2000-01-31 23:59:05 +00:00
Michael Natterer ebd978825c app/blend.c app/brightness_contrast.c app/color_balance.c
2000-02-01  Michael Natterer  <mitch@gimp.org>

	* app/blend.c
	* app/brightness_contrast.c
	* app/color_balance.c
	* app/color_picker.c
	* app/crop.c
	* app/curves.c
	* app/flip_tool.c
	* app/histogram_tool.c
	* app/hue_saturation.c
	* app/levels.c
	* app/magnify.c
	* app/measure.c
	* app/move.c
	* app/path_tool.c
	* app/posterize.c
	* app/text_tool.c
	* app/threshold.c
	* app/tool_options.c
	* app/transform_tool.c: unify the usage of "Selection" and
	"<blah> Tool" and removed the word "Options" from all tool option
	title strings because the dialog title already says "Options".
2000-01-31 21:27:00 +00:00
Sven Neumann 7d837ccf67 added submenus to the tools menu
--Sven
2000-01-31 21:09:42 +00:00