Commit Graph

705 Commits

Author SHA1 Message Date
Sven Neumann 550aa9b482 app/layers_dialog.c app/lc_dialog.c another try on bug #31098. This time
2000-12-14  Sven Neumann  <sven@gimp.org>

	* app/layers_dialog.c
	* app/lc_dialog.c
	* app/nav_window.c: another try on bug #31098. This time limited the
	preview scale ratio in the calling functions. Please test!

	* app/gimpimage.c: small cleanup
2000-12-14 17:28:38 +00:00
Sven Neumann 471713e3a7 app/gimpimage.c app/layer.c app/layers_dialog.c cleaned up these files
2000-12-14  Sven Neumann  <sven@gimp.org>

	* app/gimpimage.c
	* app/layer.c
	* app/layers_dialog.c
	* app/nav_window.c: cleaned up these files while trying to find a
	fix for #31098. No real changes, the bug is still present :-(
2000-12-14 13:52:16 +00:00
Sven Neumann 2458bfcbba app/color_picker.c app/convert.c app/curves.c app/gimpdrawable.c
2000-12-13  Sven Neumann  <sven@gimp.org>

        * app/color_picker.c
        * app/convert.c
        * app/curves.c
        * app/gimpdrawable.c
        * app/gimpimage.c
        * app/gimpimage.h
        * app/image_map.c
        * app/info_window.c
        * app/layer.c
        * app/undo.c: couldn't resist: renamed TYPE_HAS_ALPHA() to
        GIMP_IMAGE_TYPE_HAS_ALPHA()

        * plug-ins/common/sunras.c
        * plug-ins/common/xwd.c: small cleanups
2000-12-13 18:53:35 +00:00
GMT 2000 Andy Thomas c538b3fe37 app/gimpimage.c app/layers_dialog.c
Mon Dec 11 22:52:43 GMT 2000 Andy Thomas <alt@gimp.org>

	* app/gimpimage.c
        * app/layers_dialog.c

	Backed out some changes that caused problems with the Nav preview
	and small sized images.
2000-12-11 22:46:40 +00:00
Sven Neumann d7c90b6d67 check for NULL pointer
2000-12-11  Sven Neumann  <sven@gimp.org>

	* app/channel.c (channel_invalidate_previews): check for NULL pointer

	* app/fileops.c: if saving and loading images at the same time, the
	PDB obviously manages to mangle return values. By checking the
	validity of the returned image id we avoid to crash as described in
	bug #26788.

	* app/module_db.c: unload modules from the idle_loop as suggested
	by Austin in #5745.
2000-12-11 21:31:08 +00:00
Sven Neumann ed707bea13 app/edit_selection.c app/gimpimage.c app/layer_select.c when computing a
2000-12-11  Sven Neumann  <sven@gimp.org>

	* app/edit_selection.c
	* app/gimpimage.c
	* app/layer_select.c
	* app/layers_dialog.c: when computing a preview, limit the scale ratio
	to a maximum of 1.0. By doing so we avoid to scale drawables up if the
	image (canvas) size becomes larger than the drawable. Fixes bug #31098.

	* app/gimppreviewcache.[ch]: indented
2000-12-11 03:33:25 +00:00
Sven Neumann 1edd823545 do not set the layer mode of the bottom layer to NORMAL_MODE if it is
2000-12-03  Sven Neumann  <sven@gimp.org>

	* app/gimpimage.c: do not set the layer mode of the bottom layer to
	NORMAL_MODE if it is DISSOLVE_MODE since the latter does not work
	on the projection with the lower layer but on the layers alpha
	channel. Fixes bug #7829.
2000-12-03 21:34:38 +00:00
Sven Neumann 0d9382fb04 app/layer.c app/layers_dialog.c reviewed code in an attempt to fix the
2000-12-03  Sven Neumann  <sven@gimp.org>

	* app/layer.c
	* app/layers_dialog.c
	* plug-ins/common/jpeg.c: reviewed code in an attempt to fix the
	crash-on-jpeg-save. The only thing that I have changed (despite
	lots of indentation) is that we now connect the preview rewdraw
	using gtk_signal_connect_while_alive() which should keep gimp from
	trying to create previews of nonexistant drawables.

Updated german translation.
2000-12-03 18:15:08 +00:00
Sven Neumann 54f243d76c changed the logic that sets the default for "Custom Palette" so it goes
2000-11-20  Sven Neumann  <sven@gimp.org>

	* app/convert.c (build_palette_button): changed the logic that sets
	the default for "Custom Palette" so it goes through the whole list
	instead of stopping at the "Web" palette. The Indexed-Conversion
	dialog now also remembers palettes appearing after the "Web" palette.
2000-11-20 12:06:45 +00:00
Michael Natterer cdd0a5147d app/fileops.c Make sure that we don't try to destroy query_boxes twice or
2000-11-18  Michael Natterer  <mitch@gimp.org>

	* app/fileops.c
	* libgimp/gimpquerybox.[ch]: Make sure that we don't try to destroy
	query_boxes twice or try to disconnect not-any-more connected
	handlers.

	* app/color_notebook.c
	* app/gimpcontext.[ch]
	* app/gimphelp.[ch]
	* app/lc_dialog.[ch]
	* app/menus.h
	* app/preferences_dialog.c
	* app/tools.[ch]
	* libgimp/gimpcolorbutton.[ch]
	* libgimp/gimpdialog.[ch]
	* libgimp/gimpexport.[ch]
	* libgimp/gimpfileselection.[ch]
	* libgimp/gimphelpui.[ch]
	* libgimp/gimppatheditor.[ch]
	* libgimp/gimppixmap.[ch]
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimpui.[ch]
	* libgimp/gimpunitmenu.[ch]
	* libgimp/gimpwidgets.[ch]: in a coding attack, changed help_data
	and many other strings passed to UI functions to (const gchar *).
	As a consequence, I had to fix lots of warnings ;)

	* plug-ins/common/tga.c
	* plug-ins/imagemap/imap_main.c: fixed warnings.

	Code cleanup and indentation all over the place.
2000-11-18 00:25:42 +00:00
Garry R. Osgood c24b37e51c 2000-11-11 Garry R. Osgood <gosgood>@idt.net *
app/gimpbrushpipe.c
Double frees due to dangling pointers [gimpbrushpipe.c
CVS-1.27 Lines 396 ff]. Upon failure to load an n-th
pixmap, a GPattern holding the dangling pointers would
be released first, also releasing n-1 pixmap's name and
RGB mask. These would again be freed in pipe and GTK
deconstruction.
2000-11-11 15:48:27 +00:00
Michael Natterer 6cfb041479 app/gimpdrawable.[ch] did some code review: s/0/NULL/,
2000-10-28  Michael Natterer  <mitch@gimp.org>

	* app/gimpdrawable.[ch]
	* libgimp/gimpsizeentry.c: did some code review: s/0/NULL/,
	s/sprintf/g_snprintf/, spacing.
2000-10-28 15:43:56 +00:00
Sven Neumann 8cfac64aac avoid modulo operation on negative values.
2000-10-26  Sven Neumann  <sven@gimp.org>

	* app/channel_ops.c (offset_ok_callback): avoid modulo operation on
	negative values.

	* app/channel_ops.c
	* app/crop.c
	* app/file_new_dialog.c
	* app/layers_dialog.c
	* app/preferences_dialog.c
	* app/rotate_tool.c
	* app/scale_tool.c: use RINT() when assigning the result of
	gimp_size_entry_get_refval() to an integer.
