This commit is contained in:
Digital Studium 2024-04-12 10:58:29 +03:00
parent 7ebfecbcfa
commit b25d6d7758
1 changed files with 10 additions and 7 deletions

17
kls
View File

@ -107,7 +107,7 @@ def draw_rows(menu):
for index, row in enumerate(filtered_rows): # рисуем то, что отфильтровали for index, row in enumerate(filtered_rows): # рисуем то, что отфильтровали
menu.win.addstr(index + 3, 2, row) menu.win.addstr(index + 3, 2, row)
# выделяем выбранную строку # выделяем выбранную строку
menu.win.addstr(3, 2, filtered_rows[menu.selected_row], curses.A_REVERSE | curses.A_ITALIC) menu.win.addstr(3 + menu.selected_row, 2, filtered_rows[menu.selected_row], curses.A_REVERSE | curses.A_ITALIC)
menu.win.box() menu.win.box()
menu.win.refresh() menu.win.refresh()
@ -131,6 +131,11 @@ def draw_menu(menu):
draw_search_box(menu) # рисуем строку поиска draw_search_box(menu) # рисуем строку поиска
def draw_window():
for menu in menus:
draw_menu(menu)
def catch_input(menu): def catch_input(menu):
global running global running
key_pressed = screen.getkey() key_pressed = screen.getkey()
@ -178,8 +183,7 @@ def catch_input(menu):
command = f"f'kubectl -n {namespace} logs {resource} | batcat -l log --paging always --style numbers'" command = f"f'kubectl -n {namespace} logs {resource} | batcat -l log --paging always --style numbers'"
# raise ValueError(str(menu.state) + ' ' + eval(command)) # raise ValueError(str(menu.state) + ' ' + eval(command))
run_command(command, namespace, api_resource, resource) run_command(command, namespace, api_resource, resource)
for menu in menus: draw_window()
draw_menu(menu)
elif (key_pressed.isalpha() or key_pressed == "-") and menu.state == SELECTED_WITH_SEARCH: # объекты в кубе не могут иметь иных символов кроме a-z и - elif (key_pressed.isalpha() or key_pressed == "-") and menu.state == SELECTED_WITH_SEARCH: # объекты в кубе не могут иметь иных символов кроме a-z и -
menu.filter += key_pressed menu.filter += key_pressed
menu.selected_row = 0 menu.selected_row = 0
@ -202,8 +206,8 @@ def navigate_horizontally(direction, menu):
next_menu.state = SELECTED_WITH_SEARCH next_menu.state = SELECTED_WITH_SEARCH
else: else:
next_menu.state = SELECTED_WITHOUT_SEARCH next_menu.state = SELECTED_WITHOUT_SEARCH
draw_header(menu) # убираем выделение с текущего меню draw_header(menu) # убираем выделение с заголовка текущего меню
draw_header(next_menu) # выделяем заголовок следующего меню draw_header(next_menu) # выделяем заголовок следующего/предыдущего меню
def navigate_vertically(direction, menu): def navigate_vertically(direction, menu):
@ -223,8 +227,7 @@ def main(screen):
global running global running
screen.refresh() screen.refresh()
# рисуем начальный экран # рисуем начальный экран
for menu in menus: draw_window()
draw_menu(menu)
while running: while running:
### выбрано первое меню ### ### выбрано первое меню ###
if menu1.state in [1, 2]: if menu1.state in [1, 2]: