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 runtimeclass Language
;
48 namespace Globalization
{
50 interface Windows.Foundation.Collections.IIterable
<Windows.Globalization.Language
*>;
51 interface Windows.Foundation.Collections.IIterator
<Windows.Globalization.Language
*>;
52 interface Windows.Foundation.Collections.IVectorView
<Windows.Globalization.Language
*>;
53 interface Windows.Foundation.Collections.IVector
<Windows.Globalization.Language
*>;
60 namespace Globalization
{
61 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
73 [contract
(Windows.Foundation.UniversalApiContract
, 6.0)]
74 enum LanguageLayoutDirection
83 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
84 exclusiveto
(Windows.Globalization.Language
),
85 uuid(ea79a752
-f7c2
-4265-b1bd
-c4dec4e4f080
)
87 interface ILanguage
: IInspectable
89 [propget] HRESULT LanguageTag
([out, retval] HSTRING
*value
);
90 [propget] HRESULT DisplayName
([out, retval] HSTRING
*value
);
91 [propget] HRESULT NativeName
([out, retval] HSTRING
*value
);
92 [propget] HRESULT Script
([out, retval] HSTRING
*value
);
96 contract
(Windows.Foundation.UniversalApiContract
, 6.0),
97 exclusiveto
(Windows.Globalization.Language
),
98 uuid(6a47e5b5
-d94d
-4886-a404
-a5a5b9d5b494
)
100 interface ILanguage2
: IInspectable
102 [propget] HRESULT LayoutDirection
([out, retval] Windows.Globalization.LanguageLayoutDirection
*value
);
106 contract
(Windows.Foundation.UniversalApiContract
, 10.0),
107 exclusiveto
(Windows.Globalization.Language
),
108 uuid(c6af3d10
-641a
-5ba4
-bb43
-5e12aed75954
)
110 interface ILanguage3
: IInspectable
112 [propget] HRESULT AbbreviatedName
([out, retval] HSTRING
*value
);
116 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
117 exclusiveto
(Windows.Globalization.Language
),
118 uuid(7d7daf45
-368d
-4364-852b
-dec927037b85
)
120 interface ILanguageExtensionSubtags
: IInspectable
122 HRESULT GetExtensionSubtags
([in] HSTRING tag
, [out, retval] Windows.Foundation.Collections.IVectorView
<HSTRING
> **value
);
126 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
127 exclusiveto
(Windows.Globalization.Language
),
128 uuid(9b0252ac
-0c27
-44f8
-b792
-9793fb66c63e
)
130 interface ILanguageFactory
: IInspectable
132 HRESULT CreateLanguage
([in] HSTRING tag
, [out, retval] Windows.Globalization.Language
**value
);
136 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
137 exclusiveto
(Windows.Globalization.Language
),
138 uuid(b23cd557
-0865-46d4
-89b8
-d59be8990f0d
)
140 interface ILanguageStatics
: IInspectable
142 HRESULT IsWellFormed
([in] HSTRING tag
, [out, retval] BOOLEAN *result
);
143 [propget] HRESULT CurrentInputMethodLanguageTag
([out, retval] HSTRING
*value
);
147 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
148 exclusiveto
(Windows.Globalization.Language
),
149 uuid(30199f6e
-914b
-4b2a
-9d6e
-e3b0e27dbe4f
)
151 interface ILanguageStatics2
: IInspectable
153 HRESULT TrySetInputMethodLanguageTag
([in] HSTRING tag
, [out, retval] BOOLEAN *result
);
157 contract
(Windows.Foundation.UniversalApiContract
, 10.0),
158 exclusiveto
(Windows.Globalization.Language
),
159 uuid(d15ecb5a
-71de
-5752-9542-fac5b4f27261
)
161 interface ILanguageStatics3
: IInspectable
163 HRESULT GetMuiCompatibleLanguageListFromLanguageTags
([in] Windows.Foundation.Collections.IIterable
<HSTRING
> *tags
, [out, retval] Windows.Foundation.Collections.IVector
<HSTRING
> **result
);
167 activatable
(Windows.Globalization.ILanguageFactory
, Windows.Foundation.UniversalApiContract
, 1.0),
168 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
169 marshaling_behavior
(agile
),
170 static
(Windows.Globalization.ILanguageStatics
, Windows.Foundation.UniversalApiContract
, 1.0),
171 static
(Windows.Globalization.ILanguageStatics2
, Windows.Foundation.UniversalApiContract
, 1.0),
172 static
(Windows.Globalization.ILanguageStatics3
, Windows.Foundation.UniversalApiContract
, 10.0),
175 runtimeclass Language
177 [contract
(Windows.Foundation.UniversalApiContract
, 1.0), default] interface Windows.Globalization.ILanguage
;
178 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)] interface Windows.Globalization.ILanguageExtensionSubtags
;
179 [contract
(Windows.Foundation.UniversalApiContract
, 6.0)] interface Windows.Globalization.ILanguage2
;
180 [contract
(Windows.Foundation.UniversalApiContract
, 10.0)] interface Windows.Globalization.ILanguage3
;