cTextScroller Equivalent für Pixmap vorhanden?

  • Ich bastel gerade ein bischen mit TrueColor OSDs und dadurch mit Pixmaps im VDR.


    Das Hauptmenü lasse ich mittlerweile erfolgreich in eine dafür angelegte Pixmap zeichnen um später hier auch TrueColor Bilder/Icons einfügen zu können. Das klappte auch recht gut, bis ich jetzt an die Event und Recording Beschreibungen gekommen bin.


    Für normale OSDs bietet der VDR die Klasse cTextScroller um den Inhalt der jeweiligen Description() Funktionen mit Zeilenumbrüchen und, bei Bedarf, einem Scrollbalken darzustellen. Die Klasse cTextScroller ist aber auf cOsd ausgelegt und möchte mit Pixmaps nichts zu tun haben.


    Daher meine Frage, bevor ich etwas übersehen habe und es doppelt implementiere, gibt es ein Equivalent von cTextScroller das mit Pixmaps umgehen kann?

  • Hi,


    meines Wissens nach nicht, ich habe zumindest nichts gefunden :)


    Ich habe das im TVGuide Plugin mit einem cTextWrapper und ein bisschen rechnen selbst gebaut, kannste dir ja ausleihen wenn du magst...könnte man sicherlich noch ein bisschen schöner und modularer gestalten, war ich aber zu faul zu :) Zu finden ist das gnaze in der Klasse cDetailView.


    Ciao Louis

  • Danke für eure Tips, war ich also wirklich nicht blind ;)


    Nach einigem hin und her probieren bin ich aber doch einen anderen Weg gegangen. Ich hab mir nun den cTextScroller in meine Sourcen kopiert und hab dort einfach die cOsd Sachen durch Pixmap ersetzt.

  • Hi,


    das mag zwar funktionieren, entspricht aber nicht dem wirklichen Sinn einer Pixmap. Auf diese Art und Weise zeichnest du beim scrollen jedesmal den Teil des Textes neu, der angezeigt werden soll, was bei einer Pixmap eigentlich nicht nötig ist.


    Bei einer Pixmap hast du einen Drawport, der größer sein kann als der Viewport. Auf diesem Drawport kannst du deinen kompletten Text einmal beim erstellen malen und beim Scrollen dann einfach nur den Drawport verschieben (mit cPixmap:: SetDrawPortPoint). Das sollte von der Performance her wesentlich besser sein...


    Nur mal so als gedanklicher Anstoss... :)


    Ciao Louis

  • Da gebe ich dir Recht. Für mich war aber im Moment nur wichtig das überhaupt etwas angezeigt wird, damit ich weiter mit dem TrueColor rumspielen kann. Ich bin hauptsächlich gerade dabei einfach mal diverse Sachen auszuprobieren und zu gucken wie es aussieht.


    Wenn dabei etwas sinnvolles/schönes rauskommt, werde ich mir die Stelle nochmal vornehmen und deinen Code als Vorlage nutzen.


    Aktuell habe ich mir jetzt ein paar Icons aus dem Reel-SVN genommen und die mal ins PearlHD eingebaut. (Btw: Unter welcher Lizenz stehen die Icons vom Reelskin eigentlich?).
    Nächster Step ist die Kanalliste mit Kanallogos zu versehen.


    Weitere Ideen sind noch:
    - Recording und Event Info um Icons erweitern (Iconsfür Tipp, Sternebewertungen, Landesflagge)
    - Epgimages Diashow, falls mehrere vorhanden sind
    - Tipp Icon im Schedule einblenden

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!