a core-lightning dashboard i'm working on feature-gate it behind --clndash Signed-off-by: William Casarin <jb55@jb55.com>
27 lines
861 B
Rust
27 lines
861 B
Rust
use notedeck::{AppAction, AppContext};
|
|
use notedeck_clndash::ClnDash;
|
|
use notedeck_columns::Damus;
|
|
use notedeck_dave::Dave;
|
|
use notedeck_notebook::Notebook;
|
|
|
|
#[allow(clippy::large_enum_variant)]
|
|
pub enum NotedeckApp {
|
|
Dave(Box<Dave>),
|
|
Columns(Box<Damus>),
|
|
Notebook(Box<Notebook>),
|
|
ClnDash(Box<ClnDash>),
|
|
Other(Box<dyn notedeck::App>),
|
|
}
|
|
|
|
impl notedeck::App for NotedeckApp {
|
|
fn update(&mut self, ctx: &mut AppContext, ui: &mut egui::Ui) -> Option<AppAction> {
|
|
match self {
|
|
NotedeckApp::Dave(dave) => dave.update(ctx, ui),
|
|
NotedeckApp::Columns(columns) => columns.update(ctx, ui),
|
|
NotedeckApp::Notebook(notebook) => notebook.update(ctx, ui),
|
|
NotedeckApp::ClnDash(clndash) => clndash.update(ctx, ui),
|
|
NotedeckApp::Other(other) => other.update(ctx, ui),
|
|
}
|
|
}
|
|
}
|