From d69aa1fef34804efef61848b4de3bd8d700aa929 Mon Sep 17 00:00:00 2001 From: Arthur Roberts Date: Mon, 24 Jul 2023 22:37:13 +0100 Subject: [PATCH] Added some a potential way forward with config and add/move/nothing --- src/config.rs | 11 +++++++++++ src/main.rs | 5 ++--- src/wad.rs | 1 + 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/config.rs b/src/config.rs index 689f4fc..bdb9b03 100644 --- a/src/config.rs +++ b/src/config.rs @@ -4,10 +4,18 @@ use std::path::PathBuf; use toml; use directories; +#[derive(Serialize, Deserialize, Debug)] +pub enum AddMode { + DoNothing, + Copy, + Move, +} + #[derive(Serialize, Deserialize, Debug, Default)] pub struct Config { pub iwads_added_folder: Option, pub iwads_removed_folder: Option, + pub add_mode: Option, pub iwads: Option>, pub pwads: Option>, pub launchers: Option>, @@ -114,6 +122,9 @@ path = \"/home/pwads/aa.pk3\""; iwads: Some(iwads), launchers: Some(vec![launcher]), pwads: None, + iwads_added_folder: None, + iwads_removed_folder: None, + add_mode: None, }; let toml_as_str = toml::to_string(&config).unwrap(); let new_config: Config = toml::from_str(&toml_as_str).unwrap(); diff --git a/src/main.rs b/src/main.rs index 34d3be3..8ce18c5 100644 --- a/src/main.rs +++ b/src/main.rs @@ -74,7 +74,7 @@ impl RustDoomLauncher { fn get_config_file_stuff(&mut self) { self.config = match load_config(&self.config_filename) { Ok(c) => Some(c), - Err(e) => None, + Err(_e) => None, }; if let Some(config) = &self.config { if let Some(iwads) = &config.iwads { @@ -391,8 +391,7 @@ impl eframe::App for RustDoomLauncher { iwads: Some(self.iwad_manager.selectable.clone()), pwads: Some(self.pwad_manager.selectable.clone()), launchers: Some(self.launcher_manager.selectable.clone()), - iwads_added_folder: None, - iwads_removed_folder: None, + ..Default::default() }; save_config(&self.config_filename, &config).unwrap(); frame.close(); diff --git a/src/wad.rs b/src/wad.rs index f598a85..808c568 100644 --- a/src/wad.rs +++ b/src/wad.rs @@ -316,6 +316,7 @@ mod tests { } #[test] + #[ignore] fn test_guess_at_difficulty() { let freedoom_iwad = PathBuf::from("freedoom1.wad"); let ow = open_wad(&freedoom_iwad);