Source code for mylinux.view.tuiElement.CreateApp

from __future__ import absolute_import

import npyscreen

from mylinux.libs import overrides
from mylinux.libs import AppErr

from .CreateForm import CreateForm

[docs]class CreateApp(npyscreen.NPSAppManaged): requiredModelValues = [ 'hints', 'packageName', 'package-install', 'package-purge', 'config-install', 'config-purge', 'test.py' ] @overrides(npyscreen.NPSAppManaged)
[docs] def onStart(self): self.setModelValues() self.checkModelValues() self.mainForm = CreateForm( name='Create package: {0}'.format(self.modelValues['packageName']), lines=40, columns=80 ) self.mainForm.hints = self.modelValues['hints'] self.mainForm.packageInstall.entry_widget.values = self.modelValues['package-install'] self.mainForm.packagePurge.entry_widget.values = self.modelValues['package-purge'] self.mainForm.configInstall.entry_widget.values = self.modelValues['config-install'] self.mainForm.configPurge.entry_widget.values = self.modelValues['config-purge'] self.mainForm.test.entry_widget.values = self.modelValues['test.py'] ''' REGISTER FORM ''' self.registerForm('MAIN', self.mainForm)
@overrides(npyscreen.NPSAppManaged)
[docs] def onCleanExit(self): self.exit( info={ 'module': self.mainForm.moduleName.value, 'class': self.mainForm.className.value, 'info': self.mainForm.info.value }, scripts={ 'package-install': '\n'.join(self.mainForm.packageInstall.entry_widget.values), 'package-purge': '\n'.join(self.mainForm.packagePurge.entry_widget.values), 'config-install': '\n'.join(self.mainForm.configInstall.entry_widget.values), 'config-purge': '\n'.join(self.mainForm.configPurge.entry_widget.values), 'test.py': '\n'.join(self.mainForm.test.entry_widget.values) } )
[docs] def checkModelValues(self): error = [] for requiredElement in CreateApp.requiredModelValues: if not requiredElement in self.modelValues: error.append(requiredElement) if error: raise AppErr.developer('Missing in modelValues! ==> ' + str(error))
[docs] def setModelValues(self): pass
[docs] def exit(self, **returned): pass