| Ein Assistent nicht nur zur Umwandlung von VDR-Aufnahmen zu einer DVD |
VdrAssistant Ich will mehr wissen | |
Bau einer eigenen Themen-BibliothekDer Themeneditor und der Skineditor sind da dafür da, eigene Menüvorlagen zu erstellen. Allerdings basieren all diese Vorlagen auf einer Bibliothek von Menüelementen. Wem die Gestaltungs-Möglichkeiten nicht ausreichen, kommt nicht drum herum, eine eigene Bibliothek mit Menüelementen zu erstellen. Die Bibliothek der Menüelemente ist wohl der komplexeste Teil der VDRAssistant-Anwendung. Denn jedes Thema soll beliebig mit einem Skin anpassbar sein. Ferner wird die erstellte Menüvorlage in einer Datenbank gespeichert. Es ist also notwendig, in der Datenbank zu hinterlegen, mit welcher Bibliothek von Menüelementen die Menüvorlage erstellt wurde. Der schlimmste Part wird über die Basisbibliothek SRDVDThemeLib bereitgestellt. Zum Verständnis sind die Zusammenhänge dennoch hilfreich. Ein DVD-Menü besteht aus einer Menge möglicher Menüseiten, von denen jede eine (unterschiedliche) Menge von Menüelementen enthalten kann. Dies wird über Beim Abspeichern einer erstellten Menüvorlage in die Datenbank wird jedes Menüelement mit seinem Jetzt können ja viele unterschiedliche Menüvorlagen gespeichert werden, die mit ein und derselben Themenklasse erstellt wurden. Andererseits können auch Menüvorlagen gespeichert werden, die mit unterschiedlichen Themenklassen erstellt wurden. Es soll sogar möglich sein, Menüvorlagen mit Themenklassen zu erstellen, die zum Zeitpunkt des Baus der Anwendung noch nicht bekannt waren. Da Objekte beim Lesen aus der Datenbank anonym erstellt werden, muss die Entscheidungstabelle, anhand derer die Fabrikmethode der Themenklasse ein Menüelement erzeugt austauschbar sein. Dafür gibt es die Methode So gesehen muss eine neue Themenklasse nur die beiden erwähnten Methoden definieren. Die Erstellung einer Menüseite fängt mit einer leeren Leinwand an. Alles was sichtbar sein soll, muss von einem Menüelement gemalt werden. Wichtig ist hierbei die Trennung zwischen dem was und wo gemalt werden soll und wie es gemalt werden soll. Das was wird über den Um also das Aussehen einer Menüvorlage auch nachträglich verändern zu können, darf kein Menüelement sowas wie Farbe, Font etc. als Eigenschaft besitzen. Dafür besitzt die Basisklasse Die Basisklasse Wer sich dafür interessiert, wie Menüelemente verwendet werden, dem sei die Klasse
Viel Spaß beim Basteln! |