Commit Graph

61 Commits

Author SHA1 Message Date
Stanislav Brabec 2481607268 patches from Martin Weber and Peter Kirchgessner 2000-03-25 22:19:17 +00:00
Michael Natterer 3cfa38dba2 app/channels_dialog.c app/layers_dialog.c app/ops_buttons.[ch] use
2000-02-26  Michael Natterer  <mitch@gimp.org>

	* app/channels_dialog.c
	* app/layers_dialog.c
	* app/ops_buttons.[ch]
	* app/paths_dialog.c: use GimpPixmap widgets. Don't pass the
	parent widget pointer to ops_button_box_new().
2000-02-26 03:33:57 +00:00
Michael Natterer 714cfa9849 we were also leaking all path preview pixmaps ever created. Always
2000-02-24  Michael Natterer  <mitch@gimp.org>

	* app/paths_dialog.c: we were also leaking all path preview
	pixmaps ever created. Always remember that GdkPixmaps are not
	created "floating" but with a real refcount of 1. Minor cleanups.
2000-02-24 12:35:25 +00:00
Sven Neumann fde312118a Cleaned up the Path header mess.
--Sven
2000-02-16 13:52:33 +00:00
Sven Neumann 1cde0279ff Moved some functions out of paths_dialog.c into the new file
paths.c and did a general namespace cleanup:
s/PATHP/Path*/  s/PATHIMAGELISTP/PathList/ and friends.

