From 75827260cc8da86b171b631d021be18421c3e7d8 Mon Sep 17 00:00:00 2001 From: Leo dev Date: Fri, 1 Aug 2025 19:22:02 -0500 Subject: [PATCH] cleanup elements #13 --- src/elements/div.rs | 18 ++++++------- src/elements/flex.rs | 40 ++++++++++++++--------------- src/elements/mod.rs | 2 -- src/elements/shape.rs | 59 ------------------------------------------- 4 files changed, 29 insertions(+), 90 deletions(-) delete mode 100644 src/elements/shape.rs diff --git a/src/elements/div.rs b/src/elements/div.rs index 8806ad7..28760eb 100644 --- a/src/elements/div.rs +++ b/src/elements/div.rs @@ -10,6 +10,15 @@ pub struct Div { size: (u16, u16), } +impl Div { + pub fn new() -> Self { + Div { + children: Mutex::new(Vec::new()), + size: (0, 0), + } + } +} + impl Element for Div { fn render(&mut self, scope: &mut crate::render_scope::RenderScope) { let (width, height) = scope.get_size_or(self.size.0, self.size.1); @@ -59,12 +68,3 @@ impl Element for Div { self } } - -impl Div { - pub fn new() -> Self { - Div { - children: Mutex::new(Vec::new()), - size: (0, 0), - } - } -} diff --git a/src/elements/flex.rs b/src/elements/flex.rs index ab143dd..3ae6874 100644 --- a/src/elements/flex.rs +++ b/src/elements/flex.rs @@ -17,6 +17,26 @@ pub struct FlexCol { size: (u16, u16), } +impl FlexRow { + pub fn new(gap: u16) -> Self { + Self { + children: Mutex::new(Vec::new()), + size: (0, 0), + gap, + } + } +} + +impl FlexCol { + pub fn new(gap: u16) -> Self { + Self { + children: Mutex::new(Vec::new()), + size: (0, 0), + gap, + } + } +} + impl Element for FlexRow { fn render(&mut self, scope: &mut crate::render_scope::RenderScope) { let (width, height) = scope.get_size_or(self.size.0, self.size.1); @@ -73,16 +93,6 @@ impl Element for FlexRow { } } -impl FlexRow { - pub fn new(gap: u16) -> Self { - Self { - children: Mutex::new(Vec::new()), - size: (0, 0), - gap, - } - } -} - impl Element for FlexCol { fn render(&mut self, scope: &mut crate::render_scope::RenderScope) { let (width, height) = scope.get_size_or(self.size.0, self.size.1); @@ -138,13 +148,3 @@ impl Element for FlexCol { self } } - -impl FlexCol { - pub fn new(gap: u16) -> Self { - Self { - children: Mutex::new(Vec::new()), - size: (0, 0), - gap, - } - } -} diff --git a/src/elements/mod.rs b/src/elements/mod.rs index 0dfc814..8ea79e0 100644 --- a/src/elements/mod.rs +++ b/src/elements/mod.rs @@ -1,10 +1,8 @@ pub mod div; pub mod flex; -pub mod shape; pub use div::*; pub use flex::*; -pub use shape::*; use crate::Element; diff --git a/src/elements/shape.rs b/src/elements/shape.rs deleted file mode 100644 index 5523b9d..0000000 --- a/src/elements/shape.rs +++ /dev/null @@ -1,59 +0,0 @@ -use crate::widget::Element; - -pub struct RoundedOutline; - -impl Element for RoundedOutline { - fn render(&mut self, scope: &mut crate::prelude::RenderScope) { - let (w, h) = scope.get_size_or_parent(); - if w > 2 && h > 2 { - let d = "─".repeat(w as usize - 2); - scope.draw_text(&format!( - "╭{d}╮{}\n╰{d}╯", - format!("\n│{}│", " ".repeat(w as usize - 2)).repeat(h as usize - 2), - )); - } - } - - fn as_any(&self) -> &dyn std::any::Any { - self - } - - fn as_any_mut(&mut self) -> &mut dyn std::any::Any { - self - } -} - -impl RoundedOutline { - pub fn new() -> Self { - Self - } -} - -pub struct Outline; - -impl Element for Outline { - fn render(&mut self, scope: &mut crate::prelude::RenderScope) { - let (w, h) = scope.get_size_or_parent(); - if w > 2 && h > 2 { - let d = "─".repeat(w as usize - 2); - scope.draw_text(&format!( - "┌{d}┐{}\n└{d}┘", - format!("\n│{}│", " ".repeat(w as usize - 2)).repeat(h as usize - 2), - )); - } - } - - fn as_any(&self) -> &dyn std::any::Any { - self - } - - fn as_any_mut(&mut self) -> &mut dyn std::any::Any { - self - } -} - -impl Outline { - pub fn new() -> Self { - Self - } -}