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.
328 lines
8.4 KiB
328 lines
8.4 KiB
5 years ago
|
/*
|
||
|
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__ */
|
||
|
|