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
23 import
"inspectable.idl";
24 import
"asyncinfo.idl";
25 import
"eventtoken.idl";
26 import
"windowscontracts.idl";
27 import
"windows.foundation.idl";
30 namespace Globalization
{
31 typedef enum DayOfWeek DayOfWeek
;
32 typedef enum LanguageLayoutDirection LanguageLayoutDirection
;
36 interface ILanguageExtensionSubtags
;
37 interface ILanguageFactory
;
38 interface ILanguageStatics
;
39 interface ILanguageStatics2
;
40 interface ILanguageStatics3
;
41 runtimeclass Language
;
46 namespace Globalization
{
48 interface Windows.Foundation.Collections.IIterable
<Windows.Globalization.Language
*>;
49 interface Windows.Foundation.Collections.IIterator
<Windows.Globalization.Language
*>;
50 interface Windows.Foundation.Collections.IVectorView
<Windows.Globalization.Language
*>;
51 interface Windows.Foundation.Collections.IVector
<Windows.Globalization.Language
*>;
58 namespace Globalization
{
59 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
71 [contract
(Windows.Foundation.UniversalApiContract
, 6.0)]
72 enum LanguageLayoutDirection
81 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
82 exclusiveto
(Windows.Globalization.Language
),
83 uuid(ea79a752
-f7c2
-4265-b1bd
-c4dec4e4f080
)
85 interface ILanguage
: IInspectable
87 [propget] HRESULT LanguageTag
([out, retval] HSTRING
*value
);
88 [propget] HRESULT DisplayName
([out, retval] HSTRING
*value
);
89 [propget] HRESULT NativeName
([out, retval] HSTRING
*value
);
90 [propget] HRESULT Script
([out, retval] HSTRING
*value
);
94 contract
(Windows.Foundation.UniversalApiContract
, 6.0),
95 exclusiveto
(Windows.Globalization.Language
),
96 uuid(6a47e5b5
-d94d
-4886-a404
-a5a5b9d5b494
)
98 interface ILanguage2
: IInspectable
100 [propget] HRESULT LayoutDirection
([out, retval] Windows.Globalization.LanguageLayoutDirection
*value
);
104 contract
(Windows.Foundation.UniversalApiContract
, 10.0),
105 exclusiveto
(Windows.Globalization.Language
),
106 uuid(c6af3d10
-641a
-5ba4
-bb43
-5e12aed75954
)
108 interface ILanguage3
: IInspectable
110 [propget] HRESULT AbbreviatedName
([out, retval] HSTRING
*value
);
114 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
115 exclusiveto
(Windows.Globalization.Language
),
116 uuid(7d7daf45
-368d
-4364-852b
-dec927037b85
)
118 interface ILanguageExtensionSubtags
: IInspectable
120 HRESULT GetExtensionSubtags
([in] HSTRING tag
, [out, retval] Windows.Foundation.Collections.IVectorView
<HSTRING
> **value
);
124 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
125 exclusiveto
(Windows.Globalization.Language
),
126 uuid(9b0252ac
-0c27
-44f8
-b792
-9793fb66c63e
)
128 interface ILanguageFactory
: IInspectable
130 HRESULT CreateLanguage
([in] HSTRING tag
, [out, retval] Windows.Globalization.Language
**value
);
134 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
135 exclusiveto
(Windows.Globalization.Language
),
136 uuid(b23cd557
-0865-46d4
-89b8
-d59be8990f0d
)
138 interface ILanguageStatics
: IInspectable
140 HRESULT IsWellFormed
([in] HSTRING tag
, [out, retval] BOOLEAN *result
);
141 [propget] HRESULT CurrentInputMethodLanguageTag
([out, retval] HSTRING
*value
);
145 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
146 exclusiveto
(Windows.Globalization.Language
),
147 uuid(30199f6e
-914b
-4b2a
-9d6e
-e3b0e27dbe4f
)
149 interface ILanguageStatics2
: IInspectable
151 HRESULT TrySetInputMethodLanguageTag
([in] HSTRING tag
, [out, retval] BOOLEAN *result
);
155 contract
(Windows.Foundation.UniversalApiContract
, 10.0),
156 exclusiveto
(Windows.Globalization.Language
),
157 uuid(d15ecb5a
-71de
-5752-9542-fac5b4f27261
)
159 interface ILanguageStatics3
: IInspectable
161 HRESULT GetMuiCompatibleLanguageListFromLanguageTags
([in] Windows.Foundation.Collections.IIterable
<HSTRING
> *tags
, [out, retval] Windows.Foundation.Collections.IVector
<HSTRING
> **result
);
165 activatable
(Windows.Globalization.ILanguageFactory
, Windows.Foundation.UniversalApiContract
, 1.0),
166 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
167 marshaling_behavior
(agile
),
168 static
(Windows.Globalization.ILanguageStatics
, Windows.Foundation.UniversalApiContract
, 1.0),
169 static
(Windows.Globalization.ILanguageStatics2
, Windows.Foundation.UniversalApiContract
, 1.0),
170 static
(Windows.Globalization.ILanguageStatics3
, Windows.Foundation.UniversalApiContract
, 10.0),
173 runtimeclass Language
175 [contract
(Windows.Foundation.UniversalApiContract
, 1.0), default] interface Windows.Globalization.ILanguage
;
176 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)] interface Windows.Globalization.ILanguageExtensionSubtags
;
177 [contract
(Windows.Foundation.UniversalApiContract
, 6.0)] interface Windows.Globalization.ILanguage2
;
178 [contract
(Windows.Foundation.UniversalApiContract
, 10.0)] interface Windows.Globalization.ILanguage3
;