ftp.nice.ch/pub/next/text/etext/eText5-0.93.Source.NIHS.tar.gz#/eText5/eText.subproj/eText.Undo.h

This is eText.Undo.h in view mode; [Download] [Up]

{\rtf0\ansi{\fonttbl\f0\fmodern Courier;\f2\ftech Symbol;\f1\fmodern Ohlfs;}
\paperw11640
\paperh14220
\margl120
\margr120
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f0\b0\i0\ulnone\fs24\fc0\cf0 //ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//
\i 	
\b FILENAME
\b0 :	
\b\i0 eText.Undo.h \

\b0 //
\i 	
\b SUMMARY
\b0 :	
\b\i0 Interface for the Undo subsystem of eText
\b0 \
//	
\b\i CATEGORY
\b0 :
\i0 	
\b Undo
\b0 \
//	
\b\i PROTOCOLS
\b0 :
\i0 	
\b Uses UndoManager
\b0 \
//	
\b\i INTERFACE
\b0 :
\i0 	
\b None
\b0 \
//	
\b\i AUTHOR
\b0 :		
\b\i0 Rohit Khare, portions by Jeff Martin of Bozell.
\b0 \
//	
\b\i COPYRIGHT
\b0 :	
\f2\i0 Ó
\f0\b 1993,94 California Institure of Technology, eText Project\

\b0 //ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//	
\b\i Description
\b0\i0 \
//		These methods deal with undoManager. Along with the overrides of many\
//	particular Text calls for modifying selections and paragraphs, (Undo)\
//	publishes a two-phase API for recording changes made to the current sel.\
//\
//	Before any changes are made, call 
\i undoChange:"Action"
\i0 , which stashes away\
//	a copy of the current selection in ETF. A subsequent call of 
\i undoRange:to:
\i0 \
//	defines the target range affected by the change,  and commits the undo\
//	action to the undoManager.\
//\
//	Note that there is undo code in Annotation and Pasteboard as well.\
//ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//	
\b\i History
\b0\i0 \
//	10/17/94:	
\b Cleaned up for eText5.
\b0 \
//	08/05/94:	
\b Completely Rearchitected for 5.0. RK
\b0 \
//ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//	
\b Imported Interfaces
\b0 \
//\
	#import "
\b eText.Class.h
\b0 "\
	#import "
\b Document
\b0 .subproj/
\b UndoManager.h
\b0 "\
	#import "
\b Kludges
\b0 .subproj/
\b Stream.h
\b0 "\
	\

\b extern
\b0  char *
\b undoFilterFunc
\b0 (eText *
\b self
\b0 , unsigned char*
\b text
\b0 , int*
\b len
\b0 , int 
\b pos
\b0 );\

\b extern
\b0  NXTextFilterFunc 
\b oldTextFilter
\b0 ;\
\

\i @interface eText(Undo)\

\i0 //ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//	
\b eText Undo API\

\b0 //\
	- 
\b undoSelChange
\b0 :(const char *)actionName; // 
\i Call 
\b before
\b0  transaction
\i0 \
	- 
\b undoParChange
\b0 :(const char *)actionName; // 
\i Call 
\b before
\b0  transaction
\i0 \
	- 
\b undoAffectedRange
\b0 :(
\b int
\b0 )from 
\b to
\b0 :(
\b int
\b0 )to; // 
\i Call 
\b after
\b0  transaction
\i0 \
\
//ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//	
\b Undo Stream Operations\

\b0 //\
	- 
\b replaceSelWith
\b0 :stream 
\b from
\b0 :(int)from 
\b to
\b0 :(int)to;\
	- 
\b replaceSel
\b0 :(
\b const char
\b0  *)str 
\b from
\b0 :(int)from 
\b to
\b0 :(int)to;\
\
//ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//	
\b Selection Format Changes\

\b0 //\
	- 
\b changeFont
\b0 :sender;\
	- 
\b pasteFont
\b0 :sender;\
	- 
\b underline
\b0 :sender;\
	- 
\b subscript
\b0 :sender;\
	- 
\b superscript
\b0 :sender;\
	- 
\b unscript
\b0 :sender;\
	- 
\b setSelFont
\b0 :font;\
	- 
\b setSelFontSize
\b0 :(
\b float
\b0 )size;\
	- 
\b setSelFontFamily
\b0 :(const char *)fontName;\
	- 
\b setSelGray
\b0 :(
\b float
\b0 )value;\
	- 
\b setSelColor
\b0 :(
\b NXColor
\b0 )color;\
\
//ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//	
\b Paragraph Changes\

\b0 //\
	- 
\b pasteRuler
\b0 :sender;\
	- 
\b changeTabStopAt
\b0 :(
\b NXCoord
\b0 )oldX 
\b to
\b0 :(
\b NXCoord
\b0 )newX;\
	- 
\b setSelProp
\b0 :(
\b NXParagraphProp
\b0 )prop 
\b to
\b0 :(
\b NXCoord
\b0 )val;\
\
//ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐ\
//	
\b UndoManager Delegate\

\b0 //\
	- 
\b undoManagerWillUndo
\b0 :sender;\
	- 
\b registerLastTypingUndo
\b0 ;\

\i \
@end
}

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.