Merge branch 'master' of /git/enigma2
authoracid-burn <acidburn@opendreambox.org>
Mon, 12 Oct 2009 17:23:44 +0000 (17:23 +0000)
committeracid-burn <acidburn@opendreambox.org>
Mon, 12 Oct 2009 17:23:44 +0000 (17:23 +0000)
data/keymap.xml
data/skin_default.xml
lib/python/Screens/SleepTimerEdit.py
po/de.po

index e207c3c9056cbc44b71684467e5312147f75b22b..25538f87f4f161a3cdfe9045041b6f1c7539911e 100755 (executable)
                <key id="KEY_RED" mapto="disableTimer" flags="mr" />
                <key id="KEY_YELLOW" mapto="toggleAsk" flags="mr" />
                <key id="KEY_GREEN" mapto="toggleAction" flags="mr" />
-               <!--key id="KEY_BLUE" mapto="settings" flags="mr" /-->
+               <key id="KEY_BLUE" mapto="useServiceTime" flags="mr" />
        </map>  
        
        <map context="CiSelectionActions">
index e72095f474f6925ebd1c564fb2b2988450923ce1..065d99d908a7f00f1760d3e2a745197bfe92f26f 100755 (executable)
@@ -893,16 +893,16 @@ self.instance.move(ePoint(orgpos.x() + (orgwidth - newwidth)/2, orgpos.y()))
                <widget source="introduction" render="Label" position="0,370" size="560,30" zPosition="10" font="Regular;21" halign="center" valign="center" backgroundColor="#25062748" transparent="1" />
        </screen>
        <!-- Sleeptimer edit -->
-       <screen name="SleepTimerEdit" position="center,center" size="500,200" title="Sleep Timer">
+       <screen name="SleepTimerEdit" position="center,center" size="500,240" title="Sleep Timer">
                <widget name="current_status" position="40,40" size="400,30" valign="center" font="Regular;20" />
                <widget name="red" pixmap="skin_default/buttons/button_red.png" position="10,88" size="12,12" alphatest="on" />
                <widget name="green" pixmap="skin_default/buttons/button_green.png" position="10,128" size="12,12" alphatest="on" />
                <widget name="yellow" pixmap="skin_default/buttons/button_yellow.png" position="10,168" size="12,12" alphatest="on" />
-               <widget name="blue" pixmap="skin_default/buttons/button_blue.png" position="10,168" size="12,12" alphatest="on" />
+               <widget name="blue" pixmap="skin_default/buttons/button_blue.png" position="10,208" size="12,12" alphatest="on" />
                <widget name="red_text" position="40,80" size="400,30" valign="center" font="Regular;20" />
                <widget name="green_text" position="40,120" size="400,30" valign="center" font="Regular;20" />
                <widget name="yellow_text" position="40,160" size="400,30" valign="center" font="Regular;20" />
-               <widget name="blue_text" position="40,200" size="400,30" valign="center" font="Regular;20" />
+               <widget name="blue_text" position="40,200" size="450,30" valign="center" font="Regular;20" />
                <widget name="pretext" position="15,10" size="235,25" font="Regular;19" />
                <widget name="input" position="260,10" size="40,25" font="Regular;19" />
                <widget name="aftertext" position="305,10" size="100,25" font="Regular;19" />
index 2416dd03d9905a1f37c579e06596776516d99782..1a4b65610cfc0491e2463012d01702b8a01a8e4e 100644 (file)
@@ -5,7 +5,9 @@ from Components.Input import Input
 from Components.Label import Label
 from Components.Pixmap import Pixmap
 from Components.config import config, ConfigInteger
+from enigma import eEPGCache
 from SleepTimer import SleepTimer
+from time import time
 
 config.SleepTimer.defaulttime = ConfigInteger(default = 30)
 
@@ -37,7 +39,6 @@ class SleepTimerEdit(Screen):
                self.status = True
                self.updateColors()
                
-               
                self["pretext"] = Label(_("Shutdown Dreambox after"))
                self["aftertext"] = Label(_("minutes"))
                
@@ -65,7 +66,8 @@ class SleepTimerEdit(Screen):
                        "deleteBackward": self.deleteBackward,
                        "disableTimer": self.disableTimer,
                        "toggleAction": self.toggleAction,
-                       "toggleAsk": self.toggleAsk
+                       "toggleAsk": self.toggleAsk,
+                       "useServiceTime": self.useServiceTime
                }, -1)
 
        def updateColors(self):
@@ -83,7 +85,7 @@ class SleepTimerEdit(Screen):
                        self["yellow_text"].setText(_("Ask before shutdown:") + " " + _("yes"))
                else:
                        self["yellow_text"].setText(_("Ask before shutdown:") + " " + _("no"))
-               self["blue_text"].setText(_("Settings"))
+               self["blue_text"].setText(_("Use time of currently running service"))
 
        def cancel(self):
                config.SleepTimer.ask.cancel()
@@ -94,6 +96,7 @@ class SleepTimerEdit(Screen):
                if self.status:
                        time = int(self["input"].getText())
                        config.SleepTimer.defaulttime.setValue(time)
+                       config.SleepTimer.defaulttime.save()
                        self.session.nav.SleepTimer.setSleepTime(time)
                        self.session.openWithCallback(self.close, MessageBox, _("The sleep timer has been activated."), MessageBox.TYPE_INFO)
                else:
@@ -111,16 +114,16 @@ class SleepTimerEdit(Screen):
 
        def selectHome(self):
                self["input"].home()
-       
+
        def selectEnd(self):
                self["input"].end()
