summaryrefslogtreecommitdiff
path: root/src/types
diff options
context:
space:
mode:
authorpml68 <contact@pml68.me>2024-09-22 23:53:02 +0200
committerpml68 <contact@pml68.me>2024-09-23 00:00:45 +0200
commitf5c35e48c480355036778d26aacde498e5c15e68 (patch)
treebf949b406bd8f0719f06095bb14bf9872a7493e5 /src/types
parentMerge pull request #1 from pml68/feat/codegen (diff)
downloadiced-builder-f5c35e48c480355036778d26aacde498e5c15e68.tar.gz
feat: restructure project, start drag and drop
Diffstat (limited to 'src/types')
-rw-r--r--src/types/mod.rs25
-rw-r--r--src/types/rendered_element.rs47
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;
- }
-}