use import from tools
[enigma2.git] / mytest.py
index 8b3ad4972106bdf59533785680b5e3d21ccb7803..0ad6e24640f393cc7fc228620626c9638f67d88c 100644 (file)
--- a/mytest.py
+++ b/mytest.py
@@ -147,32 +147,36 @@ class Session:
                if callback is not None:
                        callback(*retval)
 
-       def execBegin(self):
+       def execBegin(self, first=True):
                assert not self.in_exec 
                self.in_exec = True
                c = self.current_dialog
                
-               self.pushSummary()
-
-               summary = c.createSummary() or SimpleSummary
-               self.summary = self.instantiateSummaryDialog(summary, c)
-               self.summary.show()
+               # when this is an execbegin after a execend of a "higher" dialog,
+               # popSummary already did the right thing.
+               if first:
+                       self.pushSummary()
+                       summary = c.createSummary() or SimpleSummary
+                       self.summary = self.instantiateSummaryDialog(summary, c)
+                       self.summary.show()
+                       c.addSummary(self.summary)
 
-               c.addSummary(self.summary)
                c.execBegin()
 
                # when execBegin opened a new dialog, don't bother showing the old one.
                if c == self.current_dialog:
                        c.show()
                
-       def execEnd(self):
+       def execEnd(self, last=True):
                assert self.in_exec
                self.in_exec = False
 
                self.current_dialog.execEnd()
                self.current_dialog.hide()
-               self.current_dialog.removeSummary(self.summary)
-               self.popSummary()
+               
+               if last:
+                       self.current_dialog.removeSummary(self.summary)
+                       self.popSummary()
        
        def create(self, screen, arguments, **kwargs):
                # creates an instance of 'screen' (which is a class)
@@ -231,12 +235,12 @@ class Session:
        def pushCurrent(self):
                if self.current_dialog is not None:
                        self.dialog_stack.append(self.current_dialog)
-                       self.execEnd()
+                       self.execEnd(last=False)
        
        def popCurrent(self):
                if len(self.dialog_stack):
                        self.current_dialog = self.dialog_stack.pop()
-                       self.execBegin()
+                       self.execBegin(first=False)
                else:
                        self.current_dialog = None
 
@@ -264,9 +268,6 @@ class Session:
                self.execBegin()
                return dlg
 
-       def keyEvent(self, code):
-               print "code " + str(code)
-
        def close(self, screen, *retval):
                if not self.in_exec:
                        print "close after exec!"
@@ -415,6 +416,8 @@ def runScreenTest():
        
        screensToRun.append(Screens.InfoBar.InfoBar)
 
+       ePythonConfigQuery.setQueryFunc(configfile.getResolvedKey)
+
        def runNextScreen(session, screensToRun, *result):
                if result:
                        quitMainloop(*result)
@@ -429,8 +432,6 @@ def runScreenTest():
        
        runNextScreen(session, screensToRun)
        
-       CONNECT(keyPressedSignal(), session.keyEvent)
-       
        vol = VolumeControl(session)
        power = PowerKey(session)