Commit Graph

1766 Commits

Author SHA1 Message Date
Michael Natterer ba7c2c8a3d removed C++ comments (#9444).
2000-04-26  Michael Natterer  <mitch@gimp.org>

	* app/paint_funcs.c: removed C++ comments (#9444).
2000-04-26 00:20:52 +00:00
Michael Natterer 3ed7073f9a fill empty "default" with a "break" (#9431). g_path_is_absolute wants a
2000-04-26  Michael Natterer  <mitch@gimp.org>

	* app/free_select.c: fill empty "default" with a "break" (#9431).
	* libgimp/gimpenv.c: g_path_is_absolute wants a parameter (#9400).
2000-04-26 00:17:54 +00:00
Sven Neumann 32f37d07f4 (hopefully) fixed a buffer overflow pointed
out by Oleg V. Andrjushenko <oandr@itec.cn.ua>


--Sven
2000-04-25 12:32:10 +00:00
Michael Natterer 8018d99e22 fixed the "Resize Canvas" segfault.
2000-04-24  Michael Natterer  <mitch@gimp.org>

	* app/commands.c: fixed the "Resize Canvas" segfault.
2000-04-24 18:40:40 +00:00
Michael Natterer 0a12a522a8 Happy Easter!
--Mitch
2000-04-24 18:32:42 +00:00
Sven Neumann f2c3ad960c added transform_2d PDB procedure as suggested
by David Hodson <hodsond@ozemail.com.au>


--Sven
2000-04-24 15:22:57 +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
Sven Neumann 763e495d06 cleaned up the messy spanish translation someone added
fixed compiler warnings, changed some gints to gbooleans

cleaned up namespace and documentation

updated libgimp documentation



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

	* app/bezier_select.c

	Fixed problem pointed out by Garry R. Osgood (manipulating
	control points where curve is closed). Thanks
	again Garry for pointing it out.
2000-04-22 13:09:44 +00:00
Sven Neumann 22a86c79d0 cleaned up the messy spanish translation someone added
fixed compiler warnings, changed some gints to gbooleans

cleaned up namespace and documentation

updated libgimp documentation



--Sven
2000-04-21 16:42:11 +00:00
Garry R. Osgood e079a173fc app/main.c libgimp/Makefile.am libgimp/gimp.c libgimp/gimpsignal.c (New )
2000-04-21 Garry R. Osgood <gosgood@idt.net>
* app/main.c
* libgimp/Makefile.am
* libgimp/gimp.c
* libgimp/gimpsignal.c (New )
* libgimp/gimpsignal.h (New )
Patch by Austin Donnelly <austin@gimp.org> to
address #2742. (I took the liberty of moving it to
libgimp for general consumption, & fixed a typo)
Thanks due to Tim Mooney
<mooney@dogbert.cc.ndsu.nodak.edu> for testing
this on various flavors of OSF/1 boxes where
#2742 seemed especially common.
2000-04-21 16:42:11 +00:00
Michael Natterer f622c86817 gimprc.in default to restore_session == TRUE so first time users really
2000-04-20  Michael Natterer  <mitch@gimp.org>

	* gimprc.in
	* app/gimprc.c: default to restore_session == TRUE so first time
	users really see the automatically opened dialogs.

	* app/session.[ch]: also open "Tool Options" if no sessionrc
	exists. Moved the harcoded initial positions away from the top and
	left edges of the screen to avoid dialogs which appear underneath
	panels. Also arranged the four default dialogs non-overlapping.
2000-04-20 17:09: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
Michael Natterer 236e4856c0 app/bucket_fill.c app/by_color_select.c app/fuzzy_select.c made the
2000-04-19  Michael Natterer  <mitch@gimp.org>

	* app/bucket_fill.c
	* app/by_color_select.c
	* app/fuzzy_select.c
	* app/preferences_dialog.c: made the "default_threshold" gimprc
	variable work as advertized:

	- initialize the thresholds with it.
	- use it for "Reset".
	- added a widget to the "Tool Options" preferences page.
	- noticed that the "Reset" button of "By Color Select" doesn't
	  behave like all the other "Reset" buttons and changed it to
	  reset the ui, not the selection.
	  (There is now a "None" button and because it was so trivial, I
	  couldn't resist to add "All" and "Invert" buttons, too)

	* libgimp/Makefile.am
	* libgimp/gimpui.c: new file.
	* libgimp/gimpui.h: new function gimp_ui_init() which will be
	called by all plugins which have a ui (not only by those with a
	preview because plugins should always follow gimp's colormap
	installation policy).

	Could someone please check if the FIXME stuff in the function
	is the right thing to do (TM). Does GdkRGB allocate the correct
	colors for the widgets in all cases or do we have to find another
	way to ensure this across processes (gtk instances)?
2000-04-19 14:02:05 +00:00
Michael Natterer d03906ed9e Creating the user's gimp directory may take some time on NFS, so users may
2000-04-18  Michael Natterer  <mitch@gimp.org>

        * app/user_install.c: Creating the user's gimp directory may take
        some time on NFS, so users may be tempted to press the "Continue"
        button again.
        Inform the user that this step may take some time and set the
        "Continue" and "Cancel" buttons insensitive until finished.
2000-04-18 15:04:30 +00:00
Michael Natterer 085f9b6e55 block all canvas events while resizing the display so the standard canvas
2000-04-16  Michael Natterer  <mitch@gimp.org>

	* app/gdisplay_ops.c (gdisplay_shrink_wrap): block all canvas
	events while resizing the display so the standard canvas "expose"
	and "configure" handlers are not called.
	This optimization is valid because shrink_wrap's caller has to do
	a full recalculation and expose of the gdisplay anyway.
	For the same reason, I removed the calls to gdisplay_expose_full()
	and bounds_checking() from shrink_wrap.

	This should also fix the double exposes Austin reported some time
	ago. I hope it does not re-break yesterday's fix :)

	* app/gdisplay_ops.[ch]: removed unused function
	gdisplay_resize_image().

	* app/scale.c (resize_display): do a full expose if one of the
	"resize_display" or "redisplay" parameters is TRUE.
2000-04-16 12:38:44 +00:00
jtl 5c816c6b38 *** empty log message *** 2000-04-16 12:10:24 +00:00
Michael Natterer 89d3e0d8ef after resizing the display, check if the window manager placed it
2000-04-15  Michael Natterer  <mitch@gimp.org>

	* app/gdisplay_ops.c (gdisplay_shrink_wrap): after resizing the
	display, check if the window manager placed it offscreen and
	center it in that case.
2000-04-15 20:08:04 +00:00
Michael Natterer 554b9a344e s/0/FALSE/
2000-04-15  Michael Natterer  <mitch@gimp.org>

	* app/disp_callbacks.c: s/0/FALSE/

	* app/gdisplay_ops.c (gdisplay_shrink_wrap): removed all the
	gtk_drawing_area_size(), show/hide and gtk_main_iteration() stuff
	and don't touch the drawing area at all.

	Instead, use brute force on gdisp->shell:
	1. gtk_widget_size_allocate(gdisp->shell)
	2. gdk_window_resize(gdisp->shell->window)

	(tested with Sawmill, Enlightenment and twm)
2000-04-15 16:00:19 +00:00
Michael Natterer 1226dc6c13 when re-drawing a dirty brush, clear it's preview area first.
2000-04-14  Michael Natterer  <mitch@gimp.org>

	* app/brush_select.c: when re-drawing a dirty brush, clear it's
	preview area first.
2000-04-14 16:33:47 +00:00
Michael Natterer 74156c69bd one more fix... 2000-04-13 00:38:04 +00:00
Michael Natterer b88a1ff1ff push an undo group when adding horizontal and vertical guides with
2000-04-13  Michael Natterer  <mitch@gimp.org>

	* app/measure.c: push an undo group when adding horizontal and
	vertical guides with Ctrl+Alt.
2000-04-13 00:23:10 +00:00
Sven Neumann 9a55c77635 use GIMP_HAVE_PARASITES instead of _PARASITES_H, which wasn't defined
* plug-ins/common/gif.c: use GIMP_HAVE_PARASITES instead of
_PARASITES_H, which wasn't defined anymore. Makes comment
parasites work with GIFs again.

* app/measure.c: pressing ALT anywhere outside the handles allows
to move the measure lines.


--Sven
2000-04-12 21:21:36 +00:00
Tor Lillqvist cfab7a9aa3 The stat() function in the Win32 C runtime doesn't like if directory names
2000-04-11  Tor Lillqvist  <tml@iki.fi>

* libgimp/gimpenv.c (gimp_path_get_user_writable_dir): The stat()
function in the Win32 C runtime doesn't like if directory names
have an extra G_DIR_SEPARATOR suffixed. Remove such before calling
stat(). Those extra (back)slashes are added by for instance
gimp_path_parse(). Document that feature of gimp_path_parse().

* libgimp/gimputils.c (gimp_strescape): Correct documentation for
gimp_strescape(). The semantics of the exceptions parameter was
documented backwards. Clarify what the function does.

* plug-ins/gfig/gfig.c (plug_in_parse_gfig_path)
* plug-ins/FractalExplorer/FractalExplorer.c
(plug_in_parse_fractalexplorer_path)
* plug-ins/gflare/gflare.c (plug_in_parse_gflare_path,
gflare_save): Use painstakingly correct platform-specific
directory and search path separators, and escaped with
gimp_strescape when displayed as part of a gimprc entry.

* app/gimphelp.c: No debug messages on Win32, thanks.
2000-04-11 18:39:31 +00:00
Sven Neumann 31df3ca344 various minor fixes and updates to the german translation
--Sven
2000-04-11 16:34:42 +00:00
Michael Natterer 111e7bc99c if attaching to the newly created shared memory segment fails, destroy it
2000-04-11  Michael Natterer  <mitch@gimp.org>

	* app/plug_in.c: if attaching to the newly created shared memory
	segment fails, destroy it before forgetting it's ID. Closes #6299.
2000-04-11 15:24:15 +00:00
Sven Neumann 752a685b20 Use finite() instead of isnan() and isinf(). Use _finite() on WIN32.
According to Garry, finite() is probably available more widely than
isinf().


--Sven
2000-04-11 09:37:25 +00:00
Tor Lillqvist 70b1e8da72 Correct the info about Win32 mailing lists.
2000-04-10  Tor Lillqvist  <tml@iki.fi>

* README: Correct the info about Win32 mailing lists.

* gimprc.win32: Add perfect-mouse setting.

* libgimp/gimp.h
* app/main.c: Guard against redefinition of _stdcall.

* libgimp/gimpmath.h: Define macros ISNAN and ISINF. On Win32 use
_isnan() and _fpclass() from <float.h>, on other platforms use
isnan() and isinf(). We really should test for isnan and isinf in the
configure script.

* tools/pdbgen/pdb/gimage.pdb
* app/gimage_cmds.c: Include gimpmath.h, use above macros instead
of using the nonportable isnan and isinf.

* app/gdisplay_ops.c: Do use the old gtk_widget_hide/show hack on
Win32.

* libgimp/makefile.cygwin
* libgimp/makefile.msc
* app/makefile.cygwin
* app/makefile.msc
* plug-ins/makefile.cygwin
* plug-ins/makefile.msc: Updates.

* plug-ins/gfig/gfig.c (plug_in_parse_gfig_path): Simplify warning
message on Win32.  We could use G_DIR_SEPARATOR in the sample
gimprc line, but then we would have to call g_strescape to quote
it, argh. Win32 users use prebuilt versions with a correct gimprc
file anyway.

(create_file_selection): Use g_get_tmp_dir().

(gfig_update_stat_labels): Guard against possibly NULL value from
g_get_home_dir().
2000-04-10 20:47:04 +00:00
Manish Singh e730620d68 removed
-Yosh
2000-04-07 20:16:16 +00:00
Sven Neumann 62546d89d4 implemented the changes Nick Lamb suggested: If the background layer has
* libgimp/gimpexport.c: implemented the changes Nick Lamb
suggested:  If the background layer has no alpha channel,
suggest "Flatten" instead of "Merge Visible Layers".

* app/fileops.c: In the MRU list and the doc_index always store
the absolute path to images, so you can open files from the
command-line and gimp will find them later if started from another
dir. Added tooltips that show the full path.

* app/menus.c: fixed a memleak (list entries were not freed on
removal from the MRU list).

* app/main.c
* app/user_install.[ch]: renamed functions and variables to match
the new filename.


--Sven
2000-04-07 20:04:00 +00:00
Manish Singh 4774e21caf renamed install.[ch]
-Yosh
2000-04-07 18:55:21 +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 61184c16c9 app/commands.c app/layers_dialog.c behave like a widget: removed
2000-04-06  Michael Natterer  <mitch@gimp.org>

	* app/commands.c
	* app/layers_dialog.c
	* app/resize.[ch]: behave like a widget:
	removed resize_widget_free() and call
	gtk_widget_destroy(resize->resize_shell) instead.

	* app/interface.c: s/0/FALSE/

	* app/color_area.c
	* libgimp/gimpchainbutton.c: show the correct background also for
	engine driven themes. The chainbutton's lines still don't draw
	with the pixmap theme, which is probably a bug of the theme's
	draw_polygon method.
2000-04-06 02:13:18 +00:00
Sven Neumann 56f1372519 app/gimage_cmds.c guard against NaN and infinity. There are pics out there
* app/gimage_cmds.c
* tools/pdbgen/pdb/gimage.pdb: (gimp_image_set_resolution) guard
  against NaN and infinity. There are pics out there using these
  values and it seems that NaN > GIMP_MIN_RESOLUTION. Fixes #8476.


--Sven
2000-04-06 01:01:31 +00:00
Sven Neumann 743516bfb0 if we cannot load the font we'd like to use, use the gtk+ default font.
* app/app_procs.c: if we cannot load the font we'd like to use,
use the gtk+ default font. Fixes bug #8359.

* app/about_dialog.c
* app/install.c: properly ref/unref fonts

* app/text_tool.[ch]: code cleanup (do not rely on TRUE being 1)

* app/tips_dialog.c: code cleanup and less resizing


--Sven
2000-04-05 22:59:44 +00:00
Sven Neumann f41df6dcf9 cleaned up the messy spanish translation someone added
fixed compiler warnings, changed some gints to gbooleans

cleaned up namespace and documentation

updated libgimp documentation



--Sven
2000-04-05 22:59:42 +00:00
Sven Neumann ff6ea8be8f if we cannot load the font we'd like to use, use the gtk+ default font.
* app/app_procs.c: if we cannot load the font we'd like to use,
use the gtk+ default font. Fixes bug #8359.

* app/about_dialog.c
* app/install.c: properly ref/unref fonts

* app/text_tool.[ch]: code cleanup (do not rely on TRUE being 1)

* app/tips_dialog.c: code cleanup and less resizing


--Sven
2000-04-05 22:59:42 +00:00
Michael Natterer 13e13cf862 oops, yesterday's "cleanups" contained an unreverted hack I've tried which
2000-04-05  Michael Natterer  <mitch@gimp.org>

	* app/layers_dialog.c: oops, yesterday's "cleanups" contained an
	unreverted hack I've tried which caused a SEGV with floating
	selections. Fixed now.
2000-04-04 23:55:38 +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 f9fdb4fcc1 app/channels_dialog.c when dropping layers/channels around in the stack,
2000-04-03  Michael Natterer  <mitch@gimp.org>

	* app/channels_dialog.c
	* app/layers_dialog.c: when dropping layers/channels around in the
	stack, Gtk sometimes continues searching a drag destination
	_after_ the drop callback has been called (which is probably a
	bug), causing a SEGV because the callback changed the GtkList
	containing the layer/channel widgets.

	The safe way is to reorder the stack in an idle function which
	should also be robust against any future Gdk/X dnd protocol
	change.

	For the same reason, I added an idle function which lets the
	active layer/channel widget grab the focus because in some dnd
	cases the row holding the focus was not the active one (which is
	otherwise impossible with GTK_SELECTION_BROWSE).

	This commit should fix the remaining problems with layer/channel
	dnd as well as all cases where the highlighted layer was not the
	active one. Please report if it still doesn't work for you.
2000-04-03 12:39:14 +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
Sven Neumann 018da66275 tiny nit-picky changes to some plugins and a lot of changes in the
german translation. Hopefully the translation is now good enough
that it won't ihave to change much anymore, since the new
"Gimp kurz und gut" reference for 1.2 will go into print soon...


--Sven
2000-04-02 22:30:28 +00:00
Garry R. Osgood 9591f4a965 gimp/app/colormap_dialog.i.c As Mr. Lamb, report originator noted, an easy
2000-04-02 Garry R. Osgood <gosgood@idt.net>

* gimp/app/colormap_dialog.i.c
As Mr. Lamb, report originator noted, an easy
fix. in ipal_set_image() line 688
Reorganized the initialization of the
indexed palette object so as not to run afoul
of gasserts() inhabiting ipal_draw() and client
routines. These entailed initialing ipal->col_index,
ipal->dnd_col_index prior to call to ipal_draw()
2000-04-02 19:39:03 +00:00
Andy Thomas a677128f0a Sun Apr 2 16:55:47 BST 2000
* app/bezier_select.c

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

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

	Note you have always been able to delete whole curves by pressing
	the "shift" key when over a point to be deleted in "remove mode".
2000-04-02 16:33:28 +00:00
Michael Natterer dac8997be9 completely overworked the widget packing of the display shell. This was
2000-04-02  Michael Natterer  <mitch@gimp.org>

	* app/interface.c: completely overworked the widget packing of the
	display shell. This was necessary because the table insisted on
	giving the vertical scrollbar more allocation than it needed when
	first displaying an image which is smaller than the minimal
	statusbar width. Replaced the tables with packing boxes.

	See the comments I've added to create_display_shell() if you
	really want to see the ugly details.

	Also, to get rid of the 2-pixel spacing which appears at the
	bottom of the display whenever the statusarea is hidden,
	gdisp->statusarea is now the eventbox, not the hbox it contains.

	* pixmaps/navbutton.xpm: made it 2x2 pixels larger.
2000-04-02 15:34:30 +00:00
Garry R. Osgood b9afb940c2 gimp/app/bezier_select.c No fooling, #6903 was not that hard to close; in
2000-04-01 Garry R. Osgood <gosgood@idt.net>

* gimp/app/bezier_select.c
No fooling, #6903 was not that hard to close;
in bezier_edit_point_on_curve(),when point
deletion reduces a curve below the minimum
with which the implementation can cope (2
anchors, four controls) we put it out of its
misery with an invocation of delete_whole_curve().
2000-04-02 01:33:26 +00:00
Michael Natterer 902aea45e9 when dropping a drawable, do the undo_push_group_start() before creating
2000-04-01  Michael Natterer  <mitch@gimp.org>

	* app/disp_callbacks.c: when dropping a drawable, do the
	undo_push_group_start() before creating the new layer, otherwise
	the undo system will show obscure misbehaviour (the undo group is
	pushed correctly but no undo will be possible until an other undo
	is pushed).
2000-04-01 21:56:23 +00:00
jaycox 2ceb2c880f Fixed the off by one error that was the cause of bug #4980. Fixed a bug
* app/paint_funcs.c: Fixed the off by one error that was the cause
 	of bug #4980.  Fixed a bug that caused images to have their
 	centers shifted slightly when resizing.  Removed a couple of
 	unused variables.
2000-04-01 02:48:00 +00:00
Michael Natterer e44df51a6d minor cleanups.
2000-03-31  Michael Natterer  <mitch@gimp.org>

	* app/gimpdnd.[ch]: minor cleanups.

	* libgimp/gimpwidgets.c: don't set a border width for the
	radio_group's vbox if no frame around it was requested.

	* plug-ins/common/sample_colorize.c: add a separator between
	image and sample.

	* plug-ins/common/iwarp.c: use the libgimp ui functions, removed
	callbacks, a global s/gfloat/gdouble/, replaced the booleans
	toggling the transform mode with a single variable containing an
	enum value, indentation.
2000-03-31 18:10:25 +00:00