summaryrefslogtreecommitdiff
path: root/iced_builder/src/lib.rs
diff options
context:
space:
mode:
authorPolesznyák Márk László <116908301+pml68@users.noreply.github.com>2024-12-26 00:12:06 +0100
committerGitHub <noreply@github.com>2024-12-26 00:12:06 +0100
commit0ae3ec6cc9babcab39c76f023606229a151916ab (patch)
treee92d0109599622984b2c485cc020951da288cec3 /iced_builder/src/lib.rs
parentMerge pull request #3 from pml68/refactor/internal-restructuring (diff)
parentfeat: add `tip` widget helper from `hecrj/icebreaker` (diff)
downloadiced-builder-0ae3ec6cc9babcab39c76f023606229a151916ab.tar.gz
Merge pull request #4 from pml68/feat/playground
Playground done **for now**
Diffstat (limited to 'iced_builder/src/lib.rs')
-rw-r--r--iced_builder/src/lib.rs84
1 files changed, 7 insertions, 77 deletions
diff --git a/iced_builder/src/lib.rs b/iced_builder/src/lib.rs
index 14a044e..f3165f5 100644
--- a/iced_builder/src/lib.rs
+++ b/iced_builder/src/lib.rs
@@ -1,79 +1,9 @@
+pub mod dialogs;
+pub mod error;
+pub mod icon;
+pub mod panes;
pub mod types;
-pub mod views;
+pub mod widget;
-use std::path::PathBuf;
-
-use iced::widget::{pane_grid, text_editor};
-use types::{
- element_name::ElementName, project::Project, rendered_element::RenderedElement, DesignerPage,
-};
-
-use thiserror::Error;
-
-#[derive(Debug, Clone, Error)]
-pub enum Error {
- #[error("an IO error accured: {0}")]
- IOError(String),
- #[error("a Serde error accured: {0}")]
- SerdeError(String),
- #[error("an RustFmt error accured: {0}")]
- FormatError(String),
- #[error("the element tree contains no matching element")]
- NonExistentElement,
- #[error("the file dialog has been closed without selecting a valid option")]
- DialogClosed,
- #[error("{0}")]
- String(String),
-}
-
-impl From<std::io::Error> for Error {
- fn from(value: std::io::Error) -> Self {
- Self::IOError(value.to_string())
- }
-}
-
-impl From<serde_json::Error> for Error {
- fn from(value: serde_json::Error) -> Self {
- Self::SerdeError(value.to_string())
- }
-}
-
-impl From<rust_format::Error> for Error {
- fn from(value: rust_format::Error) -> Self {
- Self::FormatError(value.to_string())
- }
-}
-
-impl From<&'static str> for Error {
- fn from(value: &'static str) -> Self {
- Self::String(value.to_owned())
- }
-}
-
-#[derive(Debug, Clone)]
-pub enum Message {
- ToggleTheme,
- 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), Error>),
- SaveFile,
- SaveFileAs,
- FileSaved(Result<PathBuf, Error>),
-}
+pub use error::Error;
+pub type Result<T> = core::result::Result<T, Error>;