Source code for cursesmenu.items.external_item

"""A base class for menu items that need to exit the menu environment temporarily."""

import curses

import cursesmenu.utils
from cursesmenu.items.menu_item import MenuItem


[docs]class ExternalItem(MenuItem): """A base class for menu items that need to exit the menu environment\ temporarily."""
[docs] def set_up(self) -> None: """Return the console to its original state and pause the menu.""" assert self.menu is not None curses.def_prog_mode() self.menu.clear_screen() self.menu.pause() curses.endwin() cursesmenu.utils.soft_clear_terminal()
[docs] def clean_up(self) -> None: """Put the console back in curses mode and resume the menu.""" assert self.menu is not None curses.reset_prog_mode() self.menu.resume()