Paths are now copied on image duplicate (fixes bug #5726).

Removed Path Tool and XInput Airbrush from the build and
renamed "Layers & Channels" to "Layers, Channels & Paths".

Applied patch from Wolfgang Hofer to xjt.c that enables loading
and saving of paths based on Andy's change explained below.


--Sven
2000-02-16 01:47:22 +00:00
Michael Natterer 260d7b2d1d plug-ins/libgck/gck/Makefile.am plug-ins/libgck/gck/gckcommon.h
2000-02-14  Michael Natterer  <mitch@gimp.org>

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

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

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

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

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

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

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

	* app/pathsP.h
	* app/paths_dialog.c
	* app/perspective_tool.[ch]
	* app/rotate_tool.[ch]
	* app/scale_tool.[ch]
	* app/shear_tool.[ch]
	* app/tools_cmds.c
	* app/transform_core.[ch]
	* tools/pdbgen/pdb/tools.pdb:
	s/GimpMatrix,gimp_matrix/GimpMatrix3,gimp_matrix3/
2000-02-14 16:29:41 +00:00
Michael Natterer 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
GMT 2000 Andy Thomas 209c50fe84 app/paths_dialog.c
Wed Feb  2 22:12:48 GMT 2000 Andy Thomas <alt@gimp.org>

	* app/paths_dialog.c

	Fixed bug number #5727 "PDB-call gimp_path_set_points is buggy"

	* tools/pdbgen/pdb/paths.pdb

	Added missing paths pdb functions

 		path_get_locked
 		path_set_locked
		path_set_tattoo
2000-02-02 00:41:11 +00:00
Michael Natterer a4025e057b app/menus.c app/channels_dialog.[ch] app/layers_dialog.[ch] Added an "Edit
2000-02-01  Michael Natterer  <mitch@gimp.org>

	* app/menus.c
	* app/channels_dialog.[ch]
	* app/layers_dialog.[ch]
	* app/paths_dialog.[ch]: Added an "Edit xxx Attributes..." menu
	entry to the dialogs' popup menus.
2000-01-31 22:59:22 +00:00
Sven Neumann 1485e40383 set the menu sensitivity after the last path was deleted
--Sven
2000-01-23 18:04:28 +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 e713f9bae3 Use our new (sligtly compressed) layout of gtk_file_selection all over the
place.


--Sven
1999-12-30 20:16:58 +00:00
Michael Natterer 6eae7942fb app/menus.c Minor help system fixes.
1999-12-17  Michael Natterer  <mitch@gimp.org>

	* app/menus.c
	* app/paths_dialog.c: Minor help system fixes.

	* app/app_procs.c: I thought we should have a real splash (without
	decoration). Like it???

	* app/about_dialog.c
	* app/flip_tool.c
	* app/gradient.c
	* app/levels.c
	* app/measure.c
	* app/text_tool.c
	* app/tools.c
	* app/transform_tool.c: Did some code browsing: I18N fixes,
	s/gtk_window_position/gtk_window_set_position/g, indentation
	paranoia, some g/<type>/g<type>/, various stuff (didn't change any
	logic).
1999-12-17 16:37:50 +00:00
Sven Neumann d4250cb410 please picky compilers
--Sven
1999-12-06 22:44:40 +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
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
Michael Natterer 58877ccd21 connect to the "realize" signal of the dialog's top-level eventbox, not
1999-11-03  Michael Natterer  <mitch@gimp.org>

	* app/paths_dialog.c: connect to the "realize" signal of the
	dialog's top-level eventbox, not the vbox.
1999-11-03 15:17:56 +00:00
Michael Natterer 0302ed0a10 app/brush_select.[ch] app/gradient.c app/gradient_select.[ch]
1999-11-03  Michael Natterer  <mitch@gimp.org>

	* app/brush_select.[ch]
	* app/gradient.c
	* app/gradient_select.[ch]
	* app/interface.[ch]
	* app/palette.c
	* app/pattern_select.[ch]: allow dragging a brush/pattern/... from
	the selections with mouse2 without changing the active element in
	the dialog.

	* app/channels_dialog.c
	* app/color_area.c
	* app/color_panel.c
	* app/color_select.c
	* app/colormap_dialog.i.c
	* app/devices.c
	* app/gimpcontextpreview.[ch]
	* app/gimphelp.[ch]
	* app/gimpui.[ch]
	* app/indicator_area.c
	* app/interface.[ch]
	* app/layers_dialog.c
	* app/lc_dialog.c
	* app/ops_buttons.[ch]
	* app/paths_dialog.c
	* app/preferences_dialog.c
	* app/tools.[ch]: wrapped gtk_tooltips_set_tip() with
	gimp_help_set_help_data() and moved it to gimphelp.[ch].

	This should (hopefully) be the final state of the help system. The
	New function allows a "private tip" to be set without a visible
	tooltip. This way the tooltips inspector (shift+F1) can search for
	help data in the parent containers of the clicked widget. E.g. the
	ops buttons in the layers dialog have private tips like
	"#new_layer" which gets composed with the help data of the layers
	dialog notebook page resulting in a complete help path.

	Allow mouse2 for all dnd operations. Mouse1 still works like before.
1999-11-03 09:58:46 +00:00
Michael Natterer 8d371c1961 added a private tooltip to the ops_buttons structure. Removed
1999-10-30  Michael Natterer  <mitch@gimp.org>

	* app/ops_buttons.[ch]: added a private tooltip to the
	ops_buttons structure. Removed ops_buttons_set_insensitive().

	* app/channels_dialog.c
	* app/layers_dialog.c
	* app/paths_dialog.c
	* app/lc_dialog.c: let the ops button's private tips point at the
	already existing help pages. Minor fixes.
1999-10-30 13:01:15 +00:00
Michael Natterer b3144e7ccc app_procs.c app/commands.[ch] app/interface.c app/menus.c app/session.c
1999-10-30  Michael Natterer  <mitch@gimp.org>

	* app_procs.c
	* app/commands.[ch]
	* app/interface.c
	* app/menus.c
	* app/session.c
	* app/tools.[ch]: namespace cleanups: changed the
	"tools_options_*" functions to "tool_options_*" and prefixed all
	dialog menu callbacks with "dialogs_*".
	Allow dropping a tool to the tool options dialog.

	* app/bezier_select.c: change the active tool using context
	functions.

	* app/dialog_handler.[ch]: replaced the uppercase datatype names
	by standard mixed upper/lowercase ones. Provide a function to
	register the fileload dialog instead of accessing it as global
	variable.

	* app/disp_callbacks.c: switch to the move tool using context
	functions. Fixed the drop color/pattern functions to convert the
	dropped thing to the dest. image's color space.

	* app/fileops.c: don't export the fileload dialog as global
	variable but register it with the dialog handler instead.

	* app/paths_dialog.[ch]: replaced all the uppercase struct names
	defined here by mixed upper/lowercase. Introduced a
	"set_menu_sensitivity" function like in layers/channels instead of
	calling single button on/off functions from various places.
	Added a menu entry for "Selection to Path".
1999-10-30 10:39:48 +00:00
BST 1999 Andy Thomas dcf082b6cc app/lc_dialog.c app/selection.c app/color_area.c app/paths_dialog.c
Wed Oct 27 20:51:10 BST 1999 Andy Thomas <alt@gimp.org>

	* app/lc_dialog.c
	* app/selection.c
	* app/color_area.c
	* app/paths_dialog.c
	* tools/pdbgen/pdb/gimage.pdb
	* app/gimage_cmds.c

	General memory leak cleanups.
1999-10-27 20:09:46 +00:00
Sven Neumann eb26d8e07e autoscroll in the layers dialog, a few cosmetic changes
and a german plug-in po-file


--Sven
1999-10-24 20:16:48 +00:00
Sven Neumann 7a432a7734 first effort in making the L&C dialog nicer.
--Sven
1999-10-23 20:30:59 +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
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
Michael Natterer 5a01821b1f EEEEEEEEEEK!!! 1999-10-04 08:40:33 +00:00
Michael Natterer a11f33345d The GIMP Help System part II: press "F1" while browsing a menu to show the
1999-10-03  Michael Natterer  <mitch@gimp.org>

	The GIMP Help System part II: press "F1" while browsing a menu
	to show the help page for the menu entry you're currently over
	with the mouse.

	* app/color_notebook.c: all color selectors have to register with
	a help page now.

	* app/color_select.[ch]: register with a help string. Removed
	the dialog part of the files because it's use was deprecated
	anyway (use color notebooks instead).

	* app/colormap_dialog.i.c
	* app/colormap_dialog.p.h
	* app/palette.c
	* app/palette_select.c: use a color notebook instead of a color
	selector.

	* app/gimphelp.c
	* app/gimpui.c: minor changes.

	* app/gimprc.c: "use help" defaults to TRUE now.

	* app/lc_dialog.c
	* app/lc_dialogP.h: a special help function which shows the help
	for the currently selected notebook page.

	* app/menus.c: some weird code which catches "key_press_event"
	in all menu shells and pops up the corresp. help page for the
	selected item. Embedded the GtkItemFactoryEntry in a new
	GimpItemFactoryEntry to allow a help path to be stored.
	Will be partially exported and moved to gimphelp.[ch] later to
	catch key_press for plug-in menu items (don't try this now ;-)

	* app/app_procs.c
	* app/brush_edit.c
	* app/brush_select.c
	* app/channel_ops.c
	* app/channels_dialog.c
	* app/commands.c
	* app/convert.c
	* app/devices.c
	* app/file_new_dialog.c
	* app/fileops.c
	* app/gdisplay.c
	* app/gdisplay_color.c
	* app/gdisplay_color_ui.c
	* app/gdisplay_ops.c
	* app/global_edit.c
	* app/gradient.c
	* app/gradient_select.c
	* app/interface.c
	* app/layers_dialog.c
	* app/module_db.c
	* app/paths_dialog.c
	* app/pattern_select.c
	* app/preferences_dialog.c
	* app/qmask.c
	* app/resize.c
	* app/undo_history.c: changed all dialog constructors to point
	to the right place in the new help file structure.

	* configure.in
	* help/*: the basic new help file structure.

	* modules/colorsel_gtk.c
	* modules/colorsel_triangle.c
	* modules/colorsel_water.c: register a help page.

	* plug-ins/helpbrowser/helpbrowser.c: load the help files
	according to the new help file structure.
1999-10-03 13:50:19 +00:00
Michael Natterer 002aa905db app/Makefile.am app/gimphelp.[ch] new files
1999-09-27  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimphelp.[ch]
	* app/gimpui.[ch]: new files

	* app/interface.[ch]
	* app/preferences_dialog.[ch]

	The GIMP Help System part 1: Press "F1" in any dialog to pop up
	the help page for this dialog.

	Moved the widget constructors from preferences_dialog.[ch] and the
	query boxes from interface.[ch] to gimpui.[ch].

	The dialog constructors take a help_func and a help_data
	parameter and install the "F1" accelerator which emits the new
	"help" signal.

	The "help" signal callback calls help_func(help_data) which finally
	has to call gimp_help() which in turn invokes the help browser.

	Still have to find a proper way to (1) prevent "F1" being assigned
	to some menu item and (2) to catch "F1" while browsing the menu
	trees in order to pop up the help for the selected item.

	* app/menus.c: a <Toolbox>/File/Help... menu item.
	* app/commands.[ch]: a command callback for the "Help..." menu item.

	* app/gimprc.[ch]: new boolean gimprc variable "use_help".

	* app/info_dialog.[ch]: pass a help function and data to the info
	dialog constructor.

	* app/tools.[ch]: store the tools help page names in the tool info
	structure. Export a special tools_help_func() which shows the help
	page for the active tool.

	* app/[all files calling a dialog constructor]: pass the dialog's
	help page to the constructor.

	Most dialogs are now created by gimp_dialog_new() which also sets
	up the action_area and the WM delete event callback, so I removed
	the resp. code from these files.

	Fixed some minor bugs and did some other stuff but didn't change
	any logic except dialog creation.

	* plug-ins/helpbrowser/helpbrowser.c: don't try to call a running
	help browser and don't install any menu path (all done in
	app/gimphelp.[ch] now).
1999-09-27 17:58:10 +00:00
BST 1999 Andy Thomas 8218e200c7 app/paths_dialog.c
Fri Sep 24 23:54:26 BST 1999 Andy Thomas <alt@gimp.org>

	* app/paths_dialog.c

	Applied patch from Garry R. Osgood. Fixes bug #2253.
	Thansk for the patch!
1999-09-24 23:01:10 +00:00
Sven Neumann ba211f07f2 i18n patch from Daniel Egger
--Sven
1999-09-23 11:49:16 +00:00
EDT 1999 Austin Donnelly bf8db4adc8 Honest, guv, it's not a feature - it's a tightly integrated package of
Mon Sep 20 12:51:30 EDT 1999  Austin Donnelly  <austin@gimp.org>

	Honest, guv, it's not a feature - it's a tightly integrated
	package of undo system cleanups and fixes.

	NEW FILES:
	* app/undo_history.c: window showing recent undo (and redo) steps
	    available.
	* app/undo_types.h: broken out of undo.h to fix circular includes.

	MODIFIED FILES:
	* app/Makefile.am: compile undo_history.c
	* app/channel.h: use enum for channel undo type, not just magic
	    numbers.
	* app/layer.h: same for layer undos.
	* app/commands.c: edit_show_undo_history_cmd_callback() function to
	    pull up undo history window.
	* app/commands.h: prototype for above.
	* app/gdisplay.c: make undo / redo menu items sensitive according
	    to whether they would do anything.  Would be easy to change
	    the text to say what would be undone/redone, but I don't know
	    the GTK.
	* app/gimpimage.c: new signal emitted by gimage:
	    UNDO_EVENT. gimp_image_undo_event() function to emit it.
	* app/gimpimage.h: prototype for above.
	* app/gimpimageP.h: pushing_undo_group member is now an undo_type,
	    not an int.  Keep undo history widget here too (if created).
	* app/menus.c: add "Edit/Undo history..." to image menu.
	* app/undo.c: new types: enums undo_type and undo_state rather than
	    ints and magic numbers.  All undo_pop_* and undo_free_*
	    functions made static.  New static function
	    undo_type_to_name().  Issue undo event signals on various
	    important events (eg undo pushed, undo popped etc).
	    undo_push() now takes a "dirties_image" arg to say whether
	    image should be dirtied.  Layer moves now dirty the image.  A
	    couple of g_return_if_fails () on undo_pop and undo_redo to
	    assert we're not in the middle of an undo group.
	    undo_get_{undo,redo}_name() to peek at names of top items on
	    undo and redo stacks resp.   undo_map_over_{undo,redo}_stack()
	    to run a function for each item or group on stack.  Layer and
	    channel undos use symbolic names rather than 0 or 1.  Array
	    mapping undo types to names.
	* app/undo.h: split out undo types to undo_types.h.  Prototypes
	    for functions described above.  undo_event_t enum.
	    undo_history_new() prototype lives here too.

	Random other fixes:
	* app/gimpdrawable.c
	* app/image_render.c: default labels in switches to keep egcs happy.

	* app/nav_window.c: some fixes to (sort of) cope with image res !=
	    screen res.  Still needs work to handle non-square pixels
	    properly.

	* app/paths_dialog.c: bad idea to call gimp_image_dirty()
	    directly.  Even though it's currently commented out.
1999-09-20 17:15:20 +00:00
Tor Lillqvist 6ef23d984f app/appenv.h New file. Includes <math.h>. Move G_PI, RINT(), ROUND() etc
1999-09-01  Tor Lillqvist  <tml@iki.fi>

* app/appenv.h
* libgimp/gimpmath.h: New file. Includes <math.h>. Move G_PI,
RINT(), ROUND() etc from app/appenv.h here, so plug-ins can
use them, too. Remove some commented-out old stuff in appenv.h.

* libgimp/gimp.h: Include gimpmath.h.

* libgimp/gimp.c (gimp_main): Win32: Don't install signal
handlers, we can't do anything useful in the handler ourselves
anyway (it would be nice to print out a backtrace, but that seems
pretty hard to do, even if not impossible). Let Windows inform the
user about the crash. If the plug-in was compiled with MSVC, and
the user also has it, she is offered a chance to start the
debugger automatically anyway.

* app/*several*.c: Include gimpmath.h for G_PI etc. Don't include
<math.h>, as gimpmath.h includes it.

* plug-ins/*/*many*.c: Include config.h. Don't include <math.h>.
Remove all the duplicated definitions of G_PI and rint(). Use
RINT() instead of rint().

* app/app_procs.[ch]: app_exit() takes a gboolean.

* app/batch.c
* app/commands.c
* app/interface.c: Call app_exit() with FALSE or TRUE.

* app/main.c (on_error): Call gimp_fatal_error. (main): Don't
install any signal handler on Win32 here, either.

* app/errors.c (gimp_fatal_error, gimp_terminate): Win32: Format
the message and call MessageBox with it.  g_on_error_query doesn't
do anything useful on Win32, and printf'ing a message to stdout or
stderr doesn't do anything, either, in a windowing application.
1999-09-01 20:30:56 +00:00
Tomas Ogren 43aa113acc i18n fixes and added a missing \n...
1999-08-27  Tomas Ogren  <stric@ing.umu.se>

* app/convert.c app/paint_funcs.c app/paths_dialog.c:
i18n fixes and added a missing \n...
1999-08-26 23:16:24 +00:00
Tor Lillqvist 933b866166 Define ROUND(), RINT(), SQR(), G_PI and G_PI_4. The latter two will
* app/appenv.h: Define ROUND(), RINT(), SQR(), G_PI and
	G_PI_4. The latter two will presumably eventually be in
	GLib. RINT() calls rint() if we have it, otherwise adds 0.5 and
	calls floor().

	* app/*.c: Remove the multiple identical definitions of M_PI. Use
	G_PI instead of M_PI. Remove ROUND() and rint() definitions. Use
	RINT() instead of rint().
1999-08-04 23:22:29 +00:00
Michael Natterer a4c1e8a557 new ui for the "Layer Offset" dialog.
1999-07-22  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/channel_ops.[ch]: new ui for the "Layer Offset" dialog.

	* app/channels_dialog.c
	* app/layers_dialog.c: major code cleanup: Folded some callbacks
	into common ones, "widget" instead of "w", indentation, ...

	* app/commands.c
	* app/interface.[ch]
	* app/global_edit.c: the query boxes must be shown by the caller
	now. There's no need to split up the string for the message box
	manually as the Gtk 1.2 label widget handles newlines corectly.
	Added the "edge_lock" toggle to the "Shrink Selection" dialog.
	Nicer spacings for the query and message boxes.

	* app/ink.c: tried to grab the pointer in the blob preview but
	failed. Left the code there as a reminder (commented out).

	* app/menus.c: reordered <Image>/Select.

	I was bored and grep-ed the sources for ancient or deprecated stuff:

	* app/about_dialog.[ch]
	* app/actionarea.[ch]
	* app/app_procs.c
	* app/brush_edit.c
	* app/brush_select.c
	* app/color_select.c
	* app/convert.c
	* app/devices.c
	* app/gdisplay.c
	* app/gdisplay_ops.c
	* app/histogram_tool.[ch]
	* app/info_window.c
	* app/install.c
	* app/ops_buttons.c
	* app/palette.c
	* app/palette_select.c
	* app/paths_dialog.c
	* app/pattern_select.c
	* app/resize.c
	* app/scale_toolc.c
	* app/text_tool.c:
	s/container_border_width/container_set_border_width/g,
	s/sprintf/g_snprintf/g, replaced some constant string lengths with
	strlen(x).

	* app/bezier_select.c
	* app/blend.c
	* app/boundary.c
	* app/errors.[ch]
	* app/free_select.c
	* app/gimpbrushlist.c
	* app/gimprc.c
	* app/iscissors.c
	* app/main.c
	* app/patterns.[ch]
	* app/text_tool.c: namespace fanaticism: prefixed all gimp error
	functions with "gimp_" and formated the messages more uniformly.

	* app/gradient.c
	* app/gradient_select.c: same stuff as above for the ui
	code. There are still some sub-dialogs which need cleanup.

	Did some cleanup in most of these files: prototypes, removed tons
	of #include's, i18n fixes, s/w/widget/ as above, indentation, ...
1999-07-22 16:21:10 +00:00
BST 1999 Andy Thomas 6c28319bc3 app/indicator_area.c app/paths_dialog.c app/tools_cmds.c app/airbrush.c
Mon Jul 19 23:40:56 BST 1999 Andy Thomas <alt@gimp.org>

	* app/indicator_area.c
	* app/paths_dialog.c
	* app/tools_cmds.c
	* app/airbrush.c
	* app/airbrush.h
	* app/bezier_select.c
	* app/paintbrush.c
	* app/paintbrush.h
	* app/clone.c
	* app/clone.h
	* app/eraser.c
	* app/eraser.h
	* app/convolve.c
	* app/convolve.h
	* app/smudge.c
	* app/smudge.h
	* app/dodgeburn.c
	* app/dodgeburn.h
	* app/internal_procs.c
	* plug-ins/sel2path/sel2path.c
	* tools/pdbgen/pdb/tools.pdb
	* tools/pdbgen/enums.pl

	1) Fixed the brushpreview popup problem where it remained onscreen
           if the mouse button was released in another GTK window that accepted
	   mouse events.

	2) Selection to path now works on all types of images (it should have
	   anyway).

	3) Fixed PDB so you can once again use the PDB interfaces to the clone
	   and airbrush tools.

	4) PDB Function to add a path to an image now adds it correctly.

	5) airbrush/paintbrush/clone/eraser/convolve New PDB functions that
           use the options dialogs settings (or sane defaults if option dialog
           not present)

	6) Added PDB functions for Smudge & DodgeBurn tools.

	7) Path stroke command (from the LCP dialog) can now use any of the
	   painting tools (airbrush/paintbrush/clone/eraser/convolve/smudge/
           dodgeburn except ink). Just have the tool selected when you
	   press the stroke button.
1999-07-19 22:42:49 +00:00
Tor Lillqvist fe1cc678c1 app/makefile.cygwin app/makefile.msc plug-ins/makefile.cygwin
* app/makefile.cygwin
	* app/makefile.msc
	* plug-ins/makefile.cygwin
	* plug-ins/makefile.msc
	* modules/makefile.cygwin
	* modules/makefile.msc
	* tools/gcg/makefile.cygwin: Various updates. GCC-compiled DLL
	name change.

	* app/context_manager.c: Include paint_options.h for prototype.

	* app/gimpimage.c (gimp_image_initialize_projection): Break out of
 	loop as soon as possible.

	* app/menus.c (menus_last_opened_cmd_callback): Check if referring
 	to entry not in list.

	* app/module_db.c (valid_module_name): (Win32) Require module DLL
 	names to include name of compiler built with.

	* app/paths_dialog.c (paths_draw_segment_points): No use to draw
 	lines if we have less that two points.

	* app/qmask.c: Include stdio.h and floating_sel.h.

	* libgimp/makefile.cygwin: New file.

	* libgimp/Makefile.am:  Distribute above file.

	* libgimp/gimp.def: Update.

	* libgimp/gimpenv.c (gimp_directory): Don't warn about missing
 	home directory on Win32, it is perfectly natural.

	* plug-ins/sel2path/global.h: Bypass unused declarations, some
	of which clash with functions in MSVCRT.

	* plug-ins/sel2path/math.c
	* modules/colorsel_water.c: Define M_PI if necessary.

	* plug-ins/sel2path/sel2path.c: Include config.h and
 	glib.h. Define rint() if needed.

	* plug-ins/sel2path/vector.c: Include glib.h (for hypot() renaming
 	on Win32; In the MS C runtime, as hypot() is non-ANSI, it's called
 	_hypot(), sigh).

	* plug-ins/sinus/sinus_logo.h: Use indexed format, it is easier on
 	some compilers than the huge string.
1999-07-14 16:02:32 +00:00
BST 1999 Andy Thomas 48627bc821 plug-ins/sel2path/sel2path.c app/paths_dialog.c app/paths_cmds.c
Tue Jul 13 22:48:37 BST 1999 Andy Thomas <alt@gimp.org>

	* plug-ins/sel2path/sel2path.c
	* app/paths_dialog.c
	* app/paths_cmds.c
	* tools/pdbgen/pdb/paths.pdb

	Selection is now cleared when converted to a path.
	Path is made the current one when created via the PDB.
	This made more sense than the previous behavior.
1999-07-13 21:55:39 +00:00
Sven Neumann dd58a64a3e Fixed the deletion of paths that I broke with my last change.
--Sven
1999-07-11 12:08:01 +00:00
BST 1999 Andy Thomas 8beb7c582c configure.in plug-ins/Makefile.am plug-ins/sel2path/* <- New directory
Fri Jul  9 22:24:53 BST 1999 Andy Thomas <alt@gimp.org>

	* configure.in
	* plug-ins/Makefile.am
	* plug-ins/sel2path/* <- New directory
	* app/paths_dialog.c
	* pixmap/topath.xpm

	New function implemented by a plugin.
	Will convert a selection into a path. Please
	see the README in sel2path directory for more
	details (especially where the underlying algorithms/code
	were obtained from).
1999-07-09 21:52:00 +00:00
MEST 1999 Sven Neumann 085eeb9f55 Makefile.am removed new file Use a bitmap in the style of the eye instead
Wed Jul  7 20:33:24 MEST 1999  Sven Neumann <sven@gimp.org>

        * Makefile.am
        * pixmaps/locked.xpm: removed
        * pixmaps/locked.xbm: new file
        * app/paths_dialog.c: Use a bitmap in the style of the eye instead
	of the lock pixmap. This could be done more elegantly, but the
        paths_dialog is a mess, sorry.
1999-07-07 19:09:52 +00:00
BST 1999 Andy Thomas 3fcea79688 ./app/layer.c.orig ./app/lc_dialog.c.orig ./app/paths_dialog.c.orig
Tue Jul  6 22:16:07 BST 1999 Andy Thomas <alt@gimp.org>

	* ./app/layer.c.orig
	* ./app/lc_dialog.c.orig
	* ./app/paths_dialog.c.orig
	* ./app/pathsP.h.orig
	* ./libgimp/gimpmenu.c.orig
	* ./tools/pdbgen/pdb/paths.pdb.orig
	* ./app/paths_cmds.c
	* ./app/internal_procs.c

	Fixed small LCP menu preview problems. Now works for all
	image types and updated correctly when alpha channel added.

	Additional PDB functions for paths. Fixed some PDB functions
	(gimp_paths_set_points). Now works as advertised.
1999-07-06 21:19:34 +00:00
Tuomas Kuosmanen cf1a647574 The button reorganization. /tig 1999-06-21 05:46:32 +00:00
Tomas Ogren 6a6bc56c84 app/bucket_fill.c app/color_picker.c app/commands.c app/convolve.c
1999-06-07  Tomas Ogren  <stric@ing.umu.se>

* app/bucket_fill.c app/color_picker.c app/commands.c app/convolve.c
* app/crop.c app/flip_tool.c app/gimpunit.c app/global_edit.c
* app/gradient.c app/histogram_tool.c app/magnify.c app/module_db.c
* app/palette.c app/paths_dialog.c app/text_tool.c app/transform_tool.c
  Misc i18n fixes, partly ported from Egger-gimp
1999-06-07 02:21:31 +00:00
Tomas Ogren d085c151d3 locale-wrapper for menus_set_sensitive (..._locale) and menus_set_state
1999-06-06  Tomas Ogren  <stric@ing.umu.se>

* app/menus.[ch]: locale-wrapper for menus_set_sensitive (..._locale)
  and menus_set_state (..._locale) which splits the menu-entry
  "<Foo>/Bar/Baz" into "<Foo>" and "/Bar/Baz" to remove double
  translations
* app/app_procs.c, app/channels_dialog.c, app/fileops.c, app/gdisplay.c
* app/gdisplay_ops.c, app/layers_dialog.c, app/paths_dialog.c
* app/plug_in.c:
  Use the _locale version from above
1999-06-06 21:13:03 +00:00
Michael Natterer ac98e8fa81 app/Makefile.am app/lc_dialog.[ch] app/lc_dialogP.h new files
1999-06-06  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/Makefile.am
	* app/lc_dialog.[ch]
	* app/lc_dialogP.h
	* app/paths_dialogP.h: new files

	* app/channels_dialog.[ch]
	* app/layers_dialog.[ch]
	* app/layers_dialogP.h
	* app/paths_dialog.[ch]
	* app/menus.[ch]
	* app/file_new_dialog.c: modified

	- Moved the toplevel L&C dialog code to lc_dialog.[ch]. Only
	  these files need knowledge about how to create/update/...
	  the sub-dialogs, so the corresp. functions are defined in
	  lc_dialogP.h.
	- The popup menus are now created by menus.c. The command
	  callbacks are defined in [layers|channels|paths]_dialog.h.
	- Private functions to be used by "friend files" are defined in
	  [layers|paths]_dialogP.h.
	- Changed the order of the ops_buttons in the paths dialog to
	  match the order in the layers and channels dialogs.
	- The paint mode menu and preview stuff still needs to go out of
	  layers_dialog.[ch].
	- I'm not sure about the keybindings in the layer dialog's "Stack"
	  submenu because the list widget has it's own idea of PageUp/Down.
	- Hopefully fixed the update problem with new images by calling
	  lc_dialog_flush() after creating a new image.

	* app/app_procs.c
	* app/bezier_select.c
	* app/commands.c
	* app/floating_sel.c
	* app/gdisplay.c
	* app/gimage.c
	* app/gimage_mask.c
	* app/paint_core.c
	* app/preferences_dialog.c
	* app/transform_core.c
	* app/undo.c: changed #include's according to the new L&C file
	structure.
1999-06-06 17:26:51 +00:00
BST 1999 Andy Thomas 343de341e3 app/bezier_select.c app/paths_dialog.c
Sun Jun  6 14:19:08 BST 1999 Andy Thomas <alt@gimp.org>

	* app/bezier_select.c
	* app/paths_dialog.c

	Applied bezier/paths patches supplied by David LE CORFEC.
	These fix a couple of segv. problems.
1999-06-06 13:24:26 +00:00
Tor Lillqvist 4e886ad428 Check for mmap.
* configure.in: Check for mmap.

	* app/makefile.msc: Depend on gimpi.lib.

	* app/app_procs.c (app_init): Fix gccism: Allocate filenames (an
 	array with non-constant size) dynamically.

	* app/{datafiles,fileops,general,install,module_db,temp_buf}.c:
 	Include glib.h before standard headers, because of certain obscure
 	details related to compiling with gcc on Win32.

	(If you really want to know: glib.h defines he names of POSIXish
	(but non-ANSI) functions as prefixed with underscore, because
 	that's how they are named in the msvcrt runtime C library we want
 	to use. However, defining stat as _stat causes some problems if
 	done after including the mingw32 <sys/stat.h>. So, it's easiest to
 	include <glib.h> early.)

	* app/main.c: Use _stdcall and __argc, __argv with MSC, but
 	__attribute__((stdcall)) and _argc, _argv with gcc. Don't print
 	the "Passed serialization test" message on Win32. (It would open
 	up an otherwise unnecessary console window.)

	* app/paint_funcs.c (gaussian_blur_region): Don't use variable sum
 	until initialized.

	* app/{bezier_select,paths_dialog}.c: Include config.h and define
 	rint() if necessary.

	* app/plug_in.c: Use _spawnv, not spawnv, on Win32 and OS/2.
1999-05-28 17:47:17 +00:00
BST 1999 Andy Thomas 8fb9f79459 app/bezier_select.c app/bezier_selectP.h app/paths_dialog.c
Wed May 26 21:14:15 BST 1999 Andy Thomas <alt@gimp.org>

	* app/bezier_select.c
	* app/bezier_selectP.h
	* app/paths_dialog.c
	* app/rotate_tool.c
	* app/scale_tool.c
	* app/transform_core.c
	* app/transform_core.h
	* app/transform_tool.c
	* app/transform_tool.h

	Add option to show currently selected path to be displayed
	during the transform tool operations. (Note if > 1 path locked
	only the last selected path will be shown).

	Reduced flashing of control points during update drawing of paths.

	Fixed problem in transform tool rotate/scale when changing
	layer (used to get many gdk assert failures about "gc != NULL")
1999-05-26 20:36:33 +00:00
BST 1999 Andy Thomas a4730edaf3 app/gdisplay.c app/paths_dialog.c app/paths_dialog.h
Sat May 15 00:06:06 BST 1999 Andy Thomas <alt@gimp.org>

	* app/gdisplay.c
	* app/paths_dialog.c
	* app/paths_dialog.h

	Fixed problem where paths preview not resized correctly when
	image was resized.
1999-05-14 23:16:58 +00:00