mirror of
https://github.com/elliotnunn/sys7.1-doc-wip.git
synced 2024-12-12 04:29:09 +00:00
167 lines
4.7 KiB
Plaintext
167 lines
4.7 KiB
Plaintext
;
|
||
; File: IconUtilsPriv.a
|
||
;
|
||
; Contains: Private Assembly Interface for color icon plotting utilities
|
||
;
|
||
; Written by: Nick Kledzik
|
||
;
|
||
; Copyright: © 1990-1992 by Apple Computer, Inc., all rights reserved.
|
||
;
|
||
; Change History (most recent first):
|
||
;
|
||
; <16> 3/20/92 DC Added UpdateIconGlobals to private interfaces
|
||
; <15> 3/19/92 DC Changed the printerPortCache field in the GlobalIconData
|
||
; structure so that the structure would not change (and Radius
|
||
; products will not break)
|
||
; <14> 3/17/92 DC Exported all definitions to icons.a except get and set icon
|
||
; device and SetLabel.
|
||
; <13> 10/29/91 DC Conditionalized last change to protect CubeE
|
||
; <12> 8/30/91 DC Added printerPortCache to the globals to allow improved printing
|
||
; case check.
|
||
; <11> 8/22/91 JSM Clean up header.
|
||
; <10> 2/25/91 DC KSM-changed pascal-type comments for _PlotIconHandle macro for
|
||
; PlotCIconHand(… to PlotIconHandle(… (no bug number but only a
|
||
; comment change)
|
||
; <9> 1/30/91 gbm sab, #38: Change the ‘already including this file’ variable to
|
||
; all uppercase (for security reasons)
|
||
; <8> 1/7/91 JDR (dba) Removing private Icon Utilities routines from the public
|
||
; interfaces and adding them here.
|
||
; <7> 11/19/90 DC Moved System Icon ID's from private to public
|
||
; <6> 9/21/90 DC <ksm>Fixed inconsistency with record definitions in C and
|
||
; assembler
|
||
; <5> 9/15/90 DC changed setlabel to live here
|
||
; <4> 9/6/90 DC fixed icon global structure for selected cluts
|
||
; <3> 7/25/90 DC Added definitions of all private structures for sharing with
|
||
; IconUtils.a
|
||
; <2> 6/20/90 ngk Add genericFileServerIconResource
|
||
; <1> 6/6/90 ngk first checked in
|
||
; <0+> 6/6/90 ngk created it
|
||
;
|
||
|
||
IF &TYPE('__INCLUDINGICONUTILSPRIV__') = 'UNDEFINED' THEN
|
||
__INCLUDINGICONUTILSPRIV__ SET 1
|
||
|
||
IF &TYPE('__INCLUDINGICONS__') = 'UNDEFINED' THEN
|
||
INCLUDE 'Icons.a'
|
||
ENDIF ; ...already included
|
||
|
||
genericIconBase EQU -4000
|
||
popupMenuSymbolResource EQU -3990
|
||
standalonePopupMenuSymbolResource EQU -3986
|
||
|
||
genericMailboxIconResource EQU -3987 ; excise from 7.0
|
||
genericLetterIconResource EQU -3988 ; excise from 7.0
|
||
|
||
; IconType's
|
||
largeIcon1 EQU 0
|
||
largeIcon4 EQU 1
|
||
largeIcon8 EQU 2
|
||
smallIcon1 EQU 3
|
||
smallIcon4 EQU 4
|
||
smallIcon8 EQU 5
|
||
miniIcon1 EQU 6
|
||
miniIcon4 EQU 7
|
||
miniIcon8 EQU 8
|
||
aCIcon EQU 128
|
||
|
||
IconSpace EQU miniIcon8 + 1
|
||
IconDepthSpace EQU smallIcon1 - largeIcon1
|
||
IconSizeSpace EQU IconSpace / IconDepthSpace
|
||
|
||
transformMask EQU $03
|
||
labelMask EQU $0F00
|
||
labelShift EQU $8
|
||
|
||
|
||
IconSuite RECORD 0
|
||
theType DS.W 1
|
||
pad DS.W 1
|
||
table DS.L IconSpace ; ARRAY [0..IconSpace-1] OF Handle;
|
||
suiteSize EQU *
|
||
ENDR
|
||
|
||
IconCache RECORD 0
|
||
theSuite DS.B IconSuite.suiteSize
|
||
userPtr DS.L 1 ; Ptr
|
||
userMethod DS.L 1 ; IconGetter
|
||
cacheSize EQU *
|
||
ENDR
|
||
|
||
DeviceCheck RECORD 0
|
||
theDevice DS.L 1 ; GDHandle
|
||
theSeed DS.L 1 ; long
|
||
checkMask DS.L 1 ; unsigned long
|
||
checkResults DS.L 1 ; unsigned long
|
||
disabledCheckMask DS.L 1 ; unsigned long
|
||
disabledCheckResults DS.L 1 ; unsigned long
|
||
ENDR
|
||
|
||
RGBRec RECORD 0
|
||
red DS.W 1
|
||
green DS.W 1
|
||
blue DS.W 1
|
||
RGBRecSize EQU *
|
||
ENDR
|
||
|
||
Labels EQU 8
|
||
Sets EQU 8
|
||
Cluts EQU (Labels*Sets)
|
||
ColorListSize EQU ((RGBRec.RGBRecSize)*Labels)
|
||
|
||
GlobalIconData RECORD 0
|
||
labelStrings DS.L Labels ; Array of string handles
|
||
seeds DS.L Cluts ; Array of seeds
|
||
colorTables DS.L Cluts ; Array of CTabHandle's
|
||
originals DS.L 2 ; Array of CTabHandle's
|
||
labelColors DS.B ColorListSize ; Array of RGBColors
|
||
indexLists DS.L 2 ; Array of unsigned char **
|
||
virtualScreen DS.L 1 ; GDHandle
|
||
deviceListSize DS.L 1 ; long
|
||
deviceCheckList EQU * ; Variable length array of DeviceCheck
|
||
ENDR
|
||
|
||
|
||
selectSetLabel EQU $C
|
||
selectSetIconDevice EQU $18
|
||
selectGetIconDevice EQU $20
|
||
|
||
IF TheFuture THEN
|
||
selectUpdateIconGlobals EQU $21
|
||
ENDIF
|
||
|
||
paramSetLabel EQU $5
|
||
paramSetIconDevice EQU $2
|
||
paramGetIconDevice EQU $2
|
||
|
||
IF TheFuture THEN
|
||
paramUpdateIconGlobals EQU $0
|
||
ENDIF
|
||
|
||
; PROCEDURE SetIconDevice(theScreen: GDHandle);
|
||
MACRO
|
||
_SetIconDevice
|
||
DoDispatch _IconDispatch, selectSetIconDevice, paramSetIconDevice
|
||
ENDM
|
||
|
||
; PROCEDURE GetIconDevice(VAR theScreen: GDHandle);
|
||
MACRO
|
||
_GetIconDevice
|
||
DoDispatch _IconDispatch, selectGetIconDevice, paramGetIconDevice
|
||
ENDM
|
||
|
||
; FUNCTION SetLabel(labelNumber: INTEGER; labelColor: RGBColor;
|
||
; Str255 labelString): OSErr;
|
||
MACRO
|
||
_SetLabel
|
||
DoDispatch _IconDispatch, selectSetLabel, paramSetLabel
|
||
ENDM
|
||
|
||
IF TheFuture THEN
|
||
; FUNCTION UpdateIconGlobals: OSErr;
|
||
MACRO
|
||
_UpdateIconGlobals
|
||
DoDispatch _IconDispatch, selectUpdateIconGlobals, paramUpdateIconGlobals
|
||
ENDM
|
||
ENDIF
|
||
|
||
ENDIF ; ...already included |