Easy Confyguration - einfacherere Konfigurationsdateien

Stellt hier eure Projekte vor.
Internetseiten, Skripte, und alles andere bzgl. Python.
Antworten
fred.reichbier
User
Beiträge: 155
Registriert: Freitag 29. Dezember 2006, 18:27

Hallo,

bei Programmen mit GUI ist es ziemlich oft eine ziemliche Arbeit, Konfigurationsoberflächen zu schreiben; die Zuordnung Widget -> Option in der Konfigurationsdatei raubt zumindest mir den Nerv. Daher hab ich mich mal hingesetzt und versucht, ein Modul zu schreiben, das das Ganze etwas vereinfacht. Herausgekommen ist Confyguration. Das Grundkonzept sieht so aus: Für jedes Widget soll es einen Wrapper geben (ein sog. Wiggy), der die Aufgabe hat, den Wert des Widgets konfigurationsgerecht aufzubereiten oder zu setzen. In einer zentralen Klasse (namens Confy :D) registriert man dann die Widgets, die Optionen in der Konfigurationsdatei repräsentieren. Nun reicht ein einfaches 'confy.read()', um die Werte aus der Konfigurationsdatei einzulesen und die Werte der Widgets zu setzen, und später ein 'confy.save()', um die Werte auszulesen und abzuspeichern. Im Mercurial-Repo gibts dazu auch ein Beispiel, die API-Dokumentation ist hier zu finden.
Die Wiggy-Bibliothek (der 'Stock') ist momentan noch ziemlich dünn: Es gibt lediglich ein Wiggy für gtk.Entry und eines für einen gtk.FileChooserButton in Verzeichnismodus. Grundsätzlich sollte es möglich sein, für jedes GUI-Toolkit Wiggies zu schreiben.
Wen's interessiert: Den Code bekommt man per

Code: Alles auswählen

hg clone https://sharesource.org/confyguration/
Was haltet ihr von der Idee? Habt ihr Vorschläge, Kritik oder sonstiges für mich? ;)

Gruß Fred
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Ich hab sowas für Gtk hier:
http://paste.pocoo.org/show/53872/

Und hier der Test:
http://paste.pocoo.org/show/53870/
Benutzeravatar
Blattlaus
User
Beiträge: 55
Registriert: Donnerstag 24. August 2006, 08:55

Uh...ich hab erst auf die Links geklickt und mich dann gewundert, dass ich den Code kenne ^^
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Proudly presented by the dax&laus cooperation!
Antworten