Commit Graph

9 Commits

Author SHA1 Message Date
Michael Natterer 8d6c335f8f app/Makefile.am app/channel_pvt.h app/drawable_pvt.h app/gdisplayF.h
2000-12-29  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/channel_pvt.h
	* app/drawable_pvt.h
	* app/gdisplayF.h
	* app/gimpdrawableP.h
	* app/gimpimageP.h
	* app/layer_pvt.h
	* app/toolsF.h: removed these files.

	* app/apptypes.h
	* tools/pdbgen/enums.pl: added tons of opaque typedefs and enums.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/display.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/tools.pdb
	* app/*: chainsaw #include cleanup:

	- Never (never!!) include stuff in header files except where we
	  need access to structures' contents (like derived objects).
	- Added prototypes and proper formating in many files.
	- The #include order in *all* *.c files is as follows:

	#include "config.h"

	#include <system stuff>

	#include <gtk/gtk.h>

	#include "apptypes.h"

	#include "gimp stuff"

	#include "libgimp stuff"

	#include "libgimp/gimpintl.h"

	By following this scheme we can easily see a file's dependencies
	from it's #include's and can grep for the inclusion to find out
	where a file is used.

	* tools/pdbgen/app.pl: changed to follow the include scheme above.

	* libgimp/Makefile.am
	* libgimp/gimpuitypes.h: new file, included from libgimp/gimpui.h
	and from app/apptypes.h.

	* libgimp/gimpcolorbutton.[ch]
	* libgimp/gimpdialog.[ch]
	* libgimp/gimphelpui.[ch]
	* libgimp/gimpparasite.[ch]
	* libgimp/gimppatheditor.[ch]
	* libgimp/gimpprotocol.c
	* libgimp/gimpquerybox.[ch]
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimptypes.h
	* libgimp/gimpui.h
	* libgimp/gimpunit.h
	* libgimp/gimpunitmenu.[ch]
	* libgimp/gimpwidgets.[ch]: changed accordingly.

	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/gdyntext/message_window.c
	* plug-ins/imagemap/imap_default_dialog.c
	* plug-ins/imagemap/imap_file.c: these files used to include
	"libgimp/gimpui.h" without including "libgimp/gimp.h". This is
	no longer possible because the libgimpui headers don't inlcude
	"libgimp/gimpunit.h" any more.
2000-12-29 15:22:01 +00:00
Michael Natterer 9004346179 added a modifier_key_func which gives immediate cursor_update feedback on
2000-03-02  Michael Natterer  <mitch@gimp.org>

	* app/rect_select.[ch]: added a modifier_key_func which gives
	immediate cursor_update feedback on modifier key events.

	* app/ellipse_select.c
	* app/free_select.c
	* app/fuzzy_select.c
	* app/rect_selectP.h: call the new function.
	Added current_[x|y] fields to the tools' structures which get
	updated from the "motion" functions. They have to appear in the
	same order in all structures because the modifier_key_func treats
	them all as rectangular selection tools.
	This is ugly and cries for a object hierarchy of tools.
2000-03-01 23:22:43 +00:00
Garry R. Osgood 61bbabc6ad gimp/app/disp_callbacks.c gimp/app/ellipse_select.c gimp/app/free_select.c
2000-01-19  Garry R. Osgood <gosgood@idt.net>
* gimp/app/disp_callbacks.c
* gimp/app/ellipse_select.c
* gimp/app/free_select.c
* gimp/app/fuzzy_select.c
* gimp/app/rect_select.c
* gimp/app/rect_select.h
* gimp/app/rect_selectP.h
* gimp/app/tools.c
* gimp/app/tools.h
* gimp/app/toolsF.h

Boolean selection operations, (adding to,
subtracting from, or intersecting with
pre-existing functions) now occur regardless
of the setting of "Disable Cursor Update"
toggle button in Interface/Image Window
category. Introduced a new tool action type,
OperUpdateFunc, To provide a distinct context
for such activity. see
http://idt.net/~gosgood/gimp-patch/patch05.html
for full details. Closes #2568.
2000-01-19 19:06:13 +00:00
Sven Neumann 933a5abd54 bug-fixing....
--Sven
1999-09-25 21:45:26 +00:00
Michael Natterer f1b5e1ae47 namespace cleanups.
1999-06-21  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/context_manager.c: namespace cleanups.

	* app/commands.[ch]
	* app/menus.c: moved the "Toggle Selection" menu entry to "View",
	sprinkled some separators and made the layers/channels/paths popup
	menus consistent with Tigert's last ops buttons change.

	* app/fileops.c
	* app/plug_in.c: check for gdisplay_active() returning NULL in
	some more places.

	* app/[all tool related files]:

	- Turned the ToolAction and ToolState #define's into typedef'ed
	  enums, so the compiler can do some more sanity checking.
	- Removed one more unused global variable "active_tool_layer".
	- Removed some #include's from tools.c.
	- Standardized the individual tools' structure names.
	- Moved showing/hiding the tool options to separate functions.
	- Stuff...

	* app/commands.c
	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/tools.c: fixed the segfaults which happened when the image
	of one of the tools which have dialogs (levels/posterize/...) was
	deleted. My approach was to do stricter sanity checking and to set
	some gdisplay pointers correctly where appropriate, so I can't
	tell exactly where the bug was.
	The curves tool now(??) updates on every _second_ display change
	only, which is really obscure.
	Finding/changing the display to operate on should definitely be
	done by connecting to the user context's "display_changed"
	signal.

	* app/gimpset.c: emit the "remove" signal _after_ removing the
	pointer from the set. If this was not a bug but a feature, please
	let me know, we'll need two signals then.
1999-06-21 22:12:07 +00:00
jaycox 18835a7657 new bitmap files containing the new mouse cursors.
* pixmaps/mouse1*: new bitmap files containing the new mouse cursors.

	* app/parasitelist.c: use g_str_equal instead of parasite_compare_func.

	* app/paint_core.c: interpret perfectmouse right way round.

	* app/rect_select{P,}.[ch]: set custom cursors when the operation type
 	changes.  Centralize the calculation of op based on the modifier
 	keys being held.

	* app/fuzzy_select.c, app/free_select.c: allow the rect_select
 	functions calculate the operation type.

	* app/ellipse_select.c: use the SelectionOps typedefs.

	* app/edit_selection.c: convert MaskToLayerTranslate into
 	FloatingSelTranslate if there is already a floating selection in
 	init_edit_selection.

	* app/disp_callbacks.c: fixed the calculation of state.

	* app/gdisplay.[ch], app/cursorutil.[ch]: new functions to allow
 	the loading of customized cursors.

	* app/paint_funcs.[ch], app/channel.c: border_region now accepts
 	seperate xradius and yradius arguments.
1999-05-05 09:10:35 +00:00
Sven Neumann 5d2753c2ff The new "Fixed Size" option now works with
ellipse_select too. Made the entries use spinbuttons. Minor change
to the selection_size indicator in the status-bar.

Made fopen() use "rb" and "wb" instead if "r" and "w" since the OS/2
port needs it.


--Sven
1998-07-20 18:19:20 +00:00
Sven Neumann 0f00346973 Show the selection size in the statusbar.
--Sven
1998-07-18 19:24:57 +00:00
Elliot Lee 32cefec8f7 Initial revision 1997-11-24 22:05:25 +00:00