dont try to install no more existing ScartLoopThrough.py
[enigma2.git] / mytest.py
index 26edd6b9747633f3be84090e66fff7bc5973e476..4c30de93ba01c020db832d9ea3108312b6cf40b2 100644 (file)
--- a/mytest.py
+++ b/mytest.py
@@ -19,6 +19,9 @@ import time
 
 import ServiceReference
 
+from Components.ParentalControl import InitParentalControl
+InitParentalControl()
+
 from Navigation import Navigation
 
 from skin import readSkin, applyAllAttributes
@@ -34,6 +37,9 @@ try:
        import e2reactor
        e2reactor.install()
        
+       import twisted.python.runtime
+       twisted.python.runtime.platform.supportsThreads = lambda: False
+       
        from twisted.internet import reactor
        
        def runReactor():
@@ -409,6 +415,31 @@ class PowerKey:
                # halt
                quitMainloop(1)
 
+from Screens.Scart import Scart
+
+class AutoScartControl:
+       def __init__(self, session):
+               self.force = False
+               self.current_vcr_sb = eAVSwitch.getInstance().getVCRSlowBlanking()
+               if self.current_vcr_sb and config.av.vcrswitch.value:
+                       self.scartDialog = session.instantiateDialog(Scart, True)
+               else:
+                       self.scartDialog = session.instantiateDialog(Scart, False)
+               config.av.vcrswitch.addNotifier(self.recheckVCRSb)
+               eAVSwitch.getInstance().vcr_sb_notifier.get().append(self.VCRSbChanged)
+
+       def recheckVCRSb(self, configElement):
+               self.VCRSbChanged(self.current_vcr_sb)
+
+       def VCRSbChanged(self, value):
+               #print "vcr sb changed to", value
+               self.current_vcr_sb = value
+               if config.av.vcrswitch.value or value > 2:
+                       if value:
+                               self.scartDialog.showMessageBox()
+                       else:
+                               self.scartDialog.switchToTV()
+
 def runScreenTest():
        plugins.readPluginList(resolveFilename(SCOPE_PLUGINS))
 
@@ -441,6 +472,9 @@ def runScreenTest():
        
        vol = VolumeControl(session)
        power = PowerKey(session)
+
+       # we need session.scart to access it from within menu.xml
+       session.scart = AutoScartControl(session)
        
        runReactor()
        
@@ -499,6 +533,9 @@ try:
        runScreenTest()
 
        plugins.shutdown()
+       
+       from Components.ParentalControl import parentalControl
+       parentalControl.save()
 except:
        print 'EXCEPTION IN PYTHON STARTUP CODE:'
        print '-'*60