; ; 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 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