mirror of
https://github.com/nillerusr/source-engine.git
synced 2024-12-23 14:46:53 +00:00
367 lines
17 KiB
C
367 lines
17 KiB
C
|
/*
|
||
|
File: IntlResources.h
|
||
|
|
||
|
Contains: International Resource definitions.
|
||
|
|
||
|
Version: QuickTime 7.3
|
||
|
|
||
|
Copyright: (c) 2007 (c) 1983-2001 by Apple Computer, Inc., all rights reserved.
|
||
|
|
||
|
Bugs?: For bug reports, consult the following page on
|
||
|
the World Wide Web:
|
||
|
|
||
|
http://developer.apple.com/bugreporter/
|
||
|
|
||
|
*/
|
||
|
#ifndef __INTLRESOURCES__
|
||
|
#define __INTLRESOURCES__
|
||
|
|
||
|
#ifndef __MACTYPES__
|
||
|
#include <MacTypes.h>
|
||
|
#endif
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
#if PRAGMA_ONCE
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#if PRAGMA_IMPORT
|
||
|
#pragma import on
|
||
|
#endif
|
||
|
|
||
|
#if PRAGMA_STRUCT_ALIGN
|
||
|
#pragma options align=mac68k
|
||
|
#elif PRAGMA_STRUCT_PACKPUSH
|
||
|
#pragma pack(push, 2)
|
||
|
#elif PRAGMA_STRUCT_PACK
|
||
|
#pragma pack(2)
|
||
|
#endif
|
||
|
|
||
|
enum {
|
||
|
/* Bits in the itlcFlags byte */
|
||
|
itlcShowIcon = 7, /*Show icon even if only one script*/
|
||
|
itlcDualCaret = 6, /*Use dual caret for mixed direction text*/
|
||
|
/* Bits in the itlcSysFlags word */
|
||
|
itlcSysDirection = 15 /*System direction - left to right/right to left*/
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
/* One more flag in the itlcFlags byte */
|
||
|
itlcDisableKeyScriptSync = 3 /*Disable font and keyboard script synchrinozation*/
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
/* We should define masks, too. */
|
||
|
itlcDisableKeyScriptSyncMask = 1 << itlcDisableKeyScriptSync /*Disable font and keyboard script synchrinozation mask*/
|
||
|
};
|
||
|
|
||
|
|
||
|
enum {
|
||
|
tokLeftQuote = 1, /* NumberParts.data[] enumerators */
|
||
|
tokRightQuote = 2, /* In general, these are NOT to be considered indices into the data[] array */
|
||
|
tokLeadPlacer = 3,
|
||
|
tokLeader = 4,
|
||
|
tokNonLeader = 5,
|
||
|
tokZeroLead = 6,
|
||
|
tokPercent = 7,
|
||
|
tokPlusSign = 8,
|
||
|
tokMinusSign = 9,
|
||
|
tokThousands = 10,
|
||
|
tokReserved = 11, /* 11 is reserved field */
|
||
|
tokSeparator = 12,
|
||
|
tokEscape = 13,
|
||
|
tokDecPoint = 14,
|
||
|
tokEPlus = 15,
|
||
|
tokEMinus = 16,
|
||
|
tokMaxSymbols = 31,
|
||
|
curNumberPartsVersion = 1 /*current version of NumberParts record*/
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
currSymLead = 16,
|
||
|
currNegSym = 32,
|
||
|
currTrailingZ = 64,
|
||
|
currLeadingZ = 128
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
mdy = 0,
|
||
|
dmy = 1,
|
||
|
ymd = 2,
|
||
|
myd = 3,
|
||
|
dym = 4,
|
||
|
ydm = 5
|
||
|
};
|
||
|
|
||
|
typedef SInt8 DateOrders;
|
||
|
enum {
|
||
|
timeCycle24 = 0, /*time sequence 0:00 - 23:59*/
|
||
|
timeCycleZero = 1, /*time sequence 0:00-11:59, 0:00 - 11:59*/
|
||
|
timeCycle12 = 255, /*time sequence 12:00 - 11:59, 12:00 - 11:59*/
|
||
|
zeroCycle = 1, /*old name for timeCycleZero*/
|
||
|
longDay = 0, /*day of the month*/
|
||
|
longWeek = 1, /*day of the week*/
|
||
|
longMonth = 2, /*month of the year*/
|
||
|
longYear = 3, /*year*/
|
||
|
supDay = 1, /*suppress day of month*/
|
||
|
supWeek = 2, /*suppress day of week*/
|
||
|
supMonth = 4, /*suppress month*/
|
||
|
supYear = 8, /*suppress year*/
|
||
|
dayLdingZ = 32,
|
||
|
mntLdingZ = 64,
|
||
|
century = 128,
|
||
|
secLeadingZ = 32,
|
||
|
minLeadingZ = 64,
|
||
|
hrLeadingZ = 128
|
||
|
};
|
||
|
|
||
|
/* moved OffsetTable back here from QuickdrawText */
|
||
|
struct OffPair {
|
||
|
short offFirst;
|
||
|
short offSecond;
|
||
|
};
|
||
|
typedef struct OffPair OffPair;
|
||
|
typedef OffPair OffsetTable[3];
|
||
|
struct Intl0Rec {
|
||
|
char decimalPt; /*decimal point character*/
|
||
|
char thousSep; /*thousands separator character*/
|
||
|
char listSep; /*list separator character*/
|
||
|
char currSym1; /*currency symbol*/
|
||
|
char currSym2;
|
||
|
char currSym3;
|
||
|
UInt8 currFmt; /*currency format flags*/
|
||
|
UInt8 dateOrder; /*order of short date elements: mdy, dmy, etc.*/
|
||
|
UInt8 shrtDateFmt; /*format flags for each short date element*/
|
||
|
char dateSep; /*date separator character*/
|
||
|
UInt8 timeCycle; /*specifies time cycle: 0..23, 1..12, or 0..11*/
|
||
|
UInt8 timeFmt; /*format flags for each time element*/
|
||
|
char mornStr[4]; /*trailing string for AM if 12-hour cycle*/
|
||
|
char eveStr[4]; /*trailing string for PM if 12-hour cycle*/
|
||
|
char timeSep; /*time separator character*/
|
||
|
char time1Suff; /*trailing string for AM if 24-hour cycle*/
|
||
|
char time2Suff;
|
||
|
char time3Suff;
|
||
|
char time4Suff;
|
||
|
char time5Suff; /*trailing string for PM if 24-hour cycle*/
|
||
|
char time6Suff;
|
||
|
char time7Suff;
|
||
|
char time8Suff;
|
||
|
UInt8 metricSys; /*255 if metric, 0 if inches etc.*/
|
||
|
short intl0Vers; /*region code (hi byte) and version (lo byte)*/
|
||
|
};
|
||
|
typedef struct Intl0Rec Intl0Rec;
|
||
|
typedef Intl0Rec * Intl0Ptr;
|
||
|
typedef Intl0Ptr * Intl0Hndl;
|
||
|
struct Intl1Rec {
|
||
|
Str15 days[7]; /*day names*/
|
||
|
Str15 months[12]; /*month names*/
|
||
|
UInt8 suppressDay; /*255 for no day, or flags to suppress any element*/
|
||
|
UInt8 lngDateFmt; /*order of long date elements*/
|
||
|
UInt8 dayLeading0; /*255 for leading 0 in day number*/
|
||
|
UInt8 abbrLen; /*length for abbreviating names*/
|
||
|
char st0[4]; /*separator strings for long date format*/
|
||
|
char st1[4];
|
||
|
char st2[4];
|
||
|
char st3[4];
|
||
|
char st4[4];
|
||
|
short intl1Vers; /*region code (hi byte) and version (lo byte)*/
|
||
|
short localRtn[1]; /*now a flag for opt extension*/
|
||
|
};
|
||
|
typedef struct Intl1Rec Intl1Rec;
|
||
|
typedef Intl1Rec * Intl1Ptr;
|
||
|
typedef Intl1Ptr * Intl1Hndl;
|
||
|
/*fields for optional itl1 extension*/
|
||
|
struct Itl1ExtRec {
|
||
|
Intl1Rec base; /*un-extended Intl1Rec*/
|
||
|
short version;
|
||
|
short format;
|
||
|
short calendarCode; /*calendar code for this itl1 resource*/
|
||
|
long extraDaysTableOffset; /*offset in itl1 to extra days table*/
|
||
|
long extraDaysTableLength; /*length of extra days table*/
|
||
|
long extraMonthsTableOffset; /*offset in itl1 to extra months table*/
|
||
|
long extraMonthsTableLength; /*length of extra months table*/
|
||
|
long abbrevDaysTableOffset; /*offset in itl1 to abbrev days table*/
|
||
|
long abbrevDaysTableLength; /*length of abbrev days table*/
|
||
|
long abbrevMonthsTableOffset; /*offset in itl1 to abbrev months table*/
|
||
|
long abbrevMonthsTableLength; /*length of abbrev months table*/
|
||
|
long extraSepsTableOffset; /*offset in itl1 to extra seps table*/
|
||
|
long extraSepsTableLength; /*length of extra seps table*/
|
||
|
short tables[1]; /*now a flag for opt extension*/
|
||
|
};
|
||
|
typedef struct Itl1ExtRec Itl1ExtRec;
|
||
|
struct UntokenTable {
|
||
|
short len;
|
||
|
short lastToken;
|
||
|
short index[256]; /*index table; last = lastToken*/
|
||
|
};
|
||
|
typedef struct UntokenTable UntokenTable;
|
||
|
typedef UntokenTable * UntokenTablePtr;
|
||
|
typedef UntokenTablePtr * UntokenTableHandle;
|
||
|
union WideChar {
|
||
|
char a[2]; /*0 is the high order character*/
|
||
|
short b;
|
||
|
};
|
||
|
typedef union WideChar WideChar;
|
||
|
struct WideCharArr {
|
||
|
short size;
|
||
|
WideChar data[10];
|
||
|
};
|
||
|
typedef struct WideCharArr WideCharArr;
|
||
|
struct NumberParts {
|
||
|
short version;
|
||
|
WideChar data[31]; /*index by [tokLeftQuote..tokMaxSymbols]*/
|
||
|
WideCharArr pePlus;
|
||
|
WideCharArr peMinus;
|
||
|
WideCharArr peMinusPlus;
|
||
|
WideCharArr altNumTable;
|
||
|
char reserved[20];
|
||
|
};
|
||
|
typedef struct NumberParts NumberParts;
|
||
|
typedef NumberParts * NumberPartsPtr;
|
||
|
|
||
|
struct Itl4Rec {
|
||
|
short flags; /*reserved*/
|
||
|
long resourceType; /*contains 'itl4'*/
|
||
|
short resourceNum; /*resource ID*/
|
||
|
short version; /*version number*/
|
||
|
long resHeader1; /*reserved*/
|
||
|
long resHeader2; /*reserved*/
|
||
|
short numTables; /*number of tables, one-based*/
|
||
|
long mapOffset; /*offset to table that maps byte to token*/
|
||
|
long strOffset; /*offset to routine that copies canonical string*/
|
||
|
long fetchOffset; /*offset to routine that gets next byte of character*/
|
||
|
long unTokenOffset; /*offset to table that maps token to canonical string*/
|
||
|
long defPartsOffset; /*offset to default number parts table*/
|
||
|
long resOffset6; /*reserved*/
|
||
|
long resOffset7; /*reserved*/
|
||
|
long resOffset8; /*reserved*/
|
||
|
};
|
||
|
typedef struct Itl4Rec Itl4Rec;
|
||
|
typedef Itl4Rec * Itl4Ptr;
|
||
|
typedef Itl4Ptr * Itl4Handle;
|
||
|
/* New NItl4Rec for System 7.0: */
|
||
|
struct NItl4Rec {
|
||
|
short flags; /*reserved*/
|
||
|
long resourceType; /*contains 'itl4'*/
|
||
|
short resourceNum; /*resource ID*/
|
||
|
short version; /*version number*/
|
||
|
short format; /*format code*/
|
||
|
short resHeader; /*reserved*/
|
||
|
long resHeader2; /*reserved*/
|
||
|
short numTables; /*number of tables, one-based*/
|
||
|
long mapOffset; /*offset to table that maps byte to token*/
|
||
|
long strOffset; /*offset to routine that copies canonical string*/
|
||
|
long fetchOffset; /*offset to routine that gets next byte of character*/
|
||
|
long unTokenOffset; /*offset to table that maps token to canonical string*/
|
||
|
long defPartsOffset; /*offset to default number parts table*/
|
||
|
long whtSpListOffset; /*offset to white space code list*/
|
||
|
long resOffset7; /*reserved*/
|
||
|
long resOffset8; /*reserved*/
|
||
|
short resLength1; /*reserved*/
|
||
|
short resLength2; /*reserved*/
|
||
|
short resLength3; /*reserved*/
|
||
|
short unTokenLength; /*length of untoken table*/
|
||
|
short defPartsLength; /*length of default number parts table*/
|
||
|
short whtSpListLength; /*length of white space code list*/
|
||
|
short resLength7; /*reserved*/
|
||
|
short resLength8; /*reserved*/
|
||
|
};
|
||
|
typedef struct NItl4Rec NItl4Rec;
|
||
|
typedef NItl4Rec * NItl4Ptr;
|
||
|
typedef NItl4Ptr * NItl4Handle;
|
||
|
|
||
|
struct TableDirectoryRecord {
|
||
|
OSType tableSignature; /*4 byte long table name */
|
||
|
unsigned long reserved; /*Reserved for internal use */
|
||
|
unsigned long tableStartOffset; /*Table start offset in byte*/
|
||
|
unsigned long tableSize; /*Table size in byte*/
|
||
|
};
|
||
|
typedef struct TableDirectoryRecord TableDirectoryRecord;
|
||
|
struct Itl5Record {
|
||
|
Fixed versionNumber; /*itl5 resource version number */
|
||
|
unsigned short numberOfTables; /*Number of tables it contains */
|
||
|
unsigned short reserved[3]; /*Reserved for internal use */
|
||
|
TableDirectoryRecord tableDirectory[1]; /*Table directory records */
|
||
|
};
|
||
|
typedef struct Itl5Record Itl5Record;
|
||
|
struct RuleBasedTrslRecord {
|
||
|
short sourceType; /*Transliterate target type for the LHS of the rule */
|
||
|
short targetType; /*Transliterate target type for the RHS of the rule */
|
||
|
short formatNumber; /*Transliterate resource format number */
|
||
|
short propertyFlag; /*Transliterate property flags */
|
||
|
short numberOfRules; /*Number of rules following this field */
|
||
|
};
|
||
|
typedef struct RuleBasedTrslRecord RuleBasedTrslRecord;
|
||
|
|
||
|
struct ItlcRecord {
|
||
|
short itlcSystem; /*default system script*/
|
||
|
short itlcReserved; /*reserved*/
|
||
|
SInt8 itlcFontForce; /*default font force flag*/
|
||
|
SInt8 itlcIntlForce; /*default intl force flag*/
|
||
|
SInt8 itlcOldKybd; /*MacPlus intl keybd flag*/
|
||
|
SInt8 itlcFlags; /*general flags*/
|
||
|
short itlcIconOffset; /*keyboard icon offset; not used in 7.0*/
|
||
|
SInt8 itlcIconSide; /*keyboard icon side; not used in 7.0*/
|
||
|
SInt8 itlcIconRsvd; /*rsvd for other icon info*/
|
||
|
short itlcRegionCode; /*preferred verXxx code*/
|
||
|
short itlcSysFlags; /*flags for setting system globals*/
|
||
|
SInt8 itlcReserved4[32]; /*for future use*/
|
||
|
};
|
||
|
typedef struct ItlcRecord ItlcRecord;
|
||
|
struct ItlbRecord {
|
||
|
short itlbNumber; /*itl0 id number*/
|
||
|
short itlbDate; /*itl1 id number*/
|
||
|
short itlbSort; /*itl2 id number*/
|
||
|
short itlbFlags; /*Script flags*/
|
||
|
short itlbToken; /*itl4 id number*/
|
||
|
short itlbEncoding; /*itl5 ID # (optional; char encoding)*/
|
||
|
short itlbLang; /*current language for script */
|
||
|
SInt8 itlbNumRep; /*number representation code*/
|
||
|
SInt8 itlbDateRep; /*date representation code */
|
||
|
short itlbKeys; /*KCHR id number*/
|
||
|
short itlbIcon; /*ID # of SICN or kcs#/kcs4/kcs8 suite.*/
|
||
|
};
|
||
|
typedef struct ItlbRecord ItlbRecord;
|
||
|
/* New ItlbExtRecord structure for System 7.0 */
|
||
|
struct ItlbExtRecord {
|
||
|
ItlbRecord base; /*un-extended ItlbRecord*/
|
||
|
long itlbLocalSize; /*size of script's local record*/
|
||
|
short itlbMonoFond; /*default monospace FOND ID*/
|
||
|
short itlbMonoSize; /*default monospace font size*/
|
||
|
short itlbPrefFond; /*preferred FOND ID*/
|
||
|
short itlbPrefSize; /*preferred font size*/
|
||
|
short itlbSmallFond; /*default small FOND ID*/
|
||
|
short itlbSmallSize; /*default small font size*/
|
||
|
short itlbSysFond; /*default system FOND ID*/
|
||
|
short itlbSysSize; /*default system font size*/
|
||
|
short itlbAppFond; /*default application FOND ID*/
|
||
|
short itlbAppSize; /*default application font size*/
|
||
|
short itlbHelpFond; /*default Help Mgr FOND ID*/
|
||
|
short itlbHelpSize; /*default Help Mgr font size*/
|
||
|
Style itlbValidStyles; /*set of valid styles for script*/
|
||
|
Style itlbAliasStyle; /*style (set) to mark aliases*/
|
||
|
};
|
||
|
typedef struct ItlbExtRecord ItlbExtRecord;
|
||
|
|
||
|
|
||
|
|
||
|
#if PRAGMA_STRUCT_ALIGN
|
||
|
#pragma options align=reset
|
||
|
#elif PRAGMA_STRUCT_PACKPUSH
|
||
|
#pragma pack(pop)
|
||
|
#elif PRAGMA_STRUCT_PACK
|
||
|
#pragma pack()
|
||
|
#endif
|
||
|
|
||
|
#ifdef PRAGMA_IMPORT_OFF
|
||
|
#pragma import off
|
||
|
#elif PRAGMA_IMPORT
|
||
|
#pragma import reset
|
||
|
#endif
|
||
|
|
||
|
|
||
|
#endif /* __INTLRESOURCES__ */
|
||
|
|