Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

1 GMF (Graphical Modeling Framework) Urs Frei. 2 Inhalt GMF Beispiel Shape Editor Standardfunktionalitäten des GMF Editor Theorie GMF Draw2d GEF Über.

Ähnliche Präsentationen


Präsentation zum Thema: "1 GMF (Graphical Modeling Framework) Urs Frei. 2 Inhalt GMF Beispiel Shape Editor Standardfunktionalitäten des GMF Editor Theorie GMF Draw2d GEF Über."—  Präsentation transkript:

1 1 GMF (Graphical Modeling Framework) Urs Frei

2 2 Inhalt GMF Beispiel Shape Editor Standardfunktionalitäten des GMF Editor Theorie GMF Draw2d GEF Über den Tellerrand blickend GEF3d Zest

3 3 Ziel: So einfach ist das!!! Vortrag soll beim selbständigen Einstieg helfen Brauche eine graphische Visualisierung Kein Problem Es geht alles

4 4 GMF am Beispiel eines Shape-Editors Anforderungen: Rechteck zeichnen Ellipse zeichnen Rechtecke und Ellipsen haben Namen Elemente mit Linien verbinden

5 5 Ausgangslage EMF (Michael & Laurent) EMF Modell für Shape Editor

6 6 GMF Übersicht Eclipse GMF EMF GEF (Graphical Editor Framework) Draw2d

7 7 GMF Dashboard EMF-Teil (Michael Laurent)

8 8 Der EMF Editor (RCP) Der Shape-Editor als EMF Editor RCP Konfiguration

9 9 EMF Editor generieren

10 10 Launch EMF Editor

11 11 Shape Editor mit EMF erstellen Für diese Anwendung nicht sehr komfortabel!!!

12 12 EMF was findet man wo? Modell Labelprovider Editor Projekt Wizard

13 13 Wir wollen mehr Graphischer Editor

14 14 Graphische Elemente Definieren

15 15 Editor Toolbar definieren 1/2

16 16 Editor Toolbar definieren 2/2

17 17 Mapping definieren 1/4

18 18 Mapping definieren 2/4

19 19 Mapping definieren 3/4

20 20 Mapping definieren 4/4

21 21 GMF gmfgen

22 22 Neues Plugin mit GMF Code Enthält alle GMF Informationen (GEF, draw2d)

23 23 GMF Launch konfigurieren

24 24 Shape Editor mit GMF erstellen

25 25 Was kann der Editor standardmässig? Outline Property-View (wie bei EMF) Kopieren/Einfügen über Zwischenablage (auch in andere Programme) Drucken von Diagrammen Algorithmen zum Anordnen von Elementen

26 26 Was kann der Editor standardmässig? (Properties)

27 27 Was kann der Editor standardmässig? (Preference)

28 28 Wo nimmt man folgende Anpassungen vor? Eine Ellipse soll eine Ellipse sein Symbolleiste: ein Bild anpassen Bsp.: falscher Shape wird gezeichnet. Wo ändern?

29 29 Ellipse anpassen

30 30 Symbolleiste anpassen

31 31 Falscher Shape wird gezeichnet: Wo ändern?

32 32 GMF: etwas genauer Besteht aus: GEF Draw2D EMF kennen wir

33 33 Draw2d: Übersicht Lightweight Toolkit Empfängt SWT Event und transformiert sie Paint und Layout Events über UpdateManager Alles ist Figure Bsp. Label usw.

34 34 Draw2d: Aufgaben Painting Layout Hit Testing Connection Routing Koordinaten-Systems

35 35 Draw2d: Painting, Layout Firgure#paint() Start des Zeichnens mit div. Optimierungen (Figure#paintFigure() Figure#paintChildrenArea() Figure#paintChildren() Figure#paintBorder()) Layout

36 36 Draw2d: Z-Order, Clipping

37 37 Draw2d: Connections Bsp: ChopboxAnchor Decorations

38 38 GEF: Übersicht

39 39 GEF: EditPart (Controller)

40 40 GEF: Editing 1. Mausevent 2. Welcher EditPart ist betroffen (source EditPart) 3. Welcher Ziel (target EditPart) ist betroffen Bsp.: Element verschieben. Source RectangleEditPart; Target DiagramEditPart 4. Gibt es ein Command zu dieser Operation? Ist es ausführbar? 5. Modell ändern.

41 41 GEF: EditPolicies Änderungen erfolgen nicht direkt über EditParts, sondern über EditPolicies Ein EditPolicy hat eine Verantwortlichkeit Anmeldung der EditPolicies über Rollen Command führt dann Änderung durch undo redo

42 42 GMF: Und wozu braucht man noch das GMF? Vereint EMF und GEF Zwei Hauptkomponenten Runtime Tooling Komponente für MDA Ansatz MDA Ansatz vereinfacht Erstellung graphischer Editoren (Problem von GEF)

43 43 Über den Tellerrand blickend GEF 3d Noch kein Release Mehrere Dimensionen Inter-Diagram- Verbindungen

44 44 Über den Tellerrand blickend GEF3d Erweitert GEF Jeder GEF Editor sollte erweiterbar sein

45 45 Über den Tellerrand blickend Zest: Eclipse Visualisierungs- Toolkit Unterprojekt von GEF Verfolgt JFace-Ansatz (Contentprovider, Labelprovider) Vorgefertigte Komponenten für Graph GraphNode GraphConnection GraphContainer

46 46 Über den Tellerrand blickend Zest Vorgefertigte Layoutalgos Wer Eclipse (JFace) beherrscht kann Zest

47 47 Referenzen Eclipse Modeling Framework EMF (Michael und Laurent) GMF-Tutorial: Eclipse Magazine Vol. 8 Vol Vol Vol


Herunterladen ppt "1 GMF (Graphical Modeling Framework) Urs Frei. 2 Inhalt GMF Beispiel Shape Editor Standardfunktionalitäten des GMF Editor Theorie GMF Draw2d GEF Über."

Ähnliche Präsentationen


Google-Anzeigen