Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
enigma2-skin-metrixstylehd / usr / lib / enigma2 / python / Components / Converter / MetrixStyleEventName.py
Size: Mime:
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)