RCP Konstrukt für Editor in Eclipse gesucht.

TheWhiteShadow

Bekanntes Mitglied
Hallo,

Die Überschrifft mag verwirren, aber da ich mich erst kürzlich mit Eclipse-Plugins beschäftige, fiel mir nicht treffendes ein.

Ich möchte einen Editor für einge gegebene Datenstruktur schreiben.

Die Daten sind serialisierte Java-Objekte und liegen immer in einer Liste innerhalb einer Datei.
Es gibt mehrerere solcher Dateien. Jeweils mit anderen Klassen.

Der Editor soll nun in der Lage sein eine Maske anzuzeigen, in der jeweils ein solches Objekt bearbeitet werden kann.
Die Masken soll der Editor entsprechend der Klasse aus einer Liste suchen. Findet er keine, soll er (erst mal) die Attribute per Reflection ähnlich wie im Properties-View anzeigen.

Meine Probleme hier sind:
- Macht es Sinn die Liste im Editor anzuzeigen oder eher als seperaten View?
Bei Letzteren, wie verknüpft ich die Beiden?
- Macht einMultiPageEditor Sinn. (Wie sieht der überhaupt aus?)
- Sollte es eher ein Editor-Tab für jedes Objekt geben?
Wenn ja, wie verwalte ich das "open-save-close lifecycle" übergreifend?

Meine Erfahrung beschränkt sich auf ein Tutorial zu Views und TextEditoren.
 
Die erste Frage:
Ich persönlich fände es ausreichend die Liste im Editor anzuzeigen. Eine Liste innerhalb einer View sollte nur dann genutzt werden, wenn deren Einträge einen eigenen Editor öffnen. Deiner Beschreibung nach ist dies hier nicht der Fall.

Die zweite (und teils auch dritte) Frage:
Ein MultiPageEditor hat (unten) Tabs für jede Seite deines Editors. Dadurch kann man die Inhalte, die im Editor bearbeitet werden sollen thematisch voneinander trennen. Ein Beispiel ist der Editor der sich bei plugin.xml oder MANIFEST.MF öffnet. Hier sind z.B. Extension-Points von Extensions getrennt indem sie sich auf unterschiedlichen Pages (also tabs) befinden. Inwiefern das für dich sinnvoll ist, musst du selbst entscheiden.

Wenn ich das richtig verstehe ist ein Objekt bei dir gleichzetig auch eine Datei.
Wenn das so ist, wäre der übliche Weg eine Editor Instanz pro Datei anzuwenden, sofern die Daten nicht zusammenhängend sind. (Also zum Beispiel Daten der Datei A eine direkte thematische und inhaltliche Beziehung zu den Daten der Datei B besitzen. Ein Beispiel für einen solchen Fall ist der oben erwähnte Editor für die plugin.xml indem auch die MANIFEST.MF oder die build.properties enthalten sind. Dies ist deswegen der Fall, weil all diese Dateien der Administration und Konfigurierung des Plugins dienen)

Die restlichen Fragen:

Eclipse Editor Plugin Tutorial
 

Zurück
Oben