fix timer disable/reenable
[vuplus_dvbapp] / lib / python / Screens / TimerEdit.py
index 965c35b..bbbf6b5 100644 (file)
@@ -63,7 +63,14 @@ class TimerEditList(Screen):
                self.updateState()
                
        def toggleDisabledState(self):
-               self["timerlist"].getCurrent()[0].disabled = not self["timerlist"].getCurrent()[0].disabled
+               t = self["timerlist"].getCurrent()[0]
+               
+               if t.disabled:
+                       t.enable()
+               else:
+                       t.disable()
+
+               self.session.nav.RecordTimer.timeChanged(t)
                self.updateState()
                self.refill()
                
@@ -83,6 +90,7 @@ class TimerEditList(Screen):
                
                for timer in self.session.nav.RecordTimer.processed_timers:
                        self.list.append(TimerEntryComponent(timer, processed=True))
+               self.list.sort(cmp = lambda x, y: x[0].begin < y[0].begin)
 
        def showLog(self):
                self.session.openWithCallback(self.finishedEdit, TimerLog, self["timerlist"].getCurrent()[0])
@@ -101,14 +109,11 @@ class TimerEditList(Screen):
                
        def removeTimer(self):
                list = self["timerlist"]
-               timer = list.getCurrent()[0]
-               currentIndex = list.getCurrentIndex()
-               self.session.nav.RecordTimer.removeEntry(timer)
-               list.moveDown()
-               if list.getCurrentIndex() == currentIndex:
-                       currentIndex -= 1
-               self.refill()
-               list.moveToIndex(currentIndex)
+               cur = list.getCurrent()
+               if cur is not None:
+                       timer = cur[0]
+                       self.session.nav.RecordTimer.removeEntry(timer)
+                       self.refill()
        
        def refill(self):
                self.fillTimerList()
@@ -180,7 +185,7 @@ class TimerSanityConflict(Screen):
        def __init__(self, session, timer):
                Screen.__init__(self, session)
                self.timer = timer
-               print timer
+               print "TimerSanityConflict", timer
                        
                self["timer1"] = TimerList(self.getTimerList(timer[0]))
                if len(timer) > 1: