mirror of
https://github.com/akuker/RASCSI.git
synced 2024-05-28 09:41:33 +00:00
52e4a92aec
* Bump black from 22.8.0 to 24.3.0 in /python/web Bumps [black](https://github.com/psf/black) from 22.8.0 to 24.3.0. - [Release notes](https://github.com/psf/black/releases) - [Changelog](https://github.com/psf/black/blob/main/CHANGES.md) - [Commits](https://github.com/psf/black/compare/22.8.0...24.3.0) --- updated-dependencies: - dependency-name: black dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> * Github CI: Backend web test runner use python 3.9.19 * Reformat python sources with black * Docker: Bump to python 3.9-slim image for pytest * Bump pytest version to 8.1.1 * Bump more library versions, and freeze them --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Daniel Markstedt <daniel@mindani.net>
39 lines
1.6 KiB
Python
39 lines
1.6 KiB
Python
"""Module implementing the PiSCSI Control Board UI specific menu controller"""
|
|
|
|
from ctrlboard_menu_builder import CtrlBoardMenuBuilder
|
|
from menu.menu_builder import MenuBuilder
|
|
from menu.menu_controller import MenuController
|
|
from menu.menu_renderer import MenuRenderer
|
|
from menu.timer import Timer
|
|
|
|
|
|
class PiscsiMenuController(MenuController):
|
|
"""Class implementing a PiSCSI Control Board UI specific menu controller"""
|
|
|
|
def __init__(
|
|
self,
|
|
refresh_interval,
|
|
menu_builder: MenuBuilder,
|
|
menu_renderer=None,
|
|
menu_renderer_config=None,
|
|
):
|
|
super().__init__(menu_builder, menu_renderer, menu_renderer_config)
|
|
self._refresh_interval = refresh_interval
|
|
self._menu_renderer: MenuRenderer = menu_renderer
|
|
self._scsi_list_refresh_timer_flag = Timer(self._refresh_interval)
|
|
|
|
def segue(self, name, context_object=None, transition_attributes=None):
|
|
super().segue(name, context_object, transition_attributes)
|
|
self._scsi_list_refresh_timer_flag.reset_timer()
|
|
|
|
def update(self):
|
|
super().update()
|
|
|
|
if self.get_active_menu().name == CtrlBoardMenuBuilder.SCSI_ID_MENU:
|
|
self._scsi_list_refresh_timer_flag.check_timer()
|
|
if self._scsi_list_refresh_timer_flag.enabled is True:
|
|
self._scsi_list_refresh_timer_flag.reset_timer()
|
|
self.refresh(name=CtrlBoardMenuBuilder.SCSI_ID_MENU)
|
|
if self._menu_renderer.screensaver.enabled is False:
|
|
self.set_active_menu(CtrlBoardMenuBuilder.SCSI_ID_MENU, display_on_device=False)
|