From 227b47f4d3507a09e712e9a9bcb48b4dd649d9f7 Mon Sep 17 00:00:00 2001 From: Daniel Redd Jones Date: Thu, 27 Jul 2023 18:56:14 -0500 Subject: [PATCH] - Added page turning TODO: add scrolling and newline support --- src/main.rs | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/src/main.rs b/src/main.rs index 5a644d2..1d73576 100644 --- a/src/main.rs +++ b/src/main.rs @@ -23,7 +23,7 @@ fn library_exists(){ //if /var/lib/bibliofile/library does not exist, create it. let mut library_exist_var = Path::exists("/var/lib/bibliofile/library".as_ref()); - println!("{}", library_exist_var); + if library_exist_var == false{ fs::create_dir_all("/var/lib/bibliofile/library").expect("Error...could not create library. If this is your first time running Bibliofile, try running with sudo."); } @@ -51,39 +51,41 @@ fn epub_func(epub_file: &str){ let doc = EpubDoc::new(&epub_file); assert!(doc.is_ok()); + let mut doc = doc.unwrap(); let term: Term<()> = Term::with_height(TermHeight::Percent(90)).unwrap(); let _ = term.clear(); - - - - - - - - + let _ = term.print(0, 0, "Use the left and right button to turn the page.\nUp and down scrolls. Press escape or q to quit."); + let _ = term.present(); let mut page_num = 1; + + + + //If letter q pressed, closes program. while let Ok(ev) = term.poll_event() { - let _ = term.clear(); + match ev { Event::Key(Key::ESC) | Event::Key(Key::Char('q')) => break, + Event::Key(Key::Right) => page_num = page_num + 1, + Event::Key(Key::Left) => page_num = page_num - 1, _ => {} } - - - doc.set_current_page(page_num); - + let attr = Attr{ fg: Color::WHITE, ..Attr::default() }; let content = doc.get_current_str(); let str_content = content.unwrap(); let text = html_module::main(str_content.0); - let _ = term.print(0, 0, &*text); + let _ = term.print(1, 0, &*text); + //let _ = term.set_cursor(0, 0); let _ = term.present(); + + //let _ = term.clear(); + } }