; ; File: IntlUtilsPriv.a ; ; Contains: Private equates and macros for International Utilities (PACK 6). ; ; Written by: Peter Edberg ; ; Copyright: © 1990-1992 by Apple Computer, Inc., all rights reserved. ; ; Change History (most recent first): ; ; <10> 2/18/92 ngk Add glue to fix bug in 7.0 version of TypeSelectNewKey. It ; requires high word of D0 to be zero to work. ; <9> 10/9/91 JSM Remove SysVers conditionals to fix ROM build. ; <8> 8/22/91 JSM Clean up header. ; <7> 1/30/91 gbm sab, #38: Change the Ôalready including this fileÕ variable to ; all uppercase (for security reasons) ; <6> 1/2/91 PKE (bbm) Add macro for private IUClearCacheSys routine. ; <5> 9/10/90 PKE Add macro for private IUGetScriptItl routine. ; <4> 7/2/90 PKE Added selector and macro for private IUTextOrderSys routine. ; <3> 5/2/90 ngk add type select routines ; <2> 4/27/90 gbm prevent redefinition warnings by avoiding multiple inclusions ; <1> 3/19/90 PKE New today: selectors and macros for IUMagWString, IUMagWPString. ;___________________________________________________________________________________________________ IF &TYPE('__INCLUDINGINTLUTILSPRIV__') = 'UNDEFINED' THEN __INCLUDINGINTLUTILSPRIV__ SET 1 ; Routine selectors iuMagWString EQU 18 ; $12 <1> iuMagWPString EQU 38 ; $26 <1> iuTypeSelectClear EQU 40 ; $28 <3> iuTypeSelectNewKey EQU 42 ; $2A <3> iuTypeSelectFindItem EQU 44 ; $2C <3> iuTypeSelectCompare EQU 46 ; $2E <3> iuTextOrderSys EQU 48 ; $30 <4> iuGetScriptItl EQU 50 ; $32 <5> iuClearCacheSys EQU 52 ; $34 <6> ; Type select records and constants ; <3> tsPreviousSelectMode EQU -1 ; <3> tsNormalSelectMode EQU 0 ; <3> tsNextSelectMode EQU 1 ; <3> TypeSelectRecord RECORD 0 ; <3> tsrLastKeyTime DS.L 1 ; <3> tsrScript DS.W 1 ; <3> tsrKeyStrokes DS.B 64 ; <3> ENDR ; <3> ;QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ ; Macros for each routine ;QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ ; ; FUNCTION IUMagWString(aPtr, bPtr: Ptr; aLen, bLen: Integer): Integer; ; MACRO _IUMagWString ; <1> move.w #iuMagWString,-(sp) _Pack6 ENDM ; ; FUNCTION IUMagWPString(aPtr, bPtr: Ptr; aLen, bLen: Integer; intlParam: Handle): Integer; ; MACRO _IUMagWPString ; <1> move.w #iuMagWPString,-(sp) _Pack6 ENDM ; ; PROCEDURE TypeSelectClear(VAR tsr: TypeSelectRecord); ; MACRO _TypeSelectClear ; <3> move.w #iuTypeSelectClear,-(sp) _Pack6 ENDM ; ; FUNCTION TypeSelectNewKey(theEvent: EventRecord; ; VAR tsr: TypeSelectRecord): BOOLEAN; MACRO _TypeSelectNewKey ; <3> moveq #0,d0 ; <10> move.w #iuTypeSelectNewKey,-(sp) _Pack6 ENDM ; ; FUNCTION TypeSelectFindItem( tsr: TypeSelectRecord; ; listSize: INTEGER; ; selectMode: TSCode; ; getStringProc: IndexToStringProcPtr; ; yourDataPtr: Ptr): INTEGER; ; ; IndexToStringProcPtr = ^FUNCTION(item: INTEGER; ; VAR itemsScript: ScriptCode; ; VAR itemsStringPtr: StringPtr; ; yourDataPtr: Ptr): BOOLEAN; ; MACRO _TypeSelectFindItem ; <3> move.w #iuTypeSelectFindItem,-(sp) _Pack6 ENDM ; ; FUNCTION TypeSelectCompare(tsr: TypeSelectRecord; ; testStringScript: ScriptCode; ; testStringPtr: StringPtr): INTEGER; ; MACRO _TypeSelectCompare ; <3> move.w #iuTypeSelectCompare,-(sp) _Pack6 ENDM ; ; FUNCTION IUTextOrderSys(aPtr, bPtr: Ptr; aLen, bLen: Integer; ; aScript, bScript: ScriptCode; aLang, bLang: LangCode): Integer; ; MACRO _IUTextOrderSys ; <4> move.w #iuTextOrderSys,-(sp) _Pack6 ENDM ; ; FUNCTION IUGetScriptItl(theID: INTEGER; script: ScriptCode; sysFlag: INTEGER): Handle; ; MACRO _IUGetScriptItl ; <5> move.w #iuGetScriptItl,-(sp) _Pack6 ENDM ; ; PROCEDURE IUClearCacheSys; ; MACRO _IUClearCacheSys ; <6> move.w #iuClearCacheSys,-(sp) _Pack6 ENDM ENDIF ; ...already included