diff options
| author | Polesznyák Márk László <116908301+pml68@users.noreply.github.com> | 2024-10-24 23:18:46 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-10-24 23:18:46 +0200 |
| commit | b351dd45dcd4b4c9142f069c62b51159c00922bf (patch) | |
| tree | d2f24b449c3f82a9f844ce35198bad351c2ca8af /src/types | |
| parent | Merge pull request #1 from pml68/feat/codegen (diff) | |
| parent | feat: implement d&d for existing elements (diff) | |
| download | iced-builder-b351dd45dcd4b4c9142f069c62b51159c00922bf.tar.gz | |
Merge pull request #2 from pml68/feat/drag-and-drop
Drag & Drop done
Diffstat (limited to 'src/types')
| -rw-r--r-- | src/types/mod.rs | 25 | ||||
| -rw-r--r-- | src/types/rendered_element.rs | 47 |
2 files changed, 0 insertions, 72 deletions
diff --git a/src/types/mod.rs b/src/types/mod.rs deleted file mode 100644 index 7a04d79..0000000 --- a/src/types/mod.rs +++ /dev/null @@ -1,25 +0,0 @@ -pub mod rendered_element; - -use rendered_element::RenderedElement; -use std::path::PathBuf; - -pub struct DesignerState { - pub designer_content: Vec<RenderedElement>, - pub designer_page: DesignerPage, -} - -#[derive(Debug)] -pub enum ElementName { - Text(&'static str), - Button(&'static str), - SVG(PathBuf), - Image(PathBuf), - Container, - Row, - Column, -} - -pub enum DesignerPage { - Designer, - CodeView, -} diff --git a/src/types/rendered_element.rs b/src/types/rendered_element.rs deleted file mode 100644 index f05594d..0000000 --- a/src/types/rendered_element.rs +++ /dev/null @@ -1,47 +0,0 @@ -use std::collections::HashMap; - -use unique_id::{string::StringGenerator, Generator}; - -use iced::advanced::widget::Id; - -use super::ElementName; - -#[derive(Debug)] -pub struct RenderedElement { - pub id: Id, - pub child_elements: Vec<RenderedElement>, - pub name: ElementName, - pub props: HashMap<&'static str, &'static str>, -} - -impl RenderedElement { - pub fn new(name: ElementName) -> Self { - let gen = StringGenerator::default(); - Self { - id: Id::new(gen.next_id()), - child_elements: vec![], - name, - props: HashMap::new(), - } - } - - pub fn from_vec(name: ElementName, child_elements: Vec<RenderedElement>) -> Self { - let gen = StringGenerator::default(); - Self { - id: Id::new(gen.next_id()), - child_elements, - name, - props: HashMap::new(), - } - } - - pub fn push(mut self, element: RenderedElement) -> Self { - self.child_elements.push(element); - self - } - - pub fn set_property(&mut self, prop: &'static str, value: &'static str) { - let prop_ref = self.props.entry(prop).or_insert(value); - *prop_ref = value; - } -} |
