-from Components.VariableText import VariableText\r
-from enigma import eLabel, iServiceInformation\r
-from Renderer import Renderer\r
-\r
-\r
-\r
-class SmartLabel(Renderer, VariableText):\r
- def __init__(self):\r
- Renderer.__init__(self)\r
- VariableText.__init__(self)\r
-\r
- GUI_WIDGET = eLabel\r
-\r
- def changed(self, what):\r
- service = self.source.service\r
- info = service and service.info()\r
- if info is not None:\r
- if (info.getInfo(iServiceInformation.sIsCrypted) == 1):\r
- decID = ""\r
- decFrom = ""\r
- xresol = 0\r
- yresol = 0\r
- try:\r
- f = open("/tmp/ecm.info", "r")\r
- flines = f.readlines()\r
- f.close()\r
- for cell in flines:\r
- if ("caid" in cell)or("CAID" in cell)or("CaID" in cell)or("caID" in cell)or("Caid" in cell):\r
- cellmembers = cell.split()\r
- for x in range(len(cellmembers)):\r
- if ("caid" in cellmembers[x])or("CAID" in cellmembers[x])or("CaID" in cellmembers[x])or("caID" in cellmembers[x])or("Caid" in cellmembers[x]):\r
- if x<(len(cellmembers)-1):\r
- if cellmembers[x+1] != "0x000":\r
- decID = cellmembers[x+1]\r
- decID = decID .lstrip("0x")\r
- decID = decID.strip(",;.:-*_<>()[]{}")\r
- if (len(decID)<4):\r
- decID = decID + "0"\r
- else:\r
- decID = ""\r
- if decID != "":\r
- idnames = ("0100,01FF,SE","0500,05FF,VI","0600,06FF,IR","0900,09FF,NDS","0B00,0BFF,CO","0D00,0DFF,CW","1700,17FF,BC","1800,18FF,NA")\r
- for idline in idnames:\r
- IDlist = idline.split(",")\r
- try:\r
- if (int(decID,16)>=int(IDlist[0],16)) and (int(decID,16)<=int(IDlist[1],16)):\r
- decID = IDlist[2] + " " + decID\r
- break\r
- except:\r
- pass\r
- for cell in flines:\r
- if ("using:" in cell) or ("source:" in cell):\r
- cellmembers = cell.split()\r
- for x in range(len(cellmembers)):\r
- if ("using:" in cellmembers[x]) or ("source:" in cellmembers[x]):\r
- if x<(len(cellmembers)-1):\r
- if cellmembers[x+1] != "fta":\r
- decFrom = cellmembers[x+1]\r
- else:\r
- decFrom = ""\r
- except:\r
- pass\r
- self.text = decFrom + " " + decID\r
- else:\r
- xresol = info.getInfo(iServiceInformation.sVideoWidth)\r
- yresol = info.getInfo(iServiceInformation.sVideoHeight)\r
- if xresol>0:\r
- self.text = str(xresol) + " x " + str(yresol)\r
-\r
-\r
-\r