From a1108cacdba5f26e67bfdca659ff28c16b35dd6d Mon Sep 17 00:00:00 2001 From: Legalo Date: Tue, 26 Mar 2024 22:13:21 -0300 Subject: [PATCH] Added checkboxes (That don't do anything yet) --- src/item_info.rs | 23 ++++++++++++++++++++++- src/main.rs | 2 +- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/item_info.rs b/src/item_info.rs index 4c3732b..bfed2e8 100644 --- a/src/item_info.rs +++ b/src/item_info.rs @@ -1,9 +1,10 @@ use super::file_field::FileField; -use iced::widget::{column, text, text_input}; +use iced::widget::{column, text, text_input,checkbox}; use iced::Element; use std::path::PathBuf; use steamworks::{PublishedFileId, QueryResult}; + #[derive(Debug, Clone, PartialEq, Eq)] pub enum ItemInfoMessage { EditName(String), @@ -12,6 +13,8 @@ pub enum ItemInfoMessage { BrowsePreviewImage, BrowseTargetFolder, EditChangeNotes(String), + AbsToggled(bool), + ConvertToggled(bool), } #[derive(Debug, Clone, PartialEq, Eq)] @@ -20,6 +23,8 @@ pub struct ItemInfoState { preview_image: FileField, target_folder: FileField, change_notes: String, + use_abs_path: bool, + convert_rpy: bool, } impl Default for ItemInfoState { @@ -29,6 +34,8 @@ impl Default for ItemInfoState { preview_image: FileField::new(), target_folder: FileField::new(), change_notes: String::new(), + use_abs_path: false, + convert_rpy: true, } } } @@ -50,6 +57,8 @@ impl ItemInfoState { self.target_folder.select_dir(); } ItemInfoMessage::EditChangeNotes(new_notes) => self.change_notes = new_notes, + ItemInfoMessage::AbsToggled(value) => self.use_abs_path = value, + ItemInfoMessage::ConvertToggled(value) => self.convert_rpy = value, } } @@ -72,6 +81,9 @@ impl ItemInfoState { ItemInfoMessage::BrowsePreviewImage, ), text(" "), + checkbox("Use absolute path (Don't toggle if you don't know what it means!)", self.use_abs_path, ItemInfoMessage::AbsToggled), + checkbox("Convert rpy to rpym (Don't toggle if you don't know what it means!)", self.convert_rpy, ItemInfoMessage::AbsToggled), + text(" "), self.target_folder.view( "Target Folder:\n(What will be uploaded, this MUST be your mod's folder)\nFor example \"\\game\\mods\\YourMod\"", "", @@ -97,6 +109,9 @@ pub struct ItemInfo { pub preview_image: PathBuf, pub target_folder: PathBuf, pub change_notes: String, + pub use_abs_path: bool, + pub convert_rpy: bool, + } impl From for ItemInfoState { @@ -106,6 +121,8 @@ impl From for ItemInfoState { preview_image: FileField::from(value.preview_image), target_folder: FileField::from(value.target_folder), change_notes: value.change_notes, + use_abs_path: value.use_abs_path, + convert_rpy: value.convert_rpy, } } } @@ -117,6 +134,8 @@ impl From for ItemInfo { preview_image: PathBuf::new(), target_folder: PathBuf::new(), change_notes: String::new(), + use_abs_path: false, + convert_rpy: true, } } } @@ -163,6 +182,8 @@ impl TryFrom for ItemInfo { preview_image: value.preview_image.path, target_folder: value.target_folder.path, change_notes: value.change_notes, + use_abs_path: value.use_abs_path, + convert_rpy: value.convert_rpy, }) } } diff --git a/src/main.rs b/src/main.rs index 52b20a9..57142e6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -370,7 +370,7 @@ fn main() -> iced::Result { Model::run(Settings { id: None, window: iced::window::Settings { - size: (500, 600), + size: (500, 800), position: iced::window::Position::Centered, min_size: None, max_size: None,