Skip to main content

native_windows_gui2/winnls/
shared.rs

1#[derive(Debug, Copy, Clone)]
2pub enum MeasurementSystem {
3    Metric,
4    Imperial,
5}
6
7#[derive(Debug, Copy, Clone)]
8#[repr(u32)]
9pub enum Calendar {
10    /// Gregorian (localized) calendar
11    Gregorian = 1,
12
13    /// Gregorian (U.S.) calendar
14    GregorianUs,
15
16    /// Japanese Emperor Era calendar
17    Japan,
18
19    /// Taiwan Era calendar
20    Taiwan,
21
22    /// Korean Tangun Era calendar
23    Korea,
24
25    /// Hijri (Arabic Lunar) calendar
26    Hijri,
27
28    /// Thai calendar
29    Thai,
30
31    /// Hebrew (Lunar) calendar
32    Hebrew,
33
34    /// Gregorian Middle East French calendar
35    GregorianMeFrench,
36
37    /// Gregorian Arabic calendar
38    GregorianArabic,
39
40    /// Gregorian Transliterated English calendar
41    GregorianXlitEnglish,
42    GregorianXlitFrench,
43    Julian,
44    JapaneseUnisolar,
45    ChineseUnisolar,
46    Saka,
47    LunarEtoChn,
48    LunarEtoKor,
49    LunarEroRokuyou,
50    KoreanUnisolar,
51    TaiwanUnisolar,
52
53    /// Persian (Solar Hijri) calendar
54    Persian,
55
56    /// UmAlQura Hijri (Arabic Lunar) calendar
57    UmAlQura,
58}
59
60#[derive(Debug, Copy, Clone)]
61pub enum NegativeNumberMode {
62    /// Left parenthesis, number, right parenthesis; for example, (1.1)
63    Mode0,
64
65    /// Negative sign, number; for example, -1.1
66    Mode1,
67
68    /// Negative sign, space, number; for example, - 1.1
69    Mode2,
70
71    /// Number, negative sign; for example, 1.1-
72    Mode3,
73
74    /// Number, space, negative sign; for example, 1.1 -
75    Mode4,
76}
77
78#[derive(Debug, Copy, Clone)]
79pub enum PositiveCurrency {
80    /// Prefix, no separation, for example, $1.1
81    Mode0,
82    /// Suffix, no separation, for example, 1.1$
83    Mode1,
84    /// Prefix, 1-character separation, for example, $ 1.1
85    Mode2,
86    /// Suffix, 1-character separation, for example, 1.1 $
87    Mode3,
88}
89
90#[derive(Debug, Copy, Clone)]
91#[repr(u32)]
92pub enum NegativeCurrency {
93    /// Left parenthesis, monetary symbol, number, right parenthesis; for example, ($1.1)
94    Mode0 = 0,
95    /// Negative sign, monetary symbol, number; for example, -$1.1
96    Mode1,
97    /// Monetary symbol, negative sign, number; for example, $-1.1
98    Mode2,
99    /// Monetary symbol, number, negative sign; for example, $1.1-
100    Mode3,
101    /// Left parenthesis, number, monetary symbol, right parenthesis; for example, (1.1$)
102    Mode4,
103    /// Negative sign, number, monetary symbol; for example, -1.1$
104    Mode5,
105    /// Number, negative sign, monetary symbol; for example, 1.1-$
106    Mode6,
107    /// Number, monetary symbol, negative sign; for example, 1.1$-
108    Mode7,
109    /// Negative sign, number, space, monetary symbol (like #5, but with a space before the monetary symbol); for example, -1.1 $
110    Mode8,
111    /// Negative sign, monetary symbol, space, number (like #1, but with a space after the monetary symbol); for example, -$ 1.1
112    Mode9,
113    /// Number, space, monetary symbol, negative sign (like #7, but with a space before the monetary symbol); for example, 1.1 $-
114    Mode10,
115    /// Monetary symbol, space, number, negative sign (like #3, but with a space after the monetary symbol); for example, $ 1.1-
116    Mode11,
117    /// Monetary symbol, space, negative sign, number (like #2, but with a space after the monetary symbol); for example, $ -1.1
118    Mode12,
119    /// Number, negative sign, space, monetary symbol (like #6, but with a space before the monetary symbol); for example, 1.1- $
120    Mode13,
121    /// Left parenthesis, monetary symbol, space, number, right parenthesis (like #0, but with a space after the monetary symbol); for example, ($ 1.1)
122    Mode14,
123    /// Left parenthesis, number, space, monetary symbol, right parenthesis (like #4, but with a space before the monetary symbol); for example, (1.1 $)
124    Mode15,
125}
126
127#[derive(Debug, Copy, Clone)]
128pub enum FirstDayOfYear {
129    /// Week containing 1/1 is the first week of the year. Note that this can be a single day, if 1/1 falls on the last day of the week.
130    Mode0,
131
132    /// First full week following 1/1 is the first week of the year.
133    Mode1,
134
135    /// First week containing at least four days is the first week of the year.
136    Mode2,
137}