	load 'macros.dump'
	include 'driver.equ'
	include 'wp.equ'
********************************************************************
*	Includes...
*
* Thursday, April 27, 1989 1:14:20 PM
********************************************************************
		
********************************************************************
*	Imports... There are none!
*
* Thursday, April 27, 1989 1:26:29 PM
********************************************************************
;-----------------------------------------------
;
;   Forward addresses and entries
;
;-----------------------------------------------

	ENTRY	W_CaseStr
	ENTRY	W_ClearStr
	ENTRY	W_CutStr
	ENTRY	W_DeleteStr
	ENTRY	W_StyleStr
	ENTRY	W_TypingStr
	ENTRY	W_UPasteStr

****************************************************************
* This segment must be static

WPglobals	PROC		EXPORT
		EXPORT	W_StartWinGlobals
		EXPORT	W_Stuff
		EXPORT	W_TimeStr
		EXPORT	W_NumPgs
		EXPORT	W_HeaderBits
		EXPORT	W_ScrollBar
		EXPORT	W_FtrHt
		EXPORT	W_PHandle
		EXPORT	W_MaxP
		EXPORT	W_PageSize
		EXPORT	W_PaperBot
		EXPORT	W_PrHRes
		EXPORT	W_TopPg
		EXPORT	W_TopPgPar
		EXPORT	W_TopParHeight
		EXPORT	W_StartLine
		EXPORT	W_StartRuler
		EXPORT	W_CaretTop
		EXPORT	W_EndPar
		EXPORT	W_EndOffset
		EXPORT	W_WpFont
		EXPORT	W_WPSize
		EXPORT	W_TopPar
		EXPORT	W_TopPB
		EXPORT	W_BotLine
		EXPORT	W_EndSwapStuff
		EXPORT	W_HdrStuff
		EXPORT	W_EndWinGlobals
		EXPORT	W_PrintFl
		EXPORT	W_STStyle
		EXPORT	W_STColor
		EXPORT	W_STLIne
		EXPORT	W_EndStyle
		EXPORT	W_EndColor
		EXPORT	W_MaxAscent
		EXPORT	W_MaxLeading
		EXPORT	W_JustBits
		EXPORT	W_JustExtra
		EXPORT	W_RulBits
		EXPORT	W_Indent
		EXPORT	W_NumTabs
		EXPORT	W_RulEnd
		EXPORT	W_ClipRuler
		EXPORT	W_TempRgn
		EXPORT	W_NewWinComin
		EXPORT	W_SizeFl
		EXPORT	W_ColorFl
		EXPORT	W_NewStyle
		EXPORT	W_NewSize
		EXPORT	W_WPUndoType
		EXPORT	W_UndoKey
		EXPORT	W_UndoStartLine
		EXPORT	W_UndoEndPar
		EXPORT	W_UndoEndOffset
		EXPORT	W_PasteLine
		EXPORT	W_UndoNames
		EXPORT	W_StyleStr
		EXPORT	W_CutStr
		EXPORT	W_ClearStr
		EXPORT	W_CurDoc
		EXPORT	W_View
		EXPORT	W_DateStr
		EXPORT	W_PageStr
		EXPORT	W_FirstPage
		EXPORT	W_ShowRuler
		EXPORT	W_HdrHt
		EXPORT	W_StartSwapStuff
		EXPORT	W_PPtr
		EXPORT	W_LastP
		EXPORT	W_PaperTop
		EXPORT	W_PaperSize
		EXPORT	W_PrHExtra
		EXPORT	W_TopPgPixel
		EXPORT	W_TopPgLine
		EXPORT	W_StartPar
		EXPORT	W_StartOffset
		EXPORT	W_Selected
		EXPORT	W_CaretBot
		EXPORT	W_EndLine
		EXPORT	W_WPFontFlag
		EXPORT	W_WpStyle
		EXPORT	W_WPColor
		EXPORT	W_TopLine
		EXPORT	W_BotPar
		EXPORT	W_BotPB
		EXPORT	W_DocStuff
		EXPORT	W_FtrStuff
		EXPORT	W_OverRide
		EXPORT	W_STFont
		EXPORT	W_STSize
		EXPORT	W_STPtr
		EXPORT	W_EndFont
		EXPORT	W_EndSize
		EXPORT	W_EndPtr
		EXPORT	W_MaxDescent
		EXPORT	W_JustPtr
		EXPORT	W_JustSpaces
		EXPORT	W_WPRuler
		EXPORT	W_LeftMargin
		EXPORT	W_RightMargin
		EXPORT	W_Tabs
		EXPORT	W_CRCopied
		EXPORT	W_Caret
		EXPORT	W_TempPort
		EXPORT	W_FontFl
		EXPORT	W_StyleFl
		EXPORT	W_NewFont
		EXPORT	W_NewInvStyle
		EXPORT	W_NewColor
		EXPORT	W_UndoHandle
		EXPORT	W_UndoStartPar
		EXPORT	W_UndoStartOffset
		EXPORT	W_UndoEndLine
		EXPORT	W_PastePar
		EXPORT	W_PasteOffset
		EXPORT	W_TypingStr
		EXPORT	W_CaseStr
		EXPORT	W_DeleteStr
		EXPORT	W_UPasteStr
		EXPORT	W_DeepShit
		
		export	W_SizeWinGlobals
		export	W_StuffSize
		export	W_RulBytes
		export	W_DocLocked
		
		
		
		
		
		
		
