summaryrefslogtreecommitdiffstats
path: root/src/joshuto/ui.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/joshuto/ui.rs')
-rw-r--r--src/joshuto/ui.rs135
1 files changed, 0 insertions, 135 deletions
diff --git a/src/joshuto/ui.rs b/src/joshuto/ui.rs
index c8e0835..5a4b16d 100644
--- a/src/joshuto/ui.rs
+++ b/src/joshuto/ui.rs
@@ -4,7 +4,6 @@ extern crate wcwidth;
use std::fs;
use std::path;
-use joshuto::keymap;
use joshuto::structs;
use joshuto::unix;
use joshuto::window;
@@ -292,140 +291,6 @@ pub fn redraw_status(joshuto_view : &window::JoshutoView,
}
}
-pub fn get_str(win: &window::JoshutoPanel,
- coord: (i32, i32)) -> Option<String>
-{
- let user_input: Vec<(u8, char)> = Vec::new();
- get_str_prefill(win, coord, user_input, coord.1, 0)
-}
-
-pub fn get_str_append(win: &window::JoshutoPanel,
- coord: (i32, i32), start_str: String) -> Option<String>
-{
- let mut user_input: Vec<(u8, char)> = Vec::new();
- for (_, ch) in start_str.char_indices() {
- let char_len = wcwidth::char_width(ch).unwrap_or(1);
- user_input.push((char_len, ch));
- }
- let mut curs_x = coord.1;
- for (size, _) in &user_input {
- curs_x = curs_x + (*size) as i32;
- }
- let curr_index = user_input.len();
- get_str_prefill(win, coord, user_input, curs_x, curr_index)
-}
-
-pub fn get_str_prepend(win: &window::JoshutoPanel,
- coord: (i32, i32), start_str: String) -> Option<String>
-{
- let mut user_input: Vec<(u8, char)> = Vec::new();
- for (_, ch) in start_str.char_indices() {
- let char_len = wcwidth::char_width(ch).unwrap_or(1);
- user_input.push((char_len, ch));
- }
- get_str_prefill(win, coord, user_input, coord.1, 0)
-}
-
-pub fn get_str_prefill(win: &window::JoshutoPanel,
- coord: (i32, i32), mut user_input: Vec<(u8, char)>,
- mut curs_x: i32, mut curr_index: usize) -> Option<String>
-{
- loop {
- ncurses::wmove(win.win, coord.0, coord.1);
- for (_, ch) in &user_input {
- ncurses::waddstr(win.win, ch.to_string().as_str());
- }
- ncurses::waddstr(win.win, " ");
-
- ncurses::mvwchgat(win.win, coord.0, curs_x, 1,
- ncurses::A_STANDOUT(), 0);
- ncurses::wrefresh(win.win);
-
- let ch: i32 = ncurses::wgetch(win.win);
-
- if ch == keymap::ESCAPE {
- return None;
- } else if ch == keymap::ENTER {
- break;
- } else if ch == ncurses::KEY_HOME {
- if curr_index != 0 {
- curs_x = coord.1;
- curr_index = 0;
- }
- } else if ch == ncurses::KEY_END {
- let user_input_len = user_input.len();
- if curr_index != user_input_len {
- for i in curr_index..user_input_len {
- curs_x = curs_x + user_input[i].0 as i32;
- }
- curr_index = user_input_len;
- }
- } else if ch == ncurses::KEY_LEFT {
- if curr_index > 0 {
- curr_index = curr_index - 1;
- curs_x = curs_x - user_input[curr_index].0 as i32;
- }
- } else if ch == ncurses::KEY_RIGHT {
- let user_input_len = user_input.len();
- if curr_index < user_input_len {
- curs_x = curs_x + user_input[curr_index].0 as i32;
- curr_index = curr_index + 1;
- }
- } else if ch == keymap::BACKSPACE {
- let user_input_len = user_input.len();
-
- if user_input_len == 0 {
- continue;
- }
-
- if curr_index == user_input_len {
- curr_index = curr_index - 1;
- if let Some((size, _)) = user_input.pop() {
- curs_x = curs_x - size as i32;
- }
- } else if curr_index > 0 {
- curr_index = curr_index - 1;
- let (size, _) = user_input.remove(curr_index);
- curs_x = curs_x - size as i32;
- }
- } else if ch == ncurses::KEY_DC {
- let user_input_len = user_input.len();
-
- if user_input_len == 0 || curr_index == user_input_len {
- continue;
- }
-
- if curr_index > 0 {
- let (size, _) = user_input.remove(curr_index);
- if curr_index > user_input_len {
- curr_index = curr_index - 1;
- curs_x = curs_x - size as i32;
- }
- } else if curr_index == 0 {
- user_input.remove(curr_index);
- }
- } else {
- let user_input_len = user_input.len();
-
- let ch = ch as u8 as char;
- let char_len = wcwidth::char_width(ch).unwrap_or(1);
- let size_ch = (char_len, ch);
-
- if curr_index == user_input_len {
- user_input.push(size_ch);
- } else {
- user_input.insert(curr_index, size_ch);
- }
- curs_x = curs_x + user_input[curr_index].0 as i32;
- curr_index = curr_index + 1;
- }
- }
- let user_str: String = user_input.iter().map(|(_, ch)| ch).collect();
-
- return Some(user_str);
-
-}
-
pub fn draw_loading_bar(win: &window::JoshutoPanel, percentage: f32)
{
let cols: i32 = (win.cols as f32 * percentage) as i32;