Commit graph

545 commits

Author SHA1 Message Date
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