Willkommen auf
miranda-fusion-de

powered by puttee

 

Passwort vergessen?

Kein Mitglied? Jetzt registrieren!


Di-2008

6. Mai

Icon zum Thema

Thema: Theme-Switcher


Wie schon im letzten Artikel kurz angedeutet soll es noch Ziel von mi:fusion 2.0 sein, einen Theme-Switcher einzubauen. Dadurch soll man mit möglichst nur einem Klick das komplette Aussehen von Miranda verändern können. Dazu müsste ein kleines Plugin geschrieben werden, welches diese Aufgabe übernimmt. Da ich leider keine C++ Erfahrung hab, um dies zu bewerkstelligen, hier eventl. der Aufruf sowas umzusetzen.

Um das ganze besser zum Verständnis zu bringen, gibt es derzeit eine noch relativ umständliche Methode die Skins alle mit einmal zu wechsel. Dazu werden mittels einem Texteditor *.ini Dateien erzeugt (eine ini je Theme), die die nötigen Informationen, welches Skin wie geändert werden soll, enthalten. Es handelt sich dabei hauptsächlich um relative Dateipfade der einzelnen Skinelemente für Tabsrmm, Clist-modern, PopupPlus, TipperYM, IEview etc.

Versieht man diese *.ini Dateien mit dem präfix „autoexec_“ (also automatic execution) und kopiert diese Datei anschließend in den Miranda Hauptordner, so erkennt dies Miranda (Miranda muss natürlich laufen) und importiert die nötigen Pfadangaben aus der *.ini in die Datenbank (nach Abfragedialog). Ein Neustart von Miranda hat zur Folge, dass die importierten Pfade auch aktualisert werden, und Miranda entsprechend die Skins lädt, in diesem Falle also alle Skins „BLack“ bzw. „Blue“.

Der Inhalt einer solchen autoexec_themeBlue.ini, speziell für die mi:fusion BLUE Edition sieht beispielsweise wie folgt aus:

;ThemeSwitcher
;created by puttee 2008
;part of the mi:fusion package 2.0
;contact: ICQ: *********
; Tabsrmm skin
[Tab_SRMsg]
ContainerSkin=s.\Skins\fusion tabsrmm\fusion-blue\fusion.tsk
;Ieview Vorlage
[IEVIEW]
_default_.SRMMTemplateFile=sSkins\fusion ieview\fusion-blue.ivt
;Clist_modern Skin
[ModernSkin]
SkinFolder=sSkins\fusion clist_modern\fusion-blue
SkinFile=sSkins\fusion clist_modern\fusion-blue.msf
;Empty Avatare in CL
[AVS_ProtoPics]
ICQ=sSkins\fusion empty avatar\emptyICQ_blue.jpg
MSN=sSkins\fusion empty avatar\emptyMSN_blue.jpg
;TipperYM
[Tipper]
SImgFile0=sSkins\fusion tipper\tipperbg.png
SImgFile1=sSkins\fusion tipper\tippersidebar.png
;PopupPlus
[PopUp]
SkinPack=sfusion_blue


Wie soll der Theme-Switcher in Zukunft aufgebaut sein?
1. Es soll eine Option in den Einstellung geben, ähnlich wie die für das „Kontaktlistenskin“ (Einstellung –> customize…)


Eventl. könnte man den Code dafür aus dem entsprechendem Plugin verwenden und anpassen.

2. Der ThemeSwitcher soll sein eigenes Dateiformat z.b. *.theme erkennen und im Auswahlmenü auflisten. *.theme Dateien sind dann einfach die *.ini Dateien mit den entsprechenden Pfadangaben. Der präfix „autoxec_“ (oben beschrieben) muss entfallen, weil sonst beim Importieren diese Dateien auch automatisch gelöscht werden würden.

3. Ein „Übernahme“-Button soll dafür sorgen, dass das Theme in die Datenbank geschrieben wird, bzw. die Pfade darein geschrieben werden und gleichzeitig die DB auch aktualisiert wird. d.h. das Miranda ohne Neustart schon die einzelnen Skins lädt.

4. In Zukunft könnte man ganz einfach solche Theme-Dateien erstellen, die Pfade darin anpassen, und die entsprechenden Skins dazu packen und veröffentlichen bzw. dem User bei solchen Paketen wie mi:fusion einen einfachen Wechsel ermöglichen.

Im Endeffekt hätte jeder was davon. Die Frage ist, wer traut sich an die Sache ran bzw. kann man das so einfach realisieren? Vorschläge, Einwände an mich plz.