Repository URL to install this package:
|
Version:
13.1-r5 ▾
|
enigma2-skin-metrixstylehd
/
usr
/
lib
/
enigma2
/
python
/
Components
/
Converter
/
MetrixStyleEventName.py
|
|---|
from Components.Converter.Converter import Converter
from Components.Element import cached
class MetrixStyleEventName(Converter, object):
NAME = 0
SHORT_DESCRIPTION = 1
EXTENDED_DESCRIPTION = 2
FULL_DESCRIPTION = 3
ID = 4
ALL = 5
def __init__(self, type):
Converter.__init__(self, type)
if type == "Description":
self.type = self.SHORT_DESCRIPTION
elif type == "ExtendedDescription":
self.type = self.EXTENDED_DESCRIPTION
elif type == "FullDescription":
self.type = self.FULL_DESCRIPTION
elif type == "All":
self.type = self.ALL
elif type == "ID":
self.type = self.ID
else:
self.type = self.NAME
@cached
def getText(self):
event = self.source.event
if event is None:
return ""
if self.type == self.NAME:
return event.getEventName()
elif self.type == self.SHORT_DESCRIPTION:
return event.getShortDescription()
elif self.type == self.EXTENDED_DESCRIPTION:
return event.getExtendedDescription()
elif self.type == self.FULL_DESCRIPTION :
desc = event.getShortDescription()
if desc:
desc = "%s\n\n" %(desc,)
desc = "%s%s" %(desc, event.getExtendedDescription())
return desc
elif self.type == self.ALL :
name = event.getEventName().strip(" ").strip("\n").strip("\xc2\x8a")
desc = event.getShortDescription().strip(" ").strip("\n").strip("\xc2\x8a")
if desc and desc != event.getEventName():
desc_list = desc.split("\n")
if desc_list[0] == name:
desc_list.pop(0)
desc = "\n".join(desc_list).strip()
if desc:
desc = "%s\n\n" %(desc,)
else:
desc = ""
else:
desc = ""
ext = event.getExtendedDescription().lstrip(" ").lstrip("\n").lstrip("\xc2\x8a")
desc = "%s%s" % (desc, ext)
return "%s\n\n%s" % (name, desc)
elif self.type == self.ID:
return str(event.getEventId())
text = property(getText)