follow eThread changes: mainly thread_running -> sync, hasStarted()
[enigma2.git] / mytest.py
index 4ac9ed631e3905fd81507d835a14b8a86217d7c4..caad52068d55f7dd3d9b2ea3e7a7e070b64b1e6a 100644 (file)
--- a/mytest.py
+++ b/mytest.py
@@ -4,6 +4,12 @@ from tools import *
 
 from Components.Language import language
 
+def setEPGLanguage():
+       print "language set to", language.getLanguage()
+       eServiceEvent.setEPGLanguage(language.getLanguage())
+       
+language.addCallback(setEPGLanguage)
+
 import traceback
 import Screens.InfoBar
 from Screens.SimpleSummary import SimpleSummary
@@ -37,9 +43,9 @@ except ImportError:
 
 # initialize autorun plugins and plugin menu entries
 from Components.PluginComponent import plugins
-plugins.readPluginList(resolveFilename(SCOPE_PLUGINS))
 
 from Screens.Wizard import wizardManager
+from Screens.ImageWizard import *
 from Screens.StartWizard import *
 from Screens.TutorialWizard import *
 from Tools.BoundFunction import boundFunction
@@ -94,6 +100,9 @@ class Session:
                self.dialog_stack = [ ]
                self.summary_stack = [ ]
                self.summary = None
+               
+               for p in plugins.getPlugins(PluginDescriptor.WHERE_SESSIONSTART):
+                       p(reason=0, session=self)
        
        def processDelay(self):
                self.execEnd()
@@ -302,7 +311,50 @@ class VolumeControl:
                else:
                        self.muteDialog.hide()
 
+from Screens.Standby import Standby
+
+class PowerKey:
+       """ PowerKey stuff - handles the powerkey press and powerkey release actions"""
+       
+       def __init__(self, session):
+               self.session = session
+               self.powerKeyTimer = eTimer()
+               self.powerKeyTimer.timeout.get().append(self.powertimer)
+               globalActionMap.actions["powerdown"]=self.powerdown
+               globalActionMap.actions["powerup"]=self.powerup
+               
+#              self["PowerKeyActions"] = HelpableActionMap(self, "PowerKeyActions",
+                       #{
+                               #"powerdown": self.powerdown,
+                               #"powerup": self.powerup,
+                               #"discreteStandby": (self.standby, "Go standby"),
+                               #"discretePowerOff": (self.quit, "Go to deep standby"),
+                       #})
+
+       def powertimer(self):   
+               print "PowerOff - Now!"
+               self.quit()
+       
+       def powerdown(self):
+               self.standbyblocked = 0
+               self.powerKeyTimer.start(3000, True)
+
+       def powerup(self):
+               self.powerKeyTimer.stop()
+               if self.standbyblocked == 0:
+                       self.standbyblocked = 1
+                       self.standby()
+
+       def standby(self):
+               self.session.open(Standby, self)
+
+       def quit(self):
+               # halt
+               quitMainloop(1)
+
 def runScreenTest():
+       plugins.readPluginList(resolveFilename(SCOPE_PLUGINS))
+
        session = Session(desktop = getDesktop(0), summary_desktop = getDesktop(1), navigation = Navigation())
        
        screensToRun = [ ]
@@ -331,6 +383,7 @@ def runScreenTest():
        CONNECT(keyPressedSignal(), session.keyEvent)
        
        vol = VolumeControl(session)
+       power = PowerKey(session)
        
        runReactor()
        
@@ -352,7 +405,7 @@ def runScreenTest():
 import keymapparser
 keymapparser.readKeymap()
 import skin
-skin.loadSkin(getDesktop(0))
+skin.loadSkinData(getDesktop(0))
 
 import Components.InputDevice
 Components.InputDevice.InitInputDevices()