diff options
author | Joe <rbo@gmx.us> | 2025-02-28 12:30:17 +0100 |
---|---|---|
committer | Joe <rbo@gmx.us> | 2025-02-28 12:30:17 +0100 |
commit | 397e45ad924ed97e7da0731fc54e3dccaf02cb20 (patch) | |
tree | 8dd171cdae05bb5fd61029e58725d84adaabf2d0 | |
parent | here (diff) | |
download | hardflip-397e45ad924ed97e7da0731fc54e3dccaf02cb20.tar.gz hardflip-397e45ad924ed97e7da0731fc54e3dccaf02cb20.tar.bz2 hardflip-397e45ad924ed97e7da0731fc54e3dccaf02cb20.tar.xz hardflip-397e45ad924ed97e7da0731fc54e3dccaf02cb20.tar.zst hardflip-397e45ad924ed97e7da0731fc54e3dccaf02cb20.zip |
fuck im reseting this shit hard
Diffstat (limited to '')
-rw-r--r-- | src/e_keys.go | 1 | ||||
-rw-r--r-- | src/i_ui.go | 82 |
2 files changed, 55 insertions, 28 deletions
diff --git a/src/e_keys.go b/src/e_keys.go index ce378eb..859a925 100644 --- a/src/e_keys.go +++ b/src/e_keys.go @@ -372,6 +372,7 @@ func e_insert_name_events(data *HardData, ui *HardUI, tmp = data.litems.head } data.litems.curr = tmp + data.litems.reset_id() } else if event.Key() == tcell.KeyEnter { if ui.buff.len() == 0 { ui.s.HideCursor() diff --git a/src/i_ui.go b/src/i_ui.go index 486cc29..fd65c32 100644 --- a/src/i_ui.go +++ b/src/i_ui.go @@ -239,7 +239,9 @@ func i_draw_bottom_text(ui HardUI, insert *HostNode, insert_err []error) { text = ui.msg_buff } else { switch ui.mode { - case NORMAL_MODE: + case NORMAL_MODE, + INSERT_NAME_MODE, + RENAME_MODE: text = NORMAL_KEYS_HINTS case DELETE_MODE: text = CONFIRM_KEYS_HINTS @@ -511,32 +513,54 @@ func i_prompt_dir(ui HardUI, prompt string, home_dir string) { ui.s.ShowCursor(len(prompt) + 1 + ui.buff.cursor, ui.dim[H] - 1) } -func i_prompt_insert(ui HardUI, curr *ItemsNode) { - path := "/" - if curr != nil { - if ui.mode == RENAME_MODE { - if curr.is_dir() == false { - path = curr.path() - } else { - path = curr.Dirs.Parent.path() - } - } else { - path = curr.path() +func i_prompt_insert(ui HardUI, litems *ItemsList, icons bool, curr *ItemsNode) { + // path := "/" + // if curr != nil { + // if ui.mode == RENAME_MODE { + // if curr.is_dir() == false { + // path = curr.path() + // } else { + // path = curr.Dirs.Parent.path() + // } + // } else { + // path = curr.path() + // } + // } + // path = path[1:] + // prompt := "Name: " + // i_draw_text(ui.s, + // 1, ui.dim[H] - 1, ui.dim[W] - 1, ui.dim[H] - 1, + // ui.style[DEF_STYLE], prompt) + // i_draw_text(ui.s, len(prompt) + 1, + // ui.dim[H] - 1, ui.dim[W] - 1, ui.dim[H] - 1, + // ui.style[DEF_STYLE], path) + // i_draw_text(ui.s, len(prompt) + 1 + len(path), + // ui.dim[H] - 1, ui.dim[W] - 1, ui.dim[H] - 1, + // ui.style[DEF_STYLE].Bold(true), ui.buff.str()) + // ui.s.ShowCursor(len(prompt) + 1 + len(path) + + // ui.buff.cursor, ui.dim[H] - 1) + // FIX: fix this shit + + logger.Println("draw: ", litems.draw.ID) + logger.Println("curr: ", litems.curr.ID) + spaces := 1 + depth := 0 + ptr := litems.curr; + if ptr.is_dir() == false && ptr.Host != nil { + depth = int(ptr.Host.parent.Depth) + for i := 0; i < depth + 1 - 2; i++ { + spaces += 2 + } + } else if ptr.Dirs != nil { + depth = int(ptr.Dirs.Depth) + for i := 0; i < int(depth) - 2; i++ { + spaces += 2 } } - path = path[1:] - prompt := "Name: " - i_draw_text(ui.s, - 1, ui.dim[H] - 1, ui.dim[W] - 1, ui.dim[H] - 1, - ui.style[DEF_STYLE], prompt) - i_draw_text(ui.s, len(prompt) + 1, - ui.dim[H] - 1, ui.dim[W] - 1, ui.dim[H] - 1, - ui.style[DEF_STYLE], path) - i_draw_text(ui.s, len(prompt) + 1 + len(path), - ui.dim[H] - 1, ui.dim[W] - 1, ui.dim[H] - 1, - ui.style[DEF_STYLE].Bold(true), ui.buff.str()) - ui.s.ShowCursor(len(prompt) + 1 + len(path) + - ui.buff.cursor, ui.dim[H] - 1) + if icons == true { + spaces += 2 + } + ui.s.ShowCursor(1 + spaces + ui.buff.cursor, 1 + litems.curr.ID - litems.draw.ID) } func i_prompt_fuzz(ui HardUI) { @@ -892,14 +916,16 @@ func i_ui(data_dir string) { case MKDIR_MODE: i_prompt_mkdir(data.ui, data.litems.curr) case INSERT_NAME_MODE: - i_prompt_insert(data.ui, data.litems.curr) + i_prompt_insert(data.ui, data.litems, + data.opts.Icon, data.litems.curr) case INSERT_MODE: - i_draw_insert_panel(&data.ui, data.insert, data.home_dir) + // i_draw_insert_panel(&data.ui, data.insert, data.home_dir) if data.insert_err != nil { i_draw_insert_err_msg(data.ui, data.insert_err) } case RENAME_MODE: - i_prompt_insert(data.ui, data.litems.curr) + i_prompt_insert(data.ui, data.litems, + data.opts.Icon, data.litems.curr) case HELP_MODE: i_draw_help(&data.ui) case FUZZ_MODE: |