diff options
| author | pml68 <contact@pml68.dev> | 2024-12-26 00:04:43 +0100 |
|---|---|---|
| committer | pml68 <contact@pml68.dev> | 2024-12-26 00:04:43 +0100 |
| commit | 72e527f51acc44195df5cafda7d8f3d6dc12695c (patch) | |
| tree | 4d3cd66306fa90578cefde658c8b1be420fb6e53 /iced_builder/src/types.rs | |
| parent | refactor: remove uses find_parent internally, change element_list to &[] (diff) | |
| download | iced-builder-72e527f51acc44195df5cafda7d8f3d6dc12695c.tar.gz | |
refactor: `views` -> `panes`, `mod.rs` -> `{panes,types}.rs`
Diffstat (limited to 'iced_builder/src/types.rs')
| -rw-r--r-- | iced_builder/src/types.rs | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/iced_builder/src/types.rs b/iced_builder/src/types.rs new file mode 100644 index 0000000..161b5e1 --- /dev/null +++ b/iced_builder/src/types.rs @@ -0,0 +1,48 @@ +pub mod element_name; +pub mod project; +pub mod rendered_element; + +use std::path::PathBuf; + +pub use element_name::ElementName; +use iced::widget::{pane_grid, text_editor}; +use iced::Theme; +use iced_anim::SpringEvent; +pub use project::Project; +pub use rendered_element::*; + +use crate::Result; + +#[derive(Debug, Clone)] +pub enum Message { + ToggleTheme(SpringEvent<Theme>), + CopyCode, + SwitchPage(DesignerPage), + EditorAction(text_editor::Action), + RefreshEditorContent, + DropNewElement(ElementName, iced::Point, iced::Rectangle), + HandleNew( + ElementName, + Vec<(iced::advanced::widget::Id, iced::Rectangle)>, + ), + MoveElement(RenderedElement, iced::Point, iced::Rectangle), + HandleMove( + RenderedElement, + Vec<(iced::advanced::widget::Id, iced::Rectangle)>, + ), + PaneResized(pane_grid::ResizeEvent), + PaneClicked(pane_grid::Pane), + PaneDragged(pane_grid::DragEvent), + NewFile, + OpenFile, + FileOpened(Result<(PathBuf, Project)>), + SaveFile, + SaveFileAs, + FileSaved(Result<PathBuf>), +} + +#[derive(Debug, Clone)] +pub enum DesignerPage { + DesignerView, + CodeView, +} |
