aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Components/Converter/ServiceName.py
blob: 77647dd05dd40fc14a66b6f585f5455254f39aa6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
from Components.Converter.Converter import Converter
from enigma import iServiceInformation, iPlayableService

class ServiceName(Converter, object):
	NAME = 0
	PROVIDER = 1

	def __init__(self, type, *args, **kwargs):
		Converter.__init__(self)
		if type == "Provider":
			self.type = self.PROVIDER
		else:
			self.type = self.NAME

	def getServiceInfoValue(self, info, what):
		v = info.getInfo(what)
		if v != -2:
			return "N/A"
		return info.getInfoString(what)

	def getText(self):
		service = self.source.service
		info = service and service.info()
		if info is None:
			return ""
		
		if self.type == self.NAME:
			return info.getName()
		elif self.type == self.PROVIDER:
			return self.getServiceInfoValue(info, iServiceInformation.sProvider)

	text = property(getText)

	def changed(self, *args):
		if not len(args) or args[0] in [iPlayableService.evStart, iPlayableService.evEnd]:
			Converter.changed(self)