summaryrefslogtreecommitdiff
path: root/src/types.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/types.rs22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/types.rs b/src/types.rs
index dfb85d8..64f10d0 100644
--- a/src/types.rs
+++ b/src/types.rs
@@ -22,9 +22,11 @@ pub type Element<'a, Message> = iced::Element<'a, Message, Theme>;
#[derive(Debug, Clone)]
pub enum Message {
ConfigLoad(Result<Config, Error>),
+ ConfigWrite(Result<(), Error>),
+ SaveConfigChanges(ConfigChangeType),
SwitchTheme(Event<Theme>),
CopyCode,
- SwitchPage(DesignerPane),
+ SwitchPane(DesignerPane),
EditorAction(text_editor::Action),
RefreshEditorContent,
DropNewElement(ElementName, iced::Point, iced::Rectangle),
@@ -59,3 +61,21 @@ pub enum DesignerPane {
DesignerView,
CodeView,
}
+
+impl From<DesignerPane> for Message {
+ fn from(pane: DesignerPane) -> Self {
+ Self::SwitchPane(pane)
+ }
+}
+
+#[derive(Debug, Clone, Copy)]
+pub enum ConfigChangeType {
+ LastProject,
+ SelectedTheme,
+}
+
+impl From<ConfigChangeType> for Message {
+ fn from(change: ConfigChangeType) -> Self {
+ Self::SaveConfigChanges(change)
+ }
+}