diff options
Diffstat (limited to 'doc/asciidoc/classes.txt')
| -rw-r--r-- | doc/asciidoc/classes.txt | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/doc/asciidoc/classes.txt b/doc/asciidoc/classes.txt new file mode 100644 index 0000000..12e7a21 --- /dev/null +++ b/doc/asciidoc/classes.txt @@ -0,0 +1,68 @@ +Klassen +~~~~~~~ +Search +^^^^^^ +Die Klasse Search implementiert das Suchfeld und den Find-Button. Das Suchfeld +ist ein elementary.Entry der in einen elementary.Frame gelegt wird. Der +Find-Button ist ein elementary.Button. + +Wird der Button geklickt, wird die Funktion findbutton_clicked() aufgerufen. +Darin wird die Eingabe im Suchfeld eingelesen und eine Instanz der Klasse +Corba erzeugt. Der Sucheintrag wird an die Suchfunktion der +Klasse Corba uebergeben. + +image::img/Classes/Search.png[] + +Corba +^^^^^ +In der Funktion corba_search() der Klasse Corba wird die Funktion search() des +ServerControlInterface aufgerufen. Diese bekommt den Suchbegriff uebergeben und +eine Liste der gewuenschten Medien (VIDEO und SOUND, im Code festgelegt). +Anschliessend wird jeweils eine Instanz der Klassen Medialist und Selection +erzeugt. + +In einer Schleife wird fuer jedes gefundene Medium eine Instanz der Klasse +Media erzeugt und diese ueber den Funktionsaufruf add_media(current) der +Medialiste hinzugefuegt. + +image::img/Classes/Corba.png[] + +Medialist +^^^^^^^^^ +Die Klasse Medialist zeichnet die Medialiste, welche eine elementary.List ist. +Die Funktion add_media(self, media), die in der Klasse Corba aufgerufen wird, +fuegt Eintraege zu der Liste hinzu. + +image::img/Classes/Medialist.png[] + +<<< +Media +^^^^^ +Die Klasse Media implementiert fuer jedes gefundene Medium einen Callback, der +bei Klick auf das Medium die Funktion set_stream der Klasse Selection aufruft. +So wird immer gemerkt, welches Listenelement zuletzt angeklickt wurde. + +image::img/Classes/Media.png[] + +Selection +^^^^^^^^^ +Sobald in der Klasse Corba eine Instanz der Klasse Selection erzeugt wird, wird +der Play-Button gezeichnet und ein Emotion-Element erzeugt, in dem spaeter das +Video dargestellt werden kann. +Die Funktion set_stream() speichert welches Listenelement zuletzt angeklickt +wurde. +Wird der Play-Button angeklickt, wird die Funktion play_video() aufgerufen. +Darin wird der Stream erzeugt, gestartet und in einem Emotion-Frame angezeigt. + +image::img/Classes/Selection.png[] + +<<< +UML-Diagramme +~~~~~~~~~~~~~ +Klassendiagramm +^^^^^^^^^^^^^^^ +image::img/classdiagram.png[] + +Use-Case-Diagramm +^^^^^^^^^^^^^^^^^ +image::img/Use-Case/Mediensuche.png[width=375] |
