1 line
14 KiB
Plaintext
1 line
14 KiB
Plaintext
|
LOAD 'Macros.dump'
INCLUDE 'Pict.equ'
INCLUDE 'Driver.equ'
IMPORT Q_ChangePictSize
IMPORT Q_Copy2
IMPORT Q_Copy4
IMPORT D_KillFont
IMPORT D_NeedHandle
IMPORT Q_Nop
IMPORT Q_PixRect
IMPORT D_SelectFont
IMPORT Q_addbytes
IMPORT count
IMPORT oldptr
IMPORT Q_pictSCB
IMPORT Q_picterr
IMPORT temp
IMPORT Q_theBGcolor
IMPORT Q_theChExtra
IMPORT Q_theFGcolor
IMPORT Q_theFontFlags
IMPORT Q_theMask
IMPORT Q_thePnSize
IMPORT Q_theSpExtra
IMPORT Q_theTxFont
IMPORT Q_theTxLoc
IMPORT Q_theTxMode
IMPORT Q_txtBounds
IMPORT Q_txtHandle
IMPORT Q_txtHsize
IMPORT Q_txtImage
IMPORT Q_txtPort
IMPORT Q_txtPortLoc
IMPORT Q_txtRect
IMPORT Q_txtSCB
IMPORT Q_txtWidth
ENTRY Q_MakeTextImage
****************************************************************
* ;
* Q_Text rotating and flipping routines ;
*______________________________________________________________*
* ;
* FUTURE EXTENSIONS: ;
* ;
* -- Don't actually record Q_Text size, style, ;
* font, color, and flags opcodes in the ;
* mangled picture ;
* ;
* -- Record them as part of a PicComment, along ;
* with the orientation of the Q_Text image, so ;
* that they can be restored as actual Q_Text ;
* call if the picture is restored to its ;
* original orientation. ;
* ;
* -- Add PostScript PicComments so that the ;
* rotated/flipped Q_Text still prints out nice ;
* and pretty. ;
* ;
****************************************************************
****************************************************************
*
* Q_TextOps -- handle picture opcodes for Q_Text
*
****************************************************************
Q_TextOps PROC EXPORT
;Using Q_PictData
EXPORT Q_FgColor
EXPORT Q_BgColor
EXPORT Q_TxFont
EXPORT Q_TxFace
EXPORT Q_TxSize
EXPORT Q_TxMode
EXPORT Q_ChExtra
EXPORT Q_SpExtra
EXPORT Q_FontFlags
EXPORT Q_Text
EXPORT Q_DhText
EXPORT Q_DvText
EXPORT Q_DhDvText
EXPORT Q_LongText
*--------------------------------------------------------------*
* Remember the foreground color ;
*--------------------------------------------------------------*
Q_FgColor ;
jsl Q_Nop ; move the opcode
moveword [<oldptr],Q_theFGcolor
jmp Q_Copy2 ; move the color
*--------------------------------------------------------------*
* Remember the background color ;
*--------------------------------------------------------------*
Q_BgColor ;
jsl Q_Nop
moveword [<oldptr],Q_theBGcolor
jmp Q_Copy2
*--------------------------------------------------------------*
* Remember the current font ;
*--------------------------------------------------------------*
Q_TxFont ;
jsl Q_Nop
movelong [<oldptr],Q_theTxFont
jmp Q_Copy4
*--------------------------------------------------------------*
* Remember the current style ;
*--------------------------------------------------------------*
Q_TxFace ;
jsl Q_Nop
movebyte [<oldptr],Q_theTxFont+2
jmp Q_Copy2
*--------------------------------------------------------------*
* Remember the current Q_Text size ;
*--------------------------------------------------------------*
Q_TxSize ;
jsl Q_Nop
movebyte [<oldptr],Q_theTxFont+3
jmp Q_Copy2
*--------------------------------------------------------------*
* Remember the current Q_Text mode ;
*--------------------------------------------------------------*
Q_TxMode ;
jsl Q_Nop
moveword [<oldptr],Q_theTxMode
jmp Q_Copy2
*--------------------------------------------------------------*
* Remember the current char extra ;
*--------------------------------------------------------------*
Q_ChExtra ;
jsl Q_Nop
moveword [<oldptr],Q_theChExtra
jmp Q_Copy2
*--------------------------------------------------------------*
* Remember the current space extra ;
*---------------------------------------------------------
|