GEF Editor als RCP ausführen

Status
Nicht offen für weitere Antworten.

dhachim

Bekanntes Mitglied
Sooo nachdem ich nun einigermaßen in GEF +EMF und Eclipse klarkomme, und dieses Shapes Beispiel als Basis genommen habe um es anzupassen, habe ich nun einen Grafikeditor, der zwar noch nicht viel kann, aber funktioniert.

So bevor ich weitermache muss ich klären, ob ich das als RCP Anwendung zum laufen bekomme.
Die frage ist nur,... Wie ?

ich habe einige RCP tutorials gemacht und auch ein paar Beipiele gemacht. new Plugin Project und so weiter.


ich habe jetzt hier im Forum ein wenig gesucht und gesehen, dass ich eine .product Datei erstellen muss. Die erste Frage Wo? Muss ich einen Ordner anlegen wo diese .product Datei liegt ?
Und dann muss ich ja einiges Eintragen
Was kommt denn da rein an den Stellen ID Application und Version ?
bei der Configuration hab ich mal alle Plugins geadded, da ich nicht ganz sicher bin was wirklich mit muss :) Das änder ich dann später.

Dann rechtsklick und Export as Eclipse Product...
hab viel rumgespielt aber bei jedem Versuch eine anderen Fehlermeldung :) Deshalb mal der Versuch vielleicht eine Schritt für Schritt Anleitung zu bekommen.

Eclipse ist ein ganymede.. neuste version

Danke schonmal.
 

Wildcard

Top Contributor
Mit einem Tutorial kann ich nicht dienen, aber die Eclipse Hilfe und das Wiki sollten alles erklären.
Für das Product gibt es einen Wizard. Einfach new -> other -> plugin development -> product configuration
 

dhachim

Bekanntes Mitglied
Konkret geht es um :http://www.eclipse.org/articles/Article-GEF-EMF/gef-emf.html

Bonus: Shapes Example goes RCP!

I spend a considerable amount of time browsing the Eclipse newsgroups and one of the questions that comes up frequently in regards to GEF is how to use my GEF editor in an RCP based application. I believe this question is going to get asked more as the Eclipse 3.1 release sufficiently increases the ease in building and deploying RCP-based applications. So, for my last magic trick and to reward readers who got to this point, I'll discuss how to convert the original shapes example into an RCP-based one and provide the code!

If you are unfamiliar with RCP, the RCP FAQ is a good start.

The conversion of the shapes example into an RCP-based application is a lot simpler than most people think. The problem stems from the setInput method of ShapesEditor expecting an IEditorInput, but the most familiar editor input people work with is IFileEditorInput. The problem with IFileEditorInput is that it belongs to the pesky org.eclipse.ui.ide plugin which is not an acceptable dependency for an RCP-based application. The solution to this problem is to simply create our own editor input, ShapesEditorInput which implements the IEditorInput interface via IPathEditorInput interface. Once this change is completed and the setInput method is properly changed in ShapesEditor to use ShapesEditorInput, we can now properly open a shapes editor. Note, the sole purpose of this example is to demonstrate how to get a GEF editor inside of an RCP application, it doesn't include support for various actions such as saving or wizards (I leave this for the reader to explore).

This concept of creating your own IEditorInput can be applied to creating editors that aren't file based (i.e. an editor which is based off of data from a database).

Ich verstehe nicht was er mir sagen will. Scheinbar ist es sehr einfach, und nur wenige handgriffe weit entfernt, aber ich habe nicht die leisteste Ahnung, was er meint.
 

dhachim

Bekanntes Mitglied
Mal ne ernste Frage:
Hat das irgendwer schonmal gemacht ? Wenn ja, wie bist du da rangegangen ?


Ich versuche nun seit 4 Tagen mich reinzuwurschteln. Ich lese Guide um Guide, stolpere in Wikis und den Hilfen herum, und überall wo es andeutungsweise spanned wird, kommt nur blabla, und Ende. Als ob es ein riesengeheimnis ist wie es weiter geht, oder fehlen mir da Grundlagen ? Egal wen ich frage, alle zucken mit den Schultern und schütteln den Kopf was GEF angeht.

Was ich bereits geschafft habe:
Ich habe das GEF Sample SHAPES angepasst, und bekomme es in Eclipse zum laufen. Aber so kann ich damit nix anfangen. Ich brauche einen Eigenständige Applikation, die an den kunden weitergegeben werden kann.

Ich bekomme die RCP Beispiele zum laufen und kann diese auch bearbeiten und anpassen.

Was ich nicht schaffe:
Diese beiden Elemente zu verbinden.

