def setMode(self, mode): self.mode = mode self.l.setItemHeight(self.ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) if mode == self.MODE_NORMAL or not config.usage.show_channel_numbers_in_servicelist.value: channelNumberWidth = 0 channelNumberSpace = 0 else: channelNumberWidth = 50 channelNumberSpace = 10 if config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition( self.l.celServiceEventProgressbar, eRect(channelNumberWidth + channelNumberSpace, 0, 52, self.ItemHeight)) else: self.l.setElementPosition( self.l.celServiceEventProgressbar, eRect(channelNumberWidth + channelNumberSpace, 0, 0, 0)) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementFont(self.l.celServiceNumber, self.ServiceNumberFont) self.l.setElementPosition( self.l.celServiceNumber, eRect(0, 0, channelNumberWidth, self.ItemHeight)) self.l.setElementPosition( self.l.celServiceName, eRect( channelNumberWidth + channelNumberSpace, 0, self.instance.size().width() - (channelNumberWidth + channelNumberSpace), self.ItemHeight)) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont)
def setMode(self, mode): self.mode = mode self.l.setItemHeight(self.ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) if mode == self.MODE_NORMAL or not config.usage.show_channel_numbers_in_servicelist.value: channelNumberWidth = 0 channelNumberSpace = 0 else: channelNumberWidth = 50 channelNumberSpace = 10 if config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition( self.l.celServiceEventProgressbar, eRect(channelNumberWidth + channelNumberSpace, 0, 52, self.ItemHeight), ) else: self.l.setElementPosition( self.l.celServiceEventProgressbar, eRect(channelNumberWidth + channelNumberSpace, 0, 0, 0) ) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementFont(self.l.celServiceNumber, self.ServiceNumberFont) self.l.setElementPosition(self.l.celServiceNumber, eRect(0, 0, channelNumberWidth, self.ItemHeight)) self.l.setElementPosition( self.l.celServiceName, eRect( channelNumberWidth + channelNumberSpace, 0, self.instance.size().width() - (channelNumberWidth + channelNumberSpace), self.ItemHeight, ), ) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont)
def recalcEntrySize(self): esize = self.l.getItemSize() width = esize.width() height = esize.height() fontSize = self.eventFontSize + config.epgselection.multi.eventfs.value servScale, timeScale, durScale, wideScale = parameters.get( "EPGMultiColumnScales", (config.epgselection.multi.servicewidth.value, 6.0, 4.5, 1.5)) servW = int(fontSize * servScale) timeW = int(fontSize * timeScale) durW = int(fontSize * durScale) left, servWidth, sepWidth, timeWidth, progHeight, breakWidth, durWidth, gapWidth = parameters.get( "EPGMultiColumnSpecs", (0, servW, 10, timeW, height - 12, 10, durW, 10)) if config.usage.time.wide.value: timeWidth = int(timeWidth * wideScale) self.serviceRect = eRect(left, 0, servWidth, height) left += servWidth + sepWidth self.startEndRect = eRect(left, 0, timeWidth, height) progTop = int((height - progHeight) / 2) self.progressRect = eRect(left, progTop, timeWidth, progHeight) left += timeWidth + breakWidth self.durationRect = eRect(left, 0, durWidth, height) left += durWidth + gapWidth self.descrRect = eRect(left, 0, width - left, height)
def setPixmap(dest, ptr, scaleSize, aspectRatio): if scaleSize.isValid() and aspectRatio.isValid(): pic_scale_size = ptr.size().scale(scaleSize, aspectRatio) dest_size = dest.getSize() dest_width = dest_size.width() dest_height = dest_size.height() pic_scale_width = pic_scale_size.width() pic_scale_height = pic_scale_size.height() # print "pic scale size %dx%d" %(pic_scale_width, pic_scale_height) # print "dest area size %dx%d" %(dest_width, dest_height) if pic_scale_width == dest_width: # v center dest_rect = eRect(0, (dest_height - pic_scale_height) // 2, pic_scale_width, pic_scale_height) else: # h center dest_rect = eRect((dest_width - pic_scale_width) // 2, 0, pic_scale_width, pic_scale_height) # print "dest rect", (dest_rect.left(), dest_rect.top(), dest_rect.width(), dest_rect.height()) dest.instance.setScale(1) dest.instance.setScaleDest(dest_rect) else: # print "no scale!" dest.instance.setScale(0) dest.instance.setPixmap(ptr)
def setPixmap(dest, ptr): pic_scale_size = ptr.scaleSize() if pic_scale_size.isValid(): pic_size = ptr.size() pic_width = pic_size.width() pic_height = pic_size.height() dest_size = dest.getSize() dest_width = dest_size.width() dest_height = dest_size.height() pic_scale_width = pic_scale_size.width() pic_scale_height = pic_scale_size.height() # print "pic size %dx%d" %(pic_width, pic_height) # print "pic scale size %dx%d" %(pic_scale_width, pic_scale_height) # print "dest area size %dx%d" %(dest_width, dest_height) if pic_scale_width == dest_width: # v center dest_rect = eRect(0, (dest_height - pic_scale_height) / 2, pic_scale_width, pic_scale_height) else: # h center dest_rect = eRect((dest_width - pic_scale_width) / 2, 0, pic_scale_width, pic_scale_height) # print "dest rect", (dest_rect.left(), dest_rect.top(), dest_rect.width(), dest_rect.height()) dest.instance.setScale(1) dest.instance.setScaleDest(dest_rect) else: # print "no scale!" dest.instance.setScale(0) dest.instance.setPixmap(ptr)
def drawText(self, X, Y): #self.instance.fillRect( eRect(0, 0, self.W, self.H), self.bcolor ) self.instance.clear(self.bcolor) #if not self.scolor is None: # self.instance.writeText( eRect(X-self.soffset[0], Y-self.soffset[1], self.W-self.soffset[0], self.H-self.soffset[1]), self.scolor, self.bcolor, self.txfont, self.txtext, self.txtflags ) #self.instance.writeText( eRect(X, Y, self.W, self.H), self.fcolor, self.bcolor, self.txfont, self.txtext, self.txtflags ) if not self.scolor is None: fcolor = self.scolor else: fcolor = self.fcolor if (self.txtext != None and self.txtext != ''): self.instance.show() self.instance.writeText( eRect(X - self.soffset[0], Y - self.soffset[1], self.W, self.H), fcolor, self.bcolor, self.txfont, self.txtext, self.txtflags) if not self.scolor is None: self.instance.writeText(eRect(X, Y, self.W, self.H), self.fcolor, self.scolor, self.txfont, self.txtext, self.txtflags) else: self.instance.hide()
def line_draw(self, x0, y0, x1, y1): steep = (abs((y1 - y0)) > abs((x1 - x0))) if steep: x0, y0 = y0, x0 x1, y1 = y1, x1 if (x0 > x1): x0, x1 = x1, x0 y0, y1 = y1, y0 if (y0 < y1): ystep = 1 else: ystep = -1 deltax = (x1 - x0) deltay = abs((y1 - y0)) error = (-deltax / 2) y = y0 for x in range(x0, (x1 + 1)): if steep: self.instance.fillRect( eRect(y, x, self.linewidth, self.linewidth), self.fColor) else: self.instance.fillRect( eRect(x, y, self.linewidth, self.linewidth), self.fColor) error = (error + deltay) if (error > 0): y = (y + ystep) error = (error - deltax)
def selEntry(self, dir, visible=True): cur_service = self.cur_service # (service, service_name, events) self.recalcEntrySize() valid_event = self.cur_event is not None if cur_service: update = True entries = cur_service[2] if dir == 0: # current update = False elif dir == +1: # next if valid_event and self.cur_event + 1 < len(entries): self.cur_event += 1 else: self.offs += 1 self.fillMultiEPG(None) # refill return True elif dir == -1: # prev if valid_event and self.cur_event - 1 >= 0: self.cur_event -= 1 elif self.offs > 0: self.offs -= 1 self.fillMultiEPG(None) # refill return True if cur_service and valid_event: entry = entries[self.cur_event] # (event_id, event_title, begin_time, duration) time_base = self.time_base + self.offs * self.time_epoch * 60 xpos, width = self.calcEntryPosAndWidth(self.event_rect, time_base, self.time_epoch, entry[2], entry[3]) self.l.setSelectionClip(eRect(xpos, 0, width, self.event_rect.height()), visible and update) else: self.l.setSelectionClip( eRect(self.event_rect.left(), self.event_rect.top(), self.event_rect.width(), self.event_rect.height()), False, ) self.selectionChanged() return False
def draw_line(self, x0, y0, x1, y1): steep = abs(y1 - y0) > abs(x1 - x0) if steep: x0, y0 = y0, x0 x1, y1 = y1, x1 if x0 > x1: x0, x1 = x1, x0 y0, y1 = y1, y0 if y0 < y1: ystep = 1 else: ystep = -1 deltax = x1 - x0 deltay = abs(y1 - y0) error = -deltax / 2 y = y0 for x in range(x0, x1 + 1): if steep: self.instance.fillRect(eRect(y, x, 2, 2), self.fColor) else: self.instance.fillRect(eRect(x, y, 2, 2), self.fColor) error = error + deltay if error > 0: y = y + ystep error = error - deltax
def draw_line(self, x0, y0, x1, y1): steep = (abs((y1 - y0)) > abs((x1 - x0))) if steep: x0,y0 = y0,x0 x1,y1 = y1,x1 if (x0 > x1): x0,x1 = x1,x0 y0,y1 = y1,y0 if (y0 < y1): ystep = 1 else: ystep = -1 deltax = (x1 - x0) deltay = abs((y1 - y0)) error = (-deltax / 2) y = y0 for x in range(x0, (x1 + 1)): if steep: self.instance.fillRect(eRect(y, x, 1, 1), self.fColor) else: self.instance.fillRect(eRect(x, y, 1, 1), self.fColor) error = (error + deltay) if (error > 0): y = (y + ystep) error = (error - deltax)
def setMode(self, mode): self.mode = mode self.l.setItemHeight(self.ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) piconw = 0 if config.usage.service_icon_enable.value: self.l.setGetPiconNameFunc(getPiconName) piconw = 67 if config.skin.xres.value == 1920: piconw = 92 else: self.l.setGetPiconNameFunc(None) rowWidth = self.instance.size().width( ) - 30 #scrollbar is fixed 20 + 10 Extra marge channelNumberSpace = 10 self.progressBarWidth = 52 self.fieldMargins = 0 if mode == self.MODE_NORMAL: channelNumberWidth = 0 else: if config.skin.xres.value == 1920: channelNumberWidth = 70 else: channelNumberWidth = 50 self.l.setElementPosition( self.l.celServiceNumber, eRect(0, 0, channelNumberWidth, self.ItemHeight)) if config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition( self.l.celServiceEventProgressbar, eRect(channelNumberWidth + channelNumberSpace + piconw, 0, self.progressBarWidth, self.ItemHeight)) self.l.setElementPosition( self.l.celServiceName, eRect( channelNumberWidth + channelNumberSpace + self.fieldMargins, 0, rowWidth - (channelNumberWidth + channelNumberSpace + self.progressBarWidth + self.fieldMargins), self.ItemHeight)) else: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(0, 0, 0, 0)) self.l.setElementPosition( self.l.celServiceName, eRect(channelNumberWidth + channelNumberSpace, 0, rowWidth - (channelNumberWidth + channelNumberSpace), self.ItemHeight)) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementFont(self.l.celServiceNumber, self.ServiceNumberFont) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont) self.l.setHideNumberMarker(config.usage.hide_number_markers.value)
def drawText(self, X, Y, W, H): self.instance.clear(self.bcolor) if not self.scolor is None: self.instance.writeText( eRect(X-self.soffset[0], Y-self.soffset[1], W, H), self.scolor, self.bcolor, self.txfont, self.txtext, self.txtflags ) self.instance.writeText( eRect(X, Y, W, H), self.fcolor, self.scolor, self.txfont, self.txtext, self.txtflags ) else: self.instance.writeText( eRect(X-self.soffset[0], Y-self.soffset[1], W, H), self.fcolor, self.bcolor, self.txfont, self.txtext, self.txtflags )
def draw(self, list): for l in list: if l[0] == 1: self.instance.fillRect(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5])) elif l[0] == 2: self.instance.writeText(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5]), gRGB(l[6]), l[7], l[8], l[9]) else: print "drawlist entry:", l raise RuntimeError("invalid drawlist entry")
def selEntry(self, dir, visible = True): cur_service = self.cur_service #(service, service_name, events, picon) self.recalcEntrySize() valid_event = self.cur_event is not None if cur_service: update = True entries = cur_service[2] if dir == 0: #current update = False elif dir == +1: #next if valid_event and self.cur_event + 1 < len(entries): self.cur_event += 1 else: self.offs += 1 self.fillMultiEPG(None) # refill return True elif dir == -1: #prev if valid_event and self.cur_event - 1 >= 0: self.cur_event -= 1 elif self.offs > 0: self.offs -= 1 self.fillMultiEPG(None) # refill return True elif dir == +2: #next page self.offs += 1 self.fillMultiEPG(None) # refill return True elif dir == -2: #prev if self.offs > 0: self.offs -= 1 self.fillMultiEPG(None) # refill return True elif dir == +3: #next day self.offs += 60 * 24 / self.time_epoch self.fillMultiEPG(None) # refill return True elif dir == -3: #prev day self.offs -= 60 * 24 / self.time_epoch if self.offs < 0: self.offs = 0; self.fillMultiEPG(None) # refill return True if cur_service and valid_event: entry = entries[self.cur_event] #(event_id, event_title, begin_time, duration) time_base = self.time_base + self.offs*self.time_epoch * 60 xpos, width = self.calcEntryPosAndWidth(self.event_rect, time_base, self.time_epoch, entry[2], entry[3]) self.select_rect = Rect(xpos, 0, width, self.event_rect.height) self.l.setSelectionClip(eRect(xpos, 0, width, self.event_rect.h), visible and update) else: self.select_rect = self.event_rect self.l.setSelectionClip(eRect(self.event_rect.x, self.event_rect.y, self.event_rect.w, self.event_rect.h), False) self.selectionChanged() return False
def draw(self, list): for l in list: if l[0] == 1: self.instance.fillRect(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5])) elif l[0] == 2: self.instance.writeText(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5]), gRGB(l[6]), l[7], l[8], l[9]) elif l[0] == 3: self.instance.drawLine(l[1], l[2], l[3], l[4], gRGB(l[5])) elif l[0] == 4: self.instance.drawRotatedLine(l[1], l[2], l[3], l[4], l[5], l[6], l[7], l[8], gRGB(l[9])) else: print("[Canvas] drawlist entry:", l) raise RuntimeError("invalid drawlist entry")
def draw(self, list): for l in list: if l[0] == 1: self.instance.fillRect(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5])) elif l[0] == 2: self.instance.writeText(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5]), gRGB(l[6]), l[7], l[8], l[9]) elif l[0] == 3: self.instance.drawLine(l[1], l[2], l[3], l[4], gRGB(l[5])) elif l[0] == 4: self.instance.drawRotatedLine(l[1], l[2], l[3], l[4], l[5], l[6], l[7], l[8], gRGB(l[9])) else: print 'drawlist entry:', l raise RuntimeError('invalid drawlist entry')
def drawText(self, X, Y): #self.instance.fillRect( eRect(0, 0, self.W, self.H), self.bcolor ) self.instance.clear(self.bcolor) #if not self.scolor is None: # self.instance.writeText( eRect(X-self.soffset[0], Y-self.soffset[1], self.W-self.soffset[0], self.H-self.soffset[1]), self.scolor, self.bcolor, self.txfont, self.txtext, self.txtflags ) #self.instance.writeText( eRect(X, Y, self.W, self.H), self.fcolor, self.bcolor, self.txfont, self.txtext, self.txtflags ) if not self.scolor is None: fcolor = self.scolor else: fcolor = self.fcolor self.instance.writeText( eRect(X-self.soffset[0], Y-self.soffset[1], self.W, self.H), fcolor, self.bcolor, self.txfont, self.txtext, self.txtflags ) if not self.scolor is None: self.instance.writeText( eRect(X, Y, self.W, self.H), self.fcolor, self.scolor, self.txfont, self.txtext, self.txtflags )
def draw(self, caidlist, newtxt): offset = 0 pointSize = self.font.pointSize for key in caidlist: if caidlist[key][0]: if caidlist[key][1] == 0: foregroundColor = self.emmColor else: foregroundColor = self.ecmColor length = len(caidlist[key][0]) * (pointSize ) self.instance.writeText(eRect(offset, 0, length, pointSize), foregroundColor, self.backgroundColor, self.font, caidlist[key][0], 2) offset = offset + length foregroundColor = self.clGrey length = len(newtxt) * (pointSize ) self.instance.writeText(eRect(offset, 0, length, pointSize), foregroundColor, self.backgroundColor, self.font, newtxt, 0)
def drawText(self, X, Y, W, H): self.instance.clear(self.bcolor) if not self.scolor is None: self.instance.writeText( eRect(X - self.soffset[0], Y - self.soffset[1], W, H), self.scolor, self.bcolor, self.txfont, self.txtext, self.txtflags) self.instance.writeText(eRect(X, Y, W, H), self.fcolor, self.scolor, self.txfont, self.txtext, self.txtflags) else: self.instance.writeText( eRect(X - self.soffset[0], Y - self.soffset[1], W, H), self.fcolor, self.bcolor, self.txfont, self.txtext, self.txtflags)
def postWidgetCreate(self, instance): instance.setWrapAround(True) instance.selectionChanged.get().append(self.serviceChanged) instance.setContent(self.l) self.l.setSelectionClip(eRect(0, 0, 0, 0), False) self.l.setFont(0, self.serviceFont) self.setEventFontsize()
def setMode(self, mode): self.mode = mode if mode == self.MODE_NORMAL: self.l.setItemHeight(self.ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementPosition(self.l.celServiceName, eRect(0, 0, self.instance.size().width(), self.ItemHeight)) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont) else: self.l.setItemHeight(self.ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) self.l.setElementFont(self.l.celServiceNumber, self.ServiceNumberFont) self.l.setElementPosition(self.l.celServiceNumber, eRect(0, 0, 50, self.ItemHeight)) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementPosition(self.l.celServiceName, eRect(60, 0, self.instance.size().width()-60, self.ItemHeight)) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont)
def postWidgetCreate(self, instance): instance.setWrapAround(True) instance.selectionChanged.get().append(self.serviceChanged) instance.setContent(self.l) self.l.setFont(0, gFont("Regular", 20)) self.l.setFont(1, gFont("Regular", 14)) self.l.setSelectionClip(eRect(0, 0, 0, 0), False)
def pull_updates(self): if self.instance is None: return self.instance.clear(self.backgroundColor) content = self.source.getContent() content_count = len(content) primetime = self.source.primetime if primetime == 1 and content_count == 1: primetime = 0 y = 0 a = 1 for item in content: i = 0 while i < 3: if self.columns.has_key(str(i)): value = self.columns[str(i)] self.instance.writeText( eRect(value[0], y + int( (self.rowHeight - value[4]) / 2), value[1], self.rowHeight), value[2], self.backgroundColor, value[3], item[value[5]], value[6]) i += 1 a += 1 y += self.rowHeight if a == content_count and primetime == 1: y += self.primetimeoffset
def setThumbPixmap(dest, ptr): pic_size = ptr.size() pic_width = pic_size.width() pic_height = pic_size.height() dest_size = dest.getSize() dest_width = dest_size.width() dest_height = dest_size.height() if pic_width == dest_width: dest_rect = eRect(0, (dest_height - pic_height) / 2, pic_width, pic_height) else: dest_rect = eRect((dest_width - pic_width) / 2, 0, pic_width, pic_height) dest.instance.setScale(1) dest.instance.setScaleDest(dest_rect) dest.instance.setPixmap(ptr)
def recalcEntrySize(self): esize = self.l.getItemSize() width = esize.width() height = esize.height() fontSize = self.eventFontSize + self.epgConfig.eventfs.value dateScale, timesScale, wideScale = parameters.get("EPGSingleColumnScales", (5.7, 6.0, 1.5)) dateW = int(fontSize * dateScale) timesW = int(fontSize * timesScale) left, dateWidth, sepWidth, timesWidth, breakWidth = parameters.get("EPGSingleColumnSpecs", (0, dateW, 5, timesW, 20)) if config.usage.time.wide.value: timesWidth = int(timesWidth * wideScale) self._weekdayRect = eRect(left, 0, dateWidth, height) left += dateWidth + sepWidth self._datetimeRect = eRect(left, 0, timesWidth, height) left += timesWidth + breakWidth self._descrRect = eRect(left, 0, width - left, height) self.showend = True # This is not an unused variable. It is a flag used by EPGSearch plugin
def draw(self, caidlist): offset = 0 pointSize = self.font.pointSize for key in caidlist: if caidlist[key][0]: length = len(caidlist[key][0]) * pointSize if caidlist[key][1] == 0: bg = self.backgroundColor self.instance.fillRect(eRect(offset + 1, 2, length - 3, pointSize + 1), bg) elif caidlist[key][1] == 1: bg = self.emmColor self.instance.fillRect(eRect(offset + 1, 2, length - 3, pointSize + 1), bg) else: bg = self.ecmColor self.instance.fillRect(eRect(offset + 1, 2, length - 3, pointSize + 1), bg) self.instance.writeText(eRect(offset, 0, length - 1, pointSize), self.foregroundColor, bg, self.font, caidlist[key][0], 2) offset = offset + length
def __init__(self): GUIComponent.__init__(self) self.l = eListboxPythonMultiContent() self.l.setSelectionClip(eRect(0, 0, 0, 0)) self.foreColor = 0xffc000 self.backColor = 0x000000 self.font = gFont("Regular", 20) self.itemHeight = 25
def postWidgetCreate(self, instance): instance.setWrapAround(True) self.selectionChanged_conn = instance.selectionChanged.connect(self.serviceChanged) instance.setContent(self.l) tlf = TemplatedListFonts() self.l.setFont(0, gFont(tlf.face(tlf.MEDIUM), tlf.size(tlf.MEDIUM))) self.l.setFont(1, gFont(tlf.face(tlf.SMALL), tlf.size(tlf.SMALL))) self.l.setSelectionClip(eRect(0,0,0,0), False)
def setVideoWindow(self, x, y, w, h): w = self._adjustVideoLimits(w, 128, 1280) h = self._adjustVideoLimits(h, 72, 720) x = self._adjustVideoLimits(x, 0, 1280) y = self._adjustVideoLimits(y, 0, 720) Log.i("x=%s, y=%s, w=%s, h=%s" % (x, y, w, h)) self.scaleRect(eRect(x, y, w, h), self._doSetVideoWindow)
def setMode(self, mode): self.mode = mode self.l.setItemHeight(self.ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) if mode == self.MODE_NORMAL: if config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(0, 0, 52, self.ItemHeight)) else: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(0, 0, 0, 0)) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementPosition( self.l.celServiceName, eRect(0, 0, self.instance.size().width(), self.ItemHeight)) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont) else: if config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(60, 0, 52, self.ItemHeight)) else: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(60, 0, 0, 0)) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementFont(self.l.celServiceNumber, self.ServiceNumberFont) self.l.setElementPosition(self.l.celServiceNumber, eRect(0, 0, 50, self.ItemHeight)) self.l.setElementPosition( self.l.celServiceName, eRect(60, 0, self.instance.size().width() - 60, self.ItemHeight)) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont)
def initDatabase(self): self.myTimer.start(200) if self.lamedb.databaseState < 3: self.setTitle(_("reading lamedb - please wait - get transponders")) return elif self.lamedb.databaseState == 3: self.setTitle(_("reading lamedb - please wait - get services %s"%str(self.lamedb.readcnt))) return elif self.lamedb.databaseState == 4: self.setTitle(_("reading lamedb - please wait - build database")) self.lamedb.databaseState = 5 return self.myTimer.stop() self.newServiceList = self["list"].buildServicesList(self.database) self["list"].setEntries(self.newServiceList) row = self["list"].getCurrent() if row is None: return head = [] for x in xrange(2,len(row)): #bei zwei anfangen, weil eins die Laufschrift ist head.append([row[x][1]-row[1][3],row[x][3],""]) for x in xrange(len(self.row)): head[x][2]= self.row[x][1] if len(self.row[x])>3: #TODO Graphik head[x].append(True) #Platzhalter für Graphik self["laufschrift"].setEntry() self["head"].setEntries(head) if self.currentSelectedColumn: data = self["head"].getCurrent() data = data[self.currentSelectedColumn] self["head"].l.setSelectionClip(eRect(data[1], data[0], data[3], data[4]), True) else: self["head"].l.setSelectionClip(eRect(0, 0, 0, 0)) # self["laufschrift"]..l.setSelectionClip(eRect(data[1], data[0], data[3], data[4]), True) self.initSort() if self.usk is not None: for idx in xrange(len(self.newServiceList)): if self.newServiceList[idx][0] == self.usk: self["list"].instance.moveSelectionTo(idx) break self.updateSelection() self.setTitle(self.mainTitle)
def setMode(self, mode): self.mode = mode self.setItemsPerPage() self.l.setItemHeight(self.ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) progressBarWidth = 52 rowWidth = self.instance.size().width() - 30 #scrollbar is fixed 20 + 10 Extra marge if mode == self.MODE_NORMAL or not config.usage.show_channel_numbers_in_servicelist.getValue(): channelNumberWidth = 0 channelNumberSpace = 0 else: channelNumberWidth = 55 channelNumberSpace = 10 self.l.setElementPosition(self.l.celServiceNumber, eRect(0, 0, channelNumberWidth, self.ItemHeight)) if "left" in config.usage.show_event_progress_in_servicelist.getValue(): self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(channelNumberWidth+channelNumberSpace, 0, progressBarWidth , self.ItemHeight)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace+progressBarWidth+10, 0, rowWidth - (channelNumberWidth+channelNumberSpace+progressBarWidth+10), self.ItemHeight)) elif "right" in config.usage.show_event_progress_in_servicelist.getValue(): self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(rowWidth-progressBarWidth, 0, progressBarWidth, self.ItemHeight)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace, 0, rowWidth - (channelNumberWidth+channelNumberSpace+progressBarWidth+10), self.ItemHeight)) else: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(0, 0, 0, 0)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace, 0, rowWidth - (channelNumberWidth+channelNumberSpace), self.ItemHeight)) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementFont(self.l.celServiceNumber, self.ServiceNumberFont) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont) if "perc" in config.usage.show_event_progress_in_servicelist.getValue(): self.l.setElementFont(self.l.celServiceEventProgressbar, self.ServiceInfoFont)
def setVideoWindow(self, x, y, w, h): w = self._adjustLimits(w, 128, 1280) h = self._adjustLimits(h, 72, 720) x = self._adjustLimits(x, 0, 1280) y = self._adjustLimits(y, 0, 720) print "[Hbbtv].setVideoWindow x=%s, y=%s, w=%s, h=%s" % (x, y, w, h) if self.__browser: self.__browser.scaleRect(eRect(x, y, w, h), self._doSetVideoWindow)
def right(self): print("right") if self.currentSelectedColumn < len(self.row): data = self["head"].getCurrent() if data is None: return self.currentSelectedColumn += 1 data = data[self.currentSelectedColumn] self["head"].l.setSelectionClip(eRect(data[1], data[0], data[3], data[4]), True)
def __init__(self): GUIComponent.__init__(self) sizes = componentSizes[componentSizes.TIMELINE_TEXT] height = sizes.get(componentSizes.ITEM_HEIGHT, 25) self.l = eListboxPythonMultiContent() self.l.setSelectionClip(eRect(0, 0, 0, 0)) self.l.setItemHeight(height) tlf = TemplatedListFonts() self.l.setFont(0, gFont(tlf.face(tlf.MEDIUM), tlf.size(tlf.MEDIUM)))
def postWidgetCreate(self, instance): instance.setWrapAround(True) self.selectionChanged_conn = instance.selectionChanged.connect( self.serviceChanged) instance.setContent(self.l) tlf = TemplatedListFonts() self.l.setFont(0, gFont(tlf.face(tlf.MEDIUM), tlf.size(tlf.MEDIUM))) self.l.setFont(1, gFont(tlf.face(tlf.SMALL), tlf.size(tlf.SMALL))) self.l.setSelectionClip(eRect(0, 0, 0, 0), False)
def __init__(self): GUIComponent.__init__(self) sizes = componentSizes[componentSizes.TIMELINE_TEXT] height = sizes.get(componentSizes.ITEM_HEIGHT, 25) self.l = eListboxPythonMultiContent() self.l.setSelectionClip(eRect(0, 0, 0, 0)) self.l.setItemHeight(height); tlf = TemplatedListFonts() self.l.setFont(0, gFont(tlf.face(tlf.MEDIUM), tlf.size(tlf.MEDIUM)))
def setItemsPerPage(self): if self.listHeight > 0: itemHeight = self.listHeight / config.movielist.itemsperpage.value else: itemHeight = 25 # some default (270/5) self.itemHeight = itemHeight self.l.setItemHeight(itemHeight) self.l.setSelectionClip(eRect(self.listPos, 0, self.listWidth - self.listPos, itemHeight), False) self.instance.resize(eSize(self.listWidth, self.listHeight / itemHeight * itemHeight))
def right(self): print "right" if self.currentSelectedColumn < len(self.row): data = self["head"].getCurrent() if data is None: return self.currentSelectedColumn += 1 data = data[self.currentSelectedColumn] self["head"].l.setSelectionClip(eRect(data[1], data[0], data[3], data[4]), True)
def changed(self, what=""): if self.instance is None: return if self.start: offset = eDVBVolumecontrol.getInstance().getVolume() if self.allColors.has_key(str(offset)): self.instance.clear(self.bgColor) color = parseColor(self.allColors.get(str(offset))) self.instance.fillRect(eRect(((2*offset)-10), 0, 10, 25), color)
def setMode(self, mode): show_two_lines = config.usage.servicelist_twolines.value and mode == self.MODE_FAVOURITES if config.usage.servicelist_number_of_services.value == "by skin": ItemHeight = self.ItemHeight * (2 if show_two_lines else 1) ServiceNameFont = self.ServiceNameFont ServiceNumberFont = self.ServiceNumberFont ServiceInfoFont = self.ServiceInfoFont else: ItemHeight = int(self.instance.size().height() / int(config.usage.servicelist_number_of_services.value)) * (2 if show_two_lines else 1) FontFactor = ItemHeight * 100 / self.ItemHeight ServiceNameFont = gFont(self.ServiceNameFont.family, int(self.ServiceNameFont.pointSize * FontFactor/(200 if show_two_lines else 100))) ServiceNumberFont = gFont(self.ServiceNumberFont.family, int(self.ServiceNumberFont.pointSize * FontFactor/(200 if show_two_lines else 100))) ServiceInfoFont = gFont(self.ServiceInfoFont.family, int(self.ServiceInfoFont.pointSize * FontFactor/(200 if show_two_lines else 100))) self.mode = mode self.l.setItemHeight(ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) if config.usage.service_icon_enable.value: self.l.setGetPiconNameFunc(getPiconName) else: self.l.setGetPiconNameFunc(None) rowWidth = self.instance.size().width() - 30 #scrollbar is fixed 20 + 10 Extra marge if mode is self.MODE_NORMAL or not config.usage.show_channel_numbers_in_servicelist.value: channelNumberWidth = 0 channelNumberSpace = 0 else: channelNumberWidth = config.usage.alternative_number_mode.value and getTextBoundarySize(self.instance, ServiceNumberFont, self.instance.size(), "0000").width() or getTextBoundarySize(self.instance, self.ServiceNumberFont, self.instance.size(), "00000").width() channelNumberSpace = self.fieldMargins self.l.setElementPosition(self.l.celServiceNumber, eRect(0, 0, channelNumberWidth, ItemHeight)) progressWidth = self.progressBarWidth if "perc" in config.usage.show_event_progress_in_servicelist.value: progressWidth = self.progressPercentWidth or self.progressBarWidth if "left" in config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(channelNumberWidth+channelNumberSpace, 0, progressWidth , ItemHeight)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace + progressWidth + self.fieldMargins, 0, rowWidth - (channelNumberWidth+channelNumberSpace + progressWidth + self.fieldMargins), ItemHeight)) elif "right" in config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(rowWidth - progressWidth, 0, progressWidth, ItemHeight)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace, 0, rowWidth - (channelNumberWidth+channelNumberSpace + progressWidth + self.fieldMargins), ItemHeight)) else: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(0, 0, 0, 0)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace, 0, rowWidth - (channelNumberWidth+channelNumberSpace), ItemHeight)) self.l.setElementFont(self.l.celServiceName, ServiceNameFont) self.l.setElementFont(self.l.celServiceNumber, ServiceNumberFont) self.l.setElementFont(self.l.celServiceInfo, ServiceInfoFont) if "perc" in config.usage.show_event_progress_in_servicelist.value: self.l.setElementFont(self.l.celServiceEventProgressbar, ServiceInfoFont) self.l.setShowTwoLines(show_two_lines) self.l.setHideNumberMarker(config.usage.hide_number_markers.value) self.l.setServiceTypeIconMode(int(config.usage.servicetype_icon_mode.value)) self.l.setCryptoIconMode(int(config.usage.crypto_icon_mode.value)) self.l.setRecordIndicatorMode(int(config.usage.record_indicator_mode.value)) self.l.setColumnWidth(-1 if show_two_lines else int(config.usage.servicelist_column.value))
def initDatabase(self): self.myTimer.start(200) if self.lamedb.databaseState < 3: self.setTitle(_("reading lamedb - please wait - get transponders")) return elif self.lamedb.databaseState == 3: self.setTitle(_("reading lamedb - please wait - get services %s"%str(self.lamedb.readcnt))) return elif self.lamedb.databaseState == 4: self.setTitle(_("reading lamedb - please wait - build database")) self.lamedb.databaseState = 5 return self.myTimer.stop() self.newServiceList = self["list"].buildServicesList(self.database) self["list"].setEntries(self.newServiceList) row = self["list"].getCurrent() if row is None: return head = [] for x in xrange(2, len(row)): head.append([row[x][1]-row[1][3], row[x][3], ""]) for x in xrange(len(self.row)): head[x][2]= self.row[x][1] if len(self.row[x])>3: head[x].append(True) self["newscaster"].setEntry() self["head"].setEntries(head) if self.currentSelectedColumn: data = self["head"].getCurrent() data = data[self.currentSelectedColumn] self["head"].l.setSelectionClip(eRect(data[1], data[0], data[3], data[4]), True) else: self["head"].l.setSelectionClip(eRect(0, 0, 0, 0)) self.initSort() if self.usk is not None: for idx in xrange(len(self.newServiceList)): if self.newServiceList[idx][0] == self.usk: self["list"].instance.moveSelectionTo(idx) break self.updateSelection() self.setTitle(self.mainTitle)
def __init__(self): GUIComponent.__init__(self) self.l = eListboxPythonMultiContent() self.l.setSelectionClip(eRect(0,0,0,0)) if config.skin.xres.value == 1920: self.l.setItemHeight(35); self.l.setFont(0, gFont("Regular", 30)) else: self.l.setItemHeight(25); self.l.setFont(0, gFont("Regular", 20))
def __init__(self): GUIComponent.__init__(self) self.l = eListboxPythonMultiContent() self.l.setSelectionClip(eRect(0, 0, 0, 0)) self.l.setItemHeight(25); self.foreColor = 0xffc000 self.backColor = 0x000000 self.time_base = 0 self.time_epoch = 0 self.font = gFont("Regular", 20)
def left(self): print("left") if self.currentSelectedColumn: data = self["head"].getCurrent() if data is None: return self.currentSelectedColumn -= 1 if self.currentSelectedColumn: data_c = data[self.currentSelectedColumn] data_c2 = data[self.currentSelectedColumn +1] x1 = data_c2[1] x0 = data_c[1] if x0 < 0: x0 = 0 self["head"].l.setSelectionClip(eRect(x0, data_c[0], x1-x0, data_c[4]), True) else: self["head"].l.setSelectionClip(eRect(0, 0, 0, 0), True) elif self["head"].getCurrent() is not None: self["head"].l.setSelectionClip(eRect(0, 0, 0, 0))
def setMode(self, mode): self.mode = mode self.l.setItemHeight(self.ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) piconw = 0 if config.usage.service_icon_enable.value: self.l.setGetPiconNameFunc(getPiconName) piconw = 67 if config.skin.xres.value == 1920: piconw = 92 else: self.l.setGetPiconNameFunc(None) rowWidth = self.instance.size().width() - 30 #scrollbar is fixed 20 + 10 Extra marge channelNumberSpace = 10 self.progressBarWidth = 52 self.fieldMargins = 0 if mode == self.MODE_NORMAL: channelNumberWidth = 0 else: if config.skin.xres.value == 1920: channelNumberWidth = 70 else: channelNumberWidth = 50 self.l.setElementPosition(self.l.celServiceNumber, eRect(0, 0, channelNumberWidth, self.ItemHeight)) if config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(channelNumberWidth+channelNumberSpace + piconw, 0, self.progressBarWidth , self.ItemHeight)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace + self.fieldMargins, 0, rowWidth - (channelNumberWidth+channelNumberSpace + self.progressBarWidth + self.fieldMargins), self.ItemHeight)) else: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(0, 0, 0, 0)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace, 0, rowWidth - (channelNumberWidth+channelNumberSpace), self.ItemHeight)) self.l.setElementFont(self.l.celServiceName, self.ServiceNameFont) self.l.setElementFont(self.l.celServiceNumber, self.ServiceNumberFont) self.l.setElementFont(self.l.celServiceInfo, self.ServiceInfoFont) self.l.setHideNumberMarker(config.usage.hide_number_markers.value)
def setFullPixmap(dest, ptr, scaleSize, aspectRatio): if scaleSize.isValid() and aspectRatio.isValid(): pic_scale_size = ptr.size().scale(scaleSize, aspectRatio) dest_size = dest.getSize() dest_width = dest_size.width() dest_height = dest_size.height() pic_scale_width = pic_scale_size.width() pic_scale_height = pic_scale_size.height() if pic_scale_width == dest_width: dest_rect = eRect(0, (dest_height - pic_scale_height) / 2, pic_scale_width, pic_scale_height) else: dest_rect = eRect((dest_width - pic_scale_width) / 2, 0, pic_scale_width, pic_scale_height) dest.instance.setScale(1) dest.instance.setScaleDest(dest_rect) else: dest.instance.setScale(0) dest.instance.setPixmap(ptr)
def setMode(self, mode): if config.usage.servicelist_number_of_services.value == "by skin": ItemHeight = self.ItemHeight ServiceNameFont = self.ServiceNameFont ServiceNumberFont = self.ServiceNumberFont ServiceInfoFont = self.ServiceInfoFont else: ItemHeight = int(self.instance.size().height() / int(config.usage.servicelist_number_of_services.value)) FontFactor = ItemHeight * 100 / self.ItemHeight ServiceNameFont = gFont(self.ServiceNameFont.family, int(self.ServiceNameFont.pointSize * FontFactor/100)) ServiceNumberFont = gFont(self.ServiceNumberFont.family, int(self.ServiceNumberFont.pointSize * FontFactor/100)) ServiceInfoFont = gFont(self.ServiceInfoFont.family, int(self.ServiceInfoFont.pointSize * FontFactor/100)) self.mode = mode self.l.setItemHeight(ItemHeight) self.l.setVisualMode(eListboxServiceContent.visModeComplex) if config.usage.service_icon_enable.value: self.l.setGetPiconNameFunc(getPiconName) else: self.l.setGetPiconNameFunc(None) rowWidth = self.instance.size().width() - 30 #scrollbar is fixed 20 + 10 Extra marge if mode == self.MODE_NORMAL or not config.usage.show_channel_numbers_in_servicelist.value: channelNumberWidth = 0 channelNumberSpace = 0 else: channelNumberWidth = config.usage.alternative_number_mode.value and getTextBoundarySize(self.instance, ServiceNumberFont, self.instance.size(), "0000").width() or getTextBoundarySize(self.instance, self.ServiceNumberFont, self.instance.size(), "00000").width() channelNumberSpace = self.fieldMargins self.l.setElementPosition(self.l.celServiceNumber, eRect(0, 0, channelNumberWidth, ItemHeight)) progressWidth = self.progressBarWidth if "perc" in config.usage.show_event_progress_in_servicelist.value: progressWidth = self.progressPercentWidth or self.progressBarWidth if "left" in config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(channelNumberWidth+channelNumberSpace, 0, progressWidth , ItemHeight)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace + progressWidth + self.fieldMargins, 0, rowWidth - (channelNumberWidth+channelNumberSpace + progressWidth + self.fieldMargins), ItemHeight)) elif "right" in config.usage.show_event_progress_in_servicelist.value: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(rowWidth - progressWidth, 0, progressWidth, ItemHeight)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace, 0, rowWidth - (channelNumberWidth+channelNumberSpace + progressWidth + self.fieldMargins), ItemHeight)) else: self.l.setElementPosition(self.l.celServiceEventProgressbar, eRect(0, 0, 0, 0)) self.l.setElementPosition(self.l.celServiceName, eRect(channelNumberWidth+channelNumberSpace, 0, rowWidth - (channelNumberWidth+channelNumberSpace), ItemHeight)) self.l.setElementFont(self.l.celServiceName, ServiceNameFont) self.l.setElementFont(self.l.celServiceNumber, ServiceNumberFont) self.l.setElementFont(self.l.celServiceInfo, ServiceInfoFont) if "perc" in config.usage.show_event_progress_in_servicelist.value: self.l.setElementFont(self.l.celServiceEventProgressbar, ServiceInfoFont) self.l.setHideNumberMarker(config.usage.hide_number_markers.value) self.l.setServiceTypeIconMode(int(config.usage.servicetype_icon_mode.value)) self.l.setCryptoIconMode(int(config.usage.crypto_icon_mode.value)) self.l.setRecordIndicatorMode(int(config.usage.record_indicator_mode.value)) self.l.setColumnWidth(int(config.usage.servicelist_column.value))
def postWidgetCreate(self, instance): instance.setWrapAround(True) instance.selectionChanged.get().append(self.serviceChanged) instance.setContent(self.l) if config.skin.xres.value == 1920: self.l.setFont(0, gFont("Regular", 28)) self.l.setFont(1, gFont("Regular", 18)) else: self.l.setFont(0, gFont("Regular", 20)) self.l.setFont(1, gFont("Regular", 14)) self.l.setSelectionClip(eRect(0,0,0,0), False)
def left(self): print "left" if self.currentSelectedColumn: data = self["head"].getCurrent() if data is None: return self.currentSelectedColumn -= 1 if self.currentSelectedColumn: data_c = data[self.currentSelectedColumn] data_c2 = data[self.currentSelectedColumn +1] x1 = data_c2[1] x0 = data_c[1] if x0 < 0: x0 = 0 self["head"].l.setSelectionClip(eRect(x0, data_c[0], x1-x0, data_c[4]), True) else: self["head"].l.setSelectionClip(eRect(0,0,0,0), True) # self["laufschrift"]..l.setSelectionClip(eRect(data[1], data[0], data[3], data[4]), True) elif self["head"].getCurrent() is not None: self["head"].l.setSelectionClip(eRect(0,0,0,0))
def hand(self): volumevalue = eDVBVolumecontrol.getInstance().getVolume() width = self.instance.size().width() height = self.instance.size().height() r = (min(width, height) / 2) self.wh = r/10 i = 0 if volumevalue > 25: i = 25 self.instance.fillRect(eRect(width/2, 0, r, r), self.bColor) if volumevalue > 50: i = 50 self.instance.fillRect(eRect(width/2, width/2, r, r), self.bColor) if volumevalue > 75: i = 75 self.instance.fillRect(eRect(0, width/2, r, r), self.bColor) i = i*0.6 if volumevalue > 0: while i <= self.numval: (endX, endY,) = self.calculate(i, r, r) self.draw_line(r, r, endX, endY) i = i + 1
def updateSelection(self): row = self["list"].getCurrent() if row is None: self.usk = None self.cur_service = None return self.usk = self["list"].getCurrent()[0] self.cur_service = self.database[self.usk[:16]]["services"][self.usk] firstColumn = row[1] #wir fangen bei der zweiten Spaltean, das ServicetypeIcon wird also nicht mit selectiert lastColumn = row[len(row)-1] #sollte doch das Icon mit selectiert werden, dann ist darauf zu achten, das das Icon KEINEN Rand hat und lastColumn[0] anstat firstColumb[0] verwendet werden muss # um eine korrekte Anzeige des Selectionsbalken zu erhalten self["list"].l.setSelectionClip(eRect(firstColumn[1], lastColumn[0], lastColumn[1]+lastColumn[3], lastColumn[4]), True) # self.getInfo()
def postWidgetCreate(self, instance): if self.type == EPG_TYPE_GRAPH: self.setOverjump_Empty(self.overjump_empty) instance.setWrapAround(True) instance.selectionChanged.get().append(self.serviceChanged) instance.setContent(self.l) self.l.setSelectionClip(eRect(0,0,0,0), False) self.setServiceFontsize() self.setEventFontsize() else: instance.setWrapAround(False) instance.selectionChanged.get().append(self.selectionChanged) instance.setContent(self.l) self.setEventFontsize()