Hallo
Ich möchte das Aussehen einer Liste (keine Selection-Anzeige) über den Skin mit TemplatedMultiContent festlegen und habe dabei sowohl beim List-Attribute (selectionDisabled=1) und im Template (selectionEnable: False) die Selection deaktiviert.
<widget source="list2" render="Listbox" position="10,220" size="700,150" itemHeight="40" selectionDisabled="1" scrollbarMode="showNever" enableWrapAround="1" >
<convert type="TemplatedMultiContent">
{"template":[
MultiContentEntryText(pos = (0,0), size = (680,40), flags=RT_WRAP|RT_VALIGN_CENTER, font = 0, text = 0),
],
"fonts": [gFont("Regular", 26)],
"itemHeight": 40,
"selectionEnabled": False
}
</convert>
</Widget>
Alles anzeigen
Beim Öffnen des Screens sieht noch alles so aus, wie es im Skin/Template festgelegt ist (Bild 1).
Wird im Plugin dann aber die Liste aktualisiert (.setList oder .updateList), wird plötzlich die Selection-Anzeige verändert (Bild 2).
Hab im Template-Converter herausgefunden, dass diese Zeile immer den selectionEnable-Wert der Liste selbst abfragt und diesen Wert setzt, egal was im Skin angegeben ist.
http://git.opendreambox.org/?p…2cd;hb=refs/heads/4.3#l59
Was müsste ich hier noch im Skin angeben, damit die Selection dauerhaft deaktiviert bleibt ?
(Zugriff auf das eigentliche Plugin besteht dabei nicht).
Hab mal wieder ein Test-Plugin gebastelt.
Wo es bei List 3 noch ein weiteres Problem gibt (itemHeight aus dem Skin wird beim List-Update ignoriert - geringere Zeilenhöhe in Bild 2 bei Liste 3)
Liste 1:
Es soll lt. Skin die Selection angezeigt werden (im Plugin wird für die Liste aber .setSelectionEnable(0) gesetzt)
Beim List-Update wird die Selection deaktiviert, obwohl im Skin alles aktiviert ist
Liste 2
Es soll lt. Skin die Selection nicht angezeigt werden (im Plugin wird kein Wert für list.setSelectionEnable gesetzt)
Beim List-Update wird die Selection aktiviert, obwohl im Skin alles deaktiviert ist
Liste 3
Hier wird convert type="StringList" verwendet, womit die gewünschte Selection beim List-Update bestehen bleibt.
Allerdings wird hier die itemHeight aus dem Skin dabei ignoriert und auf einen "Default-Wert" gesetzt.
Hab ich da irgendwo einen Denkfehler ?