controller
dev_tool.tui.controller
log = logging.getLogger(__name__)
module-attribute
MenuController
A controller class for the TUI menu.
This class handles user input and navigation in the TUI menu.
The constructor for the MenuController class.
Parameters:
-
terminal(Terminal) –The blessed Terminal instance.
-
ui(UserInterface) –The user interface instance.
Source code in dev_tool/tui/controller.py
command = None
instance-attribute
event_manager = CONTEXT.get_event_manager()
instance-attribute
lock = threading.Lock()
instance-attribute
notification = CONTEXT.get_notification_manager(terminal)
instance-attribute
previous_height = terminal.height
instance-attribute
previous_view = ViewType.MAIN_MENU
instance-attribute
previous_width = terminal.width
instance-attribute
running = True
instance-attribute
should_restart = False
instance-attribute
terminal = terminal
instance-attribute
ui = ui
instance-attribute
views = ViewManager(terminal, ui)
instance-attribute
handle_input
A method that handles user input.
Parameters:
-
key(str) –The key name.
Source code in dev_tool/tui/controller.py
is_resized
A method that checks if the terminal size has changed.
Returns:
-
bool–True if terminal was resized, False otherwise.
Source code in dev_tool/tui/controller.py
restart
run
A method that runs the menu controller's main loop.