Commit graph

423 commits

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