2 * Copyright 2021 RĂ©mi Bernon for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 #pragma winrt ns_prefix
24 import
"inspectable.idl";
25 import
"asyncinfo.idl";
26 import
"eventtoken.idl";
27 import
"windowscontracts.idl";
28 import
"windows.foundation.idl";
32 namespace Globalization
{
33 typedef enum DayOfWeek DayOfWeek
;
34 typedef enum LanguageLayoutDirection LanguageLayoutDirection
;
38 interface ILanguageExtensionSubtags
;
39 interface ILanguageFactory
;
40 interface ILanguageStatics
;
41 interface ILanguageStatics2
;
42 interface ILanguageStatics3
;
43 interface IGeographicRegion
;
44 interface IGeographicRegionFactory
;
45 interface IGeographicRegionStatics
;
46 runtimeclass Language
;
47 runtimeclass GeographicRegion
;
52 namespace Globalization
{
54 interface Windows.Foundation.Collections.IIterable
<Windows.Globalization.Language
*>;
55 interface Windows.Foundation.Collections.IIterator
<Windows.Globalization.Language
*>;
56 interface Windows.Foundation.Collections.IVectorView
<Windows.Globalization.Language
*>;
57 interface Windows.Foundation.Collections.IVector
<Windows.Globalization.Language
*>;
64 namespace Globalization
{
65 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
77 [contract
(Windows.Foundation.UniversalApiContract
, 6.0)]
78 enum LanguageLayoutDirection
87 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
88 exclusiveto
(Windows.Globalization.Language
),
89 uuid(ea79a752
-f7c2
-4265-b1bd
-c4dec4e4f080
)
91 interface ILanguage
: IInspectable
93 [propget] HRESULT LanguageTag
([out, retval] HSTRING
*value
);
94 [propget] HRESULT DisplayName
([out, retval] HSTRING
*value
);
95 [propget] HRESULT NativeName
([out, retval] HSTRING
*value
);
96 [propget] HRESULT Script
([out, retval] HSTRING
*value
);
100 contract
(Windows.Foundation.UniversalApiContract
, 6.0),
101 exclusiveto
(Windows.Globalization.Language
),
102 uuid(6a47e5b5
-d94d
-4886-a404
-a5a5b9d5b494
)
104 interface ILanguage2
: IInspectable
106 [propget] HRESULT LayoutDirection
([out, retval] Windows.Globalization.LanguageLayoutDirection
*value
);
110 contract
(Windows.Foundation.UniversalApiContract
, 10.0),
111 exclusiveto
(Windows.Globalization.Language
),
112 uuid(c6af3d10
-641a
-5ba4
-bb43
-5e12aed75954
)
114 interface ILanguage3
: IInspectable
116 [propget] HRESULT AbbreviatedName
([out, retval] HSTRING
*value
);
120 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
121 exclusiveto
(Windows.Globalization.Language
),
122 uuid(7d7daf45
-368d
-4364-852b
-dec927037b85
)
124 interface ILanguageExtensionSubtags
: IInspectable
126 HRESULT GetExtensionSubtags
([in] HSTRING tag
, [out, retval] Windows.Foundation.Collections.IVectorView
<HSTRING
> **value
);
130 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
131 exclusiveto
(Windows.Globalization.Language
),
132 uuid(9b0252ac
-0c27
-44f8
-b792
-9793fb66c63e
)
134 interface ILanguageFactory
: IInspectable
136 HRESULT CreateLanguage
([in] HSTRING tag
, [out, retval] Windows.Globalization.Language
**value
);
140 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
141 exclusiveto
(Windows.Globalization.Language
),
142 uuid(b23cd557
-0865-46d4
-89b8
-d59be8990f0d
)
144 interface ILanguageStatics
: IInspectable
146 HRESULT IsWellFormed
([in] HSTRING tag
, [out, retval] BOOLEAN *result
);
147 [propget] HRESULT CurrentInputMethodLanguageTag
([out, retval] HSTRING
*value
);
151 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
152 exclusiveto
(Windows.Globalization.Language
),
153 uuid(30199f6e
-914b
-4b2a
-9d6e
-e3b0e27dbe4f
)
155 interface ILanguageStatics2
: IInspectable
157 HRESULT TrySetInputMethodLanguageTag
([in] HSTRING tag
, [out, retval] BOOLEAN *result
);
161 contract
(Windows.Foundation.UniversalApiContract
, 10.0),
162 exclusiveto
(Windows.Globalization.Language
),
163 uuid(d15ecb5a
-71de
-5752-9542-fac5b4f27261
)
165 interface ILanguageStatics3
: IInspectable
167 HRESULT GetMuiCompatibleLanguageListFromLanguageTags
([in] Windows.Foundation.Collections.IIterable
<HSTRING
> *tags
, [out, retval] Windows.Foundation.Collections.IVector
<HSTRING
> **result
);
171 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
172 exclusiveto
(Windows.Globalization.GeographicRegion
),
173 uuid(01e9a621
-4a64
-4ed9
-954f
-9edeb07bd903
)
175 interface IGeographicRegion
: IInspectable
177 [propget] HRESULT Code
([out, retval] HSTRING
*value
);
178 [propget] HRESULT CodeTwoLetter
([out, retval] HSTRING
*value
);
179 [propget] HRESULT CodeThreeLetter
([out, retval] HSTRING
*value
);
180 [propget] HRESULT CodeThreeDigit
([out, retval] HSTRING
*value
);
181 [propget] HRESULT DisplayName
([out, retval] HSTRING
*value
);
182 [propget] HRESULT NativeName
([out, retval] HSTRING
*value
);
183 [propget] HRESULT CurrenciesInUse
([out, retval] Windows.Foundation.Collections.IVectorView
<HSTRING
> **value
);
187 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
188 exclusiveto
(Windows.Globalization.GeographicRegion
),
189 uuid(53425270-77b4
-426b
-859f
-81e19d512546
)
191 interface IGeographicRegionFactory
: IInspectable
193 HRESULT CreateGeographicRegion
([in] HSTRING region_code
, [out, retval] Windows.Globalization.GeographicRegion
**result
);
197 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
198 exclusiveto
(Windows.Globalization.GeographicRegion
),
199 uuid(29e28974
-7ad9
-4ef4
-8799-b3b44fadec08
)
201 interface IGeographicRegionStatics
: IInspectable
203 HRESULT IsSupported
([in] HSTRING region_code
, [out, retval] boolean *result
);
207 activatable
(Windows.Globalization.ILanguageFactory
, Windows.Foundation.UniversalApiContract
, 1.0),
208 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
209 marshaling_behavior
(agile
),
210 static
(Windows.Globalization.ILanguageStatics
, Windows.Foundation.UniversalApiContract
, 1.0),
211 static
(Windows.Globalization.ILanguageStatics2
, Windows.Foundation.UniversalApiContract
, 1.0),
212 static
(Windows.Globalization.ILanguageStatics3
, Windows.Foundation.UniversalApiContract
, 10.0),
215 runtimeclass Language
217 [contract
(Windows.Foundation.UniversalApiContract
, 1.0), default] interface Windows.Globalization.ILanguage
;
218 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)] interface Windows.Globalization.ILanguageExtensionSubtags
;
219 [contract
(Windows.Foundation.UniversalApiContract
, 6.0)] interface Windows.Globalization.ILanguage2
;
220 [contract
(Windows.Foundation.UniversalApiContract
, 10.0)] interface Windows.Globalization.ILanguage3
;
224 activatable
(Windows.Foundation.UniversalApiContract
, 1.0),
225 activatable
(Windows.Globalization.IGeographicRegionFactory
, Windows.Foundation.UniversalApiContract
, 1.0),
226 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
227 marshaling_behavior
(agile
),
228 static
(Windows.Globalization.IGeographicRegionStatics
, Windows.Foundation.UniversalApiContract
, 1.0),
231 runtimeclass GeographicRegion
233 [contract
(Windows.Foundation.UniversalApiContract
, 1.0), default] interface Windows.Globalization.IGeographicRegion
;