change iFrontendInformation api
[enigma2.git] / lib / python / Screens / ServiceInfo.py
index 5973ec20d0676e28360b34237ff0307c935da64f..af53621a78f810ac384858a062505d9a3a6f0989 100644 (file)
@@ -75,6 +75,9 @@ class ServiceInfo(Screen):
                        self["blue"] = Label()
                        info = eServiceCenter.getInstance().info(serviceref)
                        self.transponder_info = info.getInfoObject(serviceref, iServiceInformation.sTransponderData)
+                       # info is a iStaticServiceInformation, not a iServiceInformation
+                       self.info = None
+                       self.feinfo = None
                else:
                        self.type = TYPE_SERVICE_INFO
                        self["red"] = Label(_("Serviceinfo"))
@@ -97,7 +100,7 @@ class ServiceInfo(Screen):
 
        def information(self):
                if self.type == TYPE_SERVICE_INFO:
-                       if self.session.nav.getCurrentlyPlayingServiceReference() is not None:
+                       if self.session.nav.getCurrentlyPlayingServiceReference():
                                name = ServiceReference(self.session.nav.getCurrentlyPlayingServiceReference()).getServiceName()
                        else:
                                name = "N/A"
@@ -106,8 +109,8 @@ class ServiceInfo(Screen):
                                aspect = "4:3"
                        else:
                                aspect = "16:9"
-                       width = self.info.getInfo(iServiceInformation.sVideoWidth)
-                       height = self.info.getInfo(iServiceInformation.sVideoHeight)
+                       width = self.info and self.info.getInfo(iServiceInformation.sVideoWidth) or -1
+                       height = self.info and self.info.getInfo(iServiceInformation.sVideoHeight) or -1
                        if width != -1 and height != -1:
                                Labels = ( ("Name", name, TYPE_TEXT),
                                                   ("Provider", self.getServiceInfoValue(iServiceInformation.sProvider), TYPE_TEXT),
@@ -158,7 +161,7 @@ class ServiceInfo(Screen):
        
        def showFrontendData(self, real):
                if self.type == TYPE_SERVICE_INFO:
-                       frontendData = self.feinfo and self.feinfo.getFrontendData(real)
+                       frontendData = self.feinfo and self.feinfo.getAll(real)
                        Labels = self.getFEData(frontendData)
                        self.fillList(Labels)