diff options
author | Jiayi Zhao <jeff.no.zhao@gmail.com> | 2018-12-22 12:14:10 -0500 |
---|---|---|
committer | Jiayi Zhao <jeff.no.zhao@gmail.com> | 2018-12-22 12:14:10 -0500 |
commit | 1a54f9b06c2e5d7b28d85ffb7cde06f8ea8e00f0 (patch) | |
tree | 2f5bf49567942ec908fcbb17117dce3562c12ccf /src | |
parent | 0ffc394d0a35580d04496fd67d363f5aa0315b30 (diff) |
clean up JoshutoView::new() and fix column ratios
Diffstat (limited to 'src')
-rw-r--r-- | src/joshuto/mod.rs | 2 | ||||
-rw-r--r-- | src/joshuto/structs.rs | 33 |
2 files changed, 21 insertions, 14 deletions
diff --git a/src/joshuto/mod.rs b/src/joshuto/mod.rs index ef1a925..fbb66c7 100644 --- a/src/joshuto/mod.rs +++ b/src/joshuto/mod.rs @@ -14,6 +14,7 @@ mod structs; mod ui; mod unix; mod navigation; +mod keymap; fn redraw_views(joshuto_view : &structs::JoshutoView, parent_view: Option<&structs::JoshutoDirList>, @@ -374,7 +375,6 @@ pub fn run(mut config_t : config::JoshutoConfig) let path = &curr_view.as_ref().unwrap() .contents.as_ref() .unwrap()[index].entry.path(); - eprintln!("path: {:?}", path); if path.is_file() { unix::open_file(&config_t.mimetypes, &joshuto_view.bot_win, path); diff --git a/src/joshuto/structs.rs b/src/joshuto/structs.rs index fdc36bd..1065cda 100644 --- a/src/joshuto/structs.rs +++ b/src/joshuto/structs.rs @@ -146,25 +146,32 @@ pub struct JoshutoView { impl JoshutoView { pub fn new(win_ratio : (usize, usize, usize)) -> JoshutoView { - let mut term_rows : i32 = 0; - let mut term_cols : i32 = 0; + let sum_ratio: usize = win_ratio.0 + win_ratio.1 + win_ratio.2; + + let mut term_rows: i32 = 0; + let mut term_cols: i32 = 0; ncurses::getmaxyx(ncurses::stdscr(), &mut term_rows, &mut term_cols); - let term_divide : usize = term_cols as usize / 7; + let term_divide: i32 = term_cols / sum_ratio as i32; - let top_win = JoshutoWindow::new(1, term_cols, (0, 0)); + let win_xy: (i32, i32) = (1, term_cols); + let win_coord: (usize, usize) = (0, 0); + let top_win = JoshutoWindow::new(win_xy.0, win_xy.1, win_coord); - let left_win = JoshutoWindow::new(term_rows - 2, - (term_divide * win_ratio.0) as i32 - 1, (1, 0)); + let win_xy: (i32, i32) = (term_rows - 2, (term_divide * win_ratio.0 as i32) - 2); + let win_coord: (usize, usize) = (1, 0); + let left_win = JoshutoWindow::new(win_xy.0, win_xy.1, win_coord); - let mid_win = JoshutoWindow::new(term_rows - 2, - (term_divide * win_ratio.1) as i32 - 1, - (1, term_divide * win_ratio.0)); + let win_xy: (i32, i32) = (term_rows - 2, (term_divide * win_ratio.1 as i32) - 2); + let win_coord: (usize, usize) = (1, term_divide as usize * win_ratio.0); + let mid_win = JoshutoWindow::new(win_xy.0, win_xy.1, win_coord); - let right_win = JoshutoWindow::new(term_rows - 2, - term_divide as i32 * 3 - 1, (1, term_divide * win_ratio.2)); + let win_xy: (i32, i32) = (term_rows - 2, (term_divide * win_ratio.2 as i32) - 2); + let win_coord: (usize, usize) = (1, term_divide as usize * win_ratio.2); + let right_win = JoshutoWindow::new(win_xy.0, win_xy.1, win_coord); - let bot_win = JoshutoWindow::new(1, term_cols, - (term_rows as usize - 1, 0)); + let win_xy: (i32, i32) = (1, term_cols); + let win_coord: (usize, usize) = (term_rows as usize - 2, 0); + let bot_win = JoshutoWindow::new(win_xy.0, win_xy.1, win_coord); ncurses::scrollok(top_win.win, true); ncurses::scrollok(bot_win.win, true); |