X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/534b74c472193e55d2eb84099f8f810abe62ecf0..679475dbb4c18821055c9b9d632f689aaa9f3516:/lib/python/Screens/ServiceInfo.py diff --git a/lib/python/Screens/ServiceInfo.py b/lib/python/Screens/ServiceInfo.py index 83cdcd5f..aa3dc9d7 100644 --- a/lib/python/Screens/ServiceInfo.py +++ b/lib/python/Screens/ServiceInfo.py @@ -1,9 +1,8 @@ -from Components.HTMLComponent import * -from Components.GUIComponent import * +from Components.HTMLComponent import HTMLComponent +from Components.GUIComponent import GUIComponent from Screen import Screen from Components.ActionMap import ActionMap from Components.Label import Label -from Components.MenuList import MenuList from ServiceReference import ServiceReference from enigma import eListboxPythonMultiContent, eListbox, gFont, iServiceInformation, eServiceCenter @@ -15,6 +14,9 @@ TYPE_VALUE_DEC = 2 TYPE_VALUE_HEX_DEC = 3 TYPE_SLIDER = 4 +def to_unsigned(x): + return x & 0xFFFFFFFF + def ServiceInfoListEntry(a, b, valueType=TYPE_TEXT, param=4): res = [ ] @@ -24,11 +26,11 @@ def ServiceInfoListEntry(a, b, valueType=TYPE_TEXT, param=4): print "b:", b if type(b) is not str: if valueType == TYPE_VALUE_HEX: - b = ("0x%0" + str(param) + "x") % b + b = ("0x%0" + str(param) + "x") % to_unsigned(b) elif valueType == TYPE_VALUE_DEC: b = str(b) elif valueType == TYPE_VALUE_HEX_DEC: - b = ("0x%0" + str(param) + "x (%dd)") % (b, b) + b = ("0x%0" + str(param) + "x (%dd)") % (to_unsigned(b), b) else: b = str(b) @@ -102,8 +104,10 @@ class ServiceInfo(Screen): if self.type == TYPE_SERVICE_INFO: if self.session.nav.getCurrentlyPlayingServiceReference(): name = ServiceReference(self.session.nav.getCurrentlyPlayingServiceReference()).getServiceName() + refstr = self.session.nav.getCurrentlyPlayingServiceReference().toString() else: name = "N/A" + refstr = "N/A" aspect = self.getServiceInfoValue(iServiceInformation.sAspect) if aspect in ( 1, 2, 5, 6, 9, 0xA, 0xD, 0xE ): aspect = "4:3" @@ -116,12 +120,14 @@ class ServiceInfo(Screen): ("Provider", self.getServiceInfoValue(iServiceInformation.sProvider), TYPE_TEXT), ("Videoformat", aspect, TYPE_TEXT), ("Videosize", "%dx%d" %(width, height), TYPE_TEXT), - ("Namespace", self.getServiceInfoValue(iServiceInformation.sNamespace), TYPE_VALUE_HEX, 8)) + ("Namespace", self.getServiceInfoValue(iServiceInformation.sNamespace), TYPE_VALUE_HEX, 8), + ("Service Reference", refstr, TYPE_TEXT)) else: Labels = ( ("Name", name, TYPE_TEXT), ("Provider", self.getServiceInfoValue(iServiceInformation.sProvider), TYPE_TEXT), ("Videoformat", aspect, TYPE_TEXT), - ("Namespace", self.getServiceInfoValue(iServiceInformation.sNamespace), TYPE_VALUE_HEX, 8)) + ("Namespace", self.getServiceInfoValue(iServiceInformation.sNamespace), TYPE_VALUE_HEX, 8), + ("Service Reference", refstr, TYPE_TEXT)) self.fillList(Labels) else: if self.transponder_info: