Wie Filelist Schrift vergrößern im MediaPlayer?

  • Hat funktioniert - Vielen Dank!


    Schade, dass die Info zur korrekten Installation so spät kam. Hätte mir eine Menge erfolgloser Versuche erspart.


    Trotzdem ist auch dieser Skin nicht das was ich suche, da die Schrift innerhalb des Media Players

    immer noch recht klein ist und sich nicht ändern lässt.


    Gibt es keinen Skin in dem sich die Schriftgröße einstellen lässt?


    /Willi/

  • Liest du auch was man dir schreibt? ,ich hab dir geschrieben das es der Medium Font ist der benutzt wird ,daher setz die Listfonts in deinem genutzten Skin (egal welchen) und ändere da die größe des Medium Font und überall in den Listen wo Medium genutzt wird ist dannd er Font so groß wie du es im Skin angegeben hast.

    Du kannst in der Liste keinen extra Font einsetzen das ist nicht gewollt im DreamOS da gibt es 6 Listfonts so das in allen Listen die das nutzen eine einheitliche Fontgröße ist und man somit nicht zig mal einen anderen oder den selben angeben muss wie das bei anderen nicht DreamOS Image gemacht wird .

  • Wie groß willst Du einen Font eigentlich haben, dass er für Dich lesbar ist? Es gibt in allen Skins (die übrigens die Community mit viel Herz und Arbeit erstellt) soooo viele Optionen. Aber Du meckerst und meckerst und liest wenig bis nix, Allein schon der Satz


    Quote

    Schade, dass die Info zur korrekten Installation so spät kam. Hätte mir eine Menge erfolgloser Versuche erspart.

    Finde ich ziemlich unverschämt. Was glaubst Du, wieviel Zeit es kostet, einen Skin zu erstellen? Und Du jammerst über deine "erfolglosen" Versuche. Pfui!


    Das kann man sich alles anlesen, wenn man schon so individuelle Anforderungen stellt. Dann mach Dich schlau und erstelle deinen eigenen Skin, der Deinen Wünschen entspricht.

    Und wenn Du Dir nicht mal den "Aufwand" machen willst, ein Image zu installieren, wo das alles drin ist, dann ist das Dein Problem. Du bekommst echt viel Hilfe - aber bist immer nur am meckern.

    Und wenn Dir der Metrix Skin und seine Schriftgrösse immer noch zu klein ist - dann solltest Du mal beim Optiker deiner Wahl vorbeischauen. Mehr Lesbarkeit geht kaum.


    Habe fertig...

    Edited once, last by AlBundy00 ().

  • Hallo Zombi,


    doch ich lese was Du schreibst und habe schon vor einigen Tagen Deinen "Listfont" Tipp eingebaut.

    Das war auch erfolgreich - vielen Dank hierfür!


    Leider wirken diese Änderungen nicht auch im MediaCenter -> Unterfenster "Video Player" dort in der Fileliste.

    Da bin ich noch auf der Suche wie ich auch dort den Font vergrößern kann?


    Darum bin ich ersteinmal dem Tipp gefolgt stattdessen den Metrix Skin zu verwenden. Die Installation

    war aber dann doch nicht so problemlos wie ich erwartet habe.


    Aber auch der Metrix Skin verwendet für den Mediaplayer und das MediaCenter einen kleine Schriftgröße.

    Das half mir darum nicht weiter. Darum keine Aufregung. Ich behaupte nicht das der Metrix Skin schlecht ist.

    Er passt halt nicht auf meine Bedürfnisse.


    Darum wer noch einen Tipp hat wie im Default Skin: MediaCenter -> Unterfenster "Video Player" die Schrift

    vergrößern werden kann - gerne her damit.


    Sorry wenn ich jemanden auf die Füße getreten habe - aber machmal ist es hilfreicher wenn ein Tipp nicht

    zu fragmentarisch ist. So tief das ich mir fehlende Info dazureimen kann habe ich leider noch nicht.


    /Willi/

  • Also einmal schreibst du vom Mediaplayer ,dann wieder vom Mediacenter ,dann wieder das du es schon vor Tagen gemacht hast und da der Font auch erfolgreich größer wurde ,so langsam kommt man sich vera... vor ,weil du hast ja dann mitbekommen wie man es machtmit dem Listfont.

    Und zum anderen wenn du den Systemdefault HD nutzt da sind nicht alle Screens drin weil die HD Screens meist in den Plugins direkt sind so auch der Videoplayer des Mediacenter ,dieser Screen wird beim SystemHD Skin direkt aus der VideoPlayer.py gelesen und wenn du den anderst haben möchtest musst du ihn dir selbst in einer user Datei skinnen .

    Im Videoplayer wird auch Listbox mit TemplatedMultiContent verwendet und da kann man extra die Fontgröße angeben im Plugin HD Skin ist da eine

    "fonts": [gFont("Regular",22) angegeben die man ändern kann wenn man den Screen dann in einer User Datei selbst skinnt.

  • Hallo Zombi,


    Ich hab's gefunden. Nach der erfolgreichen Änderung der Fontgröße direkt in "VideoPlayer.py" (quick and dirty)

    wars wie ichs haben wollte.


    In den Sourcen hätte ich allerdings nicht gesucht.

    Tja die Gesamtstruktur der Box Software hat halt so Ihre Schwächen...


    Danke für Deine Hilfe :thumbup:


    /Willi/

  • Schwächen ist falsch gesagt ,du sollst auch nix in der py ändern ,du machst es einfach falsch und auch nicht so wie man es dir per hilfe beschreibt ,da sehe ich er den Fehler bei dir nicht beim system. Es wurde dir nicht geschrieben das du das in der py ändern sollst sondern das dort der screen als default Plugin Ansicht zum einsehen vorliegt und du dir diesen dann in eine user machen kannst und dort dann bearbeiten so wie du magst .

    Skinner die einen skin bauen machen das doch auch nicht in den py's sondern da wird eine xml gebaut mit den ganzen screens drin und die infos wie und was möglich ist in den besagten screens holt man sich entweder aus den py oder aus den default skindatein (aber man verändert die deafult und py Datein nicht ;)

  • zombi meint damit du sollst dir eine skin_user.xml anlegen und darin den screen eintragen aus dem plugin. denn entsprechend deiner Anpassungen ändern.

    Eine skin_user.xml wird immer bevorzugt behandelt. Somit wird dann der screen aus der skin_user.xml geladen und nicht aus der plugin.py z.B.


    Und hier noch nen link der Suche zur skin_user.xml > https://dreambox.de/board/wcf/…2&highlight=skin_user.xml


    Da findest du jede Menge Lesestoff ;)


    Somit hat die Gesamtstruktur der Boxsoftware keine Schwächen - die Schwäche ist das es keine gescheite gesamte Dokumentation von Seiten des Herstellers über die vielen Möglichkeiten des Dream-OS/ enigma2 gibt. Man muß sich vieles halt mühsam zusammensuchen oder viel querlesen leider.

    *****************************************************************************


    ('''... Gruß Ketschuss ...''')
    DM920uHD, DM900uHD, DmTwo,DM520
    Team-Member Project Merlin - we are opensource

  • Tja die Gesamtstruktur der Box Software hat halt so Ihre Schwächen...

    Diese Schwäche ist aber auch die Stärke des Systems.

    Ein so offenes System hat immer mehr Stärken als Schwächen.


    Eine Dokumentation wäre immer veraltet, da diese auch gepflegt werden muss, aber keiner das freiwillig tut.

    Tut es der Hersteller, hat er dafür Personalkosten. Diese müssen über den Verkauf der Boxen erwirtschaftet werden. In folge dessen würden die Boxen teurer => noch mehr Gejammer über den Preis.


    Wer das nicht verstehen will und deshalb die Boxsoftware als Schwachstelle sieht, sollte sich einfach keine solche Box kaufen.

    Aber er kauft sich ja keine "andere Box", weil die alle so unflexibel sind - da hilft auch die beste Dokumentation nix!


    Und weil die Dreamboxen ja bekannt sind für Ihre Flexibilität, kauft man sich diese dann doch.

    Aber... dann zeigt sich der Käufer unflexibel mit einem solch flexiblen System umzugehen ;)



    Ich bleibe dabei, eine Dreambox muss man sich verdienen!

  • Oh, so viele Kommentare,


    aber


    1. Ich kenne Python nur sehr eingeschränkt (komme mehr aus der embedded "C" Welt)

    2. Das Einbinden einer user.xml zieht mit Sicherheit auch eine Änderung der VideoPlayer.py

    nach sich. Woher sollte die sonst wissen, dass die Skin Daten nicht mehr direkt aus der Source

    zu lesen sind, sondern aus der user.xml. Egal man muss die Source anfassen. Da ist meine

    Lösung einfacher und bringt das selbe. Ist halt quick and dirty.


    Damit ist das Thema sicherlich schon mehr als zu Ende diskutiert! 8)


    Ich danke allen die mir geholfen haben!

    War schon Super - auch wenn einige davon in einer Sackgasse endeten. :thumbup:


    /Willi/

  • Nein das siehst du einfach falsch ,das System ist so aufgebaut das ein Screen der in der skin_user.xml ist immer Vorrang hat ,das bedeutet wenn du da einen Screen ein baust wird dieser genommen vor allem was noch kommt ,also vor deinem eingestellen Skin ,vor der py und auch in allen Skins die die einschaltest .

    Das bedeutet schreibst du den Screen in eine skin_user.xml dann wird der genommen und das was da drin steht wird dir angezeigt egal was in der py drin steht oder im default skin.


    Nur als Anschaungsbeispiel hab ich den Font mal in meinem Skin schnell hochgesetzt in meinem Videoplayer screen und das ist in meiner skin.xml meinses FHD Skins da muss absolut nix aber 0,nix in einer py geändert werden,du hast das Prinzip nur noch nicht verstanden (was nicht schlimm ist) nur musst du das erst verstehen bzw. mal lesen wie man Skins bzw. Screens abänden bzw. skinnen kann ,denn das ist ja auch das gute an so einem System und da musst du nix in der py ändern. ;)

  • Um es für Dich verständlich zu machen...


    Der Pluginentwickler definiert im Plugin den Screen.


    Aber wenn Du Dir einen Skin installierst, wo der Skinner das Plugin geskinnt hat, was nichts anderes bedeutet, als dass der Skinner den Screen aus dem Plugin genommen hat und in die skin.xml SEINES Skins eigetragen hat und dort den Screen anpasst.


    Wenn Du einen Skin verwendest wo der Screen des Plugins nicht beinhaltet ist, wird der Screen des Plugins aus dem Plugin genommen.


    Wird auf der Box eine skin_user.xml gefunden und ist dort der Screen des entsprechenden Plugins vorhanden, so wird dieser genommen.

    Was dann in der skin.xml des aktuell selektierten Skin steht wird ignoriert, genauso wie der Eintrag direkt im Plugin.


    Das kannst Du ganz einfach prüfen, wenn Du einen anderen Skin auswählst, wo der Screen geskinnt ist!

    Denn dann werden Deiner Änderungen in der *.py ignoriert.


    Und Deine Änderung hat auch noch den Haken, dass, wenn das Plugin aktualisiert wird (*.py wird durch das Update durch eine neuere ersetzt), Deine Änderungen ebenfalls Geschichte sind.



    Nun haben so viele immer wieder geantwortet und wollten Dir helfen und nicht nur bei diesem Problem, sondern auch bei vielen anderen DEINER Probleme.

    Aber in allen Threats, egal in welchen Board liest Du nicht vollständig und meinst alles besser zu wissen.


    Ich werde Dich deshalb zukünftig ignorieren. Mir ist meine Zeit für Ignoranten und Besserwisser zu wertvoll.

  • Hallo Zombi,


    Ich glaube auch gerne, das dies so funktioniert


    Allerdings für die Umsetzung: Python Source Code nach skin_user.xml fehlen mir zu viele

    Grundlagen. Das würde schon damit anfangen, dass ich nicht wüsste welchen Screen Namen

    ich hier eintragen müsste. Von dem Rest ganz zu schweigen.


    Green Screens wären sicherlich die Folgen.


    Bestimmt ein guter Vorschlag - für mich aber leider (wenigstens zur Zeit) noch nicht umsetzbar.


    /Willi/

  • Die plugin.py hast Du ja gefunden. Der Screen sieht in der Regel so aus (darin hast Du Änderungen in der *.py gemacht)

    Code
        skin = """
            <screen position="center,center" size="720,310" name="Beispiel Screenname">
                <ePixmap pixmap="skin_default/buttons/red.png" position="10,5" size="200,40" alphatest="on" />
                <ePixmap pixmap="skin_default/buttons/green.png" position="210,5" size="200,40" alphatest="on" />
                <widget name="key_red" position="10,5" size="200,40" zPosition="1" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" shadowColor="black" shadowOffset="-2,-2" />
                <widget name="key_green" position="210,5" size="200,40" zPosition="1" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" shadowColor="black" shadowOffset="-2,-2" />
                <eLabel position="10,50" size="700,1" backgroundColor="grey" />
                <widget name="config" position="10,60" size="700,240" enableWrapAround="1" scrollbarMode="showOnDemand" />
            </screen>"""


    skin_user.xml

    Code
    <screen position="center,center" size="720,310" name="Beispiel Screenname">
                <ePixmap pixmap="skin_default/buttons/red.png" position="10,5" size="200,40" alphatest="on" />
                <ePixmap pixmap="skin_default/buttons/green.png" position="210,5" size="200,40" alphatest="on" />
                <widget name="key_red" position="10,5" size="200,40" zPosition="1" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" shadowColor="black" shadowOffset="-2,-2" />
                <widget name="key_green" position="210,5" size="200,40" zPosition="1" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" shadowColor="black" shadowOffset="-2,-2" />
                <eLabel position="10,50" size="700,1" backgroundColor="grey" />
                <widget name="config" position="10,60" size="700,240" enableWrapAround="1" scrollbarMode="showOnDemand" />
            </screen>


    Vorne habe ich also

    Code
    skin = """

    weggelassen



    Und hinten

    Code
    """

    weggelassen



    Was übrig bleibt ist XML konformer Code - das wars.



    ein Screen fängt an mit

    <screen name="Plugin Name"....


    und endet mit

    ...</screen>




    Du könntest auch einen Skin nehmen wo der Screen enthalten ist und dort rauskopieren und Deine Anpassungen machen.


    Eine skin.xml ist nix anderes als eine Ansammlung von Screens

  • Aber OK, so schnell gebe ich ja nicht auf...


    Ich hab mal folgendes probiert:


    Eine skin_user.xml kreiert mit folgendem Inhalt (kopiert aus skin.xml):


    <skin>

    <!-- Main screen colors (id=0 Framebuffer) -->

    <windowstyle type="skinned" id="0">

    <title offset="15,6" font="Regular;26"/>

    <color name="Background" color="#200d1940"/>

    <color name="LabelForeground" color="#ffffff"/>

    <color name="ListboxBackground" color="#200d1940"/>

    <color name="ListboxForeground" color="#ffffff"/>

    <color name="ListboxSelectedBackground" color="#204176b6"/>

    <color name="ListboxSelectedForeground" color="#ffffff"/>

    <color name="ListboxMarkedBackground" color="#200d1940"/>

    <color name="ListboxMarkedForeground" color="#00ff00"/>

    <color name="ListboxMarkedAndSelectedBackground" color="#204176b6"/>

    <color name="ListboxMarkedAndSelectedForeground" color="#00ff00"/>

    <color name="WindowTitleForeground" color="#ffffff"/>

    <color name="WindowTitleBackground" color="#16244b"/>

    <color name="WindowDimmer" color="#35000000"/>

    <!-- screen border png's -->

    <borderset name="bsWindow">

    <pixmap pos="bpTopLeft" filename="skin_default/b_tl.png"/>

    <pixmap pos="bpTop" filename="skin_default/b_t.png"/>

    <pixmap pos="bpTopRight" filename="skin_default/b_tr.png"/>

    </borderset>

    <listfont type="Keyboard" font="Regular" size="26"/>

    <listfont type="Bigger" font="Regular" size="24"/>

    <listfont type="Big" font="Regular" size="22"/>

    <listfont type="Medium" font="Regular" size="20"/>

    <listfont type="Small" font="Regular" size="18"/>

    <listfont type="Smaller" font="Regular" size="14"/>

    </windowstyle>

    </skin>


    ----------------------------------------------- Schnipp -------------------------------------------------


    hier wieder die originalen listfont sizes eingetragen.


    nach: /usr/share/enigma2 kopiert


    Wenn die skin_user.xml Vorrang vor allen anderen Skins hat hätte ich erwartet,

    dass jetzt wieder die alten listfont Größen zu sehen wären - ist aber nicht...


    Tipp?


    /Willi/

  • Oder stattdesse Part aus VideoPlayer.py kopiert:


    Inhalt von "skin_user.xml", dann nach /usr/share/enigma2 kopiert ->


    -------------------------------------------------- Schnipp -------------------------------------------------


    <skin>

    <screen position="center,120" size="820,520" title="Video Player">

    <widget source="playlist" render="Listbox" position="5,60" size="810,455" enableWrapAround="1" scrollbarMode="showOnDemand">

    <convert type="TemplatedMultiContent">

    {"templates":{

    "default": (35, [

    MultiContentEntryText(pos = (5,0), size = (800,35), font = 0, flags = RT_VALIGN_CENTER, text = 2),

    ]),

    "simple": (35, [

    MultiContentEntryText(pos = (5,0), size = (800,35), font = 0, flags = RT_VALIGN_CENTER, text = 2),

    ]),

    },

    "fonts": [gFont("Regular",22)]

    }

    </convert>

    </widget>

    <ePixmap pixmap="skin_default/buttons/red.png" position="10,0" size="200,40" />

    <ePixmap pixmap="skin_default/buttons/green.png" position="210,0" size="200,40" />

    <ePixmap pixmap="skin_default/buttons/blue.png" position="610,0" size="200,40" />

    <eLabel position="10,50" size="800,1" backgroundColor="grey" />

    <eLabel text="Add" position="10,0" zPosition="1" size="200,40" font="Regular;30" halign="center" valign="center" foregroundColor="white" backgroundColor="#9f1313" transparent="1" />

    <eLabel text="Clear List" position="210,0" zPosition="1" size="200,40" font="Regular;30" halign="center" valign="center" foregroundColor="white" backgroundColor="#1f771f" transparent="1" />

    <eLabel text="Remove" position="610,0" zPosition="1" size="200,40" font="Regular;30" halign="center" valign="center" foregroundColor="white" backgroundColor="#18188b" transparent="1" />

    </screen>

    </skin>


    ---------------------------------------------------------------- Schnipp -------------------------------------------------------------------


    wird von der Box nicht benutzt. Wahrscheinlich ist noch ein Sytax Fehler drinn.


    Aber wo?


    /Willi/

  • Yes Sven,


    das funktioniert zumindest für mein Beispiel 1.

    Für das Beispiel 2 leider aber noch nicht.

    Zumindest könnte ich jetzt meine anderen Änderungen aus den Dateien

    skin.xml und aus skin_default.xml hier mit rein kopieren.

    Mal schauen ob das funktioniert.


    Danke schon mal für den hilfreichen Tipp!


    /Willi/

  • Wenn du mit Beispiel 2 den Screen vom VideoPlayer meinst, dann fehlt dort im screen-Tag das name-Attribute.


    Also <screen name="VideoPlayer" ...>

    Ohne den Namen kann er den Screen ja nicht zuordnen.

    Wobei ich jetzt nicht nachgeschaut habe, wie der Name da wirklich heißen muss.

    Der Name ist in der Regel immer der Name der jeweiligen Class in der .py

    Gruß Sven (aka Dreamy)


    DM920 mit unstable OE2.5 DP
    One mit unstable OE2.6 DP