1use crate::automation::peers::*;
7use crate::automation::*;
8use crate::chrome::*;
9use crate::converters::*;
10use crate::platform::*;
11use crate::primitives::popup_positioning::*;
12use crate::primitives::*;
13use crate::*;
14use ferroui_base::data::core::ValueTypes;
15use ferroui_base::ferro_markup_enum;
16use ferroui_base::metadata::{MarkupType, MarkupTyped};
17
18ferro_markup_enum!(AccessibilityView { Default, Raw, Control, Content }, { namespace: "FerroUI.Automation" });
20ferro_markup_enum!(AutomationLiveSetting { Off, Polite, Assertive }, { namespace: "FerroUI.Automation" });
21ferro_markup_enum!(
22 ExpandCollapseState {
23 Collapsed, Expanded, LeafNode, PartiallyExpanded,
24 },
25 { namespace: "FerroUI.Automation" }
26);
27ferro_markup_enum!(
28 IsOffscreenBehavior {
29 Default, Onscreen, Offscreen, FromClip,
30 },
31 { namespace: "FerroUI.Automation" }
32);
33
34ferro_markup_enum!(
36 AutomationControlType {
37 None, Button, Calendar, CheckBox, ComboBox, ComboBoxItem, Edit, Hyperlink, Image, ListItem, List, Menu,
38 MenuBar, MenuItem, ProgressBar, RadioButton, ScrollBar, Slider, Spinner, StatusBar, Tab, TabItem, Text,
39 ToolBar, ToolTip, Tree, TreeItem, Custom, Group, Thumb, DataGrid, DataItem, Document, SplitButton, Window,
40 Pane, Header, HeaderItem, Table, TitleBar, Separator, Expander, ScrollViewer,
41 },
42 { namespace: "FerroUI.Automation.Peers" }
43);
44ferro_markup_enum!(
45 AutomationLandmarkType {
46 Banner, Complementary, ContentInfo, Region, Form, Main, Navigation, Search,
47 },
48 { namespace: "FerroUI.Automation.Peers" }
49);
50
51ferro_markup_enum!(
53 AutoCompleteFilterMode {
54 None, StartsWith, StartsWithCaseSensitive, StartsWithOrdinal, StartsWithOrdinalCaseSensitive, Contains,
55 ContainsCaseSensitive, ContainsOrdinal, ContainsOrdinalCaseSensitive, Equals, EqualsCaseSensitive,
56 EqualsOrdinal, EqualsOrdinalCaseSensitive, Custom,
57 },
58 { namespace: "FerroUI.Controls" }
59);
60ferro_markup_enum!(BarLayoutBehavior { Inset, Overlay }, { namespace: "FerroUI.Controls" });
61ferro_markup_enum!(CalendarDatePickerFormat { Long, Short, Custom }, { namespace: "FerroUI.Controls" });
62ferro_markup_enum!(CalendarMode { Month, Year, Decade }, { namespace: "FerroUI.Controls" });
63ferro_markup_enum!(
64 CalendarSelectionMode {
65 SingleDate, SingleRange, MultipleRange, None,
66 },
67 { namespace: "FerroUI.Controls" }
68);
69ferro_markup_enum!(ClickMode { Release, Press }, { namespace: "FerroUI.Controls" });
70ferro_markup_enum!(CommandBarDefaultLabelPosition { Bottom, Right, Collapsed }, { namespace: "FerroUI.Controls" });
71ferro_markup_enum!(
72 CommandBarOverflowButtonVisibility {
73 Auto, Visible, Collapsed,
74 },
75 { namespace: "FerroUI.Controls" }
76);
77ferro_markup_enum!(Dock { Left, Bottom, Right, Top }, { namespace: "FerroUI.Controls" });
78ferro_markup_enum!(DrawerBehavior { Auto, Flyout, Locked, Disabled }, { namespace: "FerroUI.Controls" });
79ferro_markup_enum!(
80 DrawerLayoutBehavior {
81 Overlay, Split, CompactOverlay, CompactInline,
82 },
83 { namespace: "FerroUI.Controls" }
84);
85ferro_markup_enum!(DrawerPlacement { Left, Right, Top, Bottom }, { namespace: "FerroUI.Controls" });
86ferro_markup_enum!(ExpandDirection { Down, Up, Left, Right }, { namespace: "FerroUI.Controls" });
87ferro_markup_enum!(FeedbackType { None, Auto, Sound, Haptic }, { namespace: "FerroUI.Controls" });
88ferro_markup_enum!(
89 FlexAlignContent {
90 FlexStart, FlexEnd, Center, Stretch, SpaceBetween, SpaceAround, SpaceEvenly,
91 },
92 { namespace: "FerroUI.Controls" }
93);
94ferro_markup_enum!(FlexAlignItems { FlexStart, FlexEnd, Center, Stretch }, { namespace: "FerroUI.Controls" });
95ferro_markup_enum!(FlexBasisKind { Auto, Absolute, Relative }, { namespace: "FerroUI.Controls" });
96ferro_markup_enum!(FlexDirection { Row, RowReverse, Column, ColumnReverse }, { namespace: "FerroUI.Controls" });
97ferro_markup_enum!(
98 FlexJustifyContent {
99 FlexStart, FlexEnd, Center, SpaceBetween, SpaceAround, SpaceEvenly,
100 },
101 { namespace: "FerroUI.Controls" }
102);
103ferro_markup_enum!(FlexWrap { NoWrap, Wrap, WrapReverse }, { namespace: "FerroUI.Controls" });
104ferro_markup_enum!(
105 FlyoutShowMode {
106 Standard, Transient, TransientWithDismissOnPointerMoveAway,
107 },
108 { namespace: "FerroUI.Controls" }
109);
110ferro_markup_enum!(
111 GridResizeBehavior {
112 BasedOnAlignment, CurrentAndNext, PreviousAndCurrent, PreviousAndNext,
113 },
114 { namespace: "FerroUI.Controls" }
115);
116ferro_markup_enum!(GridResizeDirection { Auto, Columns, Rows }, { namespace: "FerroUI.Controls" });
117ferro_markup_enum!(GridUnitType { Auto, Pixel, Star }, { namespace: "FerroUI.Controls" });
118ferro_markup_enum!(InputPaneAwareBehavior { None, Pan, Resize }, { namespace: "FerroUI.Controls" });
119ferro_markup_enum!(Location { Left, Right }, { namespace: "FerroUI.Controls" });
120ferro_markup_enum!(MenuItemToggleType { None, CheckBox, Radio }, { namespace: "FerroUI.Controls" });
121ferro_markup_enum!(
122 NavigationType {
123 Push, Pop, PopToRoot, Insert, Remove, Replace, PushModal, PopModal,
124 },
125 { namespace: "FerroUI.Controls" }
126);
127ferro_markup_enum!(
128 PlacementMode {
129 Pointer, Bottom, Right, Left, Top, Center, AnchorAndGravity, TopEdgeAlignedLeft, TopEdgeAlignedRight,
130 BottomEdgeAlignedLeft, BottomEdgeAlignedRight, LeftEdgeAlignedTop, LeftEdgeAlignedBottom,
131 RightEdgeAlignedTop, RightEdgeAlignedBottom, Custom,
132 },
133 { namespace: "FerroUI.Controls" }
134);
135ferro_markup_enum!(PlatformInhibitionType { AppSleep }, { namespace: "FerroUI.Controls" });
136ferro_markup_enum!(
137 RefreshVisualizerOrientation {
138 Auto, Normal, Rotate90DegreesCounterclockwise, Rotate270DegreesCounterclockwise,
139 },
140 { namespace: "FerroUI.Controls" }
141);
142ferro_markup_enum!(
143 RefreshVisualizerState {
144 Idle, Peeking, Interacting, Pending, Refreshing,
145 },
146 { namespace: "FerroUI.Controls" }
147);
148ferro_markup_enum!(flags SelectionMode {
149 Single = SelectionMode::SINGLE,
150 Multiple = SelectionMode::MULTIPLE,
151 Toggle = SelectionMode::TOGGLE,
152 AlwaysSelected = SelectionMode::ALWAYS_SELECTED,
153}, { namespace: "FerroUI.Controls" });
154ferro_markup_enum!(
155 ShutdownMode {
156 OnLastWindowClose, OnMainWindowClose, OnExplicitShutdown,
157 },
158 { namespace: "FerroUI.Controls" }
159);
160ferro_markup_enum!(flags SizeToContent {
161 Manual = SizeToContent::MANUAL,
162 Width = SizeToContent::WIDTH,
163 Height = SizeToContent::HEIGHT,
164 WidthAndHeight = SizeToContent::WIDTH_AND_HEIGHT,
165}, { namespace: "FerroUI.Controls" });
166ferro_markup_enum!(SpinDirection { Increase, Decrease }, { namespace: "FerroUI.Controls" });
167ferro_markup_enum!(
168 SplitViewDisplayMode {
169 Inline, CompactInline, Overlay, CompactOverlay,
170 },
171 { namespace: "FerroUI.Controls" }
172);
173ferro_markup_enum!(SplitViewPanePlacement { Left, Right, Top, Bottom }, { namespace: "FerroUI.Controls" });
174ferro_markup_enum!(TabPlacement { Auto, Top, Bottom, Left, Right }, { namespace: "FerroUI.Controls" });
175ferro_markup_enum!(TickBarPlacement { Left, Top, Right, Bottom }, { namespace: "FerroUI.Controls" });
176ferro_markup_enum!(TickPlacement { None, TopLeft, BottomRight, Outside }, { namespace: "FerroUI.Controls" });
177ferro_markup_enum!(flags ValidSpinDirections {
178 None = ValidSpinDirections::NONE,
179 Increase = ValidSpinDirections::INCREASE,
180 Decrease = ValidSpinDirections::DECREASE,
181}, { namespace: "FerroUI.Controls" });
182ferro_markup_enum!(
183 Win32HitTestValue {
184 Nowhere, Client, Caption, MinButton, MaxButton, Left, Right, Top, TopLeft, TopRight, Bottom, BottomLeft,
185 BottomRight, Close,
186 },
187 { namespace: "FerroUI.Controls" }
188);
189ferro_markup_enum!(
190 WindowCloseReason {
191 Undefined, WindowClosing, OwnerWindowClosing, ApplicationShutdown, OSShutdown,
192 },
193 { namespace: "FerroUI.Controls" }
194);
195ferro_markup_enum!(
196 WindowClosingBehavior {
197 OwnerAndChildWindows, OwnerWindowOnly,
198 },
199 { namespace: "FerroUI.Controls" }
200);
201ferro_markup_enum!(
202 WindowCornerPreference {
203 Default, DoNotRound, Round, RoundSmall,
204 },
205 { namespace: "FerroUI.Controls" }
206);
207ferro_markup_enum!(WindowDecorations { None, BorderOnly, Full }, { namespace: "FerroUI.Controls" });
208ferro_markup_enum!(
209 WindowEdge {
210 NorthWest, North, NorthEast, West, East, SouthWest, South, SouthEast,
211 },
212 { namespace: "FerroUI.Controls" }
213);
214ferro_markup_enum!(
215 WindowResizeReason {
216 Unspecified, User, Application, Layout, DpiChange,
217 },
218 { namespace: "FerroUI.Controls" }
219);
220ferro_markup_enum!(WindowStartupLocation { Manual, CenterScreen, CenterOwner }, { namespace: "FerroUI.Controls" });
221ferro_markup_enum!(WindowState { Normal, Minimized, Maximized, FullScreen }, { namespace: "FerroUI.Controls" });
222ferro_markup_enum!(
223 WrapPanelItemsAlignment {
224 Start, Center, End, Justify, Stretch, StretchAll,
225 },
226 { namespace: "FerroUI.Controls" }
227);
228
229ferro_markup_enum!(flags TitleBarDecorations {
231 None = TitleBarDecorations::NONE,
232 Title = TitleBarDecorations::TITLE,
233 MinimizeButton = TitleBarDecorations::MINIMIZE_BUTTON,
234 MaximizeButton = TitleBarDecorations::MAXIMIZE_BUTTON,
235 CloseButton = TitleBarDecorations::CLOSE_BUTTON,
236 FullScreenButton = TitleBarDecorations::FULL_SCREEN_BUTTON,
237 All = TitleBarDecorations::ALL,
238}, { namespace: "FerroUI.Controls.Chrome" });
239
240ferro_markup_enum!(flags Corners {
242 None = Corners::NONE,
243 TopLeft = Corners::TOP_LEFT,
244 TopRight = Corners::TOP_RIGHT,
245 BottomLeft = Corners::BOTTOM_LEFT,
246 BottomRight = Corners::BOTTOM_RIGHT,
247}, { namespace: "FerroUI.Controls.Converters" });
248
249ferro_markup_enum!(
251 NotificationPosition {
252 TopLeft, TopRight, BottomLeft, BottomRight, TopCenter, BottomCenter,
253 },
254 { namespace: "FerroUI.Controls.Notifications" }
255);
256ferro_markup_enum!(
257 NotificationType {
258 Information, Success, Warning, Error,
259 },
260 { namespace: "FerroUI.Controls.Notifications" }
261);
262
263ferro_markup_enum!(
265 X11NetWmWindowType {
266 Normal, Dialog, Utility, Menu, Toolbar, Splash, Dock, Desktop,
267 },
268 { namespace: "FerroUI.Controls.Platform" }
269);
270
271ferro_markup_enum!(
273 DateTimePickerPanelType {
274 Year, Month, Day, Hour, Minute, TimePeriod, Second,
275 },
276 { namespace: "FerroUI.Controls.Primitives" }
277);
278ferro_markup_enum!(
279 ScrollBarVisibility {
280 Disabled, Auto, Hidden, Visible,
281 },
282 { namespace: "FerroUI.Controls.Primitives" }
283);
284ferro_markup_enum!(
285 ScrollEventType {
286 SmallDecrement, SmallIncrement, LargeDecrement, LargeIncrement, ThumbTrack, EndScroll,
287 },
288 { namespace: "FerroUI.Controls.Primitives" }
289);
290ferro_markup_enum!(SnapPointsAlignment { Near, Center, Far }, { namespace: "FerroUI.Controls.Primitives" });
291ferro_markup_enum!(SnapPointsType { None, Mandatory, MandatorySingle }, { namespace: "FerroUI.Controls.Primitives" });
292
293ferro_markup_enum!(flags PopupAnchor {
295 None = PopupAnchor::NONE,
296 Top = PopupAnchor::TOP,
297 Bottom = PopupAnchor::BOTTOM,
298 Left = PopupAnchor::LEFT,
299 Right = PopupAnchor::RIGHT,
300 TopLeft = PopupAnchor::TOP_LEFT,
301 TopRight = PopupAnchor::TOP_RIGHT,
302 BottomLeft = PopupAnchor::BOTTOM_LEFT,
303 BottomRight = PopupAnchor::BOTTOM_RIGHT,
304 VerticalMask = PopupAnchor::VERTICAL_MASK,
305 HorizontalMask = PopupAnchor::HORIZONTAL_MASK,
306 AllMask = PopupAnchor::ALL_MASK,
307}, { namespace: "FerroUI.Controls.Primitives.PopupPositioning" });
308ferro_markup_enum!(flags PopupGravity {
309 None = PopupGravity::NONE,
310 Top = PopupGravity::TOP,
311 Bottom = PopupGravity::BOTTOM,
312 Left = PopupGravity::LEFT,
313 Right = PopupGravity::RIGHT,
314 TopLeft = PopupGravity::TOP_LEFT,
315 TopRight = PopupGravity::TOP_RIGHT,
316 BottomLeft = PopupGravity::BOTTOM_LEFT,
317 BottomRight = PopupGravity::BOTTOM_RIGHT,
318}, { namespace: "FerroUI.Controls.Primitives.PopupPositioning" });
319ferro_markup_enum!(flags PopupPositionerConstraintAdjustment {
320 None = PopupPositionerConstraintAdjustment::NONE,
321 SlideX = PopupPositionerConstraintAdjustment::SLIDE_X,
322 SlideY = PopupPositionerConstraintAdjustment::SLIDE_Y,
323 FlipX = PopupPositionerConstraintAdjustment::FLIP_X,
324 FlipY = PopupPositionerConstraintAdjustment::FLIP_Y,
325 ResizeX = PopupPositionerConstraintAdjustment::RESIZE_X,
326 ResizeY = PopupPositionerConstraintAdjustment::RESIZE_Y,
327 All = PopupPositionerConstraintAdjustment::ALL,
328}, { namespace: "FerroUI.Controls.Primitives.PopupPositioning" });
329
330pub(super) const TYPES: &[&MarkupType] = &[
332 <AccessibilityView as MarkupTyped>::MARKUP,
333 <AutomationLiveSetting as MarkupTyped>::MARKUP,
334 <ExpandCollapseState as MarkupTyped>::MARKUP,
335 <IsOffscreenBehavior as MarkupTyped>::MARKUP,
336 <AutomationControlType as MarkupTyped>::MARKUP,
337 <AutomationLandmarkType as MarkupTyped>::MARKUP,
338 <AutoCompleteFilterMode as MarkupTyped>::MARKUP,
339 <BarLayoutBehavior as MarkupTyped>::MARKUP,
340 <CalendarDatePickerFormat as MarkupTyped>::MARKUP,
341 <CalendarMode as MarkupTyped>::MARKUP,
342 <CalendarSelectionMode as MarkupTyped>::MARKUP,
343 <ClickMode as MarkupTyped>::MARKUP,
344 <CommandBarDefaultLabelPosition as MarkupTyped>::MARKUP,
345 <CommandBarOverflowButtonVisibility as MarkupTyped>::MARKUP,
346 <Dock as MarkupTyped>::MARKUP,
347 <DrawerBehavior as MarkupTyped>::MARKUP,
348 <DrawerLayoutBehavior as MarkupTyped>::MARKUP,
349 <DrawerPlacement as MarkupTyped>::MARKUP,
350 <ExpandDirection as MarkupTyped>::MARKUP,
351 <FeedbackType as MarkupTyped>::MARKUP,
352 <FlexAlignContent as MarkupTyped>::MARKUP,
353 <FlexAlignItems as MarkupTyped>::MARKUP,
354 <FlexBasisKind as MarkupTyped>::MARKUP,
355 <FlexDirection as MarkupTyped>::MARKUP,
356 <FlexJustifyContent as MarkupTyped>::MARKUP,
357 <FlexWrap as MarkupTyped>::MARKUP,
358 <FlyoutShowMode as MarkupTyped>::MARKUP,
359 <GridResizeBehavior as MarkupTyped>::MARKUP,
360 <GridResizeDirection as MarkupTyped>::MARKUP,
361 <GridUnitType as MarkupTyped>::MARKUP,
362 <InputPaneAwareBehavior as MarkupTyped>::MARKUP,
363 <Location as MarkupTyped>::MARKUP,
364 <MenuItemToggleType as MarkupTyped>::MARKUP,
365 <NavigationType as MarkupTyped>::MARKUP,
366 <PlacementMode as MarkupTyped>::MARKUP,
367 <PlatformInhibitionType as MarkupTyped>::MARKUP,
368 <RefreshVisualizerOrientation as MarkupTyped>::MARKUP,
369 <RefreshVisualizerState as MarkupTyped>::MARKUP,
370 <SelectionMode as MarkupTyped>::MARKUP,
371 <ShutdownMode as MarkupTyped>::MARKUP,
372 <SizeToContent as MarkupTyped>::MARKUP,
373 <SpinDirection as MarkupTyped>::MARKUP,
374 <SplitViewDisplayMode as MarkupTyped>::MARKUP,
375 <SplitViewPanePlacement as MarkupTyped>::MARKUP,
376 <TabPlacement as MarkupTyped>::MARKUP,
377 <TickBarPlacement as MarkupTyped>::MARKUP,
378 <TickPlacement as MarkupTyped>::MARKUP,
379 <ValidSpinDirections as MarkupTyped>::MARKUP,
380 <Win32HitTestValue as MarkupTyped>::MARKUP,
381 <WindowCloseReason as MarkupTyped>::MARKUP,
382 <WindowClosingBehavior as MarkupTyped>::MARKUP,
383 <WindowCornerPreference as MarkupTyped>::MARKUP,
384 <WindowDecorations as MarkupTyped>::MARKUP,
385 <WindowEdge as MarkupTyped>::MARKUP,
386 <WindowResizeReason as MarkupTyped>::MARKUP,
387 <WindowStartupLocation as MarkupTyped>::MARKUP,
388 <WindowState as MarkupTyped>::MARKUP,
389 <WrapPanelItemsAlignment as MarkupTyped>::MARKUP,
390 <TitleBarDecorations as MarkupTyped>::MARKUP,
391 <Corners as MarkupTyped>::MARKUP,
392 <NotificationPosition as MarkupTyped>::MARKUP,
393 <NotificationType as MarkupTyped>::MARKUP,
394 <X11NetWmWindowType as MarkupTyped>::MARKUP,
395 <DateTimePickerPanelType as MarkupTyped>::MARKUP,
396 <ScrollBarVisibility as MarkupTyped>::MARKUP,
397 <ScrollEventType as MarkupTyped>::MARKUP,
398 <SnapPointsAlignment as MarkupTyped>::MARKUP,
399 <SnapPointsType as MarkupTyped>::MARKUP,
400 <PopupAnchor as MarkupTyped>::MARKUP,
401 <PopupGravity as MarkupTyped>::MARKUP,
402 <PopupPositionerConstraintAdjustment as MarkupTyped>::MARKUP,
403];
404
405pub(super) fn register_value_types() {
408 ValueTypes::register_nullable::<AccessibilityView>();
409 ValueTypes::register_nullable::<AutomationLiveSetting>();
410 ValueTypes::register_nullable::<ExpandCollapseState>();
411 ValueTypes::register_nullable::<IsOffscreenBehavior>();
412 ValueTypes::register_nullable::<AutomationControlType>();
413 ValueTypes::register_nullable::<AutomationLandmarkType>();
414 ValueTypes::register_nullable::<AutoCompleteFilterMode>();
415 ValueTypes::register_nullable::<BarLayoutBehavior>();
416 ValueTypes::register_nullable::<CalendarDatePickerFormat>();
417 ValueTypes::register_nullable::<CalendarMode>();
418 ValueTypes::register_nullable::<CalendarSelectionMode>();
419 ValueTypes::register_nullable::<ClickMode>();
420 ValueTypes::register_nullable::<CommandBarDefaultLabelPosition>();
421 ValueTypes::register_nullable::<CommandBarOverflowButtonVisibility>();
422 ValueTypes::register_nullable::<Dock>();
423 ValueTypes::register_nullable::<DrawerBehavior>();
424 ValueTypes::register_nullable::<DrawerLayoutBehavior>();
425 ValueTypes::register_nullable::<DrawerPlacement>();
426 ValueTypes::register_nullable::<ExpandDirection>();
427 ValueTypes::register_nullable::<FeedbackType>();
428 ValueTypes::register_nullable::<FlexAlignContent>();
429 ValueTypes::register_nullable::<FlexAlignItems>();
430 ValueTypes::register_nullable::<FlexBasisKind>();
431 ValueTypes::register_nullable::<FlexDirection>();
432 ValueTypes::register_nullable::<FlexJustifyContent>();
433 ValueTypes::register_nullable::<FlexWrap>();
434 ValueTypes::register_nullable::<FlyoutShowMode>();
435 ValueTypes::register_nullable::<GridResizeBehavior>();
436 ValueTypes::register_nullable::<GridResizeDirection>();
437 ValueTypes::register_nullable::<GridUnitType>();
438 ValueTypes::register_nullable::<InputPaneAwareBehavior>();
439 ValueTypes::register_nullable::<Location>();
440 ValueTypes::register_nullable::<MenuItemToggleType>();
441 ValueTypes::register_nullable::<NavigationType>();
442 ValueTypes::register_nullable::<PlacementMode>();
443 ValueTypes::register_nullable::<PlatformInhibitionType>();
444 ValueTypes::register_nullable::<RefreshVisualizerOrientation>();
445 ValueTypes::register_nullable::<RefreshVisualizerState>();
446 ValueTypes::register_nullable::<SelectionMode>();
447 ValueTypes::register_nullable::<ShutdownMode>();
448 ValueTypes::register_nullable::<SizeToContent>();
449 ValueTypes::register_nullable::<SpinDirection>();
450 ValueTypes::register_nullable::<SplitViewDisplayMode>();
451 ValueTypes::register_nullable::<SplitViewPanePlacement>();
452 ValueTypes::register_nullable::<TabPlacement>();
453 ValueTypes::register_nullable::<TickBarPlacement>();
454 ValueTypes::register_nullable::<TickPlacement>();
455 ValueTypes::register_nullable::<ValidSpinDirections>();
456 ValueTypes::register_nullable::<Win32HitTestValue>();
457 ValueTypes::register_nullable::<WindowCloseReason>();
458 ValueTypes::register_nullable::<WindowClosingBehavior>();
459 ValueTypes::register_nullable::<WindowCornerPreference>();
460 ValueTypes::register_nullable::<WindowDecorations>();
461 ValueTypes::register_nullable::<WindowEdge>();
462 ValueTypes::register_nullable::<WindowResizeReason>();
463 ValueTypes::register_nullable::<WindowStartupLocation>();
464 ValueTypes::register_nullable::<WindowState>();
465 ValueTypes::register_nullable::<WrapPanelItemsAlignment>();
466 ValueTypes::register_nullable::<TitleBarDecorations>();
467 ValueTypes::register_nullable::<Corners>();
468 ValueTypes::register_nullable::<NotificationPosition>();
469 ValueTypes::register_nullable::<NotificationType>();
470 ValueTypes::register_nullable::<X11NetWmWindowType>();
471 ValueTypes::register_nullable::<DateTimePickerPanelType>();
472 ValueTypes::register_nullable::<ScrollBarVisibility>();
473 ValueTypes::register_nullable::<ScrollEventType>();
474 ValueTypes::register_nullable::<SnapPointsAlignment>();
475 ValueTypes::register_nullable::<SnapPointsType>();
476 ValueTypes::register_nullable::<PopupAnchor>();
477 ValueTypes::register_nullable::<PopupGravity>();
478 ValueTypes::register_nullable::<PopupPositionerConstraintAdjustment>();
479}