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 IUISettings3
;
44 runtimeclass UISettings
;
47 interface Windows.Foundation.TypedEventHandler
<Windows.UI.ViewManagement.UISettings
*, IInspectable
*>;
51 contract
(Windows.Foundation.UniversalApiContract
, 1.0)
60 contract
(Windows.Foundation.UniversalApiContract
, 1.0)
77 contract
(Windows.Foundation.UniversalApiContract
, 1.0)
91 InactiveCaptionText
= 10,
94 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
96 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
98 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
100 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
102 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
103 TextContrastWithHigh
= 1004,
104 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
106 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
107 NonTextMediumHigh
= 1006,
108 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
109 NonTextMedium
= 1007,
110 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
111 NonTextMediumLow
= 1008,
112 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
114 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
115 PageBackground
= 1010,
116 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
117 PopupBackground
= 1011,
118 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)]
119 OverlayOutsidePopup
= 1012,
123 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
124 exclusiveto
(Windows.UI.ViewManagement.UISettings
),
125 uuid(85361600-1c63
-4627-bcb1
-3a89e0bc9c55
)
127 interface IUISettings
: IInspectable
129 [propget] HRESULT HandPreference
([out, retval] Windows.UI.ViewManagement.HandPreference
*value
);
130 [propget] HRESULT CursorSize
([out, retval] Windows.Foundation.Size
*value
);
131 [propget] HRESULT ScrollBarSize
([out, retval] Windows.Foundation.Size
*value
);
132 [propget] HRESULT ScrollBarArrowSize
([out, retval] Windows.Foundation.Size
*value
);
133 [propget] HRESULT ScrollBarThumbBoxSize
([out, retval] Windows.Foundation.Size
*value
);
134 [propget] HRESULT MessageDuration
([out, retval] UINT32
*value
);
135 [propget] HRESULT AnimationsEnabled
([out, retval] boolean *value
);
136 [propget] HRESULT CaretBrowsingEnabled
([out, retval] boolean *value
);
137 [propget] HRESULT CaretBlinkRate
([out, retval] UINT32
*value
);
138 [propget] HRESULT CaretWidth
([out, retval] UINT32
*value
);
139 [propget] HRESULT DoubleClickTime
([out, retval] UINT32
*value
);
140 [propget] HRESULT MouseHoverTime
([out, retval] UINT32
*value
);
141 HRESULT UIElementColor
([in] Windows.UI.ViewManagement.UIElementType element
, [out, retval] Windows.UI.Color
*value
);
145 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
146 exclusiveto
(Windows.UI.ViewManagement.UISettings
),
147 uuid(03021be4
-5254-4781-8194-5168f7d06d7b
)
149 interface IUISettings3
: IInspectable
151 HRESULT GetColorValue
([in] Windows.UI.ViewManagement.UIColorType color
, [out, retval] Windows.UI.Color
*value
);
152 [eventadd
] HRESULT ColorValuesChanged
([in] Windows.Foundation.TypedEventHandler
<Windows.UI.ViewManagement.UISettings
*, IInspectable
*> *handler
,
153 [out, retval] EventRegistrationToken
*cookie
);
154 [eventremove
] HRESULT ColorValuesChanged
([in] EventRegistrationToken cookie
);
158 activatable
(Windows.Foundation.UniversalApiContract
, 1.0),
159 contract
(Windows.Foundation.UniversalApiContract
, 1.0),
160 marshaling_behavior
(agile
)
162 runtimeclass UISettings
164 [default] interface Windows.UI.ViewManagement.IUISettings
;
165 [contract
(Windows.Foundation.UniversalApiContract
, 1.0)] interface Windows.UI.ViewManagement.IUISettings3
;