Files
notedeck/crates/notedeck_columns/src/ui/preview.rs
William Casarin fcac49a0a5 previews: run previews as notedeck apps
This allows ./preview to be a notedeck app runner. I am currently
using it for the ProfilePic app (which will because notedeck_viz)

Signed-off-by: William Casarin <jb55@jb55.com>
2024-12-20 15:39:26 -08:00

27 lines
540 B
Rust

pub struct PreviewConfig {
pub is_mobile: bool,
}
pub trait Preview {
type Prev: notedeck::App;
fn preview(cfg: PreviewConfig) -> Self::Prev;
}
pub struct PreviewApp {
view: Box<dyn notedeck::App>,
}
impl PreviewApp {
pub fn new(view: impl notedeck::App + 'static) -> PreviewApp {
let view = Box::new(view);
Self { view }
}
}
impl notedeck::App for PreviewApp {
fn update(&mut self, app_ctx: &mut notedeck::AppContext<'_>, ui: &mut egui::Ui) {
self.view.update(app_ctx, ui);
}
}