fix bug in EpgList.py (line 79, in getCurrent .. TypeError: unscribtable object)
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>
Sat, 15 Apr 2006 11:34:31 +0000 (11:34 +0000)
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>
Sat, 15 Apr 2006 11:34:31 +0000 (11:34 +0000)
make similar broadcasting search working in multiepg

lib/python/Components/EpgList.py
lib/python/Screens/EpgSelection.py
lib/python/Screens/EventView.py

index f2003f5..d995bb6 100644 (file)
@@ -76,10 +76,15 @@ class EPGList(HTMLComponent, GUIComponent):
                        if SINGLE_CPP > 0:
                                evt = self.l.getCurrent()
                        else:
                        if SINGLE_CPP > 0:
                                evt = self.l.getCurrent()
                        else:
-                               eventid = self.l.getCurrentSelection()[0]
-                               evt = self.getEventFromId(self.service, eventid)
+                               cur = self.l.getCurrentSelection()
+                               if cur is None:
+                                       return cur
+                               else:
+                                       evt = self.getEventFromId(self.service, cur[0])
                else:
                        tmp = self.l.getCurrentSelection()
                else:
                        tmp = self.l.getCurrentSelection()
+                       if tmp is None:
+                               return ( None, None )
                        eventid = tmp[2]
                        service = ServiceReference(tmp[1])
                        event = self.getEventFromId(service, eventid)
                        eventid = tmp[2]
                        service = ServiceReference(tmp[1])
                        event = self.getEventFromId(service, eventid)
index 04f858b..f9516e1 100644 (file)
@@ -105,8 +105,8 @@ class EPGSelection(Screen):
                        if self.type == EPG_TYPE_MULTI and cur[0] is None and cur[1].ref != old[1].ref:
                                self.eventViewCallback(setEvent, setService, val)
                        else:
                        if self.type == EPG_TYPE_MULTI and cur[0] is None and cur[1].ref != old[1].ref:
                                self.eventViewCallback(setEvent, setService, val)
                        else:
-                               setEvent(cur[0])
                                setService(cur[1])
                                setService(cur[1])
+                               setEvent(cur[0])
 
        def zapTo(self): # just used in multiepg
                if self.zapFunc != None:
 
        def zapTo(self): # just used in multiepg
                if self.zapFunc != None:
index 498702e..8694746 100644 (file)
@@ -39,8 +39,8 @@ class EventViewBase:
                self.onShown.append(self.onCreate)
 
        def onCreate(self):
                self.onShown.append(self.onCreate)
 
        def onCreate(self):
-               self.setEvent(self.event)
                self.setService(self.currentService)
                self.setService(self.currentService)
+               self.setEvent(self.event)
 
        def prevEvent(self):
                if self.cbFunc is not None:
 
        def prevEvent(self):
                if self.cbFunc is not None:
@@ -62,6 +62,7 @@ class EventViewBase:
                        print "Timeredit aborted"
 
        def setService(self, service):
                        print "Timeredit aborted"
 
        def setService(self, service):
+               
                self.currentService=service
                if self.isRecording:
                        self["channel"].setText(_("Recording"))
                self.currentService=service
                if self.isRecording:
                        self["channel"].setText(_("Recording"))