Implemented opening of pdfs

This commit is contained in:
2024-01-16 23:28:00 +01:00
parent f4bbbc330c
commit e47c9afe33
4 changed files with 153 additions and 13 deletions

View File

@@ -17,6 +17,7 @@ struct AppModel {
#[derive(Debug)]
enum AppInput {
McduInput(char),
SheetPressed(PathBuf),
}
#[relm4::component]
@@ -71,9 +72,14 @@ impl SimpleComponent for AppModel {
mcdu::McduOutput::ButtonPress(c) => AppInput::McduInput(c),
});
let sheet_listing = SheetListingModel::builder()
.launch(path)
.forward(sender.input_sender(), |_response| todo!());
let sheet_listing =
SheetListingModel::builder()
.launch(path)
.forward(sender.input_sender(), |response| match response {
sheet_listing::SheetPressedMessage::SheetPressed(path) => {
AppInput::SheetPressed(path)
}
});
let model = AppModel {
text: String::from("Text: "),
@@ -89,6 +95,7 @@ impl SimpleComponent for AppModel {
fn update(&mut self, message: Self::Input, _sender: ComponentSender<Self>) {
match message {
AppInput::McduInput(c) => self.text.push(c),
AppInput::SheetPressed(sheet) => opener::open(sheet).unwrap(),
}
}
}