diff options
| author | pml68 <contact@pml68.me> | 2024-10-20 11:51:54 +0200 |
|---|---|---|
| committer | pml68 <contact@pml68.me> | 2024-10-21 11:57:56 +0200 |
| commit | 7d241eb768a3c56d98f5d41183866fffb9ff167a (patch) | |
| tree | a47571c3ea86983050d268fade3c3101da4f7ed7 /iced_builder/src/lib.rs | |
| parent | feat: update to iced 0.13.1, basic project state file, prepare for drag&drop (diff) | |
| download | iced-builder-7d241eb768a3c56d98f5d41183866fffb9ff167a.tar.gz | |
feat: implement d&d for new elements
`ActionKind` enum to help generalize d&d actions
removed `codegen` module
small refactors
Diffstat (limited to 'iced_builder/src/lib.rs')
| -rw-r--r-- | iced_builder/src/lib.rs | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/iced_builder/src/lib.rs b/iced_builder/src/lib.rs index 971e0e3..6de9ba8 100644 --- a/iced_builder/src/lib.rs +++ b/iced_builder/src/lib.rs @@ -1,16 +1,18 @@ -pub mod codegen; pub mod types; use std::path::PathBuf; use iced::widget::{pane_grid, text_editor}; -use types::{project::Project, rendered_element::RenderedElement, DesignerPage}; +use types::{ + element_name::ElementName, project::Project, rendered_element::RenderedElement, DesignerPage, +}; #[derive(Debug, Clone)] pub enum Error { IOError(std::io::ErrorKind), SerdeError(String), FormatError(String), + NonExistentElement, DialogClosed, String(String), } @@ -24,6 +26,9 @@ impl std::fmt::Display for Error { Self::IOError(kind) => { write!(f, "{}", kind) } + Self::NonExistentElement => { + write!(f, "The element tree contains no matching element.") + } Self::DialogClosed => { write!( f, @@ -64,9 +69,9 @@ pub enum Message { CopyCode, SwitchPage(DesignerPage), EditorAction(text_editor::Action), - DropNewElement(types::ElementName, iced::Point, iced::Rectangle), + DropNewElement(ElementName, iced::Point, iced::Rectangle), HandleNew( - types::ElementName, + ElementName, Vec<(iced::advanced::widget::Id, iced::Rectangle)>, ), MoveElement(RenderedElement, iced::Point, iced::Rectangle), @@ -74,8 +79,8 @@ pub enum Message { RenderedElement, Vec<(iced::advanced::widget::Id, iced::Rectangle)>, ), - Resized(pane_grid::ResizeEvent), - Clicked(pane_grid::Pane), + PaneResized(pane_grid::ResizeEvent), + PaneClicked(pane_grid::Pane), PaneDragged(pane_grid::DragEvent), NewFile, OpenFile, |
