hab mal wieder eine dumme frage:
dachte, mit configfile.save() werden die config.xxx.values beim naechsten gui shutdown in die /etc/enigma2/settings geschrieben.
das funktioniert auch in der config klasse, wo die werte manuell im screen gesetzt werden. da wird vor dem verlassen configfile.save() aufgerufen.
aber wenn ich "in der freien wildbahn" einen wert config.xxx.test.value = "abc" aendere und danach configfile.save() aufrufe, dann funktioniert das nicht.
nur wenn ich config.xxx.test.save() aufrufe, ist der wert hinterher in settings.
ist das normal?
configfile.save()
-
-
Ja, ist es. Damit speicherst du das File. Wenn du den Eintrag davor noch nicht gespeichert hast, dann wird einfach ein alter Stand des Files wieder geschrieben.
P.S.: vielleicht mal ein bisschen über deine Art der Fragestellung nachdenken. Du hast immer einen kritischen Unterton drin
-
also wenn die werte noch nicht in der settings gespeichert sind (was ja oft am anfang der fall ist), und ich die werte dann setze, dann werden die beim gui restart nicht gespeichert?
muss ich dann tatsaechlich jeden wert einzeln mit .save() speichern? -
Ja, aber configfile.save() schreibt die config sofort nicht erst beim GUI Neustart
-
na gut, wat mut, dat mut. danke.
-
Schau dir mal saveAll() im ConfigListScreen an.
Da werden alle config-values in einer Schleife gespeichert.
http://git.opendreambox.org/?p…28dddc79509a;hb=HEAD#l282Vielleicht ist es mit der Technik nicht ganz so mühselig
-
ja, da sind die werte aber in einer liste.
ich hab werte, die nicht nur manuell geaendert werden, und welche, die nicht in der liste von configscreen sind.
die muesste ich dann erst in eine liste tun. macht aber vielleicht sinn.
wobei man ja nur die saven muesste, die mit config.xxx.test.value = bla geaendert worden sind.
das kann man aber wohl nicht so einfach rausfinden.