X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fpython%2FScreens%2FInfoBarGenerics.py;h=3d78d6bc7d670c33b41a36ae3269d472f50670bf;hp=93a47886db3c846993c6469693f922de75ed82c5;hb=59df7d4b4fc7d1740f30d36290553972c4a3a652;hpb=7dc75eb38442373c28a5680082917b20ba461c77 diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py old mode 100644 new mode 100755 index 93a4788..3d78d6b --- a/lib/python/Screens/InfoBarGenerics.py +++ b/lib/python/Screens/InfoBarGenerics.py @@ -1654,6 +1654,11 @@ class InfoBarInstantRecord: dir = preferredInstantRecordPath() if not dir or not fileExists(dir, 'w'): dir = defaultMoviePath() +# ikseong + if not fileExists("/hdd", 0): + print "not found /hdd" + system("ln -s /media/hdd /hdd") +# try: stat = os_stat(dir) except: @@ -1823,6 +1828,67 @@ class InfoBarSubserviceSelection: else: del self.selectedSubservice +from Components.Sources.HbbtvApplication import HbbtvApplication +gHbbtvApplication = HbbtvApplication() +class InfoBarRedButton: + def __init__(self): + if not (config.misc.rcused.value == 1): + self["RedButtonActions"] = HelpableActionMap(self, "InfobarRedButtonActions", + { + "activateRedButton": (self.activateRedButton, _("Red button...")), + }) + self["HbbtvApplication"] = gHbbtvApplication + else: + self["HbbtvApplication"] = Boolean(fixed=0) + self["HbbtvApplication"].name = "" #is this a hack? + + self.onHBBTVActivation = [ ] + self.onRedButtonActivation = [ ] + self.onReadyForAIT = [ ] + self.__et = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evHBBTVInfo: self.detectedHbbtvApplication, + iPlayableService.evUpdatedInfo: self.updateInfomation + }) + + def updateAIT(self, orgId=0): + for x in self.onReadyForAIT: + try: + x(orgId) + except Exception, ErrMsg: + print ErrMsg + #self.onReadyForAIT.remove(x) + + def updateInfomation(self): + try: + self["HbbtvApplication"].setApplicationName("") + self.updateAIT() + except Exception, ErrMsg: + pass + + def detectedHbbtvApplication(self): + service = self.session.nav.getCurrentService() + info = service and service.info() + try: + for x in info.getInfoObject(iServiceInformation.sHBBTVUrl): + print x + if x[0] in (-1, 1): + self.updateAIT(x[3]) + self["HbbtvApplication"].setApplicationName(x[1]) + break + except Exception, ErrMsg: + pass + + def activateRedButton(self): + service = self.session.nav.getCurrentService() + info = service and service.info() + if info and info.getInfoString(iServiceInformation.sHBBTVUrl) != "": + for x in self.onHBBTVActivation: + x() + elif False: # TODO: other red button services + for x in self.onRedButtonActivation: + x() + class InfoBarAdditionalInfo: def __init__(self):