From 331979b7c9de34a70f8a5ea322addf73c9472b8e Mon Sep 17 00:00:00 2001
From: MrGVSV <gino.valente.code@gmail.com>
Date: Mon, 7 Feb 2022 16:26:56 -0800
Subject: [PATCH] Updated examples to use empty prop type

---
 examples/bevy_state.rs        |  6 ++----
 examples/counter.rs           |  7 ++-----
 examples/fold.rs              |  5 +----
 examples/global_counter.rs    |  7 ++-----
 examples/hooks.rs             | 10 ++--------
 examples/if.rs                |  7 ++-----
 examples/provider.rs          |  5 +----
 examples/tabs/tabs.rs         |  7 ++-----
 examples/text_box.rs          |  7 ++-----
 examples/todo/todo.rs         |  7 ++-----
 examples/windows.rs           |  6 +-----
 examples/world_interaction.rs |  7 ++-----
 12 files changed, 21 insertions(+), 60 deletions(-)

diff --git a/examples/bevy_state.rs b/examples/bevy_state.rs
index 7408949..9b62fd5 100644
--- a/examples/bevy_state.rs
+++ b/examples/bevy_state.rs
@@ -5,7 +5,7 @@ use bevy::{
 };
 use kayak_ui::bevy::{BevyContext, BevyKayakUIPlugin, FontMapping, UICameraBundle};
 use kayak_ui::core::{
-    render, rsx, widget, Event, EventType, Index, KayakContextRef, KeyCode, OnEvent, WidgetProps,
+    render, rsx, widget, Event, EventType, Index, KayakContextRef, KeyCode, OnEvent,
 };
 use kayak_ui::widgets::{App, Text};
 
@@ -36,11 +36,9 @@ fn handle_input(context: &mut KayakContextRef, event: &mut Event) {
         _ => {}
     };
 }
-#[derive(WidgetProps, Default, Debug, PartialEq, Clone)]
-pub struct StateSwitcherProps;
 
 #[widget]