2000-10-26 22:02:44 +00:00
Sven Neumann 27a4faa0b2 plugged memleak (similar to the one that was present in
2000-10-22  Sven Neumann  <sven@gimp.org>

	* app/edit_selection.[ch]: plugged memleak (similar to the one that
	was present in gtkutil_compress_motion()) in the key snooper.

	Round moves to nearest integer instead of truncating the value.
	This seems to fix the reported redraw problems when moving
	selections at low zoom levels.

	Cleaned up the code a little and converted enum values to uppercase.

	* app/bezier_select.c
	* app/free_select.c
	* app/fuzzy_select.c
	* app/move.c
	* app/rect_select.c
	* app/text_tool.c: updated to use the new EditType enum values.

	* app/gimprc.c: minor optimization in the GList handling.

	* app/layer.[ch]: removed unused functions.

	* app/menus.c: removed "Dump Items (Debug)" menu entry.
2000-10-23 09:05:45 +00:00
Manish Singh a0cb639b6f 1.1.27 stuff
-Yosh
2000-10-04 23:41:47 +00:00
Michael Natterer b0cd835d08 resize the cursor label if the shrink_wrap flag is set. Closes #21936.
2000-10-02  Michael Natterer  <mitch@gimp.org>

	* app/undo.c: resize the cursor label if the shrink_wrap flag is
	set. Closes #21936.
2000-10-01 23:04:03 +00:00
Michael Natterer 4eeb875946 app/gimpbrush.c app/gimpbrushpipe.c app/pattern_header.h fixed #8150.
2000-10-01  Michael Natterer  <mitch@gimp.org>

	* app/gimpbrush.c
	* app/gimpbrushpipe.c
	* app/pattern_header.h
	* app/patterns.c: (Hopefully) fixed #8150.

	- If something goes wrong during loading, free the resp. object
	  immediately and close it's FD.
	- When destroying, check each pointer before freeing it.
	- Never use if (!gimp_brush_load_brush() || !pattern_load())
	  but check the return values of both calls separately.
	  (the original code tried to free an already destroyed temp_buf).
	- stuff like below (s/sz_PatternHeader/sizeof(PatternHeader)/g etc.)
2000-10-01 18:53:39 +00:00
Michael Natterer f38cdf123c app/brush_edit.[ch] app/brush_header.h app/gimpbrush.[ch]
2000-09-29  Michael Natterer  <mitch@gimp.org>

	* app/brush_edit.[ch]
	* app/brush_header.h
	* app/gimpbrush.[ch]
	* app/gimpbrushgenerated.[ch]
	* app/gimpbrushlist.[ch]
	* app/gimpbrushpipe.[ch]
	* app/gimpcontext.h
	* app/gimplist.[ch]
	* app/gimpobject.[ch]
	* app/gimpset.[ch]
	* app/gimpsignal.[ch]
	* app/parasitelist.h: Lotsa fixes in the brush referencing code
	and cleanups in many GtkObjects:

	- Reference brushes correctly (call gtk_object_sink() after adding
	  them to the brush list). Don't crash when renaming a brush
	  multiple times.
	- Replaced all gtk_object_destroy() with gtk_object_unref|sink().
	- Removed the "Fake Gimp object system" (gimp_object_destroy() et.al.)
	  all over the place (while it's a good idea to have a common Gimp
	  base object, it's totally useless to try to imitate Gtk's object
	  system).
	- s/sz_BrushHeader/sizeof(BrushHeader)/g
	- And of course various indentation and coding style paranoia changes
	  in all files I visited.
2000-09-29 12:00:00 +00:00
Daniel Egger b07c7184ed New dialog_hide functions which are utilised from convert.c to hide
New dialog_hide functions which are utilised from convert.c to hide
 dialogs before converting an image to indexed. Bug #23104.
2000-09-29 01:22:27 +00:00
Daniel Egger 61131728ac C++ comments removals.
C++ comments removals.
2000-09-27 18:00:05 +00:00
Daniel Egger 4b2c4d8424 Return when brush loading failed and react the right way. Fixes parts of
Return when brush loading failed and react the right way. Fixes
 parts of bug #8150.
2000-09-27 17:50:59 +00:00
Daniel Egger e13fcd8b1f Turned C++ style comments into C style ones.
Turned C++ style comments into C style ones.
2000-09-26 22:54:33 +00:00
Michael Natterer b9413eb038 added -DGTK_DISABLE_COMPAT_H to CPPFLAGS.
2000-08-28  Michael Natterer  <mitch@gimp.org>

	* configure.in: added -DGTK_DISABLE_COMPAT_H to CPPFLAGS.

	* app/app_procs.c
	* app/gdisplay.c
	* app/layers_dialog.c
	* app/menus.c
	* app/tips_dialog.c
	* libgimp/gimpcolorbutton.c
	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/FractalExplorer/FractalExplorer.c
	* plug-ins/bmp/bmpwrite.c
	* plug-ins/common/AlienMap.c
	* plug-ins/common/AlienMap2.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/animationplay.c
	* plug-ins/common/cubism.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/deinterlace.c
	* plug-ins/common/gee.c
	* plug-ins/common/glasstile.c
	* plug-ins/common/iwarp.c
	* plug-ins/common/mail.c
	* plug-ins/common/pat.c
	* plug-ins/common/pixelize.c
	* plug-ins/common/plugindetails.c
	* plug-ins/common/png.c
	* plug-ins/common/sample_colorize.c
	* plug-ins/common/sel_gauss.c
	* plug-ins/common/sinus.c
	* plug-ins/common/sparkle.c
	* plug-ins/common/spheredesigner.c
	* plug-ins/common/tga.c
	* plug-ins/common/tileit.c
	* plug-ins/common/vpropagate.c
	* plug-ins/common/warp.c
	* plug-ins/common/waves.c
	* plug-ins/common/wmf.c
	* plug-ins/flame/flame.c
	* plug-ins/fp/fp_gtk.c
	* plug-ins/gap/gap_arr_dialog.c
	* plug-ins/gap/gap_dbbrowser_utils.c
	* plug-ins/gap/gap_mov_dialog.c
	* plug-ins/gap/gap_navigator_dialog.c
	* plug-ins/gap/gap_resi_dialog.c
	* plug-ins/gdyntext/gdyntext_ui.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gimpressionist/brush.c
	* plug-ins/gimpressionist/gimpressionist.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/print/gimp_main_window.c
	* plug-ins/rcm/rcm_callback.c
	* plug-ins/rcm/rcm_dialog.c
	* plug-ins/script-fu/script-fu-console.c
	* plug-ins/script-fu/script-fu-scripts.c
	* plug-ins/script-fu/script-fu-server.c
	* plug-ins/sel2path/sel2path_adv_dialog.c
	* plug-ins/xjt/xjt.c: removed COMPAT_CRUFT.
2000-08-28 00:42:32 +00:00
Garry R. Osgood 2667aca2bb app/image_map.c A bit of refresh drawable code was misplaced these many
2000-08-23 Garry R. Osgood <gosgood@idt.net>
* app/image_map.c
A bit of refresh drawable code was misplaced
these many years ago, leading to the persistence
of color tool effects, as reported in Mihail
Milushev's nicely composed bug report. Closes #7626
which has the gory details.
2000-08-24 02:11:37 +00:00
Sven Neumann 5b205f17eb make the file_save dialog sensitive again if the user clicked "No" when
2000-08-23  Sven Neumann  <sven@gimp.org>

	* app/fileops.c: make the file_save dialog sensitive again if the
	user clicked "No" when asked if he wishes to overwrite a file.

	* app/gimpimage.c: when saving an undoable parasite, just do it
	without calling undo_push_cantundo(). Undoable parasites are used
	by many save plug-ins to attach a comment, but this operation
	shouldn't prevent the user from using the undo_stack afterwards.
	The JPEG plug-in has an additional bug that I couldn't solve, so
	undoing after a Save As JPEG is still impossible.

	* app/undo_history.c: lame attempt to draw the clean symbol at the
	correct undo step. Not perfect but much better as before...
2000-08-23 19:29:01 +00:00
Garry R. Osgood 43ff0cdfee app/gdisplay.c app/image_map.c
2000-08-16  Garry R. Osgood <gosgood@idt.net>
* app/gdisplay.c
* app/image_map.c

Addresses Bug Report #14704, and an
undisclosed undo system bug. Freezes
undo stack before interactive tools
commence idle rendering; thaws stack
on cleanup and immediately sets menu
sensitivity.

Not an image lock, but Yet Another UI
Lock. Oh well; merrilly we patch along...
See http://bugs.gnome.org/db/14/14704.html
for gory details. Closes #14704.
2000-08-17 01:33:44 +00:00
Daniel Egger 6a6b8ab135 Removed two functions.
Removed two functions.
2000-08-08 22:34:11 +00:00
BST 2000 Austin Donnelly 1218b2bb89 The gif save plugin normally asks the user if it's ok to crop the image if
Tue Jul 18 23:34:34 BST 2000  Austin Donnelly  <austin@gimp.org>

	* plugs-ins/common/gif.c: The gif save plugin normally asks the
	    user if it's ok to crop the image if there are layers larger
    	    than the image size.  This isn't a good idea if we're running
    	    with run_mode == NON_INTERACTIVE.  Fix similar to that
    	    suggested by Bryan Livingston <bryan@cooltext.com> on
    	    gimp-developer mailing list.

   	* app/layer.c: Fix for Bug#17347: Scale Layer leaves artifacts.
	    Basic problem is that scaling a layer when there's a selection
    	    active (eg there's a floating selection) doesn't invalidate
    	    the layer bounds.  Same problem with resizing a layer,
    	    although the bug report didn't mention that.  Fixed by changing
    	    layer_resize() and layer_scale_lowlevel() to call
    	    layer_invalidate_boundary() once done changing the layer.
2000-07-18 22:48:14 +00:00
Matt Wilson 74fdc62e2a allocate the tool's paint_core with g_new0. This prevents us from having
2000-06-22  Matt Wilson  <msw@redhat.com>

	* app/paint_core.c (paint_core_new): allocate the tool's
	paint_core with g_new0.  This prevents us from having cruft in
	unused tools.  Systems with sensitive FPUs (Alpha) will raise
	exception in the paint_core_cursor_update if paint_core->last{x,y}
	are messy.

	* app/bezier_select.c (tools_new_bezier_select)
	* app/blend.c (blend_options_new)
	* app/brightness_contrast.c (tools_new_brightness_contrast)
	* app/bucket_fill.c (tools_new_bucket_fill)
	* app/by_color_select.c (tools_new_by_color_select)
	* app/color_balance.c (tools_new_color_balance)
	* app/color_panel.c (color_panel_new)
	* app/color_picker.c (tools_new_color_picker)
	* app/crop.c (tools_new_crop)
	* app/curves.c (tools_new_curves)
	* app/ellipse_select.c (tools_new_ellipse_select)
	* app/free_select.c (tools_new_free_select)
	* app/fuzzy_select.c (tools_new_fuzzy_select)
	* app/histogram_tool.c (tools_new_histogram_tool)
	* app/hue_saturation.c (tools_new_hue_saturation)
	* app/ink.c (tools_new_ink)
	* app/iscissors.c (tools_new_iscissors)
	* app/levels.c (tools_new_levels)
	* app/magnify.c (tools_new_magnify)
	* app/measure.c (tools_new_measure_tool)
	* app/move.c (tools_new_move_tool)
	* app/path_tool.c (tools_new_path_tool)
	* app/posterize.c (tools_new_posterize)
	* app/rect_select.c (tools_new_rect_select)
	* app/resize.c (resize_widget_new)
	* app/threshold.c (tools_new_threshold)
	* app/transform_core.c (transform_core_new)
	* app/xinput_airbrush.c (tools_new_xinput_airbrush): likewise (it
	can only help and it really isn't slow.)

	* app/color_area.c: #include <string.h> for memcpy declaration

	* app/gimphelp.c: #include <string.h> for strlen declaration
2000-06-23 00:14:07 +00:00
Michael Natterer b8ee0c8c82 Makefile.am app/cursorutil.[ch] app/tools.c added lots of new cursors and
2000-06-14  Michael Natterer  <mitch@gimp.org>

	* Makefile.am
	* app/cursorutil.[ch]
	* app/tools.c
	* cursors/*: added lots of new cursors and removed old ones.

	* app/gdisplay.[ch]: enabled the cursor setting parameters in
	gdisplay_install_tool_cursor().

	* app/bezier_select.c
	* app/blend.c
	* app/bucket_fill.c
	* app/by_color_select.c
	* app/clone.c
	* app/color_picker.c
	* app/crop.c
	* app/disp_callbacks.c
	* app/edit_selection.c
	* app/eraser.c
	* app/flip_tool.c
	* app/ink.c
	* app/iscissors.c
	* app/magnify.c
	* app/measure.c
	* app/move.c
	* app/paint_core.c
	* app/rect_select.c
	* app/text_tool.c
	* app/transform_core.c: use the new cursors. Only the transform
	tools are still using old cursors.

	* app/layers_dialog.c: a tooltip for "Keep Trans."

	* app/user_install.c: set the ctree's selection mode to BROWSE.
2000-06-14 10:59:16 +00:00
Michael Natterer 6fddfc295f app/gdisplay.[ch] oops, my last commit caused a segfault.
2000-06-09  Michael Natterer  <mitch@gimp.org>

	* app/gdisplay.[ch]
	* app/scroll.c: oops, my last commit caused a segfault.
2000-06-09 13:36:33 +00:00
Michael Natterer d0a551bbf8 Cursor patch II: This is only the logic inside the cursor system and not
2000-06-09  Michael Natterer  <mitch@gimp.org>

	Cursor patch II:
	This is only the logic inside the cursor system and not yet used.

	* app/cursorutil.[ch]: [gimp]_change_win_cursor() take lots of
	parameters now and compose cursors from up to three cursor
	bitmaps/masks.

	* app/gdisplay.[ch]: As a test, create a hardcoded example cursor
	if "Cursor Mode" is set to "Tool Icon with Crosshair" in prefs.

	* app/curves.c
	* app/dialog_handler.c
	* app/scroll.c: changed the calls to the win_cursor function.

	* app/tools.[ch]: added a cursor and a toggle cursor to the ToolInfo
	structure of all tools.

	* app/toolsF.h: new ToolType TOOL_TYPE_NONE.

	* app/gimpdnd.c
	* app/interface.c: check for silly filenames in the file dnd
	callback. Closes #13733.

	* Makefile.am
	* cursors/bucket_fill_small.xbm
	* cursors/bucket_fill_small_mask.xbm
	* cursors/crop_small.xbm
	* cursors/crop_small_mask.xbm
	* cursors/crosshair_small.xbm
	* cursors/crosshair_small_mask.xbm
	* cursors/ellipse_select_small.xbm
	* cursors/ellipse_select_small_mask.xbm
	* cursors/eraser_small.xbm
	* cursors/eraser_small_mask.xbm
	* cursors/free_select_small.xbm
	* cursors/free_select_small_mask.xbm
	* cursors/fuzzy_select_small.xbm
	* cursors/fuzzy_select_small_mask.xbm
	* cursors/intersect.xbm
	* cursors/intersect_mask.xbm
	* cursors/minus.xbm
	* cursors/minus_mask.xbm
	* cursors/move.xbm
	* cursors/move_mask.xbm
	* cursors/paintbrush_small.xbm
	* cursors/paintbrush_small_mask.xbm
	* cursors/pencil_small.xbm
	* cursors/pencil_small_mask.xbm
	* cursors/plus.xbm
	* cursors/plus_mask.xbm
	* cursors/rect_select_small.xbm
	* cursors/rect_select_small_mask.xbm
	* cursors/resize_small.xbm
	* cursors/resize_small_mask.xbm
	* cursors/zoom.xbm
	* cursors/zoom_mask.xbm
	* cursors/zoom_small.xbm
	* cursors/zoom_small_mask.xbm: new files extracted from Tigert's
	gimp-tool-cursors.xcf created at GimpCon.

	Tigert, I'll commit the xcf as soon as I've added empty layers
	with the names of the cursors that are missing.

	* cursors/mouse.xbm
	* cursors/mouse_mask.xbm: made it 32x32 to allow for cursor
	composition.
2000-06-09 12:31:19 +00:00
Sven Neumann fd4355bc89 call undo_push_qmask() before removing the channel since the callback will
2000-06-08  Sven Neumann  <sven@gimp.org>

        * app/qmask.c: call undo_push_qmask() before removing the
        channel since the callback will set the qmask_state
        incorrectly otherwise. Fixes bug #13472.

        * app/undo.[ch]: code cleanup

        * plug-ins/common/gif.c: put save_comment into the values
        that are stored between calls to the GIF plug-in, so it
        remembers if the user wants to save the comment. Fixes
        bug #12755.
2000-06-07 22:51:23 +00:00
Manish Singh 0157738431 [patches from Daniel Egger]
* app/layers_dialog.c: Disable the "Add Layermask" menuentry
for indexed images.

* app/gimpimage.c: Leave gimp_image_add_layer_mask(...) after
spitting out messages when trying to add a layermask to an
indexed image.

-Yosh
2000-06-07 19:10:06 +00:00
Michael Natterer 5d43ca6c21 Makefile.am cursors/crosshair.xbm new files.
2000-06-06  Michael Natterer  <mitch@gimp.org>

	* Makefile.am
	* cursors/crosshair.xbm
	* cursors/crosshair_mask.xbm: new files.

	* app/cursorutil.[ch]
	* app/gdisplay.[ch]
	* app/gimprc.[ch]
	* app/preferences_dialog.c: Started to add the new set of
	consistent tool cursors. The crosshair one is the easy part
	but I wanted to see a result :) The other two options in
	the pref's cursor menu are still dummys.
2000-06-06 00:28:28 +00:00
Manish Singh f764c56d03 Be smarter about emitting the "invalidate_preview" signal.
comitted using Yosh's account...


--Sven
2000-06-03 18:19:22 +00:00
Michael Natterer 804af727f6 app/gimpunit.c all libgimp headers are included via gimp.h or gimpui.h, so
2000-05-31  Michael Natterer  <mitch@gimp.org>

	* app/gimpunit.c
	* libgimp/*: all libgimp headers are included via gimp.h or
	gimpui.h, so include <gtk/gtk.h> there and in the *.c files.
	Various cleanups.
2000-05-30 23:38:46 +00:00
Sven Neumann 9529e1e696 app/Makefile.am app/paint_core.c moved brush subsampling kernels into its
2000-05-29  Sven Neumann  <sven@gimp.org>

        * app/Makefile.am
        * app/paint_core.c
        * app/paint_core_kernels.h: moved brush subsampling kernels
        into its own header file and generated a slightly different
        kernel (using the new kernelgen tool, see below). The new
        kernel simulates a circular brush instead of a rectangular
        one and gives slightly different (lighter) results.

        * app/gimage_mask.c: when stroking a selection, offset the
        points by 0.5 to align the brushes with the pixel grid. This
        lets you create 1-pixel wide rectangles and ellipses.

        * tools/Makefile.am
        * tools/kernelgen.c: simple hack to generate subsampling
        kernels.
2000-05-29 08:40:29 +00:00
People doing a 16 bpc version of gimp b09291f06d Sat May 27 04:27:36 EDT 2000 calvinw@mindspring.com
* app/gimpimage.c
	--Fixed Fujita Yuji's bug (reported 27May2000 to
	gimp-developer) -larger than 64x64 brush and
	selection mask crashes smudge/dodgeburn/convolve
	This was a rowstrides bug in gimp_image_replace_image.
2000-05-27 08:48:50 +00:00
Michael Natterer 6fa33d6855 Libgimp cleanup part II (with a little help from Yosh who moved the CVS
2000-05-27  Michael Natterer  <mitch@gimp.org>

	Libgimp cleanup part II (with a little help from Yosh
	who moved the CVS files).

	* libgimp/Makefile.am
	* libgimp/gimpchannel_pdb.c
	* libgimp/gimpdisplay_pdb.c
	* libgimp/gimpdrawable_pdb.c
	* libgimp/gimpgradient_pdb.c
	* libgimp/gimphelp_pdb.c
	* libgimp/gimpimage_pdb.c
	* libgimp/gimplayer_pdb.c
	* libgimp/gimppalette_pdb.c
	* libgimp/gimpparasite_pdb.c
	* libgimp/gimpselection_pdb.c
	* libgimp/gimpunit_pdb.c: new names of all files which contain
	PDB wrappers.

	* modules/Makefile.am
	* libgimp/gimpcolordisplay.h
	* libgimp/gimpcolorselector.h
	* modules/gimpmodregister.[ch]: renamed.

	* libgimp/gimpparasiteF.h
	* libgimp/gimpparasiteP.h: removed because gimp.h had to include
	the private header anyway.

	* app/color_notebook.c
	* app/color_select.c
	* app/gdisplay_color.[ch]
	* app/gdisplay_color_ui.c
	* app/gimpbrushpipe.c
	* app/gimpdrawable.[ch]
	* app/gimpimage.c
	* app/gimpimage.h
	* app/gimpparasite.[ch]
	* app/gimprc.c
	* app/image_new.c
	* app/layer.c
	* app/parasite_cmds.c
	* app/parasitelist.[ch]
	* app/plug_in.c
	* app/procedural_db.c
	* app/undo.c
	* app/xcf.c
	* libgimp/gimp.[ch]
	* libgimp/gimpcolordisplay.h
	* libgimp/gimpparasite.[ch]
	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c
	* modules/colorsel_gtk.c
	* modules/colorsel_triangle.c
	* modules/colorsel_water.c
	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/FractalExplorer/Events.c
	* plug-ins/Lighting/lighting_apply.c
	* plug-ins/Lighting/lighting_shade.c
	* plug-ins/MapObject/mapobject_image.c
	* plug-ins/common/gpb.c
	* plug-ins/common/psp.c
	* plug-ins/sel2path/sel2path.c
	* po-libgimp/POTFILES.in
	* tools/pdbgen/pdb.pl
	* tools/pdbgen/pdb/parasite.pdb: changed includes accordingly.
2000-05-27 01:30:21 +00:00
Michael Natterer 863f7e1c44 Final (1.2) libgimp namespace cleanup part I:
2000-05-26  Michael Natterer  <mitch@gimp.org>

	Final (1.2) libgimp namespace cleanup part I:

	* app/gimpbrushpipe.c
	* app/gimpdrawable.[ch]
	* app/gimpimage.[ch]
	* app/gimpparasite.[ch]
	* app/gimprc.c
	* app/image_new.c
	* app/parasite_cmds.c
	* app/parasitelist.[ch]
	* app/parasitelistP.h
	* app/plug_in.c
	* app/undo.c
	* app/xcf.c
	* libgimp/color_display.h
	* libgimp/gimp.[ch]
	* libgimp/gimpdrawable.c
	* libgimp/gimpimage.c
	* libgimp/gimpparasite.c
	* libgimp/gimpprotocol.c
	* libgimp/parasite.[ch]
	* libgimp/parasiteF.h
	* libgimp/parasiteP.h
	* libgimp/parasiteio.[ch]
	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c
	* plug-ins/common/csource.c
	* plug-ins/common/gif.c
	* plug-ins/common/gpb.c
	* plug-ins/common/jpeg.c
	* plug-ins/common/psp.c
	* plug-ins/common/tiff.c
	* plug-ins/common/xbm.c
	* plug-ins/gap/gap_exchange_image.c
	* plug-ins/gdyntext/gdyntext.c
	* plug-ins/ifscompose/ifscompose.c
	* plug-ins/xjt/xjt.c: s/Parasite/GimpParasite/g,
	                      s/parasite_*/gimp_parasite_*/g

	* libgimp/gimpcompat.h: added the old names.

	* tools/pdbgen/pdb.pl
	* tools/pdbgen/pdb/parasite.pdb: dito and an ugly perl hack to work
	around a substitution clash. Perl gurus, feel free to fix it.
2000-05-26 22:28:40 +00:00
Michael Natterer 9c6b0b0c33 These changes enable help support for 3rd party plug-ins which install
2000-05-21  Michael Natterer  <mitch@gimp.org>

	These changes enable help support for 3rd party plug-ins which
	install their help files outside GIMP's main help dir.

	Instead of calling gimp_help(), gimp_plugin_help_func() etc.,
	all help callbacks now have to call gimp_standard_help_func()
	which has different implementations in the app and in libgimp.

	There is a new function gimp_plugin_help_register() which can
	be called during plug-in query. plug_in.c keeps a list of
	executable_name/help_path pairs. Plug-ins have to pass their
	exec. name to gimp_help() which uses the list to find the plug-in's
	help directory.

	* app/gimphelp.[ch]: gimp_help() now takes a help_path parameter.
	help_path == NULL means the standard help directory. Various
	changes to pass the help_path to the help browser.

	* app/gimprc.c: save the plug-in's help_path in the pluginrc file.

	* app/menus.c: ugly hack to enable help_paths in the "F1" callback.

	* app/plug_in.[ch]: many help_path related changes. Use g_basename()
	instead of strrchr(str,G_DIR_SEPARATOR), cosmetic cleanups.

	* app/internal_procs.c
	* app/gimphelp_cmds.c
	* tools/pdbgen/pdb/gimphelp.pdb: new procedure
	gimp_plugin_help_register(). gimp_help() takes a second parameter
	which is the executable name (not the help_path).

	* app/color_notebook.c
	* app/commands.c
	* app/lc_dialog.c
	* app/preferences_dialog.c
	* app/tools.c: call gimp_standard_help_func() instead of gimp_help().

	* libgimp/gimp.c: new function gimp_get_progname() which returns
	the full path of the plug-in's executable.

	* libgimp/gimp.h: export the new function,
	removed gimp_plugin_help_func(), gimp_help() takes the executable
	name as second parameter.

	* libgimp/gimpcompat.h: added gimp_plugin_help_func().

	* libgimp/gimphelp.c: a wrapper for gimp_plugin_help_register(),
	changed the calls to gimp_help.

	* libgimp/gimphelpui.[ch]: call gimp_standard_help_func() instead
	of gimp_help().

	* plug-ins/helpbrowser/helpbrowser.c: now called with an additional
	help_path parameter. Various changes to enable
	help_path != gimp_standard_help_path.

	Unrelated stuff:

	* app/batch.h: added missing GPL header.

	* app/gimpunit.c: had a LGPL header, merged some fprintf's into
	one call.

	* app/procedural_db.[ch]: cosmetic: g* types, s/g_malloc/g_new/,
	prototypes, indentation.

	* app/resize.c: use less packing widgets. didn't find the "offset"
	redraw bug :(
2000-05-21 17:41:02 +00:00
Sven Neumann b101e7bc85 enabled the (commented out) signal "invalidate_preview".
2000-05-12  Sven Neumann  <sven@gimp.org>

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

* app/layers_dialog.c: connect to the "invalidate_preview"
  signal to catch changes that need to be shown in the layer
  previews. Synthetize an expose event when a layer changes.

  Expose events are optimzed away by GTK+ if the widget is not
  visible. Therefore, previews not visible in the layers_dialog
  are not redrawn when they invalidate. Later the preview gets
  validated by the image_preview in lc_dialog but is never
  propagated to the layer_pixmap. We work around this by using an
  additional flag "layer_pixmap_valid" so that the pixmap gets
  updated once the preview scrolls into sight.

  Fixes bugs #10549, #10300 and #8787.

* app/channel.[ch]
* app/layer.[ch]: code review and indentation


--Sven
2000-05-12 17:07:54 +00:00
jaycox e2b3381917 Copy the name, tatto and parasites of the bottom layer to the new merged
* app/gimpimage.c: Copy the name, tatto and parasites of the
	bottom layer to the new merged layer in gimp_image_merge_layers.
2000-05-12 01:14:21 +00:00
jaycox af0c94abf6 new function image_map_clear that removes the preview without freeing the
* app/image_map.[ch]: new function image_map_clear that removes
	the preview without freeing the image_map.

	* app/brightness_contrast.c
	* app/color_balance.c
	* app/curves.c
	* app/hue_saturation.c
	* app/levels.c
	* app/posterize.c
	* app/threshold.c: Add a call to image_map_clear in the
	preview toggle button callback.  This makes the preview toggle
	button behave as expected.

	* app/histogram_tool: remove an unnecessary include.
2000-05-09 05:43:29 +00:00
Michael Natterer e475183f05 oops, forgot a debugging g_print().
2000-05-08  Michael Natterer  <mitch@gimp.org>

	* app/errors.c (gimp_fatal_error): oops, forgot a debugging
	g_print().

	* app/gdisplay.c (gdisplay_set_menu_sensitivity): there _can_ be
	an active drawable even if there is no layer. Also reordered
	the rest if the checks.
2000-05-08 21:20:53 +00:00
Michael Natterer 5948e2ab51 app/fileops.c return silently from save/save_as and grey out the menu
2000-05-08  Michael Natterer  <mitch@gimp.org>

	* app/fileops.c
	* app/gdisplay.c: return silently from save/save_as and grey out
	the menu entries if there is no active drawable. Fixes #10239.
2000-05-08 00:40:10 +00:00
Michael Natterer ef751a454d gimprc.in replaced "color-cube" by "min-colors".
2000-04-30  Michael Natterer  <mitch@gimp.org>

	* gimprc.in
	* app/gimprc.[ch]: replaced "color-cube" by "min-colors".

	* app/app_procs.c: read unitrc/gimprc before displaying the splash.

	* app/colormaps.c: set min_colors and install_cmap before
	initializing GdkRGB.

	* app/gimprc.[ch]
	* app/gimpunit.c: don't call the splash's progress_update function.

	* app/plug_in.c: pass min_colors instead of color_cube to plugins.

	* app/preferences_dialog.c: widget for min_colors.

	* libgimp/gimp.[ch]: s/color_cube/min_colors/ but left
	gimp_color_cube() there for source level compatibility.

	* libgimp/gimpprotocol.[ch]: changed the GPConfig message
	accordinly and increased the gimp protocol version number because
	the change breaks binary compatibility. Also actually pass the
	use_xshm variable over the wire (was only in the GPConfig struct
	before).

	Was it the right thing to do to increase the version number??

	* libgimp/gimpui.c (gimp_ui_init): use the same code as the app
	for initializing GdkRGB. Never explicitly activate Gdk's SHM
	usage (only switch it off).

	* app/main.c
	* libgimp/gimp.c: reverted the handling of all signals except
	SIGCHLD back to plain old signal() because those signals are
	fatal anyway and sigaction() as used by gimp_signal_*() made
	debugging (stacktrace) impossible.

	* plug-ins/AlienMap/AlienMap.c
	* plug-ins/AlienMap2/AlienMap2.c
	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/bmp/bmp.c
	* plug-ins/borderaverage/borderaverage.c
	* plug-ins/dbbrowser/dbbrowser.c
	* plug-ins/faxg3/faxg3.c
	* plug-ins/fits/fits.c
	* plug-ins/flame/flame.c
	* plug-ins/fp/fp.c
	* plug-ins/fp/fp_gtk.c
	* plug-ins/gdyntext/Makefile.am
	* plug-ins/gdyntext/gdyntext_ui.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gflare/gflare.c
	* plug-ins/gfli/gfli.c
	* plug-ins/gimpressionist/gimpressionist.c
	* plug-ins/helpbrowser/helpbrowser.c
	* plug-ins/ifscompose/ifscompose.c
	* plug-ins/imagemap/Makefile.am
	* plug-ins/imagemap/imap_main.c
	* plug-ins/maze/maze_face.c
	* plug-ins/mosaic/mosaic.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/print/print.c
	* plug-ins/rcm/rcm_dialog.c
	* plug-ins/script-fu/script-fu-console.c
	* plug-ins/script-fu/script-fu-scripts.c
	* plug-ins/script-fu/script-fu-server.c
	* plug-ins/sel2path/Makefile.am
	* plug-ins/sel2path/sel2path.c
	* plug-ins/sgi/sgi.c
	* plug-ins/sinus/sinus.c
	* plug-ins/struc/struc.c
	* plug-ins/webbrowser/webbrowser.c
	* plug-ins/winsnap/winsnap.c
	* plug-ins/xjt/xjt.c: use gimp_ui_init().

	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/MapObject/mapobject_ui.c: only switch Gdk SHM usage off,
	never on. Don't use gimp_ui_init() here because of libgck.
2000-04-30 18:17:55 +00:00
jaycox 2ba5ae4c24 Fix the end of group check in gimage_mask_stroke. This fixes bug #8699
* app/gimage_mask.c: Fix the end of group check in
	gimage_mask_stroke.  This fixes bug #8699
2000-04-29 22:00:27 +00:00
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
Michael Natterer 4c24479a58 app/gdisplay.[ch] made the warning_dialog a per-display variable. The old
2000-04-26  Michael Natterer  <mitch@gimp.org>

	* app/gdisplay.[ch]
	* app/gdisplay_ops.c: made the warning_dialog a per-display
	variable. The old behaviour of having only one global variable
	can easily result in loss of work and should IMHO be considered
	a bug.
2000-04-26 21:04:35 +00:00
Tor Lillqvist 2041747fc6 Add gimp_ui_init.
2000-04-23  Tor Lillqvist  <tml@iki.fi>

* libgimp/gimpui.def: Add gimp_ui_init.

* libgimp/makefile.{cygwin,msc} (gimpui_OBJECTS): Add gimpui.

* app/makefile.{cygwin,msc}
* plug-ins/makefile.{cygwin,msc}: New installation directory.

* app/datafiles.c (is_script): Must not g_free() value returned by
g_getenv().

* plug-ins/gdyntext/font_selection.c: Don't include gdkx.h with
GTk+ 1.3.
2000-04-23 20:27:41 +00:00
Michael Natterer 63dc6ed333 app/fuzzy_select.c app/selection_options.h moved the "Threshold" scale
2000-04-20  Michael Natterer  <mitch@gimp.org>

	* app/fuzzy_select.c
	* app/selection_options.h
	* app/tool_options.c: moved the "Threshold" scale from the fuzzy
	select options to the selection options structure, so none of the
	selection tools needs it's own tools options structure.

	* app/bucket_fill.c: moved "Threshold" after "Sample Merged" as in
	the fuzzy select options.
2000-04-20 15:57:13 +00:00
jtl 5c816c6b38 *** empty log message *** 2000-04-16 12:10:24 +00:00
Sven Neumann 949b6e3f34 changed GIMP_MIN_RESOLUTION to 5e-3,
a bunch of small cleanups here and there


--Sven
2000-04-06 18:59:48 +00:00
Michael Natterer 8ed5f8ce06 app/color_panel.[ch] app/color_picker.c removed the public function
2000-04-03  Michael Natterer  <mitch@gimp.org>

	* app/color_panel.[ch]
	* app/color_picker.c
	* app/qmask.c: removed the public function color_panel_free() and
	fake a real widget's behaviour by connecting to the panel widget's
	"destroy" signal.

	* app/channels_dialog.c
	* app/layers_dialog.c: cleaned up and sync'ed the code where
	possible (without changing the logic).
2000-04-03 15:40:30 +00:00
Michael Natterer 9c834ce564 app/gimpdnd.[ch] app/channels_dialog.c removed the GdkGC parameter from
2000-04-03  Michael Natterer  <mitch@gimp.org>

	* app/gimpdnd.[ch]
	* app/channels_dialog.c
	* app/layers_dialog.c: removed the GdkGC parameter from
	gimp_dnd_set_drawable_preview_icon() since it's no longer used.

	* app/gimpimage.c: dirty the view correctly after applying the
	layer mask. Don't gdisplays_flush() because it's the job of the
	caller.

	* app/layers_dialog.c: when applying a layer mask, flush either
	the display or just the layer_widget, depending on the previous
	visibility state of the mask. Cleanups.

	* plug-ins/print/gimp_color_window.c
	* plug-ins/print/gimp_main_window.c: including config.h re-enables
	i18n.
2000-04-03 01:11:03 +00:00
Michael Natterer 5735b2adcd add an "add_alpha" parameter to allow selected regions to be extracted
2000-03-26  Michael Natterer  <mitch@gimp.org>

	* app/gimage_mask.[ch] (gimage_mask_extract): add an "add_alpha"
	parameter to allow selected regions to be extracted without having
	an alpha channel added.

	* app/global_edit.c: pass add_alpha = TRUE.

	* app/transform_core.[ch]: made the transform core work on
	non-layer drawables even if no selection is present. Fixes #7485
	and #7555.

	- transform_core_cut(): extract the mask without alpha if
	  operating on a non-layer without having a selection.
	- transform_core_paste(): return a boolean indicating success
	  instead of a layer and handle channels correctly.
	- transform_core_do(): if the "floating_tiles" passed to the
	  function are from an un-floated non-layer, treat the whole
	  non-layer as alpha channel and never enter the loop which
	  transforms the (not present) color channels.
	  Also clip the result to ensure that the channel never grows
	  larger then the image.

	* app/tools_cmds.c
	* tools/pdbgen/pdb/tools.pdb: transform_core_paste() returns a
	gboolean now.
2000-03-26 18:39:03 +00:00
Sven Neumann 97f08d8235 reverted Martin's changes.
--Sven
2000-03-25 23:44:38 +00:00
Stanislav Brabec 2481607268 patches from Martin Weber and Peter Kirchgessner 2000-03-25 22:19:17 +00:00
Sven Neumann 99f85a4626 applied gimp-quinet-000308-0, gimp-quinet-000310-0 and gimp-quinet-000322-0
--Sven
2000-03-24 14:54:59 +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
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
Andy Thomas a78e51c4fa Thu Mar 9 22:29:14 GMT 2000
* app/gimpimage.c

	An Images tattoos state can equal the highest tattoo in the image.
2000-03-09 22:41:19 +00:00
Sven Neumann ad55aef27e gimp_drawable_get_color_at() now silently returns NULL again if the
* app/gimpdrawable.c: gimp_drawable_get_color_at() now silently
returns NULL again if the coordinates are out of range. A lot of
code using this function relies on this feature and correctly
checks the return value. No need to emit critical warnings here.

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

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

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

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

* app/image_map.c: indentation


--Sven
2000-03-09 11:58:03 +00:00
Michael Natterer 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
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 6be08358fb s/"Fill Options"/"Fill Type"/
2000-03-02  Michael Natterer  <mitch@gimp.org>

	* app/channel_ops.c: s/"Fill Options"/"Fill Type"/

	* app/gimpparasite.c: removed _() around the parasiterc header.
2000-03-02 02:23:26 +00:00
Michael Natterer a48c1d7065 gimp_drawable_get_color_at(): put the check below back but only require a
2000-03-01  Michael Natterer  <mitch@gimp.org>

	* app/gimpdrawable.c: gimp_drawable_get_color_at(): put the check
	below back but only require a non-indexed drawable if the drawable
	doesn't have an image.
	(The function may call gimp_image_get_color() with gimage == NULL
	for RGB and GRAY colors because we don't need a colormap to
	transform them to RGB space).
	This was the obscure special case (TM).
2000-03-01 22:05:22 +00:00
Michael Natterer c52aec7129 gimp_drawable_get_color_at(): don't g_return_val_if_fail(!indexed, NULL)
2000-03-01  Michael Natterer  <mitch@gimp.org>

	* app/gimpdrawable.c: gimp_drawable_get_color_at(): don't
	g_return_val_if_fail(!indexed, NULL) because the function seems to
	work fine for all kinds of drawables. Fixes #6756. Or is this
	check needed for some obscure special case?
2000-03-01 21:42:57 +00:00
Michael Natterer 990a071c4b set <Image>/File/Revert... insensitive if the image has no filename.
2000-03-01  Michael Natterer  <mitch@gimp.org>

	* app/gdisplay.c: set <Image>/File/Revert... insensitive if the
	image has no filename.

	* plug-ins/common/uniteditor.c: minor fix.

2000-03-01  Michael Natterer  <mitch@gimp.org>

	* C/dialogs/layers/Makefile.am
	* C/dialogs/layers/index.html
	* C/dialogs/layers/apply_mask.html: removed.

	* C/layers/Makefile.am
	* C/layers/index.html
	* C/layers/apply_mask.html
	* C/layers/delete_mask.html: new files.
2000-02-29 23:32:39 +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
Garry R. Osgood e99bf6ac94 app/gimpimage.c Fixed small typo.
2000-02-27 Garry R. Osgood <gosgood@idt.net>

* app/gimpimage.c Fixed small typo.
2000-02-27 19:57:49 +00:00
Sven Neumann 1bd3c65443 removed warnings, cleaned up the source, unmarked
internal error messages for translation


--Sven
2000-02-27 12:09:29 +00:00
Garry R. Osgood 8769bbb456 app/commands.c app/gimpimage.c app/layer.c app/layer.h app/resize.c
2000-02-26 Garry R. Osgood <gosgood@idt.net>
* app/commands.c
* app/gimpimage.c
* app/layer.c
* app/layer.h
* app/resize.c
* app/resize.h

Aliasing artifacts that changed relative positions
of layers under scaling, giving rise to #5271, are
minimized by a new layer.c function,
layer_scale_by_factors(). Closes #5271. See
http://idt.net/~gosgood/gimp-patch/patch07.html for
further detail. See also usage documentation for
layer_scale() and layer_scale_by_factors() in
layer.c.

Provided logic for the Scale Image dialog box to
pre-check an image's layers for the possibility that
a particular scaling, s: 0 < s < 1, reduces a layer
dimension to zero. Should this case prevail, a
boolean dialog box warns the user of the
possibility. The user may (1) Cancel, returning
focus to Scale Image and the possibility of
corrective adjustment, or (2) OK the scaling. The
layers that will vanish upon the new scaling are
culled from the GimpImage::layers list first.
2000-02-26 18:46:08 +00:00
Michael Natterer 8f4adbadbf app/gimpbrush.[ch] app/gimpbrushgenerated.[ch] app/gimpbrushlist.[ch]
2000-02-24  Michael Natterer  <mitch@gimp.org>

	* app/gimpbrush.[ch]
	* app/gimpbrushgenerated.[ch]
	* app/gimpbrushlist.[ch]
	* app/gimpbrushlistP.h
	* app/gimpbrushpipe.[ch]
	* app/gimpbrushpipeP.h: did a brushes code-review: indentation,
	removed some includes, didn't find a bug :-)

	* app/gradient.c
	* app/palette.c: we were leaking all gradient and palette preview
	pixmaps as well as all lists of palette colors on each refresh.

	* libgimp/gimpenv.c: updated documentation.
2000-02-24 11:39:26 +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
Michael Natterer 868888fe21 fixed a memleak.
2000-02-24  Michael Natterer  <mitch@gimp.org>

	* app/datafiles.c: fixed a memleak.

	* app/gimpbrushlist.c
	* app/gradient.c
	* app/palette.c: use the gimp_path_* functions, cleanups.

	* app/gimpbrushpipe.c: call the "destroy" function of the parent
	class, not of the object class. Fixes a huge memleak on each
	"Refresh".

	* app/gimpbrushpipeP.h
	* app/gimplist.c
	* app/gimpbrush.c: did some cleanups while searching the brush
	memleak.

	* libgimp/gimpenv.c: gimp_path_get_user_writable_dir(): return a
	copy of the string.

	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gflare/gflare.c: g_free() the string returned by
	gimp_path_get_user_writable_dir().
2000-02-24 01:52:31 +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
Michael Natterer a4f6d59af0 app/color_area.[ch] pass masks for the "default" and "swap" pixmaps to the
2000-02-22  Michael Natterer  <mitch@gimp.org>

	* app/color_area.[ch]
	* app/interface.c: pass masks for the "default" and "swap" pixmaps
	to the color_area constructor and use them to create a clip mask
	in color_area_draw().

	* app/datafiles.[ch]: some harmless cleanups.

	* libgimp/gimppixmap.c: use gtk_pixmap_set_build_insensitive()
	instead of accessing the field directly.
2000-02-22 15:14:54 +00:00
Michael Natterer ed071953b2 fixed a gtk-doc comment.
2000-02-21  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimppixmap.c: fixed a gtk-doc comment.

	* libgimp/gimpenv.[ch]: new functions:

	- gimp_path_parse(): Creates a GList of strings from a searchpath
	  string and performs sanity checks.
	- gimp_path_to_str(): Creates a searchpath string from the list
	  returned by gimp_path_parse().
	- gimp_path_free(): Frees the list returned by gimp_path_parse().
	- gimp_path_get_user_writable_dir(): Returns the first dir in a
	  path where the user has write access. With this function the
	  "Save" dialogs of some plugins always show the plugin's
	  subdirectory of the user's gimp_dir instead of the read-only
	  global one.

	* app/datafiles.[ch]
	* app/gimpbrushlist.c: use the new functions and
	s/datafile_loader_t/GimpDataFileLoaderFunc/.

	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/FractalExplorer/FractalExplorer.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gflare/gflare.c
	* plug-ins/gimpressionist/gimpressionist.c: use the new functions.
2000-02-21 17:15:30 +00:00
Sven Neumann e836901c83 more places with Solaris compilation problems
--Sven
2000-02-21 12:05:45 +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
Manish Singh 45842e262a added 2000 to the copyrights
* tools/pdbgen/*.pl: added 2000 to the copyrights

* tools/pdbgen/lib.pl: it's foo_pdb.[ch] now

* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/parasite.pdb: reenabled sanity checks for the
drawable IDs and the parasite names

* app/drawable.c
* app/gimpdrawable.c: added a bunch of g_return_if_fail's, instead
of the silent check and return in many functions. This should also
be done in gimpimage.c and the like too.

* app/gimpdrawable.h
* app/layer.c: cosmetic code fix

-Yosh
2000-02-17 11:44:27 +00:00
Sven Neumann 1417c36b4b copy image parasites on image duplicate (fixes bug #6270)
--Sven
2000-02-16 20:44:39 +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
GMT 2000 Andy Thomas 8f6bca3234 gimp/app/gimpdrawable.c gimp/app/channel.c gimp/app/layer.c
Tue Feb 15 23:27:42 GMT 2000 Andy Thomas <alt@gimp.org>

	 * gimp/app/gimpdrawable.c
	 * gimp/app/channel.c
	 * gimp/app/layer.c
	 * gimp/app/channel.h
	 * gimp/app/layer.h
	 * gimp/app/gimpimage.c
	 * gimp/app/gimpimage.h
	 * gimp/app/gimpdrawable.h
	 * gimp/tools/pdbgen/pdb/paths.pdb
	 * gimp/tools/pdbgen/pdb/layer.pdb
	 * gimp/tools/pdbgen/pdb/channel.pdb
	 * gimp/tools/pdbgen/pdb/gimage.pdb
	 * gimp/app/channel_cmds.c
	 * gimp/app/gimage_cmds.c
	 * gimp/app/internal_procs.c
	 * gimp/app/layer_cmds.c
	 * gimp/app/paths_cmds.c

	New gimp_*_set_tattoo procedures. This allows save/load plugins
        to save/restore tattoo states of layers, channels and paths. Note the
	internal tattoo state can also be set, however rigorous checks are
	performed to make sure that the internal tattoo states of layer,
	channels and paths are consistent and that the new state value is
	newval > MAX(MAX(layertattoo),MAX(channeltattoo),MAX(pathtattoo)).
2000-02-15 23:49:03 +00:00
Tor Lillqvist 970ad834d1 libgimp/gimp.def libgimp/gimpui.def libgimp/makefile.{cygwin,msc}
2000-02-15  Tor Lillqvist  <tml@iki.fi>

* libgimp/gimp.def
* libgimp/gimpui.def
* libgimp/makefile.{cygwin,msc}
* app/makefile.{cygwin,msc}
* plug-ins/makefile.{cygwin,msc}: Updates.

* app/datafiles.c (is_script): New Win32-only function, which
tests if a file's extension matches one of the extensions in the
PATHEXT environment variable (which the cmd.exe command
interpreter also uses). This is to avoid starting applications
associated with any random data file the user might have dropped
in the plug-ins folder, while still supporting plug-ins written in
scripting languages.

* app/gimpparasite.c (gimp_parasiterc_save): (Win32:) Cannot
rename to an existing file.

* plug-ins/Lighting/lighting_image.c
* plug-ins/Lighting/lighting_share.c
* plug-ins/MapObject/mapobject_preview.c
* plug-ins/MapObject/mapobject_shade.c: Use G_PI.

* plug-ins/common/gz.c: #ifdef G_OS_WIN32 was used before its
potential definition via glib.h.

* plug-ins/common/jpeg.c: Also recognize Exif files, which are
typically produced by digital cameras. The usually have a .jpg
file name extension, and would thus already match this plug-in,
but add the magic string just in case. They are loaded just fine
by libjpeg even if they don't have the JFIF signature.

* plug-ins/common/tiff.c: Set TIFF warning and error handler, so
we get to pass libtiff's messages through the normal channels.
2000-02-14 22:44:06 +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
Sven Neumann 4ea02e0cd1 a first approach at duplicating Paths and a small cleanup to
FractalExplorer


--Sven
2000-02-14 11:25:28 +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
Marc Lehmann 9d02cb0d45 *** empty log message *** 2000-02-13 00:11:26 +00:00
Sven Neumann e01d964527 made parasites use g* types and documented gimpchainbutton
--Sven
2000-02-12 02:16:59 +00:00
Michael Natterer 9ffed65563 removed the query boxes.
2000-02-10  Michael Natterer  <mitch@gimp.org>

	* app/gimpui.[ch]: removed the query boxes.

	* po-libgimp/POTFILES.in
	* libgimp/Makefile.am
	* libgimp/gimpui.h
	* libgimp/gimpquerybox.[ch]: new files. Added a boolean query box
	to get rid of all those handmade "yes/no" query dialogs. Changed
	the query box callback prototypes to return the entered value
	instead of a pointer to it.

	* app/commands.c
	* app/display_ops.c
	* app/gradient.c
	* app/palette.c
	* app/paths_dialog.c: correctly call the new query box functions
	and use the boolean query box instead of inventing this wheel over
	and over again.

	* app/global_edit.[ch]: same as above and cleaned up the public
	interface.
2000-02-10 21:54:12 +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
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 8d21d63a6e reverted stanislavs change
--Sven
2000-02-04 14:30:46 +00:00
Stanislav Brabec 95f9325a9e change to foregroung in edit_fill 2000-02-03 21:44:08 +00:00
Sven Neumann ecba6f6aa0 put files from modules dir back into POTFILES.in
--Sven
2000-02-01 12:10:10 +00:00
Sven Neumann fd2fb679c2 i18n cleanups
--Sven
2000-02-01 00:16:50 +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 4006d434df more sanity checks in gimpdrawable.c and a few i18n issues
--Sven
2000-01-31 13:07:39 +00:00
Michael Natterer 03015f85d7 merged the table attach helper functions into one function.
2000-02-01  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimpwidgets.[ch]: merged the table attach helper
	functions into one function.

	* app/*
	* plug-ins/*: changed the calls to gimp_table_attach_aligned()
	accordingly. Did minimal ui updates (spacing and stuff) in some
	files.
2000-01-31 03:13:02 +00:00
Sven Neumann 07cd86c451 use color_conversion routines out of libgimp
--Sven
2000-01-30 23:56:04 +00:00
Sven Neumann c69e85c8c9 app/brush_select.c create the dialog at mouse position if not the main
* app/brush_select.c
* app/gradient_select.c: create the dialog at mouse position if not
  the main dialog (which is session-managed)

* app/convert.c: small UI changes

* app/gradient.c: don't include session.h

* app/session.c: the gradient_select dialog is not the gradient_editor


--Sven
2000-01-29 23:06:06 +00:00
Stanislav Brabec 27814ebe13 fixed typo 2000-01-29 00:02:11 +00:00
Sven Neumann 3b03c8f219 In indexed_conversion dialog, use a pattern_selector instead op an
option_menu. Adam, I hope you like this...


--Sven
2000-01-28 16:47:57 +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 f3eb81f4c2 Applied a change suggested by Steinar H. Gunderson.
Fixes crashing on empty images (bug #5536).


--Sven
2000-01-25 21:00:54 +00:00
Sven Neumann 1a5185f087 Disabled "Layer to Imagesize" menu on empty images and "Rotate Layer" on
channels and masks.


--Sven
2000-01-25 20:19:59 +00:00
Manish Singh 81c1e88606 acconfig.h configure.in libgimp/Makefile.am libgimp/gimpregex.h
* acconfig.h
* configure.in
* libgimp/Makefile.am
* libgimp/gimpregex.h
* libgimp/regex.c
* app/Makefile.am
* app/regex.[ch]
* plug-ins/script-fu/Makefile.am
* plug-ins/script-fu/regex.[ch]
* plug-ins/script-fu/interp_regex.c
* tools/pdbgen/pdb/plug_in.pdb
* tools/pdbgen/pdb/procedural_db.pdb: reverted previous regex move
patch. This does *not* belong in libgimp and is just bloat. We'll
use the regex functionality in glib once it has it.

* acinclude.m4
* config.guess
* config.sub
* ltconfig
* ltmain.sh: upgrade to libtool 1.3.4

* app/convert.c
* app/gimpbrushpipe.c: minor cleanups

-Yosh
2000-01-24 22:16:36 +00:00
Sven Neumann bceb97a993 Renamed gimage->ref_count to disp_count and slightly changed
the way it is used. As the new name suggests it is only used
to count the number of displays associated with an image. It
is now impossible to delete an image that has an associated
display. You have to delete the display instead. Before this
change it was possible to delete an image through the PDB that
was created through the UI and bad things happened soon...


--Sven
2000-01-23 13:44:12 +00:00
Sven Neumann 8a8ab4c245 In edit_clear and edit_fill return TRUE if the selection
is empty, since the operation succeded by doing nothing.
Returning FALSE here crashed lots of script-fus.


--Sven
2000-01-22 17:53:23 +00:00
Sven Neumann 489e5ab29e call setup_scale when changing the resolution or unit, so the rulers
get updated correctly


--Sven
2000-01-22 15:05:42 +00:00
Sven Neumann 8b178fcbcc Implemented the "removed" signal for channels and connected qmask to it
to keep the buttons in sync when a qmask channels gets deleted manually.
Fixes bug #2516.


-Sven
2000-01-20 17:10:49 +00:00
Garry R. Osgood 8029644a2d Uncovered buglet spawned by #5045 fix. edit_paste() now properly supplies
2000-01-16  Garry R. Osgood <gosgood@idt.net>
* app/global_edit.c
global_edit.c: Uncovered buglet spawned by #5045 fix.
edit_paste() now properly supplies a GimpImageType
parameter in the case where a GimpImage has no
active_drawable: occurs when the user invokes a
paste into an empty image.
2000-01-16 09:34:45 +00:00
Garry R. Osgood 87d7965c22 app/layers_dialog.c layers_dialog_flush() now has only one entry and exit
2000-01-15  Garry R. Osgood <gosgood@idt.net>
* app/layers_dialog.c
* app/global_edit.c
layers_dialog.c:layers_dialog_flush() now has
only one entry and exit point, so that
suspend_gimage_notify is properly maintained.
Has bearing on (but likely does not fully solve)
bugs #4031, #4914, and #4927. see
http://idt.net/~gosgood/gimp-patch/patch04.html
and bug reports.
global_edit.c: edit_paste_as_new() now checks
if it has a valid layer from layer_new_from_tiles()
2000-01-15 16:32:02 +00:00
Michael Natterer fbfdf4b309 app/Makefile.am removed.
2000-01-14  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/tool_options_ui.h: removed.

	* app/tool_options.c
	* libgimp/gimpwidgets.[ch]: moved some more ui utility functions
	to libgimp.

	* app/airbrush.c
	* app/blend.c
	* app/bucket_fill.c
	* app/channel_ops.c
	* app/clone.c
	* app/color_picker.c
	* app/convolve.c
	* app/crop.c
	* app/dodgeburn.c
	* app/eraser.c
	* app/file_new_dialog.[ch]
	* app/flip_tool.c
	* app/image_new.[ch]
	* app/ink.c
	* app/layers_dialog.c
	* app/magnify.c
	* app/measure.c
	* app/paintbrush.c
	* app/pencil.c
	* app/smudge.c
	* app/text_tool.c
	* app/tool_options.c
	* app/transform_tool.c
	* app/xinput_airbrush.c: use the libgimp functions (esp. the radio
	button group constructor), some code cleanup.

	* plug-ins/common/csource.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/diffraction.c
	* plug-ins/common/jpeg.c
	* plug-ins/common/png.c
	* plug-ins/unsharp/unsharp.c: more plugin ui tuning.

	* plug-ins/unsharp/Makefile.am
	* plug-ins/unsharp/dialog_f.[ch]
	* plug-ins/unsharp/dialog_i.[ch]: removed.
2000-01-14 12:41:00 +00:00
Sven Neumann 65bfd700f9 in layer_new_from_tiles check if image_type has alpha to avoid obscure
* app/layer.c: in layer_new_from_tiles check if image_type has alpha
  to avoid obscure bugs if the function is not called correctly

* app/text_tool_cmds.c
* tools/pdbgen/pdb/text_tool.pdb: added a hint about using border = -1
  to suppress cropping of empty spaces around the text


--Sven
2000-01-11 21:23:38 +00:00
Manish Singh 66e95bbd49 let's not be redundant redundant. Made a real compat #define for
gimp_image_find_parasite

-Yosh
2000-01-11 21:07:17 +00:00
Garry R. Osgood 16d1795918 app/disp_callbacks.c app/gimage_mask.c app/global_edit.c app/interface.c
2000-01-11  Garry R. Osgood <gosgood@idt.net>
* app/disp_callbacks.c
* app/gimage_mask.c
* app/global_edit.c
* app/interface.c
* app/layer.c
* app/layer.h
* app/transform_core.c  Followup to #4708. Some clients
of layer_new_from_tiles() need to specify the
kind of layer they need; added a GimpImageType
parameter for this purpose. Closes #5045.
* app/paths_dialog.c paths_dialog_set_default_op()
now checks for the existence of the path_dialog
before manipulating its internals. Closes #5049;
2000-01-11 20:08:45 +00:00
Sven Neumann a579edc9ad some small fixes and the new GAP VCR Navigator
--Sven
2000-01-10 23:27:25 +00:00
Sven Neumann 9a9ee85e28 allow the user to choose the default for "Dot for Dot"
--Sven
2000-01-09 17:31:00 +00:00
Sven Neumann 2ad8a17e7e app/gdisplay.c app/gimage_cmds.c fixed typos
* app/gdisplay.c
 * app/gimage_cmds.c
 * tools/pdbgen/pdb/gimage.pdb: fixed typos

 * app/gimphistogram.c: indentation

 * app/histogramwidget.c: grab the pointer in the histogramwidget,
   so a button_release outside the widget is noticed correctly

 * app/levels.c: instead of undoing the user action, simply don't
   allow the user to set the range in the histogram_widget


--Sven
2000-01-09 12:40:10 +00:00
Sven Neumann 1b10f54b5a overworked my latest change and fixed some typos
--Sven
2000-01-08 12:42:53 +00:00
Sven Neumann 440b86e12f don't set the resolution to zero
got rid of the compiler warnings in psp.c


--Sven
2000-01-08 10:55:05 +00:00
Michael Natterer 884f223569 app/[all files using the dialog or action area constructors] added a
2000-01-06  Michael Natterer  <mitch@gimp.org>

	* app/[all files using the dialog or action area constructors]
	* libgimp/gimpdialog.[ch]: added a "slot_object" agrument to the
	constructors' va_args lists to allow the action area buttons to be
	connected wich gtk_signal_connect_object().

	* libgimp/gimphelp.c: show the correct help page for plugins.

	* plug-ins/common/CEL.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/Makefile.am
	* plug-ins/common/aa.c
	* plug-ins/common/align_layers.c
	* plug-ins/common/animationplay.c
	* plug-ins/common/apply_lens.c
	* plug-ins/common/blinds.c
	* plug-ins/common/blur.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/checkerboard.c
	* plug-ins/common/colorify.c
	* plug-ins/common/colortoalpha.c
	* plug-ins/common/compose.c
	* plug-ins/common/convmatrix.c
	* plug-ins/common/csource.c
	* plug-ins/common/cubism.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/decompose.c
	* plug-ins/common/deinterlace.c
	* plug-ins/common/depthmerge.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/destripe.c
	* plug-ins/common/diffraction.c
	* plug-ins/common/displace.c
	* plug-ins/common/grid.c
	* plug-ins/helpbrowser/Makefile.am
	* plug-ins/helpbrowser/helpbrowser.c: use the dialog constructor
	and enable the "F1" help key.
2000-01-06 16:40:17 +00:00
Garry R. Osgood ef3489560b *app/undo.c: GimpChannel->bounds_known field on the image Selection Mask
2000-01-05  Garry R. Osgood <gosgood@idt.net>
*app/undo.c: GimpChannel->bounds_known field on the
image Selection Mask channel was never invalidated when restored
via undo_pop_channel_mod(). Caused PixelRegion iterators calculating
new selection boundaries to use cached image dimensions, thereby
trying to access tiles non-existent in the scaled-down image.
Closes #4840.
2000-01-05 19:14:08 +00:00
Sven Neumann 5e4e7d8884 Fixed a crash that oxccured when gimp_export_image() was called with an
active floating selection.
gimp_image_merge_visible_layers() and gimp_image_flatten() did not handle
floating selections.


--Sven
2000-01-05 09:09:46 +00:00
Tor Lillqvist a075daa211 Add gimpcolorspace object.
2000-01-04  Tor Lillqvist  <tml@iki.fi>

* libgimp/makefile.{cygwin.msc}: Add gimpcolorspace object.

* libgimp/gimp.def: Add functions from it.

Fixes from Hans Breuer:

* app/datafiles.c: redefine the executable flag for Win32
to _S_IREAD, to get _all_ files from the plug-in dirs as
executables (including scripts)

* app/main.c: Win32-specific changes to allow building Gimp as a
console application, with all its benefits (like inheriting the
console), but hide it if the user doesn't want it. Also, if stdout
goes to a console, give the user a chance to read the help or
version messages. (tml: I am not convinced that it is better to
build gimp as a console application, but let's try it this way for
a while.)

* app/makefile.{cygwin,msc}: Build as console application, and
link with shell32 library.

* app/paint_core.c (paint_core_motion): Pass the value of a call
to the function gimage_active_drawable() to the paint_func,
instead of just passing the address of gimage_active_drawable...

(tml: This code is only called when the TOOL_TRACES_ON_WINDOW flag
is on, and only the clone tool sets that, and the clone tool's
paint_func doesn't use the drawable argument, so this hasn't
caused any trouble.)

* app/plug_in.c: On Win32, to support scripts, use new function
xspawn() instead of _spawnv. Add some more code to properly kill
plug-ins.

* libgimp/color_display.h: Add G_MODULE_EXPORT declarations.
2000-01-04 17:46:41 +00:00
Manish Singh bc28e6fa80 fill dummy gimage->base_type as well
* app/color_area.[ch]: fill dummy gimage->base_type as well

* app/gdisplay_color.[ch]: add attach_clone, configure, and configure_cancel
functions.

* app/gdisplay.[ch]: remove notify hacks, don't need them anymore. Add cd_ui
field for cdisplay ui.

* app/commands.c: make display filter dialog per display instead of global

* libgimp/color_display.h: ok/cancel notification callbacks

* modules/cdisplay_gamma.c
* app/gdisplay_color_ui.[ch]: changes for above, enabled configuration dialog
and color_area dummy handling

* app/color_balance.c
* app/paint_funcs.c: #include "libgimp/gimpcolorspace.h"

* plug-ins/webbrowser/web-browser.scm: updated urls

-Yosh
2000-01-03 07:49:19 +00:00
Sven Neumann 3fc4eb846c libgimp/gimpcolorspace.c Prefixed all functions with gimp_ to avoid
* libgimp/gimpcolorspace.c
* libgimp/gimpcolorspace.h: Prefixed all functions with gimp_
  to avoid namespace collisions.

Changed the License in the header to LGPL. If you don't like this,
please remove those files! (But I would like them to stay since this
moving those functions into libgimp is something that should have
happened much earlier.) Nice work, Daniel!
2000-01-03 01:58:43 +00:00
Marc Lehmann 14d6add3d8 *** empty log message *** 2000-01-02 22:30:20 +00:00
Manish Singh a5f9b334a0 cosmetic fix
* Makefile.am: cosmetic fix

* libgimp/color_display.h
* modules/cdisplay_gamma.c: add clone method

* app/color_area.[ch]
* app/gdisplay.[ch]
* app/gdisplay_color.c
* app/gdisplay_color_ui.c: preliminary support for color_area filter
(really just a sync to home machine)

* app/nav_window.c: minor cleanup

* tools/pdbgen/app.pl: initialize gbooleans to FALSE, not 0

* tools/pdbgen/lib.pl: some more arg work

-Yosh
2000-01-02 00:16:47 +00:00
Sven Neumann a34415cb7b Removed the obsolete drawable argument from layer_from_tiles.
The layer_type is now taken from the base_type of the image.
Also changed the name to layer_new_from_tiles.


--Sven
2000-01-01 18:33:40 +00:00
Sven Neumann 5969ed3911 Fixed bug #4871.
--Sven
2000-01-01 13:59:58 +00:00
Sven Neumann 7cd5c09f59 more i18n fixes
--Sven
1999-12-28 14:09:20 +00:00
Sven Neumann e6619b5153 unmarked a few strings for translation
--Sven
1999-12-28 10:30:50 +00:00
Manish Singh 120c64dfa6 added an assert for name != NULL
* app/gimpdrawable.c: added an assert for name != NULL

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

-Yosh
1999-12-21 00:36:07 +00:00
Sven Neumann a00ed6feb0 more cosmetic stuff
--Sven
1999-12-14 23:09:54 +00:00
Sven Neumann 73ff9a1757 cosmetic stuff
--Sven
1999-12-14 14:10:34 +00:00
Adam D. Moss 22b8c94feb Mon Dec 13 19:25:39 GMT 1999 Adam D. Moss <adam@gimp.org
* app/tile.c
	* app/tile.h
	* app/tile_manager.c
	* app/tile_swap.c:

	Allocate Tile's array of TileRowHints dynamically.  Make type
	of TileRowHint explicit since it's fairly space-critical.
	Can save several hundred K of memory with this and struct
	changes.

	Added warnings for old basically-untested-or-insane
	paths through the tile referencing code.

	* app/tile_pvt.h: Shrink down and rearrange fields of Tile
	struct to save some space with gcc's padding for most people.

	* app/paint_funcs.c: Use tile_sanitize_rowhints() to ensure
          that rowhints have been allocated before use.

	* app/channel_ops.c
	* app/gdisplay.c
	* app/pixel_region.c: Cosmetic, sanity or unfinished debug
          changes (the latter commented out) for fun and reference.
1999-12-13 19:48:24 +00:00
GMT 1999 Austin Donnelly 8e134070e6 fix problem with layers with non-zero offset.
Fri Dec 10 23:55:10 GMT 1999  Austin Donnelly  <austin@gimp.org>

	* app/iscissors.c: fix problem with layers with non-zero offset.

	* app/undo.c: Garry, you missed one "0 -> UNDO_NULL" cleanup :)
1999-12-11 00:10:09 +00:00
Garry R. Osgood fe6ee9d1af app/gimpimage.c app/undo.c app/undo_types.h docs/undo.txt Changed sanity
1999-12-10 Garry R. Osgood <gosgood@idt.net>
	* app/gimpimage.c
	* app/undo.c
        * app/undo_types.h
        * docs/undo.txt
        Changed sanity checks in undo_pop/free_layer_mask() to LAYER_MASK_ADD_UNDO
	and LAYER_MASK_REMOVE_UNDO to be consistent with undo_push_layer_mask()
	These now nvoke proper cleanup and release of GimpLayerMasks.
	* docs/undo.txt: New file, an overview of undo logic written by
	Austin Donnelly
	* app/undo.c
	* app/undo_types.h
	* app/gimpimage.c : Introduced a new UndoType, UNDO_NULL, which maps
	to zero, introducing that value into the enumerated types. Use the
        type to signal type unknown/error/untyped conditions.

	Full patch documentation at
	http://idt.net/~gosgood/gimp-patch/patch02.html
1999-12-10 20:55:57 +00:00
Sven Neumann d4250cb410 please picky compilers
--Sven
1999-12-06 22:44:40 +00:00
Sven Neumann 1fdea67422 fix bug #2168
--Sven
1999-11-30 00:18:44 +00:00
GMT 1999 Andy Thomas 7dfc54b956 app/commands.c app/disp_callbacks.c app/gdisplay.c app/gimprc.c
Mon Nov 29 23:51:26 GMT 1999 Andy Thomas <alt@gimp.org>

	* app/commands.c
	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/gimprc.c
	* app/gimprc.h
	* app/info_window.c
	* app/info_window.h
	* app/preferences_dialog.c
	* app/undo_history.c

	Info dialog now has option to follow the mouse movements or
	the old behaviour of one dialog per display.
	This dialog still needs some work.

	Undo dialog now obeys the "tab" key in the display.
1999-11-30 00:11:08 +00:00
Sven Neumann 7427a53c95 Layer to Imagesize in C
--Sven
1999-11-27 14:00:26 +00:00
Michael Natterer bbda88d670 accidentially replaced "Gradient:" with "Blend:" in my last checkin to
1999-11-26  Michael Natterer  <mitch@gimp.org>

	* app/blend.c: accidentially replaced "Gradient:" with "Blend:" in
	my last checkin to this file. Put the right string back.

	* app/menus.c: fixed the plugin translation problem (YES!!! :-)
	Mysteriously, using g_strdup() et al. instead of composing the
	string to translate in a statically allocated array fixed the
	problem.

	* plug-ins/gap/gap_main.c: fixed a menu path.
1999-11-26 10:17:19 +00:00
Michael Natterer 720518b33a Removed the definitions of the tearoff menu items and build them on the
1999-11-25  Michael Natterer  <mitch@gimp.org>

	* app/menus.c: Removed the definitions of the tearoff menu items
	and build them on the fly. Added N_()-marked submenus instead so
	they get properly translated. Removed N_() from all separators.

	Hacked menu_translate(): Don't try to translate separators,
	tearoffs and the /File/MRUxx entries. Avoid multiple lookups in
	the "gimp-std-plugins" domain. Translating plug-in menu entries is
	still broken.

	Defined all filter categories for proper translation and a first
	try to order them and to add separators (please comment...).

	New Category /Filters/Web.

	(Did 'make update-po' in the po* directories and updated the
	german translations.)

	* app/about_dialog.c
	* app/brush_select.c
	* app/drawable.c
	* app/errors.c
	* app/free_select.c
	* app/gradient.c
	* app/info_dialog.c
	* app/plug_in.c
	* app/tool_options.c: minor i18n updates like removing _() from
	some error messages.

	* app/context_manager.c: a private context for the Xinput Airbrush.

	* plug-ins/common/video.c: Register under /Filters/Distorts

	* plug-ins/imagemap/imap_main.c: Register under /Filters/Web
	(Marc, what about putting "prepare for gif" and "webify" there?)

	* plug-ins/perl/po/de.po: s/Xtn/Xtns/g
1999-11-25 11:35:48 +00:00
Sven Neumann d82cdfc84b restrict movements to 15 degrees (the circle way)
--Sven
1999-11-25 01:59:14 +00:00
Manish Singh a111d2397b version number bump; add check for standalone gtkxmhtml from Sesse
* configure.in: version number bump; add check for standalone
gtkxmhtml from Sesse

* app/gimppreviewcache.c: applied gimp-yasuhiro-19991122-1, prevents
div by zero error

* plug-ins/script-fu/script-fu-scripts.c: INIT_I18N_UI before
gtk_init, reported by yasuhiro

* plug-ins/common/mapcolor.c
* plug-ins/common/sunras.c
* plug-ins/fits/fits.c: applied gimpkirchgessner-991121-[0-2],
i18n and sundry bug fixes

-Yosh
1999-11-24 23:58:46 +00:00
Marc Lehmann 643e1b1a92 *** empty log message *** 1999-11-24 20:11:03 +00:00
Michael Natterer b6a3dd5acf app/app_procs.c app/channels_dialog.c app/fileops.c app/gdisplay.c
1999-11-23  Michael Natterer  <mitch@gimp.org>

	* app/app_procs.c
	* app/channels_dialog.c
	* app/fileops.c
	* app/gdisplay.c
	* app/gdisplay_ops.c
	* app/layers_dialog.c
	* app/menus.[ch]
	* app/paths_dialog.c
	* app/plug_in.c: removed
	menus_set_[sensitive|state]_glue(). Removed the N_()'s from all
	menu paths which are not eventually passed to
	gtk_item_factory_create_item().

	* app/tool_options.c: minor updates.

	* app/file_new_dialog.c: reordered the action_area buttons.
1999-11-23 19:11:29 +00:00
GMT 1999 Adam D. Moss eb7d301336 Disabled the copy-on-write for gimage projection. Duplicate op will now
Mon Nov 22 13:18:40 GMT 1999  Adam D. Moss <adam@gimp.org>

	* app/channel_ops.c: Disabled the copy-on-write for gimage
	projection.  Duplicate op will now take as much time and
	memory as GIMP 1.0 in this respect.  That sucks, but I'm
	damned if I can follow the twisted paths which GIMP treads
	in making this bahave badly.  Can you?
1999-11-22 13:22:53 +00:00
GMT 1999 Adam D. Moss e4702c0fa6 Removed erroneous spin-button limit, bumped up RGB->INDEXED precision a
Mon Nov 22 11:19:05 GMT 1999  Adam D. Moss <adam@gimp.org>

	* app/convert.c: Removed erroneous spin-button limit, bumped
	up RGB->INDEXED precision a little.
1999-11-22 11:26:58 +00:00
Marc Lehmann 42b92f84bf *** empty log message *** 1999-11-21 01:15:45 +00:00
Michael Natterer e46eaf8687 Reorganized the core menu items (everything except <Image>/Filters).
1999-11-20  Michael Natterer  <mitch@gimp.org>

	Reorganized the core menu items (everything except
	<Image>/Filters). Everything is of course trivial to change again,
	so please comment on the new "menu feeling" ;-)

	* app/menus.[ch]:

	- Applied the suggestions collected by Olof.
	- Added "..." to all items which open a dialog.
	- Introduced some additional separators (e.g. in "Dialogs").
	- Reorder some plugins and the color correct tools after
	  initialisation.
	- A menu entry to invoke the tooltips inspector.
	- A debugging menu entry which dumps the menu paths and their help
	  pages (will of course go away when the help sys is consistent).

	There are currently two identical "Help" menus because
	<Toolbox>/Help trashes the menu bar if the toolbox is too narrow
	(gtk doesn't seem to support multi-line menubars, any idea?)

	* app/app_procs.c: call menus_reorder_plugins() after loading the
	plugins to beautify the "Xtns" menu.

	* app/commands.[ch]: reordered some functions to match the new
	menu structure (for easier source navigation) and renamed some to
	be consistent (e.g. all help functions are now called help_*).

	Show/Hide the rulers with ordinary gtk_widget_[show|hide]()
	commands. I've tested it several times and it looks exactly the
	same as the old code which used internal gtk knowledge.

	* app/gdisplay.c: applied the menu changes to
	gdisplay_set_menu_sensitivity().

	* app/gimphelp.[ch]: new public function gimp_context_help() which
	invokes the tooltips inspector. Code cleanup.

	* app/resize.c: changed the dialogs' titles to match the menu entries.

	* app/session.c: renamed the gradient selection cmd callback to be
	consistent with brushes/patterns.

	* app/tools.c: added "..." to the menu paths of the tools which
	have dialogs.

	* app/fileops.c
	* app/channels_dialog.c
	* app/layers_dialog.c
	* app/paths_dialog.c: added some "...".

	* plug-ins/common/align_layers.c
	* plug-ins/common/autostretch_hsv.c
	* plug-ins/common/c_astretch.c
	* plug-ins/common/color_enhance.c
	* plug-ins/common/compose.c
	* plug-ins/common/decompose.c
	* plug-ins/common/mail.c
	* plug-ins/common/normalize.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/dbbrowser/dbbrowser.c
	* plug-ins/fp/fp.c
	* plug-ins/print/print.c
	* plug-ins/rcm/rcm.c: changed the menu paths and added "...".
1999-11-20 12:12:41 +00:00
GMT 1999 Andy Thomas 48fb5c0959 2nd Try.. First failed due to problems at my end....
2nd Try.. First failed due to problems at my end....

Sat Nov 20 00:27:26 GMT 1999 Andy Thomas <alt@gimp.org>

	* app/commands.c
	* app/gdisplay.c
	* app/gimprc.c
	* app/gimprc.h
	* app/nav_window.c
	* app/nav_window.h
	* app/preferences_dialog.c
	* app/scale.c
	* app/scroll.c

	Nav dialog now follows auto. There is an option in the
	preferences dialog (interface) that allow you to switch
	between this behaviour and the "original" way of having
	one nav dialog per display.
1999-11-20 00:46:58 +00:00
Sven Neumann ef362f4683 Read the mail!
--Sven
1999-11-18 17:56:01 +00:00
Tor Lillqvist 45b9d0f492 Fix copy&paste error.
1999-11-15  Tor Lillqvist  <tml@iki.fi>

* app/gimpcontext.c (gimp_context_copy_background): Fix copy&paste
error.
1999-11-15 22:07:27 +00:00
Michael Natterer 0c922cd3b0 app/airbrush.c app/apptypes.h app/brushes_cmds.c
1999-11-14  Michael Natterer  <mitch@gimp.org>

	* app/airbrush.c
	* app/apptypes.h
	* app/brushes_cmds.c
	* tools/pdbgen/pdb/brushes.pdb
	* app/bucket_fill.c
	* app/clone.c
	* app/gimpbrushpipe.c
	* app/paint_core.c
	* app/patterns.h
	* app/patterns_cmds.c
	* tools/pdbgen/pdb/patterns.pdb: removed the GimpBrushP and
	GPatternP types and use ordinary pointers instead.

	The following stuff makes the "no_data" behaviour consistent. As a
	side-effect it should make the gimp work when there are _really_ no
	brushes/patterns/gradients.

	* app/brush_select.c
	* app/pattern_select.c: set the initial brush/pattern name to "No
	Brushes/Patterns available" instead of "Active".

	* app/devices.c: set the device contexts' brush/pattern/gradient
	names if we started with no_data, so we find them on refresh.

	* app/gimpbrushlist.c: set the name of the standard_brush to
	"Standard".

	* app/gimpcontext.c: don't replace the current
	brush/pattern/gradient's name if the new one to be set is the
	standard one. Together with the change in devices.c, this ensures
	that we get what is set in devicerc. Minor fixes.

	* app/gradient.c: changed gradients_init() to work like the other
	data init functions. Only insert a default gradient in the
	gradients list when the editor is opened (this means that the
	gradients now behave like brushes/patterns when we start with
	"no_data").
	New function gradient_update() avoids tons of useless redraws of
	all clist gradient previews whenever the gradient editor wants to
	update it's large preview.

	* app/gradient_select.c: don't segfault when the user tries to
	drag from an empty gradient list.

	* app/patterns.c: set the index of the standard_pattern to -1 to
	indicate that it's not part of the pattern list.
1999-11-14 10:50:19 +00:00
Sven Neumann d70a75c486 app/airbrush.c app/convolve.c app/dodgeburn.c app/paint_options.h
* app/airbrush.c
        * app/convolve.c
        * app/dodgeburn.c
        * app/paint_options.h
        * app/paintbrush.c
        * app/pencil.c
        * app/smudge.c
        * app/tool_options.c: cleaned up pressure sensitivity for paint
        tools. I had to rename Pressure to Rate in a few tools to avoid
        confusion with the Pressure option that applies to the brush.

        * app/gimplut.c: indentation, no changes

--Sven
1999-11-13 01:02:27 +00:00
Sven Neumann a265c91c65 plugged more memleaks
--Sven
1999-11-06 18:19:41 +00:00
Sven Neumann c05b97ec0b Reverted my latest change. It disturbed image rendering.
* app/gdisplay.h: Reverted my latest change. It disturbed image
        rendering.

--Sven
1999-11-06 14:32:21 +00:00
Sven Neumann 558271ff3b when moving layers/masks freeze the undo after the first move to avoid
* app/edit_selection.c: when moving layers/masks freeze the undo
        after the first move to avoid that each and every small movements
        puts an undo on the stack. Significantly speeds up layer moves
        and especially the undo of a layer move.

        * app/gdisplay.h: correct rounding errors

        * app/gimpimage.c: correctly display floating selections in the
        composite_preview instead of ignoring them

        * app/channels_dialog.c
        * app/layers_dialog.c
        * app/lc_dialog.c: s/gtk_widget_draw/gtk_widget_queue_draw/

--Sven
1999-11-05 14:39:04 +00:00
Sven Neumann 8498428592 get rid of compiler warnings
* app/channel.c: get rid of compiler warnings

        * app/histogram_tool.c
        * app/histogram_tool.h: added a gradient below the histogram so
        it looks more like the curves and levels tool

        * app/gimpbrushpipe.c
        * libgimp/parasiteio.c
        * libgimp/parasiteio.h: plugged another mem-leaks. At least
        The GIMP now starts without leaking memory...

--Sven
1999-11-04 19:50:14 +00:00
Sven Neumann aa2358fb26 Oh, how I love memprof !!
--Sven
1999-11-04 00:03:27 +00:00
GMT 1999 Austin Donnelly f0fdd64fd3 tag text undo group with TEXT_UNDO rather than silly EDIT_PASTE_UNDO.
Wed Nov  3 22:36:21 GMT 1999 Austin Donnelly  <austin@gimp.org>

	* app/text_tool.c: tag text undo group with TEXT_UNDO rather than
	    silly EDIT_PASTE_UNDO.
	* app/undo.c: TEXT_UNDO name
	* undo_types.h: new type: TEXT_UNDO, plus fix numbering to make it
	    consistent (overlapping enums are bad).
1999-11-03 22:34:32 +00:00
GMT 1999 Andy Thomas 67bc1a6a0d app/undo.h app/undo.c app/undo_history.c pixmaps/question.xpm
Tue Nov  2 22:50:31 GMT 1999 Andy Thomas <alt@gimp.org>

	* app/undo.h
	* app/undo.c
	* app/undo_history.c
	* pixmaps/question.xpm

	Fixed undo history so it shows a dummy image if the preview
	image has not already been generated. The actual image
	could probably do with an artists hand ;-)
	Also mask operations are shown as such in the previews.

	* app/lc_dialog.c

	Fixed rounding error in preview when width << height.

	* plug-ins/common/jpeg.c

	Always freeze the undo stack for any of the image export types.
	Anyone know why this was not the case to start with?
1999-11-02 23:05:55 +00:00
Michael Natterer 56d10ac481 app/gimpdnd.c remove the remaining defines of GRAD_CHECK_SIZE and include
1999-10-30  Michael Natterer  <mitch@gimp.org>

	* app/gimpdnd.c
	* app/undo_history.c: remove the remaining defines of
	GRAD_CHECK_SIZE and include libgimp/gimplimits.h instead.

	* app/undo_history.c: connect to the image's "rename" signal to
	update the window title.

	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/info_window.[ch]: did the same for the info dialog.
	The info window has to remember the gdisplay to disconnect from
	the image's "rename" signal, so I removed the gdisplay parameter
	from the update functions.
1999-10-30 17:49:50 +00:00
BST 1999 Andy Thomas e5528e6cd8 app/gimpimage.c
Thu Oct 28 23:22:34 BST 1999 Andy Thomas <alt@gimp.org>

	* app/gimpimage.c

	Fixed memory leak with image is deleted.

	* plug-ins/common/jpeg.c

	Fixed the way the plugin added layers. Preview stuff does not now
	get corrupted.
1999-10-28 22:47:56 +00:00
Michael Natterer 79e27e984a More context & dnd stuff... 1999-10-28 15:05:49 +00:00
Asbjørn Pettersen d518393284 add <time.h> for time_t 1999-10-28 09:48:14 +00:00
Manish Singh 664b4ed687 add "(GIMP)" to the menu entry for XCF, in an attempt to make it clear
* app/xcf.c: add "(GIMP)" to the menu entry for XCF, in an attempt
to make it clear that it is the native file format.

* app/gimpcontext.c: correct doubled arg name on arg type addition,
which was messing up the internal gtkarg hashtable

-Yosh
1999-10-27 02:01:27 +00:00
Michael Natterer a74d52fbbf Use the context almost everywhere. 1999-10-26 18:27:27 +00:00
Manish Singh f697f6cfab don't free the old filename pointer till we're all done, since we might be
* app/gimpimage.c: don't free the old filename pointer till we're
all done, since we might be passed our own filename as a param
and reference it after freeing. The code didn't heed it's own
warning ;) (TigerT, this should fix that filename corruption bug)

-Yosh
1999-10-25 23:51:56 +00:00
Marc Lehmann 88e0cc3155 api change #2, fix #1 1999-10-24 20:49:09 +00:00
Sven Neumann 2df06061bd get rid of remaining (invisible) layers after merging visible layers
* libgimp/gimpexport.c: get rid of remaining (invisible) layers
        after merging visible layers

        * app/channel_ops.[ch]: applied a patch from Garry R. Osgood that
	seems to fix bugs #2261 and #2382 (crashes when using offset).
        A few more changes made the dialog actually work...

        * app/ops_buttons.c: plugged a memleak I introduced yesterday

--Sven
1999-10-24 13:26:30 +00:00
Sven Neumann c3a1787087 handle CAN_HANDLE_LAYERS_AS_ANIMATIONS correctly
* libgimp/gimpexport.c: handle CAN_HANDLE_LAYERS_AS_ANIMATIONS
  correctly

* app/scan_convert.c: trivial optimizations

* app/nav_window.c: applied the patch from Shuji Narazaki that makes
  the navigation window work with tablets. Fixed some rounding errors
  and stopped the flicker.


--Sven
1999-10-21 19:35:35 +00:00
BST 1999 Andy Thomas 35539062e6 app/layer.c
Tue Oct 19 21:50:52 BST 1999 Andy Thomas <alt@gimp.org>

	* app/layer.c

	Fixed rounding error in preview generating code that
	produced dithering where no dithering should have been!
1999-10-19 20:56:51 +00:00
Michael Natterer b74d256981 changed the "parent context" implementation:
1999-10-19  Michael Natterer  <mitch@gimp.org>

	* gimpcontext.[ch]: changed the "parent context" implementation:

	- Automatically connect/disconnect the "*_changed" signals when
	  changing the parent and when setting the "defined" flag of the
	  attributes.
	- Store the former *_defined booleans in a single guint32.
	- Added generic functions to set the "defined" flags of the
	  attributes and to copy attributes between contexts.

	The contexts now correctly handle disappearing images and
	displays, so we don't have to explicitly reset them any more.

	* context_manager.[ch]: adopted to the changed context
	implementation, connect to the user context's "tool_changed"
	signal to switch the per-tool contexts, don't connect to the
	"removed" signal of the image context.

	* brush_select.c
	* tool_options.c: use LayerModeEffects instead of int when calling
	gimp_context_set_paint_mode().

	* gdisplay.c: no need to reset the active display when deleting it
	because the context connects to the "destroy" signal of the shell
	now.

	* menus.c: a shortcut for the navigation window. Moved
	<Image>/Image/Colors/Desaturate before the separator.

	* tools.c: tools_select(): set the active tool of the user context
	instead of calling a special context manager function.
1999-10-19 15:52:32 +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
Michael Natterer 33b2d27e16 new GimpSignalType gimp_sigtype_int_int_int.
1999-10-17  Michael Natterer  <mitch@gimp.org>

	* app/gimpsignal.[ch]: new GimpSignalType gimp_sigtype_int_int_int.

	* app/gimpcontext.[ch]: set/get colors as separate r/g/b values
	instead of a guchar[3] array.
	The "[foreground|background]_changed" signal handlers must have
	the following signature now:
	color_changed_callback (GimpContext *, gint, gint, gint, gpointer).
1999-10-17 13:48:19 +00:00
Michael Natterer f650984006 added the possibility to store the current tool, FG/BG color, brush,
1999-10-17  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontext.[ch]: added the possibility to store the current
	tool, FG/BG color, brush, pattern and gradient, but don't use
	these attributes yet.

	Before replacing the get/set color/brush/... functions with
	context functions, I'll have to change the "parent context"
	implementation to something where the children catch the parent's
	color/brush/..._changed signals.
	Finally, updating the indicator_area, device_status, tool_options
	etc. will be done by connecting to their own context's "*_changed"
	signals, which will be much cleaner than calling the update
	functions from various places.

	(I think this is a "consistency fix", please let me know if you
	consider it a new feature).
1999-10-17 12:28:38 +00:00
Marc Lehmann ec40ac728b API PATCH #2 or so 1999-10-17 00:07:55 +00:00
Sven Neumann fce4ad6327 a whole lotta guide fixes
--Sven
1999-10-13 23:07:45 +00:00
BST 1999 Andy Thomas 08529ff5e7 app/crop.c app/sca_convert.c
Wed Oct 13 21:37:51 BST 1999 Andy Thomas <alt@gimp.org>

	* app/crop.c
	* app/sca_convert.c

	Fixes to memory problems (use of freed memory references) found
	by running with dmalloc.

	* app/paths_dialog.c

	Locking of multiple paths are now displayed correctly in the
	transform tool.
1999-10-13 20:53:30 +00:00
EDT 1999 Austin Donnelly a273905c75 all-singing, all-dancing iscissors. Now scan converts so you can actually
Tue Oct  5 14:02:07 EDT 1999  Austin Donnelly  <austin@gimp.org>

	* app/iscissors.c: all-singing, all-dancing iscissors.  Now
	    scan converts so you can actually select stuff.  Doesn't leak
	    tiles either.  Still have a problem with occasional segfault
	    and CRITICAL assertion failing on addition of anchor when
	    curve not closed.
	* app/scan_convert.c: add connecting list between blocks of points
	    so we actually have a closed polygon.
	* app/tool_options.c: iscissors has just the standard feather and
	    antialias options now.
1999-10-05 18:05:34 +00:00
Manish Singh a3ef836860 libgimp/color_display.h add bpl param for convert func
* libgimp/color_display.h
* app/gdisplay.c: add bpl param for convert func

* gdisplay_color.c: guard against head and tail cases in reorders

* app/gdisplay_color_ui.c: expose_full on all actions, so there is
immediate feedback. Check for no selection and do nothing on actions

* app/path_tool.c: #warning is not portable; change to /* XXX: */

* modules/cdisplay_gamma.c: make it so it actually works properly

-Yosh
1999-10-05 02:16:59 +00:00
Manish Singh d0519fd33d use G_OS_WIN32 and G_HAVE_CYGWIN #defines
* app/app_procs.c
* app/gdisplay_color.[ch]
* app/gdisplay_color_ui.c: make the ui usable

* app/gdisplay.c: enable cdisplay support

* modules/Makefile.am
* modules/cdisplay_gamma.c: moved gamma functionality to separate

-Yosh
1999-10-04 19:26:07 +00:00
EDT 1999 Austin Donnelly 48c54f0f5a NEW FILES: app/scan_convert.c common code from free_select.c and
Mon Oct  4 01:46:46 EDT 1999  Austin Donnelly  <austin@gimp.org>

	NEW FILES:
	* app/scan_convert.c
	* app/scan_convert.h: common code from free_select.c and
	    bezier_select.c

	MODIFIED FILES:
	* app/disp_callbacks.c: Fix for bug #2517 - dragging colour swatch
	    to image with no layers causes segfault.  Something is
	    repainting empty images as white rather than chequerboard as
	    well, which still needs fixing.

	* app/free_select.c: move code out to scan_convert.c
	* app/free_select.h: use ScanConvertPoint not FreeSelectPoint
	* tools/pdbgen/pdb/tools.pdb: ScanConvertPoint again
	* app/tools_cmds.c: generated version of above.
1999-10-04 05:51:40 +00:00
Sven Neumann 09cab0b18b This was an easy one.
--Sven
1999-10-04 02:00:33 +00:00
Sven Neumann cdc3f6e779 more export stuff
--Sven
1999-10-03 23:48:33 +00:00
Sven Neumann 6a19448d82 Undestructive File Export(TM)
--Sven

CVS ----------------------------------------------------------------------
1999-10-03 18:54:54 +00:00