Hat irgendwer nen Tipp wie ich da doch noch ans Ziel komme ?
 

dhachim

Bekanntes Mitglied
Ich bin einen Schritt weiter : http://cyberpen.wordpress.com/2008/06/16/convertion-of-a-plugin-to-a-standalone-rcp-application/

Ich habe es geschafft ein Plugin einzusetzen, was Standardmässig in Eclipse schon vorhanden ist. Aber mit dem Shapes Plugin klappt das nicht. Ich frage mich was mache ich falsch, auch wenn ich es einbinde, es taucht niergens auf in der fertigen RCP Anwendung. Keine Fehlermeldungen nix.
Langsam macht sich Verzweiflung breit, denn seit 6 Tagen dreh ich mich im Kreis und komme keinen Schritt voran. Jeden den ich fragen kann, zuckt mit den Schultern.

Ist das was ich vorhabe überhaupt möglich ? Einen GEF Editor als RCP auszuliefern ?
 
V

Vayu

Gast
Wie/Wo soll das Shapes Plugin denn "auftauchen" das kann dermassen viele Gründe haben ... Eclipse ist leider immer noch ein Riesengeheimnis, speziell was standalones angeht.

Erklär mal genau was du bisher gemacht hast, um an dein Ziel zu kommen.

Falls du mit der .product noch nicht viel weiter gekommen bist

rechtsklick auf dein plugin -> new -> Plug-in Development -> product Configuration
 

dhachim

Bekanntes Mitglied
Okay ich bin einige schritte weiter. Ich kann nun ein RCP erstellen und über File->New /Example Shapes Diagram tatsächlich das Plugin aufrufen.

Also soweit so Gut, ich habe mich mal in der Perspectives thematik umgeschaut und mir mein eigenes kleines Minieclipse gebaut. Jede Baustelle die ich schliesse, macht aber 2 neue auf.

So hab ich oben ein Menü: Window.
Code:
MenuManager windowMenu = new MenuManager("&Window",
				IWorkbenchActionConstants.WINDOW_EXT);
		menuBar.add(windowMenu);

Wenn ich da jetzt drauf clicke, kann ich das zuvor definierte Outline und Property Feld im Eclipse wieder holen, falls ich es mal zugemacht habe. Nur kommt darauf ein Seperator und dann steht da Others....
Kann man das verhindern das das dort steht ? Ich finde nix dazu in der API. Ich weiss auch gar nicht wonach ich suchen muss.

Wenn ich den Navigator einblende und dort ein Projekt anlege, dann kann ich das Projekt zwar auswählen aber ich seh den text nicht und auch kein Symbol.


ich schätze dass mir da so keiner helfen kann, und muss wohl weiter wursteln und ganz hart via Trial an d error vorgehen. Aber vielleicht kennt jemand das Problem und kann mir nen Tipp geben wo ich schaun kann.
 
V

Vayu

Gast
also ich habe auch in einem projekt gearbeitet, wo wir Eclipse so benutzt haben wie wir es wollten :) package explorer aufgebohrt, alles rausgeschmissen was wir nicht brauchten. Wir haben die Eclipse startup klassen selbst neu geschrieben, dort aus der Extension Point Registry einträge per Hand rausgelöscht etc, hinterher war alles gelb -> discouraged access, aber anders haben wir es nicht hinbekommen. Others wird ein Eclipse standard sein.

Ich hab immer die hardcore methode gemacht, hab die ecilpse jar's (plugin.xml) durchsucht nach dem anzeige text des menu eintrags den ich raushaben wollte und mich dann daran weiter durchgehangelt, zu dem entsprechenden extension point der das teil registriert hat und DEN dann wieder rausgelöscht. Das war harte arbeit überhaupt mal dahin zu kommen, kann dir aber leider auch nicht mehr genau sagen wie das alles war, ist schon zu lang her und ich bin nicht mehr in dem projekt :) komme also nicht mehr an die sourcen ran um nachzuschauen.
 

dhachim

Bekanntes Mitglied
Das hört sich ja prima an und zugleich sehr frustrierend.

Ich habe ja noch wenig erfahrung mit dem ganzen Kram, und werde jetzt halt versuchen ein kleines Workaround zu basteln. Ein eigenes Menü wo ich nur meine Einträge setze, oder es ganz weglassen und die Perspektive FIX setzen.

Mein nächster Schritt wird sein: Wie lade ich gleich beim Start einen neuen Shape Editor. Ich schätze das hat was mit der Application oder Activatorklasse zu tun, aber das wird sich zeigen. Eventuell muss ich eine View schreiben und diese aufrufen.

