Compare commits
2 Commits
542923ccef
...
877d300a5c
Author | SHA1 | Date | |
---|---|---|---|
|
877d300a5c | ||
|
05473a0a33 |
18
src/main.rs
18
src/main.rs
@ -1,5 +1,4 @@
|
||||
use eframe::egui;
|
||||
use std::io::Write as _;
|
||||
|
||||
use billy_sheet::gui::SheetGui;
|
||||
|
||||
@ -41,20 +40,9 @@ impl eframe::App for Gui {
|
||||
_frame.close();
|
||||
}
|
||||
if ui.button("Save in json").clicked() {
|
||||
let result = serde_json::to_string_pretty(&self.sheet);
|
||||
match result {
|
||||
Ok(sheet_str) => {
|
||||
let path = std::path::Path::new("./sheet.json");
|
||||
match std::fs::File::create(path) {
|
||||
Ok(mut file) => {
|
||||
if let Err(err) = write!(file, "{}", sheet_str) {
|
||||
println!("{err}");
|
||||
}
|
||||
}
|
||||
Err(error) => println!("{error}"),
|
||||
}
|
||||
}
|
||||
Err(error) => println!("{error}"),
|
||||
let path = std::path::Path::new("./sheet.json");
|
||||
if let Err(error) = billy_sheet::sheet::write_sheet(path, &self.sheet) {
|
||||
println!("{error}");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -1,6 +1,7 @@
|
||||
use eframe::egui::widgets::DragValue;
|
||||
use eframe::egui::Ui;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use std::io::Write as _;
|
||||
|
||||
use crate::gui::SheetGui;
|
||||
|
||||
@ -36,6 +37,12 @@ pub struct CharacterSheet {
|
||||
money: u32,
|
||||
}
|
||||
|
||||
pub fn write_sheet(path: &std::path::Path, sheet: &CharacterSheet) -> std::io::Result<()> {
|
||||
let sheet_str = serde_json::to_string_pretty(&sheet)?;
|
||||
let mut file = std::fs::File::create(path)?;
|
||||
write!(file, "{}", sheet_str)
|
||||
}
|
||||
|
||||
impl CharacterSheet {
|
||||
pub fn character_class(&self) -> &Classe {
|
||||
&self.character_class
|
||||
|
Loading…
Reference in New Issue
Block a user