- if SINGLE_CPP == 0:
- esize = self.l.getItemSize()
- self.l.setFont(0, gFont("Regular", 22))
- self.l.setFont(1, gFont("Regular", 16))
- width = esize.width()
- height = esize.height()
- if self.type == EPG_TYPE_SINGLE:
- w = width/20*5
- self.datetime_rect = Rect(0,0, w, height)
- self.descr_rect = Rect(w, 0, width/20*15, height)
- else:
- xpos = 0;
- w = width/10*3;
- self.service_rect = Rect(xpos, 0, w-10, height)
- xpos += w;
- w = width/10*2;
- self.start_end_rect = Rect(xpos, 0, w-10, height)
- self.progress_rect = Rect(xpos, 4, w-10, height-8)
- xpos += w
- w = width/10*5;
- self.descr_rect = Rect(xpos, 0, width, height)
-
- def buildSingleEntry(self, eventId, beginTime, duration, EventName):
- rec=(self.timer.isInTimer(eventid=eventId, begin=beginTime, duration=duration, service=self.service) > 0)
- r1=self.datetime_rect
- r2=self.descr_rect
+ esize = self.l.getItemSize()
+ self.l.setFont(0, gFont("Regular", 22))
+ self.l.setFont(1, gFont("Regular", 16))
+ width = esize.width()
+ height = esize.height()
+ if self.type == EPG_TYPE_SINGLE:
+ self.weekday_rect = Rect(0, 0, width/20*2-10, height)
+ self.datetime_rect = Rect(width/20*2, 0, width/20*5-15, height)
+ self.descr_rect = Rect(width/20*7, 0, width/20*13, height)
+ elif self.type == EPG_TYPE_MULTI:
+ xpos = 0;
+ w = width/10*3;
+ self.service_rect = Rect(xpos, 0, w-10, height)
+ xpos += w;
+ w = width/10*2;
+ self.start_end_rect = Rect(xpos, 0, w-10, height)
+ self.progress_rect = Rect(xpos, 4, w-10, height-8)
+ xpos += w
+ w = width/10*5;
+ self.descr_rect = Rect(xpos, 0, width, height)
+ else: # EPG_TYPE_SIMILAR
+ self.weekday_rect = Rect(0, 0, width/20*2-10, height)
+ self.datetime_rect = Rect(width/20*2, 0, width/20*5-15, height)
+ self.service_rect = Rect(width/20*7, 0, width/20*13, height)
+
+ def getClockPixmap(self, refstr, beginTime, duration, eventId):
+ endTime = beginTime + duration
+ for x in self.timer.timer_list:
+ if x.service_ref.ref.toString() == refstr:
+ beg = x.begin
+ end = x.end
+ if x.eit == eventId:
+ return self.clock_pixmap
+ elif beginTime > beg and beginTime < end and endTime > end:
+ return self.clock_post_pixmap
+ elif beginTime < beg and endTime > beg and endTime < end:
+ return self.clock_pre_pixmap
+ return self.clock_add_pixmap
+
+ def buildSingleEntry(self, service, eventId, beginTime, duration, EventName):
+ rec=beginTime and (self.timer.isInTimer(eventId, beginTime, duration, service))
+ r1=self.weekday_rect
+ r2=self.datetime_rect
+ r3=self.descr_rect
+ res = [ None ] # no private data needed
+ t = localtime(beginTime)
+ res.append((eListboxPythonMultiContent.TYPE_TEXT, r1.left(), r1.top(), r1.width(), r1.height(), 0, RT_HALIGN_RIGHT, self.days[t[6]]))
+ res.append((eListboxPythonMultiContent.TYPE_TEXT, r2.left(), r2.top(), r2.width(), r1.height(), 0, RT_HALIGN_RIGHT, "%02d.%02d, %02d:%02d"%(t[2],t[1],t[3],t[4])))
+ if rec:
+ clock_pic = self.getClockPixmap(service, beginTime, duration, eventId)
+ res.append((eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, r3.left(), r3.top(), 21, 21, clock_pic))
+ res.append((eListboxPythonMultiContent.TYPE_TEXT, r3.left() + 25, r3.top(), r3.width(), r3.height(), 0, RT_HALIGN_LEFT, EventName))
+ else:
+ res.append((eListboxPythonMultiContent.TYPE_TEXT, r3.left(), r3.top(), r3.width(), r3.height(), 0, RT_HALIGN_LEFT, EventName))
+ return res
+
+ def buildSimilarEntry(self, service, eventId, beginTime, service_name, duration):
+ rec=beginTime and (self.timer.isInTimer(eventId, beginTime, duration, service))
+ r1=self.weekday_rect
+ r2=self.datetime_rect
+ r3=self.service_rect