Dann kann ich leider nicht helfen. sorry.
Modifiziertes EPGSearch für VTI 8.2.3
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
-
Ist ja nicht auszuschließen, dass hier einer mit einem VTI Image mitliest D:
-
@busch: du rechnest echt damit, dass hier im Forum jemand VTI verwendet?*tztztz*
Zur Frage: ja, es crasht. Brauchst den Log dazu?- - - Beitrag wurde mit Deppentalk erstellt. - - - -
Ah, da haben wir ja einen.
Ne, wollte nur wissen, ob das schon vorher war oder durch meine Experimente kommt. Jetzt kann ich es ja abstellen. D: -
Kannst beruhigt sein, trifft dich keine Schuld.- - - Beitrag wurde mit Deppentalk erstellt. - - -
-
Hatte heute tatsächlich mal Zeit, hier weiter zu machen (Helpscreen und fest eingebauter Skin). Die Version packe ich dann in ein eigenes Ipk, dann ist hier auch mal Schluss.
Dabei hab ich vermutlich einen Bug gefunden, den ich gleich fixen würde.
Wäre gut, wenn das vorher noch jemand mit einer unmodifizierten Version gegen checken können. Und zwar einfach im EpgSearch in der Ergebnisliste mal die Bouquets-Taste bzw Channel+/- drücken. Da sollte dann ein Crash kommen, weil kein SwitchBouqet oder so existiert.
Den Bug habe ich auch schon festgestellt, tritt aber nur im SingleEPG auf
Gesendet von meinem iPhone mit Tapatalk -
Hallo busch,
vielen, vielen Dank, dass du dir soviel Mühe machst - du machst genau die Features, die ich bisher vermisst habe!
Wann können wir denn mit einer "offiziellen Version" rechnen? -
Offiziell heißt zumindest ein ipk. Das wird noch etwas dauern. Will erst noch den gefundenen Bug fixen, und dann muß ich das ganze ja noch aufs 8er VTI portieren und ein ipk bauen.
Und das muß dann auch vielleicht erst noch jemand testen, weil ich ja selber kein VTI 8 habe. Und was passiert, wenn das "normale" EpgSearch installiert ist, weiß auch noch keiner.
Also etwa Weihnachten
Und dann gibt es ein ipk, das erst richtig offiziell wird, wenn es die VTI-Entwickler auf den Feed legen. D:
Benutzbar ist die Version auf der 2. Seite vom Thread allerdings schon. Zumindest gab es noch keine Beschwerden über irgendwelche Fehler. -
Hmm, d.h., ich sollte mit meinem VTI8-Receiver lieber nichts installieren, oder?
Oder zumindest vorher das "Standard-Epgsearch" deinstallieren ... -
Nein und Nein. Das hier tut mit VTI 8 und passt das vorhandene EPGSearch an. Man muß nur wissen, wie man es macht.
Ist so eben noch nicht für den gemeinen Enduser geeignet.
So gesehen vielleicht doch eher Ja zur ersten Frage. Dann geht zumindest mal nichts kaputt.Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von busch ()
-
Hallo busch ,
ich hab mal ne Frage an dich,
epsearch ist ja nicht so schlecht, wie es gerade ist.
Ich würde mir jedoch wünschen, dass bei den Suchergebnisse nicht nur der Sendungstitel, sonder auch noch die erste Zeile der ExtendedDescription im "list" element mit angezeigt wird.
Warum das?, bei vielen sich wiederholenden Sendungstitel, zB. ARTEReportage, wird nur dieser angezeigt, die eigentliche Episode dagegen nicht. Man muss jetzt die Beschreibung jeder Folge sich einzeln ansehen um einen Überblick zu bekommen.
Leider bin ich im Programmieren von python nicht so begabt, hättest du eine Idee wie man das umsetzten könnte?? -
Das kommt vom Skin ob der Text zum Ergebnis angezeigt wird, oder nicht.Carpe diem!
Skin: CerX FHD | Plugins: TMDb, BacksNcovers, FritzDect, AutoShredder, PluginMover | EPG: GraphMultiEPG | ... [Alle anzeigen]
Vu+ Wiki -
Ich meine die Suchergebnisse im "list" element von Skin, das kommt direkt aus der .py, und dort ist nur der EventName enthalten
-
Du kannst dir die EPGSearch.py patchen, dann hast du die Namen der Episoden in der Liste:
Spoiler anzeigen Python-Quellcode
- class EPGSearchList(EPGList):
- def __init__(self, type=EPG_TYPE_SINGLE, selChangedCB=None, timer=None):
- EPGList.__init__(self, type, selChangedCB, timer)
- self.l.setBuildFunc(self.buildEPGSearchEntry)
- self.epgcache = eEPGCache.getInstance()
- if PartnerBoxIconsEnabled:
- # Partnerbox Clock Icons
- self.remote_clock_pixmap = LoadPixmap('/usr/lib/enigma2/python/Plugins/Extensions/Partnerbox/icons/remote_epgclock.png')
- self.remote_clock_add_pixmap = LoadPixmap('/usr/lib/enigma2/python/Plugins/Extensions/Partnerbox/icons/remote_epgclock_add.png')
- self.remote_clock_pre_pixmap = LoadPixmap('/usr/lib/enigma2/python/Plugins/Extensions/Partnerbox/icons/remote_epgclock_pre.png')
- self.remote_clock_post_pixmap = LoadPixmap('/usr/lib/enigma2/python/Plugins/Extensions/Partnerbox/icons/remote_epgclock_post.png')
- self.remote_clock_prepost_pixmap = LoadPixmap('/usr/lib/enigma2/python/Plugins/Extensions/Partnerbox/icons/remote_epgclock_prepost.png')
- def buildEPGSearchEntry(self, service, eventId, beginTime, duration, EventName):
- (clock_pic_local, rec1) = self.getPixmapForEntry(service, eventId, beginTime, duration)
- # Partnerbox
- if PartnerBoxIconsEnabled:
- rec2 = beginTime and isInRemoteTimer(self,beginTime, duration, service)
- else:
- rec2 = False
- r1 = self.weekday_rect
- r2 = self.datetime_rect
- r3 = self.descr_rect
- t = localtime(beginTime)
- serviceref = ServiceReference(service) # for Servicename
- event = self.epgcache.lookupEventId(serviceref.ref, eventId)
- if event:
- eventshortdesc = event.getShortDescription()
- else:
- eventshortdesc = ""
- res = [
- None, # no private data needed
- (eListboxPythonMultiContent.TYPE_TEXT, r1.left(), r1.top(), r1.width(), r1.height(), 0, RT_HALIGN_RIGHT, self.days[t[6]]),
- (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 rec1 or rec2:
- if rec1:
- clock_pic = clock_pic_local
- # maybe Partnerbox too
- if rec2:
- clock_pic_partnerbox = getRemoteClockPixmap(self,service, beginTime, duration, eventId)
- else:
- clock_pic = getRemoteClockPixmap(self,service, beginTime, duration, eventId)
- if rec1 and rec2:
- # Partnerbox and local
- res.extend((
- (eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, r3.left(), r3.top(), 21, 21, clock_pic),
- (eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, r3.left() + 25, r3.top(), 21, 21, clock_pic_partnerbox),
- (eListboxPythonMultiContent.TYPE_TEXT, r3.left() + 50, r3.top(), r3.width(), r3.height(), 0, RT_HALIGN_LEFT, serviceref.getServiceName() + ": " + EventName + " > " + eventshortdesc)))
- else:
- res.extend((
- (eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, r3.left(), r3.top(), 21, 21, clock_pic),
- (eListboxPythonMultiContent.TYPE_TEXT, r3.left() + 25, r3.top(), r3.width(), r3.height(), 0, RT_HALIGN_LEFT, serviceref.getServiceName() + ": " + EventName + " > " + eventshortdesc)))
- else:
- res.append((eListboxPythonMultiContent.TYPE_TEXT, r3.left(), r3.top(), r3.width(), r3.height(), 0, RT_HALIGN_LEFT, serviceref.getServiceName() + ": " + EventName + " > " + eventshortdesc))
- return res
-
Super Danke, genau das haben ich gesucht.
Funktioniert problemlos -
Wenn es schon eine funktionierende Lösung gibt, baue ich die vielleicht mit einer Option noch in meine Version ein
-
:444:
ich habe noch eine kleine Änderung vorgenommen.
den Trenner " > " habe ich durch eine Klammer um den erweiterten Text ersetzt.
Die Klamme erscheint nur wenn auch tatsächlich ein Text vorhanden ist.
Quellcode
- def buildEPGSearchEntry(self, service, eventId, beginTime, duration, EventName):
- (clock_pic_local, rec1) = self.getPixmapForEntry(service, eventId, beginTime, duration)
- # Partnerbox
- if PartnerBoxIconsEnabled:
- rec2 = beginTime and isInRemoteTimer(self,beginTime, duration, service)
- else:
- rec2 = False
- r1 = self.weekday_rect
- r2 = self.datetime_rect
- r3 = self.descr_rect
- t = localtime(beginTime)
- serviceref = ServiceReference(service) # for Servicename
- #Mod by pzy-co, add eventshortdesc
- event = self.epgcache.lookupEventId(serviceref.ref, eventId)
- eventshortdesc = ""
- if event:
- eventshortdesc = event.getShortDescription()
- if eventshortdesc != "":
- eventshortdesc = " [" + eventshortdesc + "]"
- res = [
- None, # no private data needed
- (eListboxPythonMultiContent.TYPE_TEXT, r1.left(), r1.top(), r1.width(), r1.height(), 0, RT_HALIGN_RIGHT, self.days[t[6]]),
- (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 rec1 or rec2:
- if rec1:
- clock_pic = clock_pic_local
- # maybe Partnerbox too
- if rec2:
- clock_pic_partnerbox = getRemoteClockPixmap(self,service, beginTime, duration, eventId)
- else:
- clock_pic = getRemoteClockPixmap(self,service, beginTime, duration, eventId)
- if rec1 and rec2:
- # Partnerbox and local
- res.extend((
- (eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, r3.left(), r3.top(), 21, 21, clock_pic),
- (eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, r3.left() + 25, r3.top(), 21, 21, clock_pic_partnerbox),
- (eListboxPythonMultiContent.TYPE_TEXT, r3.left() + 50, r3.top(), r3.width(), r3.height(), 0, RT_HALIGN_LEFT, serviceref.getServiceName() + ": " + EventName + eventshortdesc)))
- else:
- res.extend((
- (eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, r3.left(), r3.top(), 21, 21, clock_pic),
- (eListboxPythonMultiContent.TYPE_TEXT, r3.left() + 25, r3.top(), r3.width(), r3.height(), 0, RT_HALIGN_LEFT, serviceref.getServiceName() + ": " + EventName + eventshortdesc)))
- else:
- res.append((eListboxPythonMultiContent.TYPE_TEXT, r3.left(), r3.top(), r3.width(), r3.height(), 0, RT_HALIGN_LEFT, serviceref.getServiceName() + ": " + EventName + eventshortdesc))
- return res
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von apc001 ()
-
Waaah wieder ein Update vom EPGSearch im Image. Ich komm ja gar nicht hinterher.
@schomi Könnt ihr meine Änderungen nicht auch einfach übernehmen? -
Was soll wo rein ?
-
Die Änderungen von hier (zzgl was ich seither noch in der Pipeline habe) in das offizielle EpgSearch von euch.
Eigentlich wollte ich ja abschließend ein EpgSearch2 als Ipk bereitstellen, aber wenn sich das Original jetzt so schnell weiterentwickelt, wird das ja schneller alt als ich (hab heute Geburtstag).