from __future__ import absolute_import
from . import tuiElement
from mylinux.libs import overrides
[docs]class Tui:
#Never fork application in new process!
fork = False
#--------------------------------------
@classmethod
[docs] def runSelectApp(cls,modelValues):
returning = {}
# View connections with controller
class Select(tuiElement.SelectApp):
@overrides(tuiElement.SelectApp)
def setModelValues(self):
self.modelValues = modelValues
@overrides(tuiElement.SelectApp)
def exit(self, packageNames):
returning['packageNames'] = packageNames
tui = Select()
tui.run(fork=cls.fork)
return returning
@classmethod
[docs] def runCreateApp(cls,modelValues):
returning = {}
# View connections with controller
class Create(tuiElement.CreateApp):
@overrides(tuiElement.CreateApp)
def setModelValues(self):
self.modelValues = modelValues
@overrides(tuiElement.CreateApp)
def exit(self, **returned):
for key in returned:
returning[key] = returned[key]
tui = Create()
tui.run(fork=cls.fork)
return returning
@classmethod
[docs] def runLogsApp(cls,modelValues):
returning = {}
class Logs(tuiElement.LogsApp):
@overrides(tuiElement.LogsApp)
def setModelValues(self):
self.modelValues = modelValues
@overrides(tuiElement.LogsApp)
def exit(self, **returned):
for key in returned:
returning[key] = returned[key]
tui = Logs()
tui.run(fork=cls.fork)
return returning