Login
Newsletter
Werbung

Sa, 18. Juli 2009, 00:00

Das Disko-Framework

Toolkit für Set-Top-Boxen und Touch-Screen-Terminals

MMSRootWindow *win;
win = new MMSRootWindow("","100%","100%",MMSALIGNMENT_CENTER, MMSW_VIDEO);
MMSVideo *video;
video = new MMSVideo(win);
win->show();
video->startPlaying("http://www.diskohq.org/downloads/MorphineTV.AVI");
while(1) sleep(1);

Darüber hinaus empfiehlt es sich, ein RootWindow zu verwenden, um ein Video in eine Applikation einzubinden. Mit deren Hilfe können sehr einfach die MainWindows über das Video gebracht werden. Die Nutzung eines RootWindows empfiehlt sich außerdem, da es - je nach Hardware und Plattform - entsprechende Hardwareunterstützung verwenden kann. Bringt man »Hallo Welt« und das Video-Playback zusammen, sieht das dann wie folgt aus:

Hallo Welt über Video-Stream

Stefan Schwarzer und Jan-Carl Ronnecker

Hallo Welt über Video-Stream

Gestaltbarkeit

Um ein wenig die Themefähigkeit zu illustrieren, wird nun das das »Hallo Welt«-Fenster außerhalb der Applikation verändert. Dazu wird eine Theme-Klasse innerhalb der Datei theme.xml erstellt:

<class
 name = "default_mainwindow"
 type = "mainwindow"
 w = "100%"
 h = "100%"
 bgcolor = "#141e147f"
 fadein = "true"
 fadeout = "true"
 border.color = "#606060Af"
 border.thickness = "7"
 border.rcorners = "true"
/>

Diese Klasse kann nun innerhalb anderer XML­Dateien oder aus dem Quellcode heraus mit dem festgelegten Namen default_mainwindow angesprochen werden. Um nun ein Window mit der Klasse default_mainwindow anzulegen, reicht folgende Zeile im Code aus:

MMSMainWindow *win;
win = new MMSMainWindow("default_mainwindow","100%","100%");

Damit lässt sich das Aussehen einzelner Windows oder anderer Widgets sehr komfortabel anpassen. Eine weitere Eigenschaft ist es, ein normales Label als Lauftext darzustellen. Dafür wird im Theme eine Klasse default_label angelegt und mit der Eigenschaft slideable versehen:

<class name="default_label" slideable="true" />

Diese wenigen kleinen Änderungen führen dann zu folgendem Ergebnis:

IP-Stream mit Lauftext

Stefan Schwarzer und Jan-Carl Ronnecker

IP-Stream mit Lauftext

Im Theme können so die Eigenschaften verschiedenster Labels, Textboxen, Windows, Buttons, Slider, usw. angepasst werden. Wenn man Bilder für die verwenden Elemente oder Teile davon nutzen möchte, kann man dies mit Bildern im PNG-Format tun.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung