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.
968 lines
31 KiB
968 lines
31 KiB
# The documentation is at the __END__
|
|
|
|
package Win32::OLE::NLS;
|
|
require Win32::OLE; # Make sure the XS bootstrap has been called
|
|
|
|
use strict;
|
|
use vars qw(@EXPORT @EXPORT_OK %EXPORT_TAGS @ISA);
|
|
|
|
use Exporter;
|
|
@ISA = qw(Exporter);
|
|
|
|
@EXPORT = qw(
|
|
CompareString
|
|
LCMapString
|
|
GetLocaleInfo
|
|
GetStringType
|
|
GetSystemDefaultLangID
|
|
GetSystemDefaultLCID
|
|
GetUserDefaultLangID
|
|
GetUserDefaultLCID
|
|
|
|
MAKELANGID
|
|
PRIMARYLANGID
|
|
SUBLANGID
|
|
LANG_SYSTEM_DEFAULT
|
|
LANG_USER_DEFAULT
|
|
MAKELCID
|
|
LANGIDFROMLCID
|
|
LOCALE_SYSTEM_DEFAULT
|
|
LOCALE_USER_DEFAULT
|
|
);
|
|
|
|
@EXPORT_OK = qw(SetLocaleInfo SendSettingChange);
|
|
|
|
%EXPORT_TAGS =
|
|
(
|
|
CT => [qw(CT_CTYPE1 CT_CTYPE2 CT_CTYPE3)],
|
|
C1 => [qw(C1_UPPER C1_LOWER C1_DIGIT C1_SPACE C1_PUNCT
|
|
C1_CNTRL C1_BLANK C1_XDIGIT C1_ALPHA)],
|
|
C2 => [qw(C2_LEFTTORIGHT C2_RIGHTTOLEFT C2_EUROPENUMBER
|
|
C2_EUROPESEPARATOR C2_EUROPETERMINATOR C2_ARABICNUMBER
|
|
C2_COMMONSEPARATOR C2_BLOCKSEPARATOR C2_SEGMENTSEPARATOR
|
|
C2_WHITESPACE C2_OTHERNEUTRAL C2_NOTAPPLICABLE)],
|
|
C3 => [qw(C3_NONSPACING C3_DIACRITIC C3_VOWELMARK C3_SYMBOL C3_KATAKANA
|
|
C3_HIRAGANA C3_HALFWIDTH C3_FULLWIDTH C3_IDEOGRAPH C3_KASHIDA
|
|
C3_ALPHA C3_NOTAPPLICABLE)],
|
|
NORM => [qw(NORM_IGNORECASE NORM_IGNORENONSPACE NORM_IGNORESYMBOLS
|
|
NORM_IGNOREWIDTH NORM_IGNOREKANATYPE NORM_IGNOREKASHIDA)],
|
|
LCMAP => [qw(LCMAP_LOWERCASE LCMAP_UPPERCASE LCMAP_SORTKEY LCMAP_HALFWIDTH
|
|
LCMAP_FULLWIDTH LCMAP_HIRAGANA LCMAP_KATAKANA)],
|
|
LANG => [qw(LANG_NEUTRAL LANG_ALBANIAN LANG_ARABIC LANG_BAHASA
|
|
LANG_BULGARIAN LANG_CATALAN LANG_CHINESE LANG_CZECH LANG_DANISH
|
|
LANG_DUTCH LANG_ENGLISH LANG_FINNISH LANG_FRENCH LANG_GERMAN
|
|
LANG_GREEK LANG_HEBREW LANG_HUNGARIAN LANG_ICELANDIC
|
|
LANG_ITALIAN LANG_JAPANESE LANG_KOREAN LANG_NORWEGIAN
|
|
LANG_POLISH LANG_PORTUGUESE LANG_RHAETO_ROMAN LANG_ROMANIAN
|
|
LANG_RUSSIAN LANG_SERBO_CROATIAN LANG_SLOVAK LANG_SPANISH
|
|
LANG_SWEDISH LANG_THAI LANG_TURKISH LANG_URDU)],
|
|
SUBLANG => [qw(SUBLANG_NEUTRAL SUBLANG_DEFAULT SUBLANG_SYS_DEFAULT
|
|
SUBLANG_CHINESE_SIMPLIFIED SUBLANG_CHINESE_TRADITIONAL
|
|
SUBLANG_DUTCH SUBLANG_DUTCH_BELGIAN SUBLANG_ENGLISH_US
|
|
SUBLANG_ENGLISH_UK SUBLANG_ENGLISH_AUS SUBLANG_ENGLISH_CAN
|
|
SUBLANG_ENGLISH_NZ SUBLANG_ENGLISH_EIRE SUBLANG_FRENCH
|
|
SUBLANG_FRENCH_BELGIAN SUBLANG_FRENCH_CANADIAN
|
|
SUBLANG_FRENCH_SWISS SUBLANG_GERMAN SUBLANG_GERMAN_SWISS
|
|
SUBLANG_GERMAN_AUSTRIAN SUBLANG_ITALIAN SUBLANG_ITALIAN_SWISS
|
|
SUBLANG_NORWEGIAN_BOKMAL SUBLANG_NORWEGIAN_NYNORSK
|
|
SUBLANG_PORTUGUESE SUBLANG_PORTUGUESE_BRAZILIAN
|
|
SUBLANG_SERBO_CROATIAN_CYRILLIC SUBLANG_SERBO_CROATIAN_LATIN
|
|
SUBLANG_SPANISH SUBLANG_SPANISH_MEXICAN
|
|
SUBLANG_SPANISH_MODERN)],
|
|
CTRY => [qw(CTRY_DEFAULT CTRY_AUSTRALIA CTRY_AUSTRIA CTRY_BELGIUM
|
|
CTRY_BRAZIL CTRY_CANADA CTRY_DENMARK CTRY_FINLAND CTRY_FRANCE
|
|
CTRY_GERMANY CTRY_ICELAND CTRY_IRELAND CTRY_ITALY CTRY_JAPAN
|
|
CTRY_MEXICO CTRY_NETHERLANDS CTRY_NEW_ZEALAND CTRY_NORWAY
|
|
CTRY_PORTUGAL CTRY_PRCHINA CTRY_SOUTH_KOREA CTRY_SPAIN
|
|
CTRY_SWEDEN CTRY_SWITZERLAND CTRY_TAIWAN CTRY_UNITED_KINGDOM
|
|
CTRY_UNITED_STATES)],
|
|
LOCALE => [qw(LOCALE_NOUSEROVERRIDE LOCALE_ILANGUAGE LOCALE_SLANGUAGE
|
|
LOCALE_SENGLANGUAGE LOCALE_SABBREVLANGNAME
|
|
LOCALE_SNATIVELANGNAME LOCALE_ICOUNTRY LOCALE_SCOUNTRY
|
|
LOCALE_SENGCOUNTRY LOCALE_SABBREVCTRYNAME LOCALE_SNATIVECTRYNAME
|
|
LOCALE_IDEFAULTLANGUAGE LOCALE_IDEFAULTCOUNTRY
|
|
LOCALE_IDEFAULTCODEPAGE LOCALE_IDEFAULTANSICODEPAGE LOCALE_SLIST
|
|
LOCALE_IMEASURE LOCALE_SDECIMAL LOCALE_STHOUSAND
|
|
LOCALE_SGROUPING LOCALE_IDIGITS LOCALE_ILZERO LOCALE_INEGNUMBER
|
|
LOCALE_SNATIVEDIGITS LOCALE_SCURRENCY LOCALE_SINTLSYMBOL
|
|
LOCALE_SMONDECIMALSEP LOCALE_SMONTHOUSANDSEP LOCALE_SMONGROUPING
|
|
LOCALE_ICURRDIGITS LOCALE_IINTLCURRDIGITS LOCALE_ICURRENCY
|
|
LOCALE_INEGCURR LOCALE_SDATE LOCALE_STIME LOCALE_SSHORTDATE
|
|
LOCALE_SLONGDATE LOCALE_STIMEFORMAT LOCALE_IDATE LOCALE_ILDATE
|
|
LOCALE_ITIME LOCALE_ITIMEMARKPOSN LOCALE_ICENTURY LOCALE_ITLZERO
|
|
LOCALE_IDAYLZERO LOCALE_IMONLZERO LOCALE_S1159 LOCALE_S2359
|
|
LOCALE_ICALENDARTYPE LOCALE_IOPTIONALCALENDAR
|
|
LOCALE_IFIRSTDAYOFWEEK LOCALE_IFIRSTWEEKOFYEAR LOCALE_SDAYNAME1
|
|
LOCALE_SDAYNAME2 LOCALE_SDAYNAME3 LOCALE_SDAYNAME4
|
|
LOCALE_SDAYNAME5 LOCALE_SDAYNAME6 LOCALE_SDAYNAME7
|
|
LOCALE_SABBREVDAYNAME1 LOCALE_SABBREVDAYNAME2
|
|
LOCALE_SABBREVDAYNAME3 LOCALE_SABBREVDAYNAME4
|
|
LOCALE_SABBREVDAYNAME5 LOCALE_SABBREVDAYNAME6
|
|
LOCALE_SABBREVDAYNAME7 LOCALE_SMONTHNAME1 LOCALE_SMONTHNAME2
|
|
LOCALE_SMONTHNAME3 LOCALE_SMONTHNAME4 LOCALE_SMONTHNAME5
|
|
LOCALE_SMONTHNAME6 LOCALE_SMONTHNAME7 LOCALE_SMONTHNAME8
|
|
LOCALE_SMONTHNAME9 LOCALE_SMONTHNAME10 LOCALE_SMONTHNAME11
|
|
LOCALE_SMONTHNAME12 LOCALE_SMONTHNAME13 LOCALE_SABBREVMONTHNAME1
|
|
LOCALE_SABBREVMONTHNAME2 LOCALE_SABBREVMONTHNAME3
|
|
LOCALE_SABBREVMONTHNAME4 LOCALE_SABBREVMONTHNAME5
|
|
LOCALE_SABBREVMONTHNAME6 LOCALE_SABBREVMONTHNAME7
|
|
LOCALE_SABBREVMONTHNAME8 LOCALE_SABBREVMONTHNAME9
|
|
LOCALE_SABBREVMONTHNAME10 LOCALE_SABBREVMONTHNAME11
|
|
LOCALE_SABBREVMONTHNAME12 LOCALE_SABBREVMONTHNAME13
|
|
LOCALE_SPOSITIVESIGN LOCALE_SNEGATIVESIGN LOCALE_IPOSSIGNPOSN
|
|
LOCALE_INEGSIGNPOSN LOCALE_IPOSSYMPRECEDES LOCALE_IPOSSEPBYSPACE
|
|
LOCALE_INEGSYMPRECEDES LOCALE_INEGSEPBYSPACE)],
|
|
TIME => [qw(TIME_NOMINUTESORSECONDS TIME_NOSECONDS TIME_NOTIMEMARKER
|
|
TIME_FORCE24HOURFORMAT)],
|
|
DATE => [qw(DATE_SHORTDATE DATE_LONGDATE DATE_USE_ALT_CALENDAR
|
|
DATE_YEARMONTH DATE_LTRREADING DATE_RTLREADING)],
|
|
);
|
|
|
|
foreach my $tag (keys %EXPORT_TAGS) {
|
|
push @EXPORT_OK, @{$EXPORT_TAGS{$tag}};
|
|
}
|
|
|
|
# Character Type Flags
|
|
sub CT_CTYPE1 { 0x0001 }
|
|
sub CT_CTYPE2 { 0x0002 }
|
|
sub CT_CTYPE3 { 0x0004 }
|
|
|
|
# Character Type 1 Bits
|
|
sub C1_UPPER { 0x0001 }
|
|
sub C1_LOWER { 0x0002 }
|
|
sub C1_DIGIT { 0x0004 }
|
|
sub C1_SPACE { 0x0008 }
|
|
sub C1_PUNCT { 0x0010 }
|
|
sub C1_CNTRL { 0x0020 }
|
|
sub C1_BLANK { 0x0040 }
|
|
sub C1_XDIGIT { 0x0080 }
|
|
sub C1_ALPHA { 0x0100 }
|
|
|
|
# Character Type 2 Bits
|
|
sub C2_LEFTTORIGHT { 0x1 }
|
|
sub C2_RIGHTTOLEFT { 0x2 }
|
|
sub C2_EUROPENUMBER { 0x3 }
|
|
sub C2_EUROPESEPARATOR { 0x4 }
|
|
sub C2_EUROPETERMINATOR { 0x5 }
|
|
sub C2_ARABICNUMBER { 0x6 }
|
|
sub C2_COMMONSEPARATOR { 0x7 }
|
|
sub C2_BLOCKSEPARATOR { 0x8 }
|
|
sub C2_SEGMENTSEPARATOR { 0x9 }
|
|
sub C2_WHITESPACE { 0xA }
|
|
sub C2_OTHERNEUTRAL { 0xB }
|
|
sub C2_NOTAPPLICABLE { 0x0 }
|
|
|
|
# Character Type 3 Bits
|
|
sub C3_NONSPACING { 0x0001 }
|
|
sub C3_DIACRITIC { 0x0002 }
|
|
sub C3_VOWELMARK { 0x0004 }
|
|
sub C3_SYMBOL { 0x0008 }
|
|
sub C3_KATAKANA { 0x0010 }
|
|
sub C3_HIRAGANA { 0x0020 }
|
|
sub C3_HALFWIDTH { 0x0040 }
|
|
sub C3_FULLWIDTH { 0x0080 }
|
|
sub C3_IDEOGRAPH { 0x0100 }
|
|
sub C3_KASHIDA { 0x0200 }
|
|
sub C3_ALPHA { 0x8000 }
|
|
sub C3_NOTAPPLICABLE { 0x0 }
|
|
|
|
# String Flags
|
|
sub NORM_IGNORECASE { 0x0001 }
|
|
sub NORM_IGNORENONSPACE { 0x0002 }
|
|
sub NORM_IGNORESYMBOLS { 0x0004 }
|
|
sub NORM_IGNOREWIDTH { 0x0008 }
|
|
sub NORM_IGNOREKANATYPE { 0x0040 }
|
|
sub NORM_IGNOREKASHIDA { 0x40000}
|
|
|
|
# Locale Dependent Mapping Flags
|
|
sub LCMAP_LOWERCASE { 0x0100 }
|
|
sub LCMAP_UPPERCASE { 0x0200 }
|
|
sub LCMAP_SORTKEY { 0x0400 }
|
|
sub LCMAP_HALFWIDTH { 0x0800 }
|
|
sub LCMAP_FULLWIDTH { 0x1000 }
|
|
sub LCMAP_HIRAGANA { 0x2000 }
|
|
sub LCMAP_KATAKANA { 0x4000 }
|
|
|
|
# Primary Language Identifier
|
|
sub LANG_NEUTRAL { 0x00 }
|
|
sub LANG_ALBANIAN { 0x1c }
|
|
sub LANG_ARABIC { 0x01 }
|
|
sub LANG_BAHASA { 0x21 }
|
|
sub LANG_BULGARIAN { 0x02 }
|
|
sub LANG_CATALAN { 0x03 }
|
|
sub LANG_CHINESE { 0x04 }
|
|
sub LANG_CZECH { 0x05 }
|
|
sub LANG_DANISH { 0x06 }
|
|
sub LANG_DUTCH { 0x13 }
|
|
sub LANG_ENGLISH { 0x09 }
|
|
sub LANG_FINNISH { 0x0b }
|
|
sub LANG_FRENCH { 0x0c }
|
|
sub LANG_GERMAN { 0x07 }
|
|
sub LANG_GREEK { 0x08 }
|
|
sub LANG_HEBREW { 0x0d }
|
|
sub LANG_HUNGARIAN { 0x0e }
|
|
sub LANG_ICELANDIC { 0x0f }
|
|
sub LANG_ITALIAN { 0x10 }
|
|
sub LANG_JAPANESE { 0x11 }
|
|
sub LANG_KOREAN { 0x12 }
|
|
sub LANG_NORWEGIAN { 0x14 }
|
|
sub LANG_POLISH { 0x15 }
|
|
sub LANG_PORTUGUESE { 0x16 }
|
|
sub LANG_RHAETO_ROMAN { 0x17 }
|
|
sub LANG_ROMANIAN { 0x18 }
|
|
sub LANG_RUSSIAN { 0x19 }
|
|
sub LANG_SERBO_CROATIAN { 0x1a }
|
|
sub LANG_SLOVAK { 0x1b }
|
|
sub LANG_SPANISH { 0x0a }
|
|
sub LANG_SWEDISH { 0x1d }
|
|
sub LANG_THAI { 0x1e }
|
|
sub LANG_TURKISH { 0x1f }
|
|
sub LANG_URDU { 0x20 }
|
|
|
|
# Sublanguage Identifier
|
|
sub SUBLANG_NEUTRAL { 0x00 }
|
|
sub SUBLANG_DEFAULT { 0x01 }
|
|
sub SUBLANG_SYS_DEFAULT { 0x02 }
|
|
sub SUBLANG_CHINESE_SIMPLIFIED { 0x02 }
|
|
sub SUBLANG_CHINESE_TRADITIONAL { 0x01 }
|
|
sub SUBLANG_DUTCH { 0x01 }
|
|
sub SUBLANG_DUTCH_BELGIAN { 0x02 }
|
|
sub SUBLANG_ENGLISH_US { 0x01 }
|
|
sub SUBLANG_ENGLISH_UK { 0x02 }
|
|
sub SUBLANG_ENGLISH_AUS { 0x03 }
|
|
sub SUBLANG_ENGLISH_CAN { 0x04 }
|
|
sub SUBLANG_ENGLISH_NZ { 0x05 }
|
|
sub SUBLANG_ENGLISH_EIRE { 0x06 }
|
|
sub SUBLANG_FRENCH { 0x01 }
|
|
sub SUBLANG_FRENCH_BELGIAN { 0x02 }
|
|
sub SUBLANG_FRENCH_CANADIAN { 0x03 }
|
|
sub SUBLANG_FRENCH_SWISS { 0x04 }
|
|
sub SUBLANG_GERMAN { 0x01 }
|
|
sub SUBLANG_GERMAN_SWISS { 0x02 }
|
|
sub SUBLANG_GERMAN_AUSTRIAN { 0x03 }
|
|
sub SUBLANG_ITALIAN { 0x01 }
|
|
sub SUBLANG_ITALIAN_SWISS { 0x02 }
|
|
sub SUBLANG_NORWEGIAN_BOKMAL { 0x01 }
|
|
sub SUBLANG_NORWEGIAN_NYNORSK { 0x02 }
|
|
sub SUBLANG_PORTUGUESE { 0x02 }
|
|
sub SUBLANG_PORTUGUESE_BRAZILIAN { 0x01 }
|
|
sub SUBLANG_SERBO_CROATIAN_CYRILLIC { 0x02 }
|
|
sub SUBLANG_SERBO_CROATIAN_LATIN { 0x01 }
|
|
sub SUBLANG_SPANISH { 0x01 }
|
|
sub SUBLANG_SPANISH_MEXICAN { 0x02 }
|
|
sub SUBLANG_SPANISH_MODERN { 0x03 }
|
|
|
|
# Country codes
|
|
sub CTRY_DEFAULT { 0 }
|
|
sub CTRY_AUSTRALIA { 61 }
|
|
sub CTRY_AUSTRIA { 43 }
|
|
sub CTRY_BELGIUM { 32 }
|
|
sub CTRY_BRAZIL { 55 }
|
|
sub CTRY_CANADA { 2 }
|
|
sub CTRY_DENMARK { 45 }
|
|
sub CTRY_FINLAND { 358 }
|
|
sub CTRY_FRANCE { 33 }
|
|
sub CTRY_GERMANY { 49 }
|
|
sub CTRY_ICELAND { 354 }
|
|
sub CTRY_IRELAND { 353 }
|
|
sub CTRY_ITALY { 39 }
|
|
sub CTRY_JAPAN { 81 }
|
|
sub CTRY_MEXICO { 52 }
|
|
sub CTRY_NETHERLANDS { 31 }
|
|
sub CTRY_NEW_ZEALAND { 64 }
|
|
sub CTRY_NORWAY { 47 }
|
|
sub CTRY_PORTUGAL { 351 }
|
|
sub CTRY_PRCHINA { 86 }
|
|
sub CTRY_SOUTH_KOREA { 82 }
|
|
sub CTRY_SPAIN { 34 }
|
|
sub CTRY_SWEDEN { 46 }
|
|
sub CTRY_SWITZERLAND { 41 }
|
|
sub CTRY_TAIWAN { 886 }
|
|
sub CTRY_UNITED_KINGDOM { 44 }
|
|
sub CTRY_UNITED_STATES { 1 }
|
|
|
|
# Locale Types
|
|
sub LOCALE_NOUSEROVERRIDE { 0x80000000 }
|
|
sub LOCALE_ILANGUAGE { 0x0001 }
|
|
sub LOCALE_SLANGUAGE { 0x0002 }
|
|
sub LOCALE_SENGLANGUAGE { 0x1001 }
|
|
sub LOCALE_SABBREVLANGNAME { 0x0003 }
|
|
sub LOCALE_SNATIVELANGNAME { 0x0004 }
|
|
sub LOCALE_ICOUNTRY { 0x0005 }
|
|
sub LOCALE_SCOUNTRY { 0x0006 }
|
|
sub LOCALE_SENGCOUNTRY { 0x1002 }
|
|
sub LOCALE_SABBREVCTRYNAME { 0x0007 }
|
|
sub LOCALE_SNATIVECTRYNAME { 0x0008 }
|
|
sub LOCALE_IDEFAULTLANGUAGE { 0x0009 }
|
|
sub LOCALE_IDEFAULTCOUNTRY { 0x000A }
|
|
sub LOCALE_IDEFAULTCODEPAGE { 0x000B }
|
|
sub LOCALE_IDEFAULTANSICODEPAGE { 0x1004 }
|
|
sub LOCALE_SLIST { 0x000C }
|
|
sub LOCALE_IMEASURE { 0x000D }
|
|
sub LOCALE_SDECIMAL { 0x000E }
|
|
sub LOCALE_STHOUSAND { 0x000F }
|
|
sub LOCALE_SGROUPING { 0x0010 }
|
|
sub LOCALE_IDIGITS { 0x0011 }
|
|
sub LOCALE_ILZERO { 0x0012 }
|
|
sub LOCALE_INEGNUMBER { 0x1010 }
|
|
sub LOCALE_SNATIVEDIGITS { 0x0013 }
|
|
sub LOCALE_SCURRENCY { 0x0014 }
|
|
sub LOCALE_SINTLSYMBOL { 0x0015 }
|
|
sub LOCALE_SMONDECIMALSEP { 0x0016 }
|
|
sub LOCALE_SMONTHOUSANDSEP { 0x0017 }
|
|
sub LOCALE_SMONGROUPING { 0x0018 }
|
|
sub LOCALE_ICURRDIGITS { 0x0019 }
|
|
sub LOCALE_IINTLCURRDIGITS { 0x001A }
|
|
sub LOCALE_ICURRENCY { 0x001B }
|
|
sub LOCALE_INEGCURR { 0x001C }
|
|
sub LOCALE_SDATE { 0x001D }
|
|
sub LOCALE_STIME { 0x001E }
|
|
sub LOCALE_SSHORTDATE { 0x001F }
|
|
sub LOCALE_SLONGDATE { 0x0020 }
|
|
sub LOCALE_STIMEFORMAT { 0x1003 }
|
|
sub LOCALE_IDATE { 0x0021 }
|
|
sub LOCALE_ILDATE { 0x0022 }
|
|
sub LOCALE_ITIME { 0x0023 }
|
|
sub LOCALE_ITIMEMARKPOSN { 0x1005 }
|
|
sub LOCALE_ICENTURY { 0x0024 }
|
|
sub LOCALE_ITLZERO { 0x0025 }
|
|
sub LOCALE_IDAYLZERO { 0x0026 }
|
|
sub LOCALE_IMONLZERO { 0x0027 }
|
|
sub LOCALE_S1159 { 0x0028 }
|
|
sub LOCALE_S2359 { 0x0029 }
|
|
sub LOCALE_ICALENDARTYPE { 0x1009 }
|
|
sub LOCALE_IOPTIONALCALENDAR { 0x100B }
|
|
sub LOCALE_IFIRSTDAYOFWEEK { 0x100C }
|
|
sub LOCALE_IFIRSTWEEKOFYEAR { 0x100D }
|
|
sub LOCALE_SDAYNAME1 { 0x002A }
|
|
sub LOCALE_SDAYNAME2 { 0x002B }
|
|
sub LOCALE_SDAYNAME3 { 0x002C }
|
|
sub LOCALE_SDAYNAME4 { 0x002D }
|
|
sub LOCALE_SDAYNAME5 { 0x002E }
|
|
sub LOCALE_SDAYNAME6 { 0x002F }
|
|
sub LOCALE_SDAYNAME7 { 0x0030 }
|
|
sub LOCALE_SABBREVDAYNAME1 { 0x0031 }
|
|
sub LOCALE_SABBREVDAYNAME2 { 0x0032 }
|
|
sub LOCALE_SABBREVDAYNAME3 { 0x0033 }
|
|
sub LOCALE_SABBREVDAYNAME4 { 0x0034 }
|
|
sub LOCALE_SABBREVDAYNAME5 { 0x0035 }
|
|
sub LOCALE_SABBREVDAYNAME6 { 0x0036 }
|
|
sub LOCALE_SABBREVDAYNAME7 { 0x0037 }
|
|
sub LOCALE_SMONTHNAME1 { 0x0038 }
|
|
sub LOCALE_SMONTHNAME2 { 0x0039 }
|
|
sub LOCALE_SMONTHNAME3 { 0x003A }
|
|
sub LOCALE_SMONTHNAME4 { 0x003B }
|
|
sub LOCALE_SMONTHNAME5 { 0x003C }
|
|
sub LOCALE_SMONTHNAME6 { 0x003D }
|
|
sub LOCALE_SMONTHNAME7 { 0x003E }
|
|
sub LOCALE_SMONTHNAME8 { 0x003F }
|
|
sub LOCALE_SMONTHNAME9 { 0x0040 }
|
|
sub LOCALE_SMONTHNAME10 { 0x0041 }
|
|
sub LOCALE_SMONTHNAME11 { 0x0042 }
|
|
sub LOCALE_SMONTHNAME12 { 0x0043 }
|
|
sub LOCALE_SMONTHNAME13 { 0x100E }
|
|
sub LOCALE_SABBREVMONTHNAME1 { 0x0044 }
|
|
sub LOCALE_SABBREVMONTHNAME2 { 0x0045 }
|
|
sub LOCALE_SABBREVMONTHNAME3 { 0x0046 }
|
|
sub LOCALE_SABBREVMONTHNAME4 { 0x0047 }
|
|
sub LOCALE_SABBREVMONTHNAME5 { 0x0048 }
|
|
sub LOCALE_SABBREVMONTHNAME6 { 0x0049 }
|
|
sub LOCALE_SABBREVMONTHNAME7 { 0x004A }
|
|
sub LOCALE_SABBREVMONTHNAME8 { 0x004B }
|
|
sub LOCALE_SABBREVMONTHNAME9 { 0x004C }
|
|
sub LOCALE_SABBREVMONTHNAME10 { 0x004D }
|
|
sub LOCALE_SABBREVMONTHNAME11 { 0x004E }
|
|
sub LOCALE_SABBREVMONTHNAME12 { 0x004F }
|
|
sub LOCALE_SABBREVMONTHNAME13 { 0x100F }
|
|
sub LOCALE_SPOSITIVESIGN { 0x0050 }
|
|
sub LOCALE_SNEGATIVESIGN { 0x0051 }
|
|
sub LOCALE_IPOSSIGNPOSN { 0x0052 }
|
|
sub LOCALE_INEGSIGNPOSN { 0x0053 }
|
|
sub LOCALE_IPOSSYMPRECEDES { 0x0054 }
|
|
sub LOCALE_IPOSSEPBYSPACE { 0x0055 }
|
|
sub LOCALE_INEGSYMPRECEDES { 0x0056 }
|
|
sub LOCALE_INEGSEPBYSPACE { 0x0057 }
|
|
|
|
# GetTimeFormat Flags
|
|
sub TIME_NOMINUTESORSECONDS { 0x0001 }
|
|
sub TIME_NOSECONDS { 0x0002 }
|
|
sub TIME_NOTIMEMARKER { 0x0004 }
|
|
sub TIME_FORCE24HOURFORMAT { 0x0008 }
|
|
|
|
# GetDateFormat Flags
|
|
sub DATE_SHORTDATE { 0x0001 }
|
|
sub DATE_LONGDATE { 0x0002 }
|
|
sub DATE_USE_ALT_CALENDAR { 0x0004 }
|
|
sub DATE_YEARMONTH { 0x0008 }
|
|
sub DATE_LTRREADING { 0x0010 }
|
|
sub DATE_RTLREADING { 0x0020 }
|
|
|
|
# Language Identifier Functions
|
|
sub MAKELANGID { my ($p,$s) = @_; (($s & 0xffff) << 10) | ($p & 0xffff); }
|
|
sub PRIMARYLANGID { my $lgid = shift; $lgid & 0x3ff; }
|
|
sub SUBLANGID { my $lgid = shift; ($lgid >> 10) & 0x3f; }
|
|
|
|
sub LANG_SYSTEM_DEFAULT { MAKELANGID(LANG_NEUTRAL, SUBLANG_SYS_DEFAULT); }
|
|
sub LANG_USER_DEFAULT { MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT); }
|
|
|
|
# Locale Identifier Functions
|
|
sub MAKELCID { my $lgid = shift; $lgid & 0xffff; }
|
|
sub LANGIDFROMLCID { my $lcid = shift; $lcid & 0xffff; }
|
|
|
|
sub LOCALE_SYSTEM_DEFAULT { MAKELCID(LANG_SYSTEM_DEFAULT); }
|
|
sub LOCALE_USER_DEFAULT { MAKELCID(LANG_USER_DEFAULT); }
|
|
|
|
1;
|
|
|
|
__END__
|
|
|
|
=head1 NAME
|
|
|
|
Win32::OLE::NLS - OLE National Language Support
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
missing
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
This module provides access to the national language support features
|
|
in the F<OLENLS.DLL>.
|
|
|
|
=head2 Functions
|
|
|
|
=over 8
|
|
|
|
=item CompareString(LCID,FLAGS,STR1,STR2)
|
|
|
|
Compare STR1 and STR2 in the LCID locale. FLAGS indicate the character
|
|
traits to be used or ignored when comparing the two strings.
|
|
|
|
NORM_IGNORECASE Ignore case
|
|
NORM_IGNOREKANATYPE Ignore hiragana/katakana character differences
|
|
NORM_IGNORENONSPACE Ignore accents, diacritics, and vowel marks
|
|
NORM_IGNORESYMBOLS Ignore symbols
|
|
NORM_IGNOREWIDTH Ignore character width
|
|
|
|
Possible return values are:
|
|
|
|
0 Function failed
|
|
1 STR1 is less than STR2
|
|
2 STR1 is equal to STR2
|
|
3 STR1 is greater than STR2
|
|
|
|
Note that you can subtract 2 from the return code to get values
|
|
comparable to the C<cmp> operator.
|
|
|
|
=item LCMapString(LCID,FLAGS,STR)
|
|
|
|
LCMapString translates STR using LCID dependent translation.
|
|
Flags contains a combination of the following options:
|
|
|
|
LCMAP_LOWERCASE Lowercase
|
|
LCMAP_UPPERCASE Uppercase
|
|
LCMAP_HALFWIDTH Narrow characters
|
|
LCMAP_FULLWIDTH Wide characters
|
|
LCMAP_HIRAGANA Hiragana
|
|
LCMAP_KATAKANA Katakana
|
|
LCMAP_SORTKEY Character sort key
|
|
|
|
The following normalization options can be combined with C<LCMAP_SORTKEY>:
|
|
|
|
NORM_IGNORECASE Ignore case
|
|
NORM_IGNOREKANATYPE Ignore hiragana/katakana character differences
|
|
NORM_IGNORENONSPACE Ignore accents, diacritics, and vowel marks
|
|
NORM_IGNORESYMBOLS Ignore symbols
|
|
NORM_IGNOREWIDTH Ignore character width
|
|
|
|
The return value is the translated string.
|
|
|
|
=item GetLocaleInfo(LCID,LCTYPE)
|
|
|
|
Retrieve locale setting LCTYPE from the locale specified by LCID. Use
|
|
LOCALE_NOUSEROVERRIDE | LCTYPE to always query the locale database.
|
|
Otherwise user changes to C<win.ini> through the windows control panel
|
|
take precedence when retrieving values for the system default locale.
|
|
See the documentation below for a list of valid LCTYPE values.
|
|
|
|
The return value is the contents of the requested locale setting.
|
|
|
|
=item GetStringType(LCID,TYPE,STR)
|
|
|
|
Retrieve type information from locale LCID about each character in STR.
|
|
The requested TYPE can be one of the following 3 levels:
|
|
|
|
CT_CTYPE1 ANSI C and POSIX type information
|
|
CT_CTYPE2 Text layout type information
|
|
CT_CTYPE3 Text processing type information
|
|
|
|
The return value is a list of values, each of wich is a bitwise OR of
|
|
the applicable type bits from the corresponding table below:
|
|
|
|
@ct = GetStringType(LOCALE_SYSTEM_DEFAULT, CT_CTYPE1, "String");
|
|
|
|
ANSI C and POSIX character type information:
|
|
|
|
C1_UPPER Uppercase
|
|
C1_LOWER Lowercase
|
|
C1_DIGIT Decimal digits
|
|
C1_SPACE Space characters
|
|
C1_PUNCT Punctuation
|
|
C1_CNTRL Control characters
|
|
C1_BLANK Blank characters
|
|
C1_XDIGIT Hexadecimal digits
|
|
C1_ALPHA Any letter
|
|
|
|
Text layout type information:
|
|
|
|
C2_LEFTTORIGHT Left to right
|
|
C2_RIGHTTOLEFT Right to left
|
|
C2_EUROPENUMBER European number, European digit
|
|
C2_EUROPESEPARATOR European numeric separator
|
|
C2_EUROPETERMINATOR European numeric terminator
|
|
C2_ARABICNUMBER Arabic number
|
|
C2_COMMONSEPARATOR Common numeric separator
|
|
C2_BLOCKSEPARATOR Block separator
|
|
C2_SEGMENTSEPARATOR Segment separator
|
|
C2_WHITESPACE White space
|
|
C2_OTHERNEUTRAL Other neutrals
|
|
C2_NOTAPPLICABLE No implicit direction (e.g. ctrl codes)
|
|
|
|
Text precessing type information:
|
|
|
|
C3_NONSPACING Nonspacing mark
|
|
C3_DIACRITIC Diacritic nonspacing mark
|
|
C3_VOWELMARK Vowel nonspacing mark
|
|
C3_SYMBOL Symbol
|
|
C3_KATAKANA Katakana character
|
|
C3_HIRAGANA Hiragana character
|
|
C3_HALFWIDTH Narrow character
|
|
C3_FULLWIDTH Wide character
|
|
C3_IDEOGRAPH Ideograph
|
|
C3_ALPHA Any letter
|
|
C3_NOTAPPLICABLE Not applicable
|
|
|
|
|
|
=item GetSystemDefaultLangID()
|
|
|
|
Returns the system default language identifier.
|
|
|
|
=item GetSystemDefaultLCID()
|
|
|
|
Returns the system default locale identifier.
|
|
|
|
=item GetUserDefaultLangID()
|
|
|
|
Returns the user default language identifier.
|
|
|
|
=item GetUserDefaultLCID()
|
|
|
|
Returns the user default locale identifier.
|
|
|
|
=item SendSettingChange()
|
|
|
|
Sends a WM_SETTINGCHANGE message to all top level windows.
|
|
|
|
=item SetLocaleInfo(LCID, LCTYPE, LCDATA)
|
|
|
|
Changes an item in the user override part of the locale setting LCID.
|
|
It doesn't change the system default database. The following LCTYPEs are
|
|
changeable:
|
|
|
|
LOCALE_ICALENDARTYPE LOCALE_SDATE
|
|
LOCALE_ICURRDIGITS LOCALE_SDECIMAL
|
|
LOCALE_ICURRENCY LOCALE_SGROUPING
|
|
LOCALE_IDIGITS LOCALE_SLIST
|
|
LOCALE_IFIRSTDAYOFWEEK LOCALE_SLONGDATE
|
|
LOCALE_IFIRSTWEEKOFYEAR LOCALE_SMONDECIMALSEP
|
|
LOCALE_ILZERO LOCALE_SMONGROUPING
|
|
LOCALE_IMEASURE LOCALE_SMONTHOUSANDSEP
|
|
LOCALE_INEGCURR LOCALE_SNEGATIVESIGN
|
|
LOCALE_INEGNUMBER LOCALE_SPOSITIVESIGN
|
|
LOCALE_IPAPERSIZE LOCALE_SSHORTDATE
|
|
LOCALE_ITIME LOCALE_STHOUSAND
|
|
LOCALE_S1159 LOCALE_STIME
|
|
LOCALE_S2359 LOCALE_STIMEFORMAT
|
|
LOCALE_SCURRENCY LOCALE_SYEARMONTH
|
|
|
|
You have to call SendSettingChange() to activate these changes for
|
|
subsequent Win32::OLE::Variant object formatting because the OLE
|
|
subsystem seems to cache locale information.
|
|
|
|
=item MAKELANGID(LANG,SUBLANG)
|
|
|
|
Creates a lnguage identifier from a primary language and a sublanguage.
|
|
|
|
=item PRIMARYLANGID(LANGID)
|
|
|
|
Retrieves the primary language from a language identifier.
|
|
|
|
=item SUBLANGID(LANGID)
|
|
|
|
Retrieves the sublanguage from a language identifier.
|
|
|
|
=item MAKELCID(LANGID)
|
|
|
|
Creates a locale identifies from a language identifier.
|
|
|
|
=item LANGIDFROMLCID(LCID)
|
|
|
|
Retrieves a language identifier from a locale identifier.
|
|
|
|
=back
|
|
|
|
=head2 Locale Types
|
|
|
|
=over 8
|
|
|
|
=item LOCALE_ILANGUAGE
|
|
|
|
The language identifier (in hex).
|
|
|
|
=item LOCALE_SLANGUAGE
|
|
|
|
The localized name of the language.
|
|
|
|
=item LOCALE_SENGLANGUAGE
|
|
|
|
The ISO Standard 639 English name of the language.
|
|
|
|
=item LOCALE_SABBREVLANGNAME
|
|
|
|
The three-letter abbreviated name of the language. The first two
|
|
letters are from the ISO Standard 639 language name abbreviation. The
|
|
third letter indicates the sublanguage type.
|
|
|
|
=item LOCALE_SNATIVELANGNAME
|
|
|
|
The native name of the language.
|
|
|
|
=item LOCALE_ICOUNTRY
|
|
|
|
The country code, which is based on international phone codes.
|
|
|
|
=item LOCALE_SCOUNTRY
|
|
|
|
The localized name of the country.
|
|
|
|
=item LOCALE_SENGCOUNTRY
|
|
|
|
The English name of the country.
|
|
|
|
=item LOCALE_SABBREVCTRYNAME
|
|
|
|
The ISO Standard 3166 abbreviated name of the country.
|
|
|
|
=item LOCALE_SNATIVECTRYNAME
|
|
|
|
The native name of the country.
|
|
|
|
=item LOCALE_IDEFAULTLANGUAGE
|
|
|
|
Language identifier for the principal language spoken in this
|
|
locale.
|
|
|
|
=item LOCALE_IDEFAULTCOUNTRY
|
|
|
|
Country code for the principal country in this locale.
|
|
|
|
=item LOCALE_IDEFAULTANSICODEPAGE
|
|
|
|
The ANSI code page associated with this locale. Format: 4 Unicode
|
|
decimal digits plus a Unicode null terminator.
|
|
|
|
XXX This should be translated by GetLocaleInfo. XXX
|
|
|
|
=item LOCALE_IDEFAULTCODEPAGE
|
|
|
|
The OEM code page associated with the country.
|
|
|
|
=item LOCALE_SLIST
|
|
|
|
Characters used to separate list items (often a comma).
|
|
|
|
=item LOCALE_IMEASURE
|
|
|
|
Default measurement system:
|
|
|
|
0 metric system (S.I.)
|
|
1 U.S. system
|
|
|
|
=item LOCALE_SDECIMAL
|
|
|
|
Characters used for the decimal separator (often a dot).
|
|
|
|
=item LOCALE_STHOUSAND
|
|
|
|
Characters used as the separator between groups of digits left of the decimal.
|
|
|
|
=item LOCALE_SGROUPING
|
|
|
|
Sizes for each group of digits to the left of the decimal. An explicit
|
|
size is required for each group. Sizes are separated by semicolons. If
|
|
the last value is 0, the preceding value is repeated. To group
|
|
thousands, specify 3;0.
|
|
|
|
=item LOCALE_IDIGITS
|
|
|
|
The number of fractional digits.
|
|
|
|
=item LOCALE_ILZERO
|
|
|
|
Whether to use leading zeros in decimal fields. A setting of 0
|
|
means use no leading zeros; 1 means use leading zeros.
|
|
|
|
=item LOCALE_SNATIVEDIGITS
|
|
|
|
The ten characters that are the native equivalent of the ASCII 0-9.
|
|
|
|
=item LOCALE_INEGNUMBER
|
|
|
|
Negative number mode.
|
|
|
|
0 (1.1)
|
|
1 -1.1
|
|
2 -1.1
|
|
3 1.1
|
|
4 1.1
|
|
|
|
=item LOCALE_SCURRENCY
|
|
|
|
The string used as the local monetary symbol.
|
|
|
|
=item LOCALE_SINTLSYMBOL
|
|
|
|
Three characters of the International monetary symbol specified in ISO
|
|
4217, Codes for the Representation of Currencies and Funds, followed
|
|
by the character separating this string from the amount.
|
|
|
|
=item LOCALE_SMONDECIMALSEP
|
|
|
|
Characters used for the monetary decimal separators.
|
|
|
|
=item LOCALE_SMONTHOUSANDSEP
|
|
|
|
Characters used as monetary separator between groups of digits left of
|
|
the decimal.
|
|
|
|
=item LOCALE_SMONGROUPING
|
|
|
|
Sizes for each group of monetary digits to the left of the decimal. An
|
|
explicit size is needed for each group. Sizes are separated by
|
|
semicolons. If the last value is 0, the preceding value is
|
|
repeated. To group thousands, specify 3;0.
|
|
|
|
=item LOCALE_ICURRDIGITS
|
|
|
|
Number of fractional digits for the local monetary format.
|
|
|
|
=item LOCALE_IINTLCURRDIGITS
|
|
|
|
Number of fractional digits for the international monetary format.
|
|
|
|
=item LOCALE_ICURRENCY
|
|
|
|
Positive currency mode.
|
|
|
|
0 Prefix, no separation.
|
|
1 Suffix, no separation.
|
|
2 Prefix, 1-character separation.
|
|
3 Suffix, 1-character separation.
|
|
|
|
=item LOCALE_INEGCURR
|
|
|
|
Negative currency mode.
|
|
|
|
0 ($1.1)
|
|
1 -$1.1
|
|
2 $-1.1
|
|
3 $1.1-
|
|
4 $(1.1$)
|
|
5 -1.1$
|
|
6 1.1-$
|
|
7 1.1$-
|
|
8 -1.1 $ (space before $)
|
|
9 -$ 1.1 (space after $)
|
|
10 1.1 $- (space before $)
|
|
|
|
=item LOCALE_ICALENDARTYPE
|
|
|
|
The type of calendar currently in use.
|
|
|
|
1 Gregorian (as in U.S.)
|
|
2 Gregorian (always English strings)
|
|
3 Era: Year of the Emperor (Japan)
|
|
4 Era: Year of the Republic of China
|
|
5 Tangun Era (Korea)
|
|
|
|
=item LOCALE_IOPTIONALCALENDAR
|
|
|
|
The additional calendar types available for this LCID. Can be a
|
|
null-separated list of all valid optional calendars. Value is
|
|
0 for "None available" or any of the LOCALE_ICALENDARTYPE settings.
|
|
|
|
XXX null separated list should be translated by GetLocaleInfo XXX
|
|
|
|
=item LOCALE_SDATE
|
|
|
|
Characters used for the date separator.
|
|
|
|
=item LOCALE_STIME
|
|
|
|
Characters used for the time separator.
|
|
|
|
=item LOCALE_STIMEFORMAT
|
|
|
|
Time-formatting string.
|
|
|
|
=item LOCALE_SSHORTDATE
|
|
|
|
Short Date_Time formatting strings for this locale.
|
|
|
|
=item LOCALE_SLONGDATE
|
|
|
|
Long Date_Time formatting strings for this locale.
|
|
|
|
=item LOCALE_IDATE
|
|
|
|
Short Date format-ordering specifier.
|
|
|
|
0 Month - Day - Year
|
|
1 Day - Month - Year
|
|
2 Year - Month - Day
|
|
|
|
=item LOCALE_ILDATE
|
|
|
|
Long Date format ordering specifier. Value can be any of the valid
|
|
LOCALE_IDATE settings.
|
|
|
|
=item LOCALE_ITIME
|
|
|
|
Time format specifier.
|
|
|
|
0 AM/PM 12-hour format.
|
|
1 24-hour format.
|
|
|
|
=item LOCALE_ITIMEMARKPOSN
|
|
|
|
Whether the time marker string (AM|PM) precedes or follows the time
|
|
string.
|
|
0 Suffix (9:15 AM).
|
|
1 Prefix (AM 9:15).
|
|
|
|
=item LOCALE_ICENTURY
|
|
|
|
Whether to use full 4-digit century.
|
|
|
|
0 Two digit.
|
|
1 Full century.
|
|
|
|
=item LOCALE_ITLZERO
|
|
|
|
Whether to use leading zeros in time fields.
|
|
|
|
0 No leading zeros.
|
|
1 Leading zeros for hours.
|
|
|
|
=item LOCALE_IDAYLZERO
|
|
|
|
Whether to use leading zeros in day fields. Values as for
|
|
LOCALE_ITLZERO.
|
|
|
|
=item LOCALE_IMONLZERO
|
|
|
|
Whether to use leading zeros in month fields. Values as for
|
|
LOCALE_ITLZERO.
|
|
|
|
=item LOCALE_S1159
|
|
|
|
String for the AM designator.
|
|
|
|
=item LOCALE_S2359
|
|
|
|
String for the PM designator.
|
|
|
|
=item LOCALE_IFIRSTWEEKOFYEAR
|
|
|
|
Specifies which week of the year is considered first.
|
|
|
|
0 Week containing 1/1 is the first week of the year.
|
|
1 First full week following 1/1is the first week of the year.
|
|
2 First week with at least 4 days is the first week of the year.
|
|
|
|
=item LOCALE_IFIRSTDAYOFWEEK
|
|
|
|
Specifies the day considered first in the week. Value "0" means
|
|
SDAYNAME1 and value "6" means SDAYNAME7.
|
|
|
|
=item LOCALE_SDAYNAME1 .. LOCALE_SDAYNAME7
|
|
|
|
Long name for Monday .. Sunday.
|
|
|
|
=item LOCALE_SABBREVDAYNAME1 .. LOCALE_SABBREVDAYNAME7
|
|
|
|
Abbreviated name for Monday .. Sunday.
|
|
|
|
=item LOCALE_SMONTHNAME1 .. LOCALE_SMONTHNAME12
|
|
|
|
Long name for January .. December.
|
|
|
|
=item LOCALE_SMONTHNAME13
|
|
|
|
Native name for 13th month, if it exists.
|
|
|
|
=item LOCALE_SABBREVMONTHNAME1 .. LOCALE_SABBREVMONTHNAME12
|
|
|
|
Abbreviated name for January .. December.
|
|
|
|
=item LOCALE_SABBREVMONTHNAME13
|
|
|
|
Native abbreviated name for 13th month, if it exists.
|
|
|
|
=item LOCALE_SPOSITIVESIGN
|
|
|
|
String value for the positive sign.
|
|
|
|
=item LOCALE_SNEGATIVESIGN
|
|
|
|
String value for the negative sign.
|
|
|
|
=item LOCALE_IPOSSIGNPOSN
|
|
|
|
Formatting index for positive values.
|
|
|
|
0 Parentheses surround the amount and the monetary symbol.
|
|
1 The sign string precedes the amount and the monetary symbol.
|
|
2 The sign string precedes the amount and the monetary symbol.
|
|
3 The sign string precedes the amount and the monetary symbol.
|
|
4 The sign string precedes the amount and the monetary symbol.
|
|
|
|
=item LOCALE_INEGSIGNPOSN
|
|
|
|
Formatting index for negative values. Values as for LOCALE_IPOSSIGNPOSN.
|
|
|
|
=item LOCALE_IPOSSYMPRECEDES
|
|
|
|
If the monetary symbol precedes, 1. If it succeeds a positive amount, 0.
|
|
|
|
=item LOCALE_IPOSSEPBYSPACE
|
|
|
|
If the monetary symbol is separated by a space from a positive amount,
|
|
1. Otherwise, 0.
|
|
|
|
=item LOCALE_INEGSYMPRECEDES
|
|
|
|
If the monetary symbol precedes, 1. If it succeeds a negative amount, 0.
|
|
|
|
=item LOCALE_INEGSEPBYSPACE
|
|
|
|
If the monetary symbol is separated by a space from a negative amount,
|
|
1. Otherwise, 0.
|
|
|
|
=back
|
|
|
|
=head1 AUTHORS/COPYRIGHT
|
|
|
|
This module is part of the Win32::OLE distribution.
|
|
|
|
=cut
|