X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/bc8ba2d89e7c71e95c1ee8e8e2da26a993e01997..baa6968ed152a4e78ba27e3e48364a6b62680db2:/lib/python/Screens/Console.py diff --git a/lib/python/Screens/Console.py b/lib/python/Screens/Console.py index 82fc8d1c..03b0249b 100644 --- a/lib/python/Screens/Console.py +++ b/lib/python/Screens/Console.py @@ -10,10 +10,12 @@ class Console(Screen): """ - def __init__(self, session, args = None): + def __init__(self, session, title = "Console", cmdlist = None, finishedCallback = None): self.skin = Console.skin Screen.__init__(self, session) + self.finishedCallback = finishedCallback + self["text"] = ScrollLabel("") self["actions"] = ActionMap(["WizardActions", "DirectionActions"], { @@ -23,7 +25,10 @@ class Console(Screen): "down": self["text"].pageDown }, -1) - self.cmdlist = args + self.cmdlist = cmdlist + self.newtitle = title + + self.onShown.append(self.updateTitle) self.container = eConsoleAppContainer() self.run = 0 @@ -31,6 +36,9 @@ class Console(Screen): self.container.dataAvail.get().append(self.dataAvail) self.onLayoutFinish.append(self.startRun) # dont start before gui is finished + def updateTitle(self): + self.setTitle(self.newtitle) + def startRun(self): self["text"].setText(_("Execution Progress:") + "\n\n") print "Console: executing in run", self.run, " the command:", self.cmdlist[self.run] @@ -44,6 +52,8 @@ class Console(Screen): str = self["text"].getText() str += _("Execution finished!!"); self["text"].setText(str) + if self.finishedCallback is not None: + self.finishedCallback() def cancel(self): if self.run == len(self.cmdlist):