1use crate::animation::*;
7use crate::collections::ResetBehavior;
8use crate::data::core::ValueTypes;
9use crate::data::*;
10use crate::ferro_markup_enum;
11use crate::input::navigation::*;
12use crate::input::text_input::*;
13use crate::input::*;
14use crate::interactivity::RoutingStrategies;
15use crate::layout::*;
16use crate::logical_tree::*;
17use crate::media::imaging::*;
18use crate::media::transformation::*;
19use crate::media::*;
20use crate::metadata::{MarkupType, MarkupTyped};
21use crate::platform::storage::WellKnownFolder;
22use crate::platform::{FormFactorType, PlatformThemeVariant};
23use crate::rendering::*;
24use crate::styling::*;
25use crate::utilities::{CalendarWeekRule, DateTimeKind, DayOfWeek, UriKind};
26use crate::RelativeUnit;
27
28ferro_markup_enum!(RelativeUnit { Relative, Absolute }, { namespace: "FerroUI" });
30
31ferro_markup_enum!(FillMode { None, Forward, Backward, Both }, { namespace: "FerroUI.Animation" });
33ferro_markup_enum!(IterationType { Many, Infinite }, { namespace: "FerroUI.Animation" });
34ferro_markup_enum!(PlayState { Run, Pause, Stop }, { namespace: "FerroUI.Animation" });
35ferro_markup_enum!(PlaybackBehavior { Auto, Always, OnlyIfVisible }, { namespace: "FerroUI.Animation" });
36ferro_markup_enum!(
37 PlaybackDirection {
38 Normal, Reverse, Alternate, AlternateReverse,
39 },
40 { namespace: "FerroUI.Animation" }
41);
42ferro_markup_enum!(SlideAxis { Horizontal, Vertical }, { namespace: "FerroUI.Animation" });
43
44ferro_markup_enum!(ResetBehavior { Reset, Remove }, { namespace: "FerroUI.Collections" });
46
47ferro_markup_enum!(BindingErrorType { None, Error, DataValidationError }, { namespace: "FerroUI.Data" });
49ferro_markup_enum!(BindingMode { Default, OneWay, TwoWay, OneTime, OneWayToSource }, { namespace: "FerroUI.Data" });
50ferro_markup_enum!(
51 BindingPriority {
52 Animation, LocalValue, StyleTrigger, Template, Style, Inherited, Unset,
53 },
54 { namespace: "FerroUI.Data" }
55);
56ferro_markup_enum!(flags BindingValueType {
57 UnsetValue = BindingValueType::UNSET_VALUE,
58 DoNothing = BindingValueType::DO_NOTHING,
59 Value = BindingValueType::VALUE,
60 BindingError = BindingValueType::BINDING_ERROR,
61 DataValidationError = BindingValueType::DATA_VALIDATION_ERROR,
62 BindingErrorWithFallback = BindingValueType::BINDING_ERROR_WITH_FALLBACK,
63 DataValidationErrorWithFallback = BindingValueType::DATA_VALIDATION_ERROR_WITH_FALLBACK,
64 TypeMask = BindingValueType::TYPE_MASK,
65 HasValue = BindingValueType::HAS_VALUE,
66 HasError = BindingValueType::HAS_ERROR,
67}, { namespace: "FerroUI.Data" });
68ferro_markup_enum!(
69 RelativeSourceMode {
70 DataContext, TemplatedParent, Self = SelfMode, FindAncestor,
71 },
72 { namespace: "FerroUI.Data" }
73);
74ferro_markup_enum!(TreeType { Visual, Logical }, { namespace: "FerroUI.Data" });
75ferro_markup_enum!(
76 UpdateSourceTrigger {
77 Default, PropertyChanged, LostFocus, Explicit,
78 },
79 { namespace: "FerroUI.Data" }
80);
81
82ferro_markup_enum!(DataFormatKind { Application, Platform, Universal, InProcess }, { namespace: "FerroUI.Input" });
84ferro_markup_enum!(flags DragDropEffects {
85 None = DragDropEffects::NONE,
86 Copy = DragDropEffects::COPY,
87 Move = DragDropEffects::MOVE,
88 Link = DragDropEffects::LINK,
89}, { namespace: "FerroUI.Input" });
90ferro_markup_enum!(HoldingState { Started, Completed, Canceled }, { namespace: "FerroUI.Input" });
91ferro_markup_enum!(
92 Key {
93 None, Cancel, Back, Tab, LineFeed, Clear, Return, Enter, Pause, CapsLock, Capital, HangulMode, KanaMode,
94 JunjaMode, FinalMode, KanjiMode, HanjaMode, Escape, ImeConvert, ImeNonConvert, ImeAccept, ImeModeChange,
95 Space, PageUp, Prior, PageDown, Next, End, Home, Left, Up, Right, Down, Select, Print, Execute, Snapshot,
96 PrintScreen, Insert, Delete, Help, D0, D1, D2, D3, D4, D5, D6, D7, D8, D9, A, B, C, D, E, F, G, H, I, J, K,
97 L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, LWin, RWin, Apps, Sleep, NumPad0, NumPad1, NumPad2, NumPad3,
98 NumPad4, NumPad5, NumPad6, NumPad7, NumPad8, NumPad9, Multiply, Add, Separator, Subtract, Decimal, Divide,
99 F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, F21, F22, F23,
100 F24, NumLock, Scroll, LeftShift, RightShift, LeftCtrl, RightCtrl, LeftAlt, RightAlt, BrowserBack,
101 BrowserForward, BrowserRefresh, BrowserStop, BrowserSearch, BrowserFavorites, BrowserHome, VolumeMute,
102 VolumeDown, VolumeUp, MediaNextTrack, MediaPreviousTrack, MediaStop, MediaPlayPause, LaunchMail,
103 SelectMedia, LaunchApplication1, LaunchApplication2, OemSemicolon, Oem1, OemPlus, OemComma, OemMinus,
104 OemPeriod, OemQuestion, Oem2, OemTilde, Oem3, AbntC1, AbntC2, OemOpenBrackets, Oem4, OemPipe, Oem5,
105 OemCloseBrackets, Oem6, OemQuotes, Oem7, Oem8, OemBackslash, Oem102, ImeProcessed, System, OemAttn,
106 DbeAlphanumeric, OemFinish, DbeKatakana, DbeHiragana, OemCopy, DbeSbcsChar, OemAuto, DbeDbcsChar, OemEnlw,
107 OemBackTab, DbeRoman, DbeNoRoman, Attn, CrSel, DbeEnterWordRegisterMode, ExSel, DbeEnterImeConfigureMode,
108 EraseEof, DbeFlushString, Play, DbeCodeInput, DbeNoCodeInput, Zoom, NoName, DbeDetermineString,
109 DbeEnterDialogConversionMode, Pa1, OemClear, DeadCharProcessed, FnLeftArrow, FnRightArrow, FnUpArrow,
110 FnDownArrow, MediaHome, MediaChannelList, MediaChannelRaise, MediaChannelLower, MediaRecord, MediaRed,
111 MediaGreen, MediaYellow, MediaBlue, MediaMenu, MediaMore, MediaOption, MediaInfo, MediaSearch,
112 MediaSubtitle, MediaTvGuide, MediaPreviousChannel,
113 },
114 { namespace: "FerroUI.Input" }
115);
116ferro_markup_enum!(KeyDeviceType { Keyboard, Gamepad, Remote }, { namespace: "FerroUI.Input" });
117ferro_markup_enum!(flags KeyModifiers {
118 None = KeyModifiers::NONE,
119 Alt = KeyModifiers::ALT,
120 Control = KeyModifiers::CONTROL,
121 Shift = KeyModifiers::SHIFT,
122 Meta = KeyModifiers::META,
123}, { namespace: "FerroUI.Input" });
124ferro_markup_enum!(flags KeyStates {
125 None = KeyStates::NONE,
126 Down = KeyStates::DOWN,
127 Toggled = KeyStates::TOGGLED,
128}, { namespace: "FerroUI.Input" });
129ferro_markup_enum!(
130 KeyboardNavigationMode {
131 Continue, Cycle, Contained, Once, None, Local,
132 },
133 { namespace: "FerroUI.Input" }
134);
135ferro_markup_enum!(MouseButton { None, Left, Right, Middle, XButton1, XButton2 }, { namespace: "FerroUI.Input" });
136ferro_markup_enum!(
137 NavigationDirection {
138 Next, Previous, First, Last, Left, Right, Up, Down, PageUp, PageDown,
139 },
140 { namespace: "FerroUI.Input" }
141);
142ferro_markup_enum!(NavigationMethod { Unspecified, Tab, Directional, Pointer }, { namespace: "FerroUI.Input" });
143ferro_markup_enum!(
144 PhysicalKey {
145 None, Backquote, Backslash, BracketLeft, BracketRight, Comma, Digit0, Digit1, Digit2, Digit3, Digit4,
146 Digit5, Digit6, Digit7, Digit8, Digit9, Equal, IntlBackslash, IntlRo, IntlYen, A, B, C, D, E, F, G, H, I, J,
147 K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, Minus, Period, Quote, Semicolon, Slash, AltLeft, AltRight,
148 Backspace, CapsLock, ContextMenu, ControlLeft, ControlRight, Enter, MetaLeft, MetaRight, ShiftLeft,
149 ShiftRight, Space, Tab, Convert, KanaMode, Lang1, Lang2, Lang3, Lang4, Lang5, NonConvert, Delete, End, Help,
150 Home, Insert, PageDown, PageUp, ArrowDown, ArrowLeft, ArrowRight, ArrowUp, NumLock, NumPad0, NumPad1,
151 NumPad2, NumPad3, NumPad4, NumPad5, NumPad6, NumPad7, NumPad8, NumPad9, NumPadAdd, NumPadClear, NumPadComma,
152 NumPadDecimal, NumPadDivide, NumPadEnter, NumPadEqual, NumPadMultiply, NumPadParenLeft, NumPadParenRight,
153 NumPadSubtract, Escape, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, F16, F17, F18,
154 F19, F20, F21, F22, F23, F24, PrintScreen, ScrollLock, Pause, BrowserBack, BrowserFavorites, BrowserForward,
155 BrowserHome, BrowserRefresh, BrowserSearch, BrowserStop, Eject, LaunchApp1, LaunchApp2, LaunchMail,
156 MediaPlayPause, MediaSelect, MediaStop, MediaTrackNext, MediaTrackPrevious, Power, Sleep, AudioVolumeDown,
157 AudioVolumeMute, AudioVolumeUp, WakeUp, Again, Copy, Cut, Find, Open, Paste, Props, Select, Undo,
158 },
159 { namespace: "FerroUI.Input" }
160);
161ferro_markup_enum!(PointerType { Mouse, Touch, Pen }, { namespace: "FerroUI.Input" });
162ferro_markup_enum!(
163 PointerUpdateKind {
164 LeftButtonPressed, MiddleButtonPressed, RightButtonPressed, XButton1Pressed, XButton2Pressed,
165 LeftButtonReleased, MiddleButtonReleased, RightButtonReleased, XButton1Released, XButton2Released, Other,
166 },
167 { namespace: "FerroUI.Input" }
168);
169ferro_markup_enum!(
170 PullDirection {
171 TopToBottom, BottomToTop, LeftToRight, RightToLeft,
172 },
173 { namespace: "FerroUI.Input" }
174);
175ferro_markup_enum!(flags RawInputModifiers {
176 None = RawInputModifiers::NONE,
177 Alt = RawInputModifiers::ALT,
178 Control = RawInputModifiers::CONTROL,
179 Shift = RawInputModifiers::SHIFT,
180 Meta = RawInputModifiers::META,
181 LeftMouseButton = RawInputModifiers::LEFT_MOUSE_BUTTON,
182 RightMouseButton = RawInputModifiers::RIGHT_MOUSE_BUTTON,
183 MiddleMouseButton = RawInputModifiers::MIDDLE_MOUSE_BUTTON,
184 XButton1MouseButton = RawInputModifiers::X_BUTTON_1_MOUSE_BUTTON,
185 XButton2MouseButton = RawInputModifiers::X_BUTTON_2_MOUSE_BUTTON,
186 KeyboardMask = RawInputModifiers::KEYBOARD_MASK,
187 PenInverted = RawInputModifiers::PEN_INVERTED,
188 PenEraser = RawInputModifiers::PEN_ERASER,
189 PenBarrelButton = RawInputModifiers::PEN_BARREL_BUTTON,
190}, { namespace: "FerroUI.Input" });
191ferro_markup_enum!(
192 StandardCursorType {
193 Arrow, Ibeam, Wait, Cross, UpArrow, SizeWestEast, SizeNorthSouth, SizeAll, No, Hand, AppStarting, Help,
194 TopSide, BottomSide, LeftSide, RightSide, TopLeftCorner, TopRightCorner, BottomLeftCorner,
195 BottomRightCorner, DragMove, DragCopy, DragLink, None,
196 },
197 { namespace: "FerroUI.Input" }
198);
199ferro_markup_enum!(SwipeDirection { Left, Right, Up, Down }, { namespace: "FerroUI.Input" });
200ferro_markup_enum!(
201 WindowDecorationsElementRole {
202 None, DecorationsElement, User, TitleBar, ResizeN, ResizeS, ResizeE, ResizeW, ResizeNE, ResizeNW, ResizeSE,
203 ResizeSW, CloseButton, MinimizeButton, MaximizeButton, FullScreenButton,
204 },
205 { namespace: "FerroUI.Input" }
206);
207ferro_markup_enum!(flags XYFocusNavigationModes {
208 Disabled = XYFocusNavigationModes::DISABLED,
209 Keyboard = XYFocusNavigationModes::KEYBOARD,
210 Gamepad = XYFocusNavigationModes::GAMEPAD,
211 Remote = XYFocusNavigationModes::REMOTE,
212 Enabled = XYFocusNavigationModes::ENABLED,
213}, { namespace: "FerroUI.Input" });
214ferro_markup_enum!(
215 XYFocusNavigationStrategy {
216 Auto, Projection, NavigationDirectionDistance, RectilinearDistance,
217 },
218 { namespace: "FerroUI.Input" }
219);
220
221ferro_markup_enum!(ContextMenuAction { Copy, Cut, Paste, SelectAll }, { namespace: "FerroUI.Input.TextInput" });
223ferro_markup_enum!(
224 TextInputContentType {
225 Normal, Alpha, Digits, Pin, Number, Email, Url, Name, Password, Social, Search,
226 },
227 { namespace: "FerroUI.Input.TextInput" }
228);
229ferro_markup_enum!(
230 TextInputReturnKeyType {
231 Default, Return, Done, Go, Send, Search, Next, Previous,
232 },
233 { namespace: "FerroUI.Input.TextInput" }
234);
235
236ferro_markup_enum!(flags RoutingStrategies {
238 Direct = RoutingStrategies::DIRECT,
239 Tunnel = RoutingStrategies::TUNNEL,
240 Bubble = RoutingStrategies::BUBBLE,
241}, { namespace: "FerroUI.Interactivity" });
242
243ferro_markup_enum!(HorizontalAlignment { Stretch, Left, Center, Right }, { namespace: "FerroUI.Layout" });
245ferro_markup_enum!(Orientation { Horizontal, Vertical }, { namespace: "FerroUI.Layout" });
246ferro_markup_enum!(VerticalAlignment { Stretch, Top, Center, Bottom }, { namespace: "FerroUI.Layout" });
247
248ferro_markup_enum!(
250 ChildIndexChangedAction {
251 ChildIndexChanged, ChildIndexesReset, TotalCountChanged,
252 },
253 { namespace: "FerroUI.LogicalTree" }
254);
255
256ferro_markup_enum!(AcrylicBackgroundSource { None, Digger }, { namespace: "FerroUI.Media" });
258ferro_markup_enum!(AlignmentX { Left, Center, Right }, { namespace: "FerroUI.Media" });
259ferro_markup_enum!(AlignmentY { Top, Center, Bottom }, { namespace: "FerroUI.Media" });
260ferro_markup_enum!(
261 BackgroundSizing {
262 InnerBorderEdge, OuterBorderEdge, CenterBorder,
263 },
264 { namespace: "FerroUI.Media" }
265);
266ferro_markup_enum!(
267 BaselineAlignment {
268 Top, Center, Bottom, Baseline, TextTop, TextBottom, Subscript, Superscript,
269 },
270 { namespace: "FerroUI.Media" }
271);
272ferro_markup_enum!(BaselinePixelAlignment { Unspecified, Aligned, Unaligned }, { namespace: "FerroUI.Media" });
273ferro_markup_enum!(BrushMappingMode { Absolute, RelativeToBoundingBox }, { namespace: "FerroUI.Media" });
274ferro_markup_enum!(EdgeMode { Unspecified, Antialias, Aliased }, { namespace: "FerroUI.Media" });
275ferro_markup_enum!(FillRule { EvenOdd, NonZero }, { namespace: "FerroUI.Media" });
276ferro_markup_enum!(FlowDirection { LeftToRight, RightToLeft }, { namespace: "FerroUI.Media" });
277ferro_markup_enum!(flags FontSimulations {
278 None = FontSimulations::None,
279 Bold = FontSimulations::Bold,
280 Oblique = FontSimulations::Oblique,
281}, { namespace: "FerroUI.Media" });
282ferro_markup_enum!(
283 FontStretch {
284 Normal, UltraCondensed, ExtraCondensed, Condensed, SemiCondensed, SemiExpanded, Expanded, ExtraExpanded,
285 UltraExpanded,
286 },
287 { namespace: "FerroUI.Media" }
288);
289ferro_markup_enum!(FontStyle { Normal, Italic, Oblique }, { namespace: "FerroUI.Media" });
290ferro_markup_enum!(GeometryCombineMode { Union, Intersect, Xor, Exclude }, { namespace: "FerroUI.Media" });
291ferro_markup_enum!(GlyphDrawingType { Outline, ColorLayers, Svg, Bitmap }, { namespace: "FerroUI.Media" });
292ferro_markup_enum!(GradientSpreadMethod { Pad, Reflect, Repeat }, { namespace: "FerroUI.Media" });
293ferro_markup_enum!(
294 IntersectionResult {
295 NotCalculated, Empty, FullyInside, FullyContains, Intersects,
296 },
297 { namespace: "FerroUI.Media" }
298);
299ferro_markup_enum!(PenLineCap { Flat, Round, Square }, { namespace: "FerroUI.Media" });
300ferro_markup_enum!(PenLineJoin { Bevel, Miter, Round }, { namespace: "FerroUI.Media" });
301ferro_markup_enum!(Stretch { None, Fill, Uniform, UniformToFill }, { namespace: "FerroUI.Media" });
302ferro_markup_enum!(StretchDirection { UpOnly, DownOnly, Both }, { namespace: "FerroUI.Media" });
303ferro_markup_enum!(SweepDirection { CounterClockwise, Clockwise }, { namespace: "FerroUI.Media" });
304ferro_markup_enum!(
305 TextAlignment {
306 Left, Center, Right, Start, End, DetectFromContent, Justify,
307 },
308 { namespace: "FerroUI.Media" }
309);
310ferro_markup_enum!(
311 TextDecorationLocation {
312 Underline, Overline, Strikethrough, Baseline,
313 },
314 { namespace: "FerroUI.Media" }
315);
316ferro_markup_enum!(
317 TextDecorationUnit {
318 FontRecommended, FontRenderingEmSize, Pixel,
319 },
320 { namespace: "FerroUI.Media" }
321);
322ferro_markup_enum!(TextHintingMode { Unspecified, None, Light, Strong }, { namespace: "FerroUI.Media" });
323ferro_markup_enum!(
324 TextRenderingMode {
325 Unspecified, SubpixelAntialias, Antialias, Alias,
326 },
327 { namespace: "FerroUI.Media" }
328);
329ferro_markup_enum!(TextWrapping { NoWrap, Wrap, WrapWithOverflow }, { namespace: "FerroUI.Media" });
330ferro_markup_enum!(TileMode { None, FlipX, FlipY, FlipXY, Tile }, { namespace: "FerroUI.Media" });
331
332ferro_markup_enum!(
334 BitmapBlendingMode {
335 Unspecified, SourceOver, Source, Destination, DestinationOver, SourceIn, DestinationIn, SourceOut,
336 DestinationOut, SourceAtop, DestinationAtop, Xor, Plus, Screen, Overlay, Darken, Lighten, ColorDodge,
337 ColorBurn, HardLight, SoftLight, Difference, Exclusion, Multiply, Hue, Saturation, Color, Luminosity,
338 },
339 { namespace: "FerroUI.Media.Imaging" }
340);
341ferro_markup_enum!(
342 BitmapInterpolationMode {
343 Unspecified, None, LowQuality, MediumQuality, HighQuality,
344 },
345 { namespace: "FerroUI.Media.Imaging" }
346);
347
348ferro_markup_enum!(
350 OperationType {
351 Translate, Rotate, Scale, Skew, Matrix, Identity,
352 },
353 { namespace: "FerroUI.Media.Transformation" }
354);
355
356ferro_markup_enum!(FormFactorType { Unknown, Desktop, Mobile, TV }, { namespace: "FerroUI.Platform" });
358ferro_markup_enum!(PlatformThemeVariant { Light, Dark }, { namespace: "FerroUI.Platform" });
359
360ferro_markup_enum!(
362 WellKnownFolder {
363 Desktop, Documents, Downloads, Music, Pictures, Videos,
364 },
365 { namespace: "FerroUI.Platform.Storage" }
366);
367
368ferro_markup_enum!(flags RendererDebugOverlays {
370 None = RendererDebugOverlays::NONE,
371 Fps = RendererDebugOverlays::FPS,
372 DirtyRects = RendererDebugOverlays::DIRTY_RECTS,
373 LayoutTimeGraph = RendererDebugOverlays::LAYOUT_TIME_GRAPH,
374 RenderTimeGraph = RendererDebugOverlays::RENDER_TIME_GRAPH,
375}, { namespace: "FerroUI.Rendering" });
376
377ferro_markup_enum!(ContainerSizing { Normal, Width, Height, WidthAndHeight }, { namespace: "FerroUI.Styling" });
379ferro_markup_enum!(
380 StyleQueryComparisonOperator {
381 None, Equals, LessThan, GreaterThan, LessThanOrEquals, GreaterThanOrEquals,
382 },
383 { namespace: "FerroUI.Styling" }
384);
385
386ferro_markup_enum!(DateTimeKind { Unspecified, Utc, Local }, { namespace: "System" });
388ferro_markup_enum!(
389 DayOfWeek {
390 Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday,
391 },
392 { namespace: "System" }
393);
394ferro_markup_enum!(UriKind { RelativeOrAbsolute, Absolute, Relative }, { namespace: "System" });
395
396ferro_markup_enum!(
398 CalendarWeekRule {
399 FirstDay, FirstFullWeek, FirstFourDayWeek,
400 },
401 { namespace: "System.Globalization" }
402);
403
404pub(super) const TYPES: &[&MarkupType] = &[
406 <RelativeUnit as MarkupTyped>::MARKUP,
407 <FillMode as MarkupTyped>::MARKUP,
408 <IterationType as MarkupTyped>::MARKUP,
409 <PlayState as MarkupTyped>::MARKUP,
410 <PlaybackBehavior as MarkupTyped>::MARKUP,
411 <PlaybackDirection as MarkupTyped>::MARKUP,
412 <SlideAxis as MarkupTyped>::MARKUP,
413 <ResetBehavior as MarkupTyped>::MARKUP,
414 <BindingErrorType as MarkupTyped>::MARKUP,
415 <BindingMode as MarkupTyped>::MARKUP,
416 <BindingPriority as MarkupTyped>::MARKUP,
417 <BindingValueType as MarkupTyped>::MARKUP,
418 <RelativeSourceMode as MarkupTyped>::MARKUP,
419 <TreeType as MarkupTyped>::MARKUP,
420 <UpdateSourceTrigger as MarkupTyped>::MARKUP,
421 <DataFormatKind as MarkupTyped>::MARKUP,
422 <DragDropEffects as MarkupTyped>::MARKUP,
423 <HoldingState as MarkupTyped>::MARKUP,
424 <Key as MarkupTyped>::MARKUP,
425 <KeyDeviceType as MarkupTyped>::MARKUP,
426 <KeyModifiers as MarkupTyped>::MARKUP,
427 <KeyStates as MarkupTyped>::MARKUP,
428 <KeyboardNavigationMode as MarkupTyped>::MARKUP,
429 <MouseButton as MarkupTyped>::MARKUP,
430 <NavigationDirection as MarkupTyped>::MARKUP,
431 <NavigationMethod as MarkupTyped>::MARKUP,
432 <PhysicalKey as MarkupTyped>::MARKUP,
433 <PointerType as MarkupTyped>::MARKUP,
434 <PointerUpdateKind as MarkupTyped>::MARKUP,
435 <PullDirection as MarkupTyped>::MARKUP,
436 <RawInputModifiers as MarkupTyped>::MARKUP,
437 <StandardCursorType as MarkupTyped>::MARKUP,
438 <SwipeDirection as MarkupTyped>::MARKUP,
439 <WindowDecorationsElementRole as MarkupTyped>::MARKUP,
440 <XYFocusNavigationModes as MarkupTyped>::MARKUP,
441 <XYFocusNavigationStrategy as MarkupTyped>::MARKUP,
442 <ContextMenuAction as MarkupTyped>::MARKUP,
443 <TextInputContentType as MarkupTyped>::MARKUP,
444 <TextInputReturnKeyType as MarkupTyped>::MARKUP,
445 <RoutingStrategies as MarkupTyped>::MARKUP,
446 <HorizontalAlignment as MarkupTyped>::MARKUP,
447 <Orientation as MarkupTyped>::MARKUP,
448 <VerticalAlignment as MarkupTyped>::MARKUP,
449 <ChildIndexChangedAction as MarkupTyped>::MARKUP,
450 <AcrylicBackgroundSource as MarkupTyped>::MARKUP,
451 <AlignmentX as MarkupTyped>::MARKUP,
452 <AlignmentY as MarkupTyped>::MARKUP,
453 <BackgroundSizing as MarkupTyped>::MARKUP,
454 <BaselineAlignment as MarkupTyped>::MARKUP,
455 <BaselinePixelAlignment as MarkupTyped>::MARKUP,
456 <BrushMappingMode as MarkupTyped>::MARKUP,
457 <EdgeMode as MarkupTyped>::MARKUP,
458 <FillRule as MarkupTyped>::MARKUP,
459 <FlowDirection as MarkupTyped>::MARKUP,
460 <FontSimulations as MarkupTyped>::MARKUP,
461 <FontStretch as MarkupTyped>::MARKUP,
462 <FontStyle as MarkupTyped>::MARKUP,
463 <GeometryCombineMode as MarkupTyped>::MARKUP,
464 <GlyphDrawingType as MarkupTyped>::MARKUP,
465 <GradientSpreadMethod as MarkupTyped>::MARKUP,
466 <IntersectionResult as MarkupTyped>::MARKUP,
467 <PenLineCap as MarkupTyped>::MARKUP,
468 <PenLineJoin as MarkupTyped>::MARKUP,
469 <Stretch as MarkupTyped>::MARKUP,
470 <StretchDirection as MarkupTyped>::MARKUP,
471 <SweepDirection as MarkupTyped>::MARKUP,
472 <TextAlignment as MarkupTyped>::MARKUP,
473 <TextDecorationLocation as MarkupTyped>::MARKUP,
474 <TextDecorationUnit as MarkupTyped>::MARKUP,
475 <TextHintingMode as MarkupTyped>::MARKUP,
476 <TextRenderingMode as MarkupTyped>::MARKUP,
477 <TextWrapping as MarkupTyped>::MARKUP,
478 <TileMode as MarkupTyped>::MARKUP,
479 <BitmapBlendingMode as MarkupTyped>::MARKUP,
480 <BitmapInterpolationMode as MarkupTyped>::MARKUP,
481 <OperationType as MarkupTyped>::MARKUP,
482 <FormFactorType as MarkupTyped>::MARKUP,
483 <PlatformThemeVariant as MarkupTyped>::MARKUP,
484 <WellKnownFolder as MarkupTyped>::MARKUP,
485 <RendererDebugOverlays as MarkupTyped>::MARKUP,
486 <ContainerSizing as MarkupTyped>::MARKUP,
487 <StyleQueryComparisonOperator as MarkupTyped>::MARKUP,
488 <DateTimeKind as MarkupTyped>::MARKUP,
489 <DayOfWeek as MarkupTyped>::MARKUP,
490 <UriKind as MarkupTyped>::MARKUP,
491 <CalendarWeekRule as MarkupTyped>::MARKUP,
492];
493
494pub(super) fn register_value_types() {
497 ValueTypes::register_nullable::<RelativeUnit>();
498 ValueTypes::register_nullable::<FillMode>();
499 ValueTypes::register_nullable::<IterationType>();
500 ValueTypes::register_nullable::<PlayState>();
501 ValueTypes::register_nullable::<PlaybackBehavior>();
502 ValueTypes::register_nullable::<PlaybackDirection>();
503 ValueTypes::register_nullable::<SlideAxis>();
504 ValueTypes::register_nullable::<ResetBehavior>();
505 ValueTypes::register_nullable::<BindingErrorType>();
506 ValueTypes::register_nullable::<BindingMode>();
507 ValueTypes::register_nullable::<BindingPriority>();
508 ValueTypes::register_nullable::<BindingValueType>();
509 ValueTypes::register_nullable::<RelativeSourceMode>();
510 ValueTypes::register_nullable::<TreeType>();
511 ValueTypes::register_nullable::<UpdateSourceTrigger>();
512 ValueTypes::register_nullable::<DataFormatKind>();
513 ValueTypes::register_nullable::<DragDropEffects>();
514 ValueTypes::register_nullable::<HoldingState>();
515 ValueTypes::register_nullable::<Key>();
516 ValueTypes::register_nullable::<KeyDeviceType>();
517 ValueTypes::register_nullable::<KeyModifiers>();
518 ValueTypes::register_nullable::<KeyStates>();
519 ValueTypes::register_nullable::<KeyboardNavigationMode>();
520 ValueTypes::register_nullable::<MouseButton>();
521 ValueTypes::register_nullable::<NavigationDirection>();
522 ValueTypes::register_nullable::<NavigationMethod>();
523 ValueTypes::register_nullable::<PhysicalKey>();
524 ValueTypes::register_nullable::<PointerType>();
525 ValueTypes::register_nullable::<PointerUpdateKind>();
526 ValueTypes::register_nullable::<PullDirection>();
527 ValueTypes::register_nullable::<RawInputModifiers>();
528 ValueTypes::register_nullable::<StandardCursorType>();
529 ValueTypes::register_nullable::<SwipeDirection>();
530 ValueTypes::register_nullable::<WindowDecorationsElementRole>();
531 ValueTypes::register_nullable::<XYFocusNavigationModes>();
532 ValueTypes::register_nullable::<XYFocusNavigationStrategy>();
533 ValueTypes::register_nullable::<ContextMenuAction>();
534 ValueTypes::register_nullable::<TextInputContentType>();
535 ValueTypes::register_nullable::<TextInputReturnKeyType>();
536 ValueTypes::register_nullable::<RoutingStrategies>();
537 ValueTypes::register_nullable::<HorizontalAlignment>();
538 ValueTypes::register_nullable::<Orientation>();
539 ValueTypes::register_nullable::<VerticalAlignment>();
540 ValueTypes::register_nullable::<ChildIndexChangedAction>();
541 ValueTypes::register_nullable::<AcrylicBackgroundSource>();
542 ValueTypes::register_nullable::<AlignmentX>();
543 ValueTypes::register_nullable::<AlignmentY>();
544 ValueTypes::register_nullable::<BackgroundSizing>();
545 ValueTypes::register_nullable::<BaselineAlignment>();
546 ValueTypes::register_nullable::<BaselinePixelAlignment>();
547 ValueTypes::register_nullable::<BrushMappingMode>();
548 ValueTypes::register_nullable::<EdgeMode>();
549 ValueTypes::register_nullable::<FillRule>();
550 ValueTypes::register_nullable::<FlowDirection>();
551 ValueTypes::register_nullable::<FontSimulations>();
552 ValueTypes::register_nullable::<FontStretch>();
553 ValueTypes::register_nullable::<FontStyle>();
554 ValueTypes::register_nullable::<GeometryCombineMode>();
555 ValueTypes::register_nullable::<GlyphDrawingType>();
556 ValueTypes::register_nullable::<GradientSpreadMethod>();
557 ValueTypes::register_nullable::<IntersectionResult>();
558 ValueTypes::register_nullable::<PenLineCap>();
559 ValueTypes::register_nullable::<PenLineJoin>();
560 ValueTypes::register_nullable::<Stretch>();
561 ValueTypes::register_nullable::<StretchDirection>();
562 ValueTypes::register_nullable::<SweepDirection>();
563 ValueTypes::register_nullable::<TextAlignment>();
564 ValueTypes::register_nullable::<TextDecorationLocation>();
565 ValueTypes::register_nullable::<TextDecorationUnit>();
566 ValueTypes::register_nullable::<TextHintingMode>();
567 ValueTypes::register_nullable::<TextRenderingMode>();
568 ValueTypes::register_nullable::<TextWrapping>();
569 ValueTypes::register_nullable::<TileMode>();
570 ValueTypes::register_nullable::<BitmapBlendingMode>();
571 ValueTypes::register_nullable::<BitmapInterpolationMode>();
572 ValueTypes::register_nullable::<OperationType>();
573 ValueTypes::register_nullable::<FormFactorType>();
574 ValueTypes::register_nullable::<PlatformThemeVariant>();
575 ValueTypes::register_nullable::<WellKnownFolder>();
576 ValueTypes::register_nullable::<RendererDebugOverlays>();
577 ValueTypes::register_nullable::<ContainerSizing>();
578 ValueTypes::register_nullable::<StyleQueryComparisonOperator>();
579 ValueTypes::register_nullable::<DateTimeKind>();
580 ValueTypes::register_nullable::<DayOfWeek>();
581 ValueTypes::register_nullable::<UriKind>();
582 ValueTypes::register_nullable::<CalendarWeekRule>();
583}