You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
327 lines
8.4 KiB
327 lines
8.4 KiB
/* |
|
File: MacLocales.h |
|
|
|
Contains: Types & prototypes for locale functions |
|
|
|
Version: QuickTime 7.3 |
|
|
|
Copyright: (c) 2007 (c) 1998-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 __MACLOCALES__ |
|
#define __MACLOCALES__ |
|
|
|
#ifndef __MACTYPES__ |
|
#include <MacTypes.h> |
|
#endif |
|
|
|
#ifndef __MACERRORS__ |
|
#include <MacErrors.h> |
|
#endif |
|
|
|
|
|
|
|
|
|
#if PRAGMA_ONCE |
|
#pragma once |
|
#endif |
|
|
|
#ifdef __cplusplus |
|
extern "C" { |
|
#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 |
|
|
|
|
|
/* |
|
------------------------------------------------------------------------------------------------- |
|
TYPES & CONSTANTS |
|
------------------------------------------------------------------------------------------------- |
|
*/ |
|
|
|
typedef struct OpaqueLocaleRef* LocaleRef; |
|
typedef UInt32 LocalePartMask; |
|
enum { |
|
/* bit set requests the following:*/ |
|
kLocaleLanguageMask = 1L << 0, /* ISO 639-1 or -2 language code (2 or 3 letters)*/ |
|
kLocaleLanguageVariantMask = 1L << 1, /* custom string for language variant*/ |
|
kLocaleScriptMask = 1L << 2, /* ISO 15924 script code (2 letters)*/ |
|
kLocaleScriptVariantMask = 1L << 3, /* custom string for script variant*/ |
|
kLocaleRegionMask = 1L << 4, /* ISO 3166 country/region code (2 letters)*/ |
|
kLocaleRegionVariantMask = 1L << 5, /* custom string for region variant*/ |
|
kLocaleAllPartsMask = 0x0000003F /* all of the above*/ |
|
}; |
|
|
|
typedef FourCharCode LocaleOperationClass; |
|
/* constants for LocaleOperationClass are in UnicodeUtilities interfaces*/ |
|
typedef FourCharCode LocaleOperationVariant; |
|
struct LocaleAndVariant { |
|
LocaleRef locale; |
|
LocaleOperationVariant opVariant; |
|
}; |
|
typedef struct LocaleAndVariant LocaleAndVariant; |
|
|
|
typedef UInt32 LocaleNameMask; |
|
enum { |
|
/* bit set requests the following:*/ |
|
kLocaleNameMask = 1L << 0, /* name of locale*/ |
|
kLocaleOperationVariantNameMask = 1L << 1, /* name of LocaleOperationVariant*/ |
|
kLocaleAndVariantNameMask = 0x00000003 /* all of the above*/ |
|
}; |
|
|
|
/* |
|
------------------------------------------------------------------------------------------------- |
|
FUNCTION PROTOTYPES |
|
------------------------------------------------------------------------------------------------- |
|
*/ |
|
|
|
/* Convert to or from LocaleRefs (and related utilities)*/ |
|
|
|
/* |
|
* LocaleRefFromLangOrRegionCode() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleRefFromLangOrRegionCode( |
|
LangCode lang, |
|
RegionCode region, |
|
LocaleRef * locale); |
|
|
|
|
|
/* |
|
* LocaleRefFromLocaleString() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleRefFromLocaleString( |
|
const char localeString[], |
|
LocaleRef * locale); |
|
|
|
|
|
/* |
|
* LocaleRefGetPartString() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleRefGetPartString( |
|
LocaleRef locale, |
|
LocalePartMask partMask, |
|
ByteCount maxStringLen, |
|
char partString[]); |
|
|
|
|
|
/* |
|
* LocaleStringToLangAndRegionCodes() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 9.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleStringToLangAndRegionCodes( |
|
const char localeString[], |
|
LangCode * lang, |
|
RegionCode * region); |
|
|
|
|
|
/* Enumerate locales for a LocaleOperationClass */ |
|
/* |
|
* LocaleOperationCountLocales() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleOperationCountLocales( |
|
LocaleOperationClass opClass, |
|
ItemCount * localeCount); |
|
|
|
|
|
/* |
|
* LocaleOperationGetLocales() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleOperationGetLocales( |
|
LocaleOperationClass opClass, |
|
ItemCount maxLocaleCount, |
|
ItemCount * actualLocaleCount, |
|
LocaleAndVariant localeVariantList[]); |
|
|
|
|
|
/* Get names for a locale (or a region's language)*/ |
|
|
|
/* |
|
* LocaleGetName() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleGetName( |
|
LocaleRef locale, |
|
LocaleOperationVariant opVariant, |
|
LocaleNameMask nameMask, |
|
LocaleRef displayLocale, |
|
UniCharCount maxNameLen, |
|
UniCharCount * actualNameLen, |
|
UniChar displayName[]); |
|
|
|
|
|
/* |
|
* LocaleCountNames() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleCountNames( |
|
LocaleRef locale, |
|
LocaleOperationVariant opVariant, |
|
LocaleNameMask nameMask, |
|
ItemCount * nameCount); |
|
|
|
|
|
/* |
|
* LocaleGetIndName() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleGetIndName( |
|
LocaleRef locale, |
|
LocaleOperationVariant opVariant, |
|
LocaleNameMask nameMask, |
|
ItemCount nameIndex, |
|
UniCharCount maxNameLen, |
|
UniCharCount * actualNameLen, |
|
UniChar displayName[], |
|
LocaleRef * displayLocale); |
|
|
|
|
|
/* |
|
* LocaleGetRegionLanguageName() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 9.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleGetRegionLanguageName( |
|
RegionCode region, |
|
Str255 languageName); |
|
|
|
|
|
/* Get names for a LocaleOperationClass*/ |
|
/* |
|
* LocaleOperationGetName() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleOperationGetName( |
|
LocaleOperationClass opClass, |
|
LocaleRef displayLocale, |
|
UniCharCount maxNameLen, |
|
UniCharCount * actualNameLen, |
|
UniChar displayName[]); |
|
|
|
|
|
/* |
|
* LocaleOperationCountNames() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleOperationCountNames( |
|
LocaleOperationClass opClass, |
|
ItemCount * nameCount); |
|
|
|
|
|
/* |
|
* LocaleOperationGetIndName() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in LocalesLib 8.6 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API_C( OSStatus ) |
|
LocaleOperationGetIndName( |
|
LocaleOperationClass opClass, |
|
ItemCount nameIndex, |
|
UniCharCount maxNameLen, |
|
UniCharCount * actualNameLen, |
|
UniChar displayName[], |
|
LocaleRef * displayLocale); |
|
|
|
|
|
|
|
#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 |
|
|
|
#ifdef __cplusplus |
|
} |
|
#endif |
|
|
|
#endif /* __MACLOCALES__ */ |
|
|
|
|