made settings persistant

This commit is contained in:
grimsace
2026-03-06 09:42:57 -06:00
parent 83695f5d1d
commit 70eb567cf4
5 changed files with 62 additions and 4 deletions
+10 -1
View File
@@ -1,4 +1,5 @@
mod layout;
mod persistence;
mod seed;
mod ui;
@@ -26,7 +27,7 @@ struct DungeonApp {
impl Default for DungeonApp {
fn default() -> Self {
let settings = UiSettings::default();
let settings = persistence::load_settings().unwrap_or_default();
let layout = generate_layout(
settings.cols,
settings.rows,
@@ -43,6 +44,14 @@ impl Default for DungeonApp {
}
}
impl Drop for DungeonApp {
fn drop(&mut self) {
if let Err(err) = persistence::save_settings(&self.settings) {
eprintln!("Failed to save settings: {err}");
}
}
}
impl eframe::App for DungeonApp {
fn update(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame) {
let panel_result = draw_side_panel(ctx, &mut self.settings);