Ryan Barry has uploaded a new change for review. Change subject: Let applications specify their own quit function ......................................................................
Let applications specify their own quit function Keep the old behavior, and default to it if nothing is passed, but allow Application() objects (setup, installer, et al) to decide what happens when a user quits. Change-Id: I2bffc0e5ea625457bae1eb1106976de7a7053dbb Signed-off-by: Ryan Barry <[email protected]> --- M src/ovirt/node/app.py M src/ovirt/node/ui/urwid_builder.py 2 files changed, 5 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-node refs/changes/78/22378/1 diff --git a/src/ovirt/node/app.py b/src/ovirt/node/app.py index d522f3f..81d8192 100644 --- a/src/ovirt/node/app.py +++ b/src/ovirt/node/app.py @@ -70,7 +70,7 @@ ui_builder = None ui = None - def __init__(self, plugin_base, args, + def __init__(self, plugin_base, args, quit=None, ui_builder=urwid_builder.UrwidUIBuilder): """Constructs a new application @@ -94,6 +94,7 @@ self.ui_builder = ui_builder(self) self.ui = self.ui_builder.build(ui.Window("screen", self)) self.plugin_base = plugin_base + self.quit = quit if quit else self.app_quit def __parse_cmdline(self): if self.args.defaults: @@ -296,7 +297,7 @@ if console.wait_for_keypress() == 's': self.__drop_to_shell() - def quit(self): + def app_quit(self): self.logger.info("Quitting") self.ui.quit() diff --git a/src/ovirt/node/ui/urwid_builder.py b/src/ovirt/node/ui/urwid_builder.py index 4814998..152dedf 100644 --- a/src/ovirt/node/ui/urwid_builder.py +++ b/src/ovirt/node/ui/urwid_builder.py @@ -581,7 +581,8 @@ def _quit_if_no_dialogs(self): if self.topmost_dialog() is None: - self.quit() + self.application.quit() if self.application.quit is not \ + self.application.app_quit else self.quit() else: self.logger.debug("There are still open dialogs") -- To view, visit http://gerrit.ovirt.org/22378 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2bffc0e5ea625457bae1eb1106976de7a7053dbb Gerrit-PatchSet: 1 Gerrit-Project: ovirt-node Gerrit-Branch: master Gerrit-Owner: Ryan Barry <[email protected]> _______________________________________________ node-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/node-patches
