ferroui_xaml_behaviors/
lib.rs1pub use ferroui_xaml_interactivity as interactivity;
24
25#[cfg(feature = "animations")]
26pub use ferroui_xaml_behaviors_animations as animations;
27#[cfg(feature = "custom")]
28pub use ferroui_xaml_interactions_custom as custom;
29#[cfg(feature = "drag-and-drop")]
30pub use ferroui_xaml_interactions_draganddrop as drag_and_drop;
31#[cfg(feature = "draggable")]
32pub use ferroui_xaml_interactions_draggable as draggable;
33#[cfg(feature = "events")]
34pub use ferroui_xaml_interactions_events as events;
35#[cfg(feature = "interactions")]
36pub use ferroui_xaml_interactions as interactions;
37#[cfg(feature = "reactiveui")]
38pub use ferroui_xaml_interactions_reactiveui as reactiveui;
39#[cfg(feature = "responsive")]
40pub use ferroui_xaml_interactions_responsive as responsive;
41
42pub fn register_types() {
45 ferroui_xaml_interactivity::register_types();
46 #[cfg(feature = "animations")]
47 ferroui_xaml_behaviors_animations::register_types();
48 #[cfg(feature = "interactions")]
49 ferroui_xaml_interactions::register_types();
50 #[cfg(feature = "custom")]
51 ferroui_xaml_interactions_custom::register_types();
52 #[cfg(feature = "events")]
53 ferroui_xaml_interactions_events::register_types();
54 #[cfg(feature = "draggable")]
55 ferroui_xaml_interactions_draggable::register_types();
56 #[cfg(feature = "drag-and-drop")]
57 ferroui_xaml_interactions_draganddrop::register_types();
58 #[cfg(feature = "responsive")]
59 ferroui_xaml_interactions_responsive::register_types();
60 #[cfg(feature = "reactiveui")]
61 ferroui_xaml_interactions_reactiveui::register_types();
62}
63
64#[cfg(test)]
65mod tests {
66 use ferroui_base::TypeInfo;
68
69 #[test]
70 #[cfg(all(feature = "interactions", feature = "custom"))]
71 fn the_default_features_register_the_types_of_the_bundle() {
72 super::register_types();
73
74 assert!(TypeInfo::find("FerroUI.Xaml.Interactivity", "Interaction").is_some());
75 assert!(TypeInfo::find("FerroUI.Xaml.Interactions.Core", "EventTriggerBehavior").is_some());
76 assert!(TypeInfo::find("FerroUI.Xaml.Interactions.Custom", "AttachedToVisualTreeBehavior").is_some());
77 }
78}