-fn StateSwitcher(props: StateSwitcherProps) {
+fn StateSwitcher() {
     rsx! {
         <Text content={"Press space to switch states!".to_string()} size={32.0} />
     }
diff --git a/examples/counter.rs b/examples/counter.rs
index 303de77..da41c11 100644
--- a/examples/counter.rs
+++ b/examples/counter.rs
@@ -7,15 +7,12 @@ use kayak_ui::bevy::{BevyContext, BevyKayakUIPlugin, FontMapping, UICameraBundle
 use kayak_ui::core::{
     render, rsx,
     styles::{Style, StyleProp, Units},
-    use_state, widget, EventType, Index, OnEvent, WidgetProps,
+    use_state, widget, EventType, Index, OnEvent,
 };
 use kayak_ui::widgets::{App, Button, Text, Window};
 
-#[derive(WidgetProps, Default, Debug, PartialEq, Clone)]
-pub struct CounterProps {}
-
 #[widget]
-fn Counter(props: CounterProps) {
+fn Counter() {
     let text_styles = Style {
         bottom: StyleProp::Value(Units::Stretch(1.0)),
         left: StyleProp::Value(Units::Stretch(0.1)),
diff --git a/examples/fold.rs b/examples/fold.rs
index 4fce8f5..1e0a1be 100644
--- a/examples/fold.rs
+++ b/examples/fold.rs
@@ -9,14 +9,11 @@ use kayak_ui::{
     core::{
         render, rsx,
         styles::{Style, StyleProp, Units},
-        use_state, widget, Color, EventType, Handler, Index, OnEvent, WidgetProps,
+        use_state, widget, Color, EventType, Handler, Index, OnEvent,
     },
     widgets::{App, Background, Button, Fold, If, Text, Window},
 };
 
-#[derive(WidgetProps, Clone, Debug, Default, PartialEq)]
-struct FolderTreeProps {}
-
 #[widget]
 fn FolderTree(props: FolderTreeProps) {
     let button_text_styles = Style {
diff --git a/examples/global_counter.rs b/examples/global_counter.rs
index 12f757b..09b9cb0 100644
--- a/examples/global_counter.rs
+++ b/examples/global_counter.rs
@@ -4,17 +4,14 @@ use bevy::{
     DefaultPlugins,
 };
 use kayak_ui::bevy::{BevyContext, BevyKayakUIPlugin, FontMapping, UICameraBundle};
-use kayak_ui::core::{bind, render, rsx, widget, Binding, Bound, Index, MutableBound, WidgetProps};
+use kayak_ui::core::{bind, render, rsx, widget, Binding, Bound, Index, MutableBound};
 use kayak_ui::widgets::{App, Text, Window};
 
 #[derive(Clone, PartialEq)]
 struct GlobalCount(pub u32);
 
-#[derive(WidgetProps, Clone, Debug, Default, PartialEq)]
-struct CounterProps {}
-
 #[widget]
-fn Counter(props: CounterProps) {
+fn Counter() {
     let global_count = context
         .query_world::<Res<Binding<GlobalCount>>, _, _>(move |global_count| global_count.clone());
 
diff --git a/examples/hooks.rs b/examples/hooks.rs
index 72b5fb4..00e294a 100644
--- a/examples/hooks.rs
+++ b/examples/hooks.rs
@@ -16,13 +16,10 @@ use bevy::{
 };
 use kayak_ui::{
     bevy::{BevyContext, BevyKayakUIPlugin, FontMapping, UICameraBundle},
-    core::{render, rsx, use_effect, use_state, widget, EventType, Index, OnEvent, WidgetProps},
+    core::{render, rsx, use_effect, use_state, widget, EventType, Index, OnEvent},
     widgets::{App, Button, Text, Window},
 };
 
-#[derive(WidgetProps, Clone, Debug, Default, PartialEq)]
-struct StateCounterProps {}
-
 /// A simple widget that tracks how many times a button is clicked using simple state data
 #[widget]
 fn StateCounter(props: StateCounterProps) {
@@ -56,12 +53,9 @@ fn StateCounter(props: StateCounterProps) {
     }
 }
 
-#[derive(WidgetProps, Clone, Debug, Default, PartialEq)]
-struct EffectCounterProps {}
-
 /// Another widget that tracks how many times a button is clicked using side-effects
 #[widget]
-fn EffectCounter(props: EffectCounterProps) {
+fn EffectCounter() {
     // In this widget, we're going to implement another counter, but this time using side-effects.
     // To put it very simply, a side-effect is when something happens in response to something else happening.
     // In our case, we want to create a side-effect that updates a counter when another state is updated.
diff --git a/examples/if.rs b/examples/if.rs
index b123b26..165bcff 100644
--- a/examples/if.rs
+++ b/examples/if.rs
@@ -7,15 +7,12 @@ use kayak_ui::bevy::{BevyContext, BevyKayakUIPlugin, FontMapping, UICameraBundle
 use kayak_ui::core::{
     render, rsx,
     styles::{Style, StyleProp, Units},
-    widget, Bound, EventType, Index, MutableBound, OnEvent, WidgetProps,
+    widget, Bound, EventType, Index, MutableBound, OnEvent,
 };
 use kayak_ui::widgets::{App, Button, If, Text, Window};
 
-#[derive(WidgetProps, Clone, Debug, Default, PartialEq)]
-struct RemovalProps {}
-
 #[widget]
-fn Removal(props: RemovalProps) {
+fn Removal() {
     let text_styles = Style {
         bottom: StyleProp::Value(Units::Stretch(1.0)),
         left: StyleProp::Value(Units::Stretch(0.1)),
diff --git a/examples/provider.rs b/examples/provider.rs
index 97afd7c..6bbc0e7 100644
--- a/examples/provider.rs
+++ b/examples/provider.rs
@@ -138,14 +138,11 @@ fn ThemeButton(props: ThemeButtonProps) {
     }
 }
 
-#[derive(WidgetProps, Clone, Debug, Default, PartialEq)]
-struct ThemeSelectorProps {}
-
 /// A widget displaying a set of [ThemeButton] widgets
 ///
 /// This is just an abstracted container. Not much to see here...
 #[widget]
-fn ThemeSelector(props: ThemeSelectorProps) {
+fn ThemeSelector() {
     let vampire_theme = Theme::vampire();
     let solar_theme = Theme::solar();
     let vector_theme = Theme::vector();
diff --git a/examples/tabs/tabs.rs b/examples/tabs/tabs.rs
index 7fd216c..fdf67e4 100644
--- a/examples/tabs/tabs.rs
+++ b/examples/tabs/tabs.rs
@@ -15,7 +15,7 @@ use kayak_ui::{
     core::{
         constructor, render, rsx,
         styles::{Style, StyleProp, Units},
-        widget, Color, Index, WidgetProps,
+        widget, Color, Index,
     },
     widgets::{App, Text, Window},
 };
@@ -30,11 +30,8 @@ mod tab_box;
 mod tab_content;
 mod theming;
 
-#[derive(WidgetProps, Default, Debug, PartialEq, Clone)]
-pub struct TabDemoProps {}
-
 #[widget]
-fn TabDemo(props: TabDemoProps) {
+fn TabDemo() {
     let text_style = Style {
         width: StyleProp::Value(Units::Percentage(75.0)),
         top: StyleProp::Value(Units::Stretch(0.5)),
diff --git a/examples/text_box.rs b/examples/text_box.rs
index c98a8a4..bb74ca4 100644
--- a/examples/text_box.rs
+++ b/examples/text_box.rs
@@ -9,15 +9,12 @@ use kayak_ui::bevy::{BevyContext, BevyKayakUIPlugin, FontMapping, UICameraBundle
 use kayak_ui::core::{
     render, rsx,
     styles::{Style, StyleProp, Units},
-    widget, Index, WidgetProps,
+    widget, Index,
 };
 use kayak_ui::widgets::{App, OnChange, TextBox, Window};
 
-#[derive(WidgetProps, Clone, Debug, Default, PartialEq)]
-struct TextBoxExampleProps {}
-
 #[widget]
-fn TextBoxExample(props: TextBoxExampleProps) {
+fn TextBoxExample() {
     let (value, set_value, _) = use_state!("I started with a value!".to_string());
     let (empty_value, set_empty_value, _) = use_state!("".to_string());
     let (red_value, set_red_value, _) = use_state!("This text is red".to_string());
diff --git a/examples/todo/todo.rs b/examples/todo/todo.rs
index 10ee013..fea3f1e 100644
--- a/examples/todo/todo.rs
+++ b/examples/todo/todo.rs
@@ -7,7 +7,7 @@ use kayak_ui::bevy::{BevyContext, BevyKayakUIPlugin, FontMapping, UICameraBundle
 use kayak_ui::core::{
     render, rsx,
     styles::{LayoutType, Style, StyleProp, Units},
-    use_state, widget, EventType, Handler, Index, OnEvent, WidgetProps,
+    use_state, widget, EventType, Handler, Index, OnEvent,
 };
 use kayak_ui::widgets::{App, Element, OnChange, TextBox, Window};
 
@@ -23,11 +23,8 @@ pub struct Todo {
     name: String,
 }
 
-#[derive(WidgetProps, Clone, Debug, Default, PartialEq)]
-struct TodoAppProps {}
-
 #[widget]
-fn TodoApp(props: TodoAppProps) {
+fn TodoApp() {
     let (todos, set_todos, ..) = use_state!(vec![
         Todo {
             name: "Use bevy to make a game!".to_string(),
diff --git a/examples/windows.rs b/examples/windows.rs
index ca25204..331152a 100644
--- a/examples/windows.rs
+++ b/examples/windows.rs
@@ -5,15 +5,11 @@ use bevy::{
 };
 use kayak_ui::bevy::{BevyContext, BevyKayakUIPlugin, FontMapping, UICameraBundle};
 use kayak_ui::core::Index;
-use kayak_ui::core::WidgetProps;
 use kayak_ui::core::{render, rsx, widget};
 use kayak_ui::widgets::{App, Inspector, Window};
 
-#[derive(WidgetProps, Default, Debug, PartialEq, Clone)]
-pub struct Props {}
-
 #[widget]
-fn CustomWidget(props: Props) {
+fn CustomWidget() {
     rsx! {
         <>
             <Window draggable={true} position={(50.0, 50.0)} size={(300.0, 300.0)} title={"Window 1".to_string()}>
diff --git a/examples/world_interaction.rs b/examples/world_interaction.rs
index 44a1f14..d1d3992 100644
--- a/examples/world_interaction.rs
+++ b/examples/world_interaction.rs
@@ -20,7 +20,7 @@ use kayak_ui::{
     core::{
         render, rsx,
         styles::{Style, StyleProp, Units},
-        use_state, widget, EventType, Index, OnEvent, WidgetProps,
+        use_state, widget, EventType, Index, OnEvent,
     },
     widgets::{App, Button, Text, Window},
 };
@@ -65,11 +65,8 @@ fn set_active_tile_target(
     tile.target = tile_pos;
 }
 
-#[derive(WidgetProps, Default, Debug, PartialEq, Clone)]
-pub struct ControlPanelProps {}
-
 #[widget]
-fn ControlPanel(props: ControlPanelProps) {
+fn ControlPanel() {
     let text_styles = Style {
         left: StyleProp::Value(Units::Stretch(1.0)),
         right: StyleProp::Value(Units::Stretch(1.0)),
-- 
GitLab