Module: statt/buchung/viewContainer

Dieses Modul definiert die Klasse viewContainer. Ein GUI-Objekt, das die Klasse sdw/templates/containerGUI/viewContainer spezialisiert.

Der ViewContainer ist ein Tabcontainer, den sich die verschiedenen Perspektiven der Anwendung buchungApp teilen. Jede Perspektive kann ihre Sichten als tabs in den ViewContainer einhängen, ohne dass sich beim Wechsel der Perspektiven der rechte Bildschirmbereich löscht und perspektivspezifisch neu aufbaut. Das hat für den Nutzer den Vorteil, dass er Informationen aus verschiedensten Perspektiven in einem Tabcontainer zur Verfügung hat. Deshalb ist der ViewContainer auch direkt bei der Applikation angesiedelt und nicht bei den verschiedenen Perspektiven, wie dies z.B. im ViewTabPane-Paradigma der Fall ist. Der ViewContainer hat einen Zeiger auf seine Application die wiederum eine Liste ihrer Perspektiven verwaltet.

Author:
  • sdw.systems
Source:
See:

Extends

Requires

Members

(inner) moduleName

Properties:
Name Type Description
moduleName String

Name des Moduls aus lokaler Konstante

Source:

Methods

(inner) createViewKlasse(tab)

Überschreibt die Implementierung des Methodenstubs der Vaterklasse. Anhand des Namens (im Gegensatz zum Label) des neuen Tabs wird entschieden, welche fachliche Klasse zu instantiieren ist. Es wird unterschieden zwischen this.application.idKalenderContainerView, einer Konstante für den Kalendertab, idKarteContainerView, einer Id für den KartenTab, und allen anderen Namen, die der OID des zu ladenden Objektes entsprechen. Im ersten und zweiten Fall wird ein neuer Kalenderview bzw. Karteview erzeugt, ansonsten wird ein neuer EventView erzeugt. Die Eigenschaft klasse des neuen Tabs zeigt danach auf das neu instantiierte Objekt.

Parameters:
Name Type Description
tab module:dijit/layout/contentPane

Der neue Tab, der gefüllt und dessen klasse-Attribut mit einer neuen Instanz der korrespondierenden fachlichen Klasse gefüllt werden soll.

Properties
Name Type Description
klasse Object

Bei der Übergabe null. Zeiger auf die neue fachliche Klasse, die diese Implementierung erzeugt

name String

Name des neuen Tabs anhand dessen entschieden wird, welche neue fachliche Klasse instantiiert werden muss.

Source:

(inner) getKalenderController() → {dojox/calendar/Calendar}

Convenience. Gibt einen Zeiger auf das getKalenderController zurück. Der Kalenderview als View der Perspektive buchungAppKalenderPerspective wird bei der Initialisierung der Applikation als zweiter View in den ViewContainer eingehängt. Da der Kartentab und der Kalendertab nicht geschlossen werden können bleibt das auch so.

Source:
Returns:

Zeiger auf das Kalenderobjekt im KalenderView, einem containerView

Type
dojox/calendar/Calendar

(inner) getKalenderView() → {Object}

Convenience. Gibt einen Zeiger auf den Kalenderview zurück. Der Kalenderview als View der Perspektive buchungAppKalenderPerspective wird bei der Initialisierung der Applikation als zweiter View in den ViewContainer eingehängt. Da der Kartentab und der Kalendertab nicht geschlossen werden können bleibt das auch so.

Source:
Returns:

Zeiger auf den KalenderView, einnm containerView

Type
Object

(inner) getKarte() → {Object}

Convenience. Gibt einen Zeiger auf das Kartenobjekt zurück. Der Kartenview als View der Perspektive buchungAppKartePerspective wird bei der Initialisierung der Applikation als erster View in den ViewContainer eingehängt. Da der Kartetab nicht geschlossen werden kann bleibt das auch so.

Source:
Returns:

Zeiger auf das leaflet Kartenobjekt im KarteView, einem containerView

Type
Object

(inner) getKarteView() → {Object}

Convenience. Gibt einen Zeiger auf den Karteview zurück. Der Karteview als View der Perspektive buchungAppKartePerspective wird bei der Initialisierung der Applikation als erster View in den ViewContainer eingehängt. Da der Kartentab und der Kalendertab nicht geschlossen werden können bleibt das auch so.

Source:
Returns:

Zeiger auf den KarteView, einen containerView

Type
Object

(inner) onChangeTab(oldTab, newTab)

Überschreibt die Implementierung des Methodenstubs der Vaterklasse. Diese Methode wird vom Eventhandler, der den changeTab-Event überwacht, aufgerufen nachdem die Vaterklasse entsprechend reagiert hat und kann von den abgeleiteten Klassen überschrieben werden. Diese Implementierung prüft, ob die aktuell geöffnete Perspektive der Applikation eine statt/buchung/kalender/buchungAppKalenderPerspective ist. Wenn dem so ist, wird der Summarybereich, der eine zusammenfassende Drstellung des gerade angeklickten Kalenditems darstellt, gelöscht.

Parameters:
Name Type Description
oldTab module:dijit/layout/contenPane

Der Tab, der den Fokus verliert. Wird für diese Implementierung nicht gebraucht.

newTab module:dijit/layout/contenPane

Der Tab, der den Fokus bekommt. Wird für diese Implementierung nicht gebraucht.

Source: