#TODO move this to skin.xml
skin = """
<screen position="100,100" size="550,400" title="Command execution..." >
- <widget name="text" position="0,0" size="550,400" font="Regular;15" />
+ <widget name="text" position="0,0" size="550,400" font="Console;14" />
</screen>"""
def __init__(self, session, title = "Console", cmdlist = None, finishedCallback = None, closeOnSuccess = False):
- self.skin = Console.skin
Screen.__init__(self, session)
self.finishedCallback = finishedCallback
self.container = eConsoleAppContainer()
self.run = 0
- self.container.appClosed.get().append(self.runFinished)
- self.container.dataAvail.get().append(self.dataAvail)
+ self.container.appClosed.append(self.runFinished)
+ self.container.dataAvail.append(self.dataAvail)
self.onLayoutFinish.append(self.startRun) # dont start before gui is finished
def updateTitle(self):
str = self["text"].getText()
str += _("Execution finished!!");
self["text"].setText(str)
+ self["text"].lastPage()
if self.finishedCallback is not None:
self.finishedCallback()
if not retval and self.closeOnSuccess:
def cancel(self):
if self.run == len(self.cmdlist):
self.close()
- self.container.appClosed.get().remove(self.runFinished)
- self.container.dataAvail.get().remove(self.dataAvail)
+ self.container.appClosed.remove(self.runFinished)
+ self.container.dataAvail.remove(self.dataAvail)
def dataAvail(self, str):
self["text"].setText(self["text"].getText() + str)