mod cache; mod config; mod database_connection; mod dialog; mod gui; mod paths; mod settings; mod shortcut; mod style; mod theme; mod traits; mod window_settings; pub use cache::Cache; pub use database_connection::DatabaseConnection; use anyhow::Context; use crate::{ cache::get_cache, config::Config, gui::Gui, settings::make_settings, theme::make_theme, window_settings::make_window_settings, }; fn main() -> anyhow::Result<()> { let cache = get_cache().unwrap_or_else(|_| Cache::default()); let config = Config::default(); iced::application(move || Gui::new(&cache), Gui::update, Gui::view) .settings(make_settings(&config.clone())) .subscription(gui::subscription) .theme(make_theme) .window(make_window_settings(&config.clone())) .run() .context("Failed to run Schist GUI") }