Weiterhin stochern im Trüben :)
 
V

Vayu

Gast
Stichwort IPerspectiveFactory

schau dir das mal an, damit solltest kriegen was du suchst :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
L HTML Editor Plattformprogrammierung 2
P Artifact-Editor in RCP-Anwendung Plattformprogrammierung 14
TheWhiteShadow RCP Zustand von Editor Toolbar ToggleButton aktualisieren Plattformprogrammierung 0
D Eclipse_Visual Editor Problem Plattformprogrammierung 2
M Extension Point für Content Assist in JSP Editor gesucht Plattformprogrammierung 2
TheWhiteShadow RCP Editor Inhalt speichern Plattformprogrammierung 3
TheWhiteShadow RCP Konstrukt für Editor in Eclipse gesucht. Plattformprogrammierung 3
P RCP Text Editor Example - Missing Bundles lassen sich nicht auffinden. Plattformprogrammierung 6
3 Eclipse Editor Plugin selektiert Projekt nicht Plattformprogrammierung 10
C Java Editor funktioniert nicht Plattformprogrammierung 9
G RCP Eclipse Editor + Guice Plattformprogrammierung 8
J RCP Verhindern, dass Editor geschlossen wird Plattformprogrammierung 5
slawaweis RCP Formularbasierter XML-Editor (bzw. vorhandenen XML-Editor integrieren) Plattformprogrammierung 8
C Eclipse Plugin Entwicklung: Editor für Flussdiagramme Plattformprogrammierung 6
E Editor Schriftgröße ändern per "Java Code" Plattformprogrammierung 8
W letzte angeklickten Editor ermitteln Plattformprogrammierung 3
S GMF Editor mit einem zur Laufzeit erstellten Modell Plattformprogrammierung 4
B Eclpise Visual Editor Plattformprogrammierung 2
A RCP Editor-Reiter (FormEditor): Kann Rechtsklick-Menue überschrieben werden? Plattformprogrammierung 6
A RCP Tabs oben und unten im Editor oder mehrere Editoren? Plattformprogrammierung 7
B GMF Editor mit nur einem Connection Tool Plattformprogrammierung 5
T RCP - Scrollable Editor Plattformprogrammierung 4
T Speichern eines Objectes in einem Editor (mit isDirty) Plattformprogrammierung 6
J TableViewer aus Editor refreshen Plattformprogrammierung 5
T RCP Local History für eigenen Editor Plattformprogrammierung 9
L RCP Genmodel-Editor? Plattformprogrammierung 2
U Klassendiagramm-Editor (EMF, GMF, Ecore Tools) Plattformprogrammierung 3
M gmfgraph editor Plattformprogrammierung 6
L RCP View in einem Editor öffnen? Plattformprogrammierung 3
B Eclipse RCP: Kontextsensitive Buttons für Editor und Hilfebutton für Wizard hinzufügen Plattformprogrammierung 5
J RCP Default Editor öffnen? Plattformprogrammierung 5
J Code Editor auslesen? Plattformprogrammierung 3
C [GEF] gespeicherte Dateien des generierten Editor Plattformprogrammierung 5
G Editor undo/redo Plattformprogrammierung 9
Spot84 datei im editor öffnen(tutorial undurchsichtig) Plattformprogrammierung 5
G Editor anzeigen Plattformprogrammierung 2
T Setze Gradienten auf Elemente(GMF-Editor) Plattformprogrammierung 2
S Custom Editor Content Assist Plattformprogrammierung 3
G Editor und doSave() Plattformprogrammierung 19
G WYSIWYG HTML Editor als Eclipse Plug-In Plattformprogrammierung 6
K XML Editor im Project Plattformprogrammierung 12
K Editor nicht in der 'EditorArea' öffnen, sondern in einem Folder(Layout). Plattformprogrammierung 10
S RCP Anfängerfrage - Zusammenspiel View, Editor, Model Plattformprogrammierung 4
G Editor Plattformprogrammierung 6
N GMF Editor automatisch generieren Plattformprogrammierung 2
H Visueller Editor für Eclipse RCP Anwendung Plattformprogrammierung 3
G xml-Datei im Editor importieren Plattformprogrammierung 3
dzim Editor aus View öffnen - fehler: unbekannte Editor ID Plattformprogrammierung 11
Paule EMF Editor Dateiverknüpfungen Plattformprogrammierung 9
M Eclipse Probleme beim Ausführen eines Programms Plattformprogrammierung 3
D Plugin - JUnit - Tests aus einem anderen Projekt ausführen Plattformprogrammierung 7
L RCP Exception beim Ausführen von BIRT Application Plattformprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben