Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...
Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...
Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
174 Kapitel 10 Implementierung<br />
gesetzt. Weiterhin existiert ein CellSet-Property CellSet, welches das Ergebnis einer<br />
Datenbankabfrage aufnimmt.<br />
10.1.2 Die Containerklasse Diagram<br />
Die Klasse Diagram besteht aus zwei Axis, einer Legend <strong>und</strong> DropAreaGroup. Die<br />
Klasse hört auf das PropertyChanged-Event von dem isWorking-Property der Klasse<br />
DiagramDataModel. Wenn isWorking auf true gesetzt wurde, startet die Beschäftigt-<br />
Animation, wird es auf false gesetzt, wird diese Animation beendet. Dabei wird auf<br />
die funktionalen Bereiche des Diagramms ein BlurEffect gesetzt <strong>und</strong> Events blockiert.<br />
Ebenfalls enthält diese Klasse vier Attached Dependency Properties, scaleX, scaleY,<br />
translateX <strong>und</strong> translateY, welche die Ausrichtung <strong>und</strong> den Skalierungsfaktor<br />
des Diagramms enthalten. Jede dieser Eigenschaften wird von allen Elementen in<br />
der logischen Struktur der untergeordneten Elemente geerbt. Des Weiteren enthält die<br />
Klasse ein kleines Menü, welches in der linken unteren Ecke eines Diagramms angezeigt<br />
wird. Dieses ist in der Lage, kleinere Funktionen auszuführen, welche im Folgenden<br />
aufgelistet werden:<br />
• Legende einblenden<br />
• Drop-Zonenanzeigen lassen<br />
• Diagramm schließen<br />
• Speichern <strong>und</strong> Laden von Diagrammzuständen<br />
10.1.3 DropAreaGroup <strong>und</strong> DropArea<br />
Die Klasse DropAreaGroup wird von der Klasse Grid abgeleitet <strong>und</strong> kann somit eine<br />
beliebige Anzahl an DropAreas steuern. Die am meisten genutzte Methode ist die boolesche<br />
Check(DropArea area, HierarchicalOLAPObject data)-Methode, welche<br />
true zurückgibt, wenn das übergebene HierarchicalOLAPObject in die angegebene<br />
DropArea <strong>und</strong> als Kombination zu den anderen HierarchicalOLAPObjects in den<br />
anderen DropAreas passt. Das heißt, dass mit diesen HierarchicalOLAPObjects ein<br />
Diagramm erstellt werden kann. Die DropAreaGroup behandelt Drag and Drop-Events<br />
<strong>und</strong> benutzt die Check-Methode für die Überprüfung. Außerdem ist in dieser Klasse die<br />
Funktionalität für die Löschenfunktionen implementiert. Die Klasse DropArea definiert<br />
die grafische Darstellung einer zu einer Achse zugeordneten Drop-Zone. Diese Klasse<br />
enthält ebenfalls eine Liste von HierarchicalOLAPObjects. Ansonsten enthält diese<br />
Klasse keine weitere Logik.