ChannelSelectionPlus-Plugin

  • Hallo


    Das Plugin optimiert im Hintergrund die Kanalliste im DreamOS.
    Man sieht lediglich in den Kanallisteneinstellungen im Titel die Version des Plugins, sonst ist das Plugin unsichtbar und nirgends in irgendwelchen Menüs zu finden.


    Folgende Funktionen bringt das Plugin mit:
    - neue Einstellungsoption zum Anzeigen des Sendungsnamens unter dem Kanalnamen (bietet deutliche Platzvorteile bei schmalen Screens)
    - Umstellung der festen Kanalnamenbreite von Pixel-Wert auf Prozent-Wert
    (vom freien noch zur Verfügung stehenden Platz wird die Kanalnamenbreite als prozentualer Anteil genutzt - flexibler bei öfterem Skinwechsel)
    - Audio-Taste zum Suchen mit EPGSearch in den EPG-Ansichten integriert (diese Funktionalität mit der Audio-Taste wurde durch DP zuletzt aus dem EPGSearch entfernt)


    Das Plugin unterstützt auch das aktuelle Merlin-Image mit seinen erweiterten Optionen in den Kanallisteneinstellungen.


    Zur Installation ist mindestens das aktuelle DreamOS 4.3.2r4 erforderlich.


    Änderungen in Version 0.0.7 (ChannelSelectionPlus):
    - Fix aus Version 0.0.5 (Position für Zusatzinfo) wird jetzt nur noch angewendet, wenn die Sendungsinfo unter dem Kanalnamen angezeigt wird
    - Fix für Anzeige im Verschiebe-Modus (da haben sich in einigen Skins die Texte der 1. und 2. Zeile gegenseitig überlagert/verdeckt)
    - Fix für Anzeige der Zusatzanzeige (bei Zusatzanzeige voraus, Sendungsinfo unter Kanalname und Progressbar hinter Sendername)
    (dazu wurde auch im Setup die Option "nach Sendername" in der Progress-Position entfernt, wenn Sendungsinfo unter Kanalname steht)
    - Unterstützung für ValisEPG ab Version 1.6r5 zur Anzeige der PrimeTime-Sendungen direkt in der Kanalliste (inkl. Timer-Symbole)

  • Die Version 0.06 habe ich mit DreamOS+GP4 sowie Merlin4+GP4 getestet und konnte bisher keine Fehler finden.
    Ihad-Team wäre es möglich das Plugin mit in dem GP-feed aufzunehmen? :tongue:

    Ich bin Guybrush Threepwood, ein mächtiger Pirat!

    Edited once, last by Guybrush2012 ().

  • Ist jetzt auch online verfügbar ;)


    E2 Box: TWO ~ ONE ~ DM8000 ~ DM7080 ~ DM7020HD~ DM9x0 ~ DM820 ~ DM800(SE(v2))~ DM52x ~ DM500HD(v2)~ DM7025(+)
    E1 Box: DM7020 ~ DM7000 ~ DM 5620 ~ DM600 ~ DM500+ ~ DM500 ~ TRIAX 272-S
    Image: OE2.5/OE2.6 Unst./GP4.1 ~ OE2.5 Unst./GP3.3 ~ OE2.2 Unst./GP3.3 ~ OE2.0 Exp./GP3.2 ~ iCVS/GP3 ~ Gemini 4.70
    Sonstiges: DM Tastatur ~ Box: DM100 ~ Router: Fritz!Box 7590 ~ Wlan Stick: Dream Multimedia ~ Server: ALIX.3D3 ~ BananaPI
    Satelliten: WaveFrontier T90
    23,5°E | 19,2°E | 16.0°E | 13,0°E | 10,0°E | 9,0°E | 7,0°E | 4,9°E | 3.0°E | 1.9°E | 0,8°W | 4,0°W | 5,0°W | 8,0°W | 12,5°W | 15,0°W | 22,0°W | 24,5°W | 30.0°W


    Hilfe gesucht ? schau mal ins Gemini Project WIKI, auch unsere Video Tutorial sind für den Einstieg sehr empfehlenswert

  • Sven H
    Schau mal bitte nach denke du hast da was kaputt gemacht mit dem Plugin.
    Wenn man den Verschiebemodus anschaltet und dann etwas markiert dann wird das nicht richtig angezeigt da dann anscheind was mit den pos oder Font Abständen nicht hinhaut.

  • Ich glaube, dass ich das auch schon mal gesehen hatte.
    Muss mal schauen, ob das im Code abgefangen werden kann.


    Scheint ja so, als wenn dann die Höhe des Feldes für den Eventnamen zu groß ist.

  • Keine Ahnung ob ihr da schon mal was dran gemacht hattet ,mir wurde heute nur per PN geschrieben das da was in meinem Skin nicht passt und da das kein Skinproblem ist hab ich bei mir vorhin mal schnell nachgesehen ob es an deinem Plugin liegt .
    Ich nutze die Verschiebefunktion in der Kanalliste normal nie da fällt mir sowas nicht so schnell auf . :D

  • sven berechnest du da was anhand der serviceItemHeight oder serviceItemHeightLarge ?


    Weil mache ich im Skin die serviceItemHeightLarge kleiner dann passt es ,nur das soll ja so nicht sein die sollte schon angegeben werden können wie man möchte ;)

  • Das ist wohl ein Platzproblem, wenn die Schrift für den Sendernamen größer ist als die für den Sendungsnamen ist.
    Dann passiert genau dieses Abschneiden am unteren Ende vom Sendernamen.
    Hat man einen Skin, wo beide Schriftgrößen (Sender und Sendung) in etwa gleich sind, gibt es kein Problem.


    Es wird vom gerade verwendeten ItemHeigt die nötige Höhe für den Sendungsnamen abgezogen, der Rest ist dann für den Sendernamen.
    Und da gibt es bei der bisherigen Berechnung der Positionen für die 2. Zeile ein Problem.


    Du kannst das vermutlich auch ohne mein Plugin simulieren, wenn du eine größere Schrift für den Sendungsnamen (serviceInfoFont) als bei der Info für die 2. Zeile (additionalInfoFont) verwendest.


    Im Moment hab ich keinen echten Plan, wie man das umgeht.
    Ein Versuch, die Positions-Berechnung korrekt zu machen, führt komischerweise zu mehr optischen Verzerrungen, weil man da ja bisher beim Skinnen nicht drauf achten musste, welche Schriftgrößen man da verwendet.


    Edit:
    Das passiert auch, wenn du einfach die 2. Zeile belegst und den Sendungsnamen nicht unter dem Kanalnamen hast.
    Dann wird auch der untere Teil vom Sendungsnamen durch die 2.Zeile abgeschnitten.
    Aber mir scheint es so, dass die 2. Zeile im Verschiebemodus dann nicht mehr transparent ist

    Gruß
    Sven

    Edited 2 times, last by Sven H ().

  • zombi
    Ich hab das jetzt mal untersucht ;)
    Am Skin direkt kann es ja nicht liegen, da es ja allein schon bei jedem Drücken von "OK" im Verschiebemodus wechselt.
    Mit Markierungsfarbe sieht es unschön aus und ohne Farbe passt es plötzlich wieder. Da greifen ja eigentlich die gleichen Skin-Sachen bezüglich Höhe und Schriftgröße.


    Beim setzen der Texte wird immer folgende Zeile ausgeführt:
    res.append((eListboxPythonMultiContent.TYPE_TEXT, leftPos, topPos, width , height, fontnumber, align_types, text, forgroundColor, forgroundColorSel, backgroundColor, backgroundColorSel))


    Entscheidend sind die letzten 4 Parameter zur Farbe.
    Wenn man ganz normal die Selection in der Kanalliste mit hoch/runter ändert, fehlt immer das backgroundColorSel (=None), obwohl der Eintrag ja doch schon ausgewählt ist.
    Aktiviert man aber den Verschiebemodus, wird bei "OK" nicht nur die Schriftfarbe (mit forgroundColorSel) geändert, sondern auch das backgroundColorSel gesetzt.
    Dabei geht dann aber die Transparenz der 2. Zeile verloren, was zum Abschneiden/Überlagern der 1. Zeile führt.


    Drück man dann nochmal "OK" wird der Eintrag ja wieder mit der normalen Textfarbe belegt und es wird kein backgroundColorSel übergeben.
    Dadurch sieht der Text der 1. Zeile dann wieder gut aus, weil er durch die 2. Zeile nicht mehr überlagert wird.


    Ich hab das mal versucht im Code zu fixen, so dass auch bei "OK" mit anderer Textfarbe im Verschiebemodus die 2. Zeile weiterhin transparent bleibt.


    Keine Ahnung, ob das dann Auswirkungen auf bestimmte Skin-Varianten hat.
    Wenn aber beim normal ausgewähltem Eintrag keine backgroundColorSel und auch beim ausgewählten Eintrag im Verschiebemodus (ohne Farbmarkierung) kein backgroundColorSel gesetzt wird, dann scheint man das evtl. nicht wirklich zu brauchen.


    Kannst ja mal rumspielen, ob du eine Skin-Variante findest, wo die Änderung dann doch negative Auswirkungen hat ;)


    Edit:
    veralteten Dateianhang entfernt

    Gruß
    Sven

    Edited 4 times, last by Sven H ().

  • Viel kann ich heute nicht mehr testen,bedingt auch weil ich paar :404: intus habe :D :D .
    Farbe ging jetzt richtig was ich beim testen gesehen hatte ,aber ich hatte auch komische Sachen ,zb. hab ich verschiedene Dinge umgestellt in den Kanallisten Einstellungen und dann wollte ich den Verschiebemodus testen und auf einmal schaltete das ganze um auf den kanal der gerade eigentlich verschoben werden sollte .

  • Ich hab mir das nochmal angeschaut ;)


    Die Überlagerung ist ja passiert, weil die Höhe und Position der 2. Zeile nicht korrekt waren. Die Sache mit der backgroundColorSel war da ja nur indirekt Schuld. Überlappende Felder sollte man ja grundsätzlich vermeiden.


    Habe daher nun versucht, diese Werte korrekt zu berechnen, so dass es trotz backgroundColorSel keine Überlagerung mehr geben sollte.


    Wenn man es ganz korrekt machen wollte, müsste man sogar noch die tatsächliche Höhe für den Kanalnamen und für die Höhe der Zusatzinfo in der 2. Zeile berücksichtigen.
    Im Moment orientiert sich alles an der ServiceInfoHeight (tatsächlich benötigte Höhe für den Sendungsnamen).
    Aber bei allen hier getesteten Skin hat das gepasst ;)


    Die Variante ist jetzt vermutlich etwas sauberer, da nun die backgroundColorSel nicht mehr für die einzelnen Felder deaktiviert ist.


    Edit:
    veralteten Dateianhang entfernt

    Gruß
    Sven

    Edited 3 times, last by Sven H ().

  • Hab jetzt mal paar kombis und Skins getestet und bis jetzt hatte es überall funktioniert.
    Kann zwar dennoch wo klemmen da man ja nicht alles und jedes testet aber es geht auf alle Fälle besser als vorher.