-       
+
        def deleteForward(self):
                self["input"].delete()
-       
+
        def deleteBackward(self):
                self["input"].deleteBackward()
-       
+
        def disableTimer(self):
                self.status = not self.status
                self.updateColors()
@@ -135,3 +138,31 @@ class SleepTimerEdit(Screen):
        def toggleAsk(self):
                config.SleepTimer.ask.value = not config.SleepTimer.ask.value
                self.updateColors()
+               
+       def useServiceTime(self):
+               remaining = None
+               ref = self.session.nav.getCurrentlyPlayingServiceReference()
+               if ref:
+                       path = ref.getPath()
+                       if path: # Movie
+                               service = self.session.nav.getCurrentService()
+                               seek = service and service.seek()
+                               if seek:
+                                       length = seek.getLength()
+                                       position = seek.getPlayPosition()
+                                       if length and position:
+                                               remaining = length[1] - position[1]
+                                               if remaining > 0:
+                                                       remaining = remaining / 90000
+                       else: # DVB
+                               epg = eEPGCache.getInstance()
+                               event = epg.lookupEventTime(ref, -1, 0)
+                               if event:
+                                       now = int(time())
+                                       start = event.getBeginTime()
+                                       duration = event.getDuration()
+                                       end = start + duration
+                                       remaining = end - now
+               if remaining:
+                       config.SleepTimer.defaulttime.value = (remaining / 60) + 2
+                       self["input"].setText(str((remaining / 60) + 2))
index 15499faebf397762d04cbff067b0ae9b6ff063f5..ba83daa52588683907f7bf857b9f6f280b91a02e 100755 (executable)
--- a/po/de.po
+++ b/po/de.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-10-09 13:06+0200\n"
-"PO-Revision-Date: 2009-09-03 14:50+0100\n"
+"POT-Creation-Date: 2009-10-12 12:40+0200\n"
+"PO-Revision-Date: 2009-10-12 12:38+0100\n"
 "Last-Translator: Stefan Pluecken <stefan.pluecken@multimedia-labs.de>\n"
 "Language-Team: none\n"
 "MIME-Version: 1.0\n"
@@ -98,6 +98,13 @@ msgstr ""
 "Wählen Sie Ihr Sicherungs-Laufwerk.\n"
 "Aktuelles Laufwerk: "
 
+msgid ""
+"\n"
+"System will restart after the restore!"
+msgstr ""
+"\n"
+"Das System wird nach der Wiederherstellung neu starten!"
+
 msgid ""
 "\n"
 "View, install and remove available or installed packages."
@@ -989,6 +996,11 @@ msgstr ""
 msgid "CrashlogAutoSubmit settings..."
 msgstr ""
 
+msgid ""
+"Crashlogs found!\n"
+"Send them to Dream Multimedia ?"
+msgstr ""
+
 msgid ""
 "Crashlogs found!\n"
 "Send them to Dream Multimedia?"
@@ -1481,12 +1493,6 @@ msgstr ""
 "\n"
 "© 2006 - Stephan Reichholf"
 
-#. #-#-#-#-#  enigma2.pot (PACKAGE VERSION)  #-#-#-#-#
-#.   TRANSLATORS: Note that "Enter" in the two strings below should *not*
-#.       be interpreted as "Give speed as input". The intended meaning is
-#.       instead "Initial speed when starting winding", i.e. the speed at
-#.       which "winding mode" is entered when first pressing "rewind" or
-#.       "fast forward". 
 msgid "Enter Fast Forward at speed"
 msgstr "Anfängliche Vorlaufgeschwindigkeit eingeben"
 
@@ -4250,19 +4256,6 @@ msgstr "Verwende Stromaufnahmen-Messung"
 msgid "Use a gateway"
 msgstr "Einen Gateway verwenden?"
 
-#. #-#-#-#-#  enigma2.pot (PACKAGE VERSION)  #-#-#-#-#
-#.   TRANSLATORS: The effect of "Non-smooth winding" is that rather
-#.       than using ordinary "continuous" or "smooth" winding, a fast
-#.       sequence of stills is shown when winding at high speeds. This
-#.       makes it much easier too follow when almost each frame comes from
-#.       a new scene. The effect is achieved by repeating each shown frame
-#.       a couple of times. The settings control both at which speed this
-#.       winding mode sets in, and how many times each frame should be
-#.       repeated. This was previously called "Discontinuous playback"
-#.       which was incomprehensible. "Non-smooth winding" may be a better
-#.       term, but note that there is nothing irregular about it. Synonyms
-#.       better suited for translation to other languages may be "stepwise
-#.       winding/playback", or "winding/playback using stills". 
 msgid "Use non-smooth winding at speeds above"
 msgstr ""
 
@@ -4291,6 +4284,9 @@ msgstr ""
 msgid "Use this video enhancement settings?"
 msgstr ""
 
+msgid "Use time of currently running service"
+msgstr "Benutze Zeit vom aktuell laufenden Programm"
+
 msgid "Use usals for this sat"
 msgstr "USALS für diesen Sat benutzen"
 
@@ -5700,13 +5696,6 @@ msgstr "umgeschaltet"
 #~ "\n"
 #~ "Enigma2 wird nach der Wiederherstellung neu starten"
 
-#~ msgid ""
-#~ "\n"
-#~ "System will restart after the restore!"
-#~ msgstr ""
-#~ "\n"
-#~ "Das System wird nach der Wiederherstellung neu starten!"
-
 #~ msgid "AGC:"
 #~ msgstr "AGC:"