ConfigScreen - ConfigSelection Eintrag dynamisch ändern / löschen

  • Hallo zusammen,

    nachdem ich jetzt schon wieder 2 Tage am Suchen und Probieren bin, hab ich mich entschlossen, hier wieder mal nach Hilfe zu fragen.


    Folgenden Eintrag habe ich in der ConfigSubsection():

    Nun will ich - z.B. wenn "custom" ausgewählt wird, aber irgenwelche wichtigen Elemente fehlen, den Eintrag "custom" löschen. Dies soll aber erst im ConfigScreen passieren, wenn der Eintrag tatsächlich angewählt wird, damit ich auch mitteilen kann, welche Datei fehlt.

    Also kurz, nach meiner Prüfung mit negativem Ergebnis sollte das so aussehen:

    ich hab in der config.py auch getChoices() und setChoices() gefunden und damit experimentiert, komme aber einfach zu keinem Ergebnis.

    Ich tippe mal wieder auf menschliches Versagen, oder geht das wirklich nicht?


    Zur Klarstellung, damit ihr nicht meint, ihr müsstet eine Komplettlösung bieten: Das Feststellen, dass der entsprechende Eintrag gewählt ist, und die Überprüfung funktionieren, es geht also ausschliesslich um das Löschen oder Ändern der Option (ändern z.B. in N/A).


    Danke!

    Alfred


    Nochmal hi zusammen,

    nicht mehr notwendig, sich Gedanken zu machen - es sei denn, es gibt eine SEHR einfache Lösung.

    Ich habe mir mittlerweile einen gut funktionierenden Würgaround gebastelt: Wenn der ausgewählte Eintrag fehlerhaft ist, sende ich meine Nachricht per Messagebox, und sende anschliessend einfach den entsprechenden keyLeft bzw. keyRight zum ConfigListScreen.

    Kommando zurück: Der Würgaround wird doch komplizierter als gedacht, wenn ichs bis zum Ende bearbeite - muss mir ja auch merken, was ich schon geprüft habe....

  • Was funktioniert dabei nicht ?

    Mit getChoices alle Options holen und die erforderliche Option dann aus der ChoiceList removen.

    Dann die ChoiceList mit setChoices wieder zurückgeben.


    PS:

    Ich würde je nach Skin auch nur HD oder FHD-Einträge als Option anbieten und nicht alles.

    Gruß Sven (aka Dreamy)


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

  • Ich hab es mit self["config"].l.invalidate() gemacht :winking_face:

    Ansonsten wird der Eintrag zwar entfernt, ist aber erstmal noch zu sehen, bis man eine andere Option auswählt.

    Gruß Sven (aka Dreamy)


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