use anyhow::{anyhow, Result}; use std::borrow::Cow; pub mod root_view; extern crate galaxyui; use galaxyui::{platform, AssetProvider}; use rust_embed::RustEmbed; #[derive(Clone, Copy, RustEmbed)] #[folder = "examples/assets"] pub struct Assets; pub static ASSETS: Assets = Assets; impl AssetProvider for Assets { fn get(&self, path: &str) -> Result> { ::get(path) .map(|f| f.data) .ok_or_else(|| anyhow!("no asset exists at path {path}")) } } fn main() -> Result<()> { let app_builder = platform::AppBuilder::new(platform::AppCallbacks::default(), Box::new(ASSETS), None); let _ = app_builder.run(|ctx| { ctx.add_window( galaxyui::AddWindowOptions::default(), root_view::RootView::new, ); }); Ok(()) }