2 * Copyright (C) 2023 Mohamad Al-Jaf
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";
28 import
"windows.devices.enumeration.idl";
29 /* import "windows.phone.idl"; */
30 import
"windows.ui.idl";
31 import
"windows.ui.core.idl";
32 /* import "windows.ui.popups.idl"; */
33 /* import "windows.ui.windowmanagement.idl"; */
35 namespace Windows.UI.ViewManagement
37 typedef enum HandPreference HandPreference
;
38 typedef enum UIColorType UIColorType
;
39 typedef enum UIElementType UIElementType
;
41 interface IUISettings
;
42 interface IUISettings2
;
43 interface IUISettings3
;
44 interface IUISettings4
;
45 interface IUISettings5
;
46 interface IUISettings6
;
48 runtimeclass UISettings
;
51 interface Windows.Foundation.TypedEventHandler
<Windows.UI.ViewManagement.UISettings
*, IInspectable
*>;
55 contract
(Windows.Foundation.UniversalApiContract
, 1.0)
64 contract
(Windows.Foundation.UniversalApiContract
, 1.0)
81 contract
(Windows.Foundation.UniversalApiContract
, 1.0)
95 InactiveCaptionText
= 10,
98 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
100 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
102 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
104 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
106 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
107 TextContrastWithHigh
= 1004,
108 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
110 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
111 NonTextMediumHigh
= 1006,
112 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
113 NonTextMedium
= 1007,
114 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
115 NonTextMediumLow
= 1008,
116 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
118 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
119 PageBackground
= 1010,
120 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
121 PopupBackground
= 1011,
122 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
123 OverlayOutsidePopup
= 1012,
127 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
128 exclusiveto
(Windows.UI.ViewManagement.UISettings
),
129 uuid(85361600-1c63
-4627-bcb1
-3a89e0bc9c55
)
131 interface IUISettings
: IInspectable
133 [propget] HRESULT HandPreference
([out, retval] Windows.UI.ViewManagement.HandPreference
*value
);
134 [propget] HRESULT CursorSize
([out, retval] Windows.Foundation.Size
*value
);
135 [propget] HRESULT ScrollBarSize
([out, retval] Windows.Foundation.Size
*value
);
136 [propget] HRESULT ScrollBarArrowSize
([out, retval] Windows.Foundation.Size
*value
);
137 [propget] HRESULT ScrollBarThumbBoxSize
([out, retval] Windows.Foundation.Size
*value
);
138 [propget] HRESULT MessageDuration
([out, retval] UINT32
*value
);
139 [propget] HRESULT AnimationsEnabled
([out, retval] boolean *value
);
140 [propget] HRESULT CaretBrowsingEnabled
([out, retval] boolean *value
);
141 [propget] HRESULT CaretBlinkRate
([out, retval] UINT32
*value
);
142 [propget] HRESULT CaretWidth
([out, retval] UINT32
*value
);
143 [propget] HRESULT DoubleClickTime
([out, retval] UINT32
*value
);
144 [propget] HRESULT MouseHoverTime
([out, retval] UINT32
*value
);
145 HRESULT UIElementColor
([in] Windows.UI.ViewManagement.UIElementType element
, [out, retval] Windows.UI.Color
*value
);
149 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
150 exclusiveto
(Windows.UI.ViewManagement.UISettings
),
151 uuid(bad82401
-2721-44f9
-bb91
-2bb228be442f
)
153 interface IUISettings2
: IInspectable
155 [propget] HRESULT TextScaleFactor
([out, retval] DOUBLE *value
);
156 [eventadd
] HRESULT TextScaleFactorChanged
([in] Windows.Foundation.TypedEventHandler
<Windows.UI.ViewManagement.UISettings
*, IInspectable
*> *handler
,
157 [out, retval] EventRegistrationToken
*cookie
);
158 [eventremove
] HRESULT TextScaleFactorChanged
([in] EventRegistrationToken cookie
);
162 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
163 exclusiveto
(Windows.UI.ViewManagement.UISettings
),
164 uuid(03021be4
-5254-4781-8194-5168f7d06d7b
)
166 interface IUISettings3
: IInspectable
168 HRESULT GetColorValue
([in] Windows.UI.ViewManagement.UIColorType color
, [out, retval] Windows.UI.Color
*value
);
169 [eventadd
] HRESULT ColorValuesChanged
([in] Windows.Foundation.TypedEventHandler
<Windows.UI.ViewManagement.UISettings
*, IInspectable
*> *handler
,
170 [out, retval] EventRegistrationToken
*cookie
);
171 [eventremove
] HRESULT ColorValuesChanged
([in] EventRegistrationToken cookie
);
175 activatable
(Windows.Foundation.UniversalApiContract
, 1.0),
176 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
177 marshaling_behavior
(agile
)
179 runtimeclass UISettings
181 [default] interface Windows.UI.ViewManagement.IUISettings
;
182 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)] interface Windows.UI.ViewManagement.IUISettings2
;
183 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)] interface Windows.UI.ViewManagement.IUISettings3
;