W_DocLocked		DC.W	0
W_CurDoc		DS.B 4

****************************************************************
* These globals should be swapped in and out with the window being
* manipulated.


;---------------
W_StartWinGlobals
W_View			DS.B 2		   ;0 for normal, 1 for header, -1 for footer
W_Stuff			DS.B 2		   ;0 for normal, 1 for header, -1 for footer

W_DateStr			DS.B 26
W_TimeStr			DS.B 10
W_PageStr			DS.B 8

W_NumPgs			DS.B 2  ;how many pages are in current doc
W_FirstPage		DS.B 2  ;for page numbering, what number to start with
W_HeaderBits		DS.B 2  ;where are the headers and footers?
W_ShowRuler		DS.B 2  ;false for no ruler, true for ruler showing
W_ScrollBar		DS.B 4  ;scroll bar W_Handle

W_HdrHt			DS.B 2  ; the number of Q_Pixels in the header
W_FtrHt			DS.B 2  ; the number of Q_Pixels in the Footer

;------------
W_StartSwapStuff

W_PHandle			DS.B 4  ;the W_Handle to the paragraph data structure
W_PPtr			DS.B 4  ;the pointer "  ''   ' '   ' ' '' ' ' '
W_MaxP			DS.B 2  ;the max number of pars to fit in current W_PHandle
W_LastP			DS.B 2  ;the last defined par in W_Document

;These are the printing globals
W_PageSize		DS.B 2  ;valid Q_Text space on a page
W_PaperTop		DS.B 2  ;top space above page
W_PaperBot		DS.B 2  ;bottem space below page
W_PaperSize		DS.B 2  ;sum of the above three
W_PrHRes			DS.B 2  ;the horiz. res for ruler
W_PrHExtra		DS.B 2  ;W_offset from papaer to page Q_Rect, hriz.



;These are screen and page globals
W_TopPg			DS.B 2  ;the page that begins the current window
W_TopPgPixel		DS.B 2  ;how far down the W_TopPg does the window start
W_TopPgPar		DS.B 2  ;what paragraphs has first W_Stuff on page
W_TopPgLine		DS.B 2  ;what Q_Line in par is first
W_TopParHeight	DS.B 2  ;how high is the par before W_TopPgLine


;Current Q_Text pos
W_StartPar		DS.B 2  ;the par of topmost portion of selection
W_StartLine		DS.B 2  ;the Q_Line ' ' ' '' ' ' ' '' ' ' ' ' '
W_StartOffset		DS.B 2  ;the W_offset in par of topmost ' '' ' ' '
W_StartRuler		DS.B 4  ;the ruler associated with the current par.
W_Selected		DS.B 2  ;0 for single Q_Point, 1 for W_Selected range, $8000 for pict
; only if W_Selected is false
W_CaretTop		DS.B 4  ; if W_Selected is false these will blink
W_CaretBot		DS.B 4  ; W_Caret in the idle proc
; only if W_Selected is true are the following valid
W_EndPar			DS.B 2
W_EndLine			DS.B 2
W_EndOffset		DS.B 2

W_WPFontFlag		DS.B 2
W_WpFont			DS.B 2
W_WpStyle			DS.B 1
W_WPSize			DS.B 1
W_WPColor			DS.B 2

W_TopPar			DS.B 2					 ; top par on Q_Line
W_TopLine			DS.B 2					 ;top Q_Line on screen
W_TopPB			DS.B 2
W_BotPar			DS.B 2
W_BotLine			DS.B 2
W_BotPB			DS.B 2
W_EndSwapStuff
W_StuffSize		equ W_EndSwapStuff-W_StartSwapStuff


W_DocStuff		DS.B W_StuffSize
W_HdrStuff		DS.B W_StuffSize
W_FtrStuff		DS.B W_StuffSize

W_EndWinGlobals

W_SizeWinGlobals	equ W_EndWinGlobals-W_StartWinGlobals

W_OverRide		DS.B 2
W_PrintFl			DS.B 2

;this is a global record for W_CutLine,st are starting params,End are ending pars
W_STFont			DS.B 2
W_STStyle			DS.B 1
W_STSize			DS.B 1
W_STColor			DS.B 2
W_STPtr			DS.B 4
W_STLIne			DS.B 2

W_EndFont			DS.B 2
W_EndStyle		DS.B 1
W_EndSize			DS.B 1
W_EndColor		DS.B 2
W_EndPtr			DS.B 4
W_MaxAscent		DS.B 2
W_MaxDescent		DS.B 2
W_MaxLeading		DS.B 2
W_JustPtr			DS.B 4
W_JustBits		DS.B 2
W_JustSpaces		DS.B 2
W_JustExtra		DS.B 4


****************************************************************
* Ruler - equates and global and standard
W_WPRuler
				DS.B 2
W_RulBits			DS.B 2
W_LeftMargin		DS.B 2
W_Indent			DS.B 2
W_RightMargin		DS.B 2
W_NumTabs			DS.B 2
W_Tabs			DS.B 40
W_RulEnd
W_RulBytes		equ W_RulEnd-W_WPRuler

W_CRCopied		DS.B 2
W_ClipRuler		DS.B W_RulBytes

W_Caret			DS.B 2
W_TempRgn			DS.B 4
W_TempPort		DS.B 4
W_NewWinComin		DS.B 4


****************************************************************
* Vhange W_Stuff
W_FontFl			DS.B 2
W_SizeFl			DS.B 2
W_StyleFl			DS.B 2
W_ColorFl			DS.B 2
W_NewFont			DS.B 2
W_NewStyle		DS.B 2
W_NewInvStyle		DS.B 2
W_NewSize			DS.B 2
W_NewColor		DS.B 2


****************************************************************
* Undo

W_WPUndoType		DS.B 2
W_UndoHandle		DS.B 4
W_UndoKey			DS.B 2
W_UndoStartPar	DS.B 2
W_UndoStartLine	DS.B 2
W_UndoStartOffset	DS.B 2
W_UndoEndPar		DS.B 2
W_UndoEndLine		DS.B 2
W_UndoEndOffset	DS.B 2

W_PastePar		DS.B 2
W_PasteLine		DS.B 2
W_PasteOffset		DS.B 2

W_UndoNames	
	DC.L	0
	DC.L	W_TypingStr
	DC.L	W_DeleteStr
	DC.L	W_DeleteStr
	DC.L	W_TypingStr
	DC.L	W_StyleStr
	DC.L	W_CaseStr
	DC.L	W_CutStr
	DC.L	W_ClearStr
	DC.L	W_UPasteStr

W_TypingStr	str 'Typing'
W_StyleStr	str 'Style Change'
W_CaseStr		str 'Case Change'
W_CutStr		str 'Cut'
W_DeleteStr
W_ClearStr	str 'Clear'
W_UPasteStr	str 'Paste'

W_DeepShit		DC.W	0


		ENDP
		END

