Mein Name ist Oleg, ich schreibe erweiterte Funktion - visuellen Vergleich von BPEL-Dateien. Ich möchte reguläre Editoren in "compare" -Fenster (links und rechts) verwenden Als ersten Schritt möchte ich nur zwei Editoren (einen für jede Datei) öffnen Später kann ich sie ein wenig "hacken", neue Teile machen grün, gelöscht Teile rot etc ...GEF - Wie Editor in Composite geöffnet?
Also mein Problem recht einfach klingt ich habe: - Verbund - Ressource, die .bpel Datei beschreibt Und ich muss in diesem Verbund für diese Ressource Standard-Editor zu öffnen.
Ich würde mich über irgendwelche Tipps oder Vorschläge freuen!
Was habe ich versucht:
ich paar Tage verbracht haben versucht GEF zu tiefer zu verstehen, aber immerhin habe ich keine einfache Lösung für mein einfaches Problem gefunden.
aus einem anderen Projekt Menschen verwendet:
org.eclipse.gmf.runtime.notation.Diagram
org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalViewer
diagramGraphicalViewer.setContents(diagram)
aber mein Redakteur ist GEF-basierte, nicht GMF-basiert.
Soweit es verstand ich nicht in zusammengesetzten gerade geöffneten Editor kann ich eine Menge von „extra“ Zeug verwenden - EditorManager, Workbrenchs, einige Websites etc. etc.
Schließlich schrieb ich einige einfache Code, aber es funktioniert nicht . Wahrscheinlich habe ich es absolut falsch geschrieben, aber lassen Sie mich zitieren, nur um klar zu machen, was ich eigentlich brauche.
File file2open = new File(new Path("/p1/name2.bpel"), (Workspace) BPELPlugin.getPlugin().getWorkspace()) { };
BPELMultipageEditorPart editorPart = new BPELMultipageEditorPart();
FileEditorInput editorInput = new FileEditorInput(file2open);
EditorDescriptor editorDescriptor = null;
try {
editorDescriptor = (EditorDescriptor)IDE.getEditorDescriptor(file2open);
} catch (PartInitException e) {
e.printStackTrace();
}
WorkbenchPage workbrenchpage = (WorkbenchPage) PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
EditorSite editorSite = new EditorSite(new EditorReference(workbrenchpage.getEditorManager(), editorInput, editorDescriptor), editorPart, workbrenchpage, editorDescriptor);
try {
editorPart.init(editorSite, editorInput);
} catch (PartInitException e) {
e.printStackTrace();
}
editorPart.createPartControl(mycomposite);
upd: schließlich habe ich realisiert, was ich wollte, aber nicht sicher, ob jemand anderes interessiert :)
Hey, ich möchte wissen, wie Sie es zum Laufen bringen verwaltet. Ich versuche gerade etwas Ähnliches und ich denke, dass dein Weg mir helfen könnte. – MatF
@MatF überprüfen Sie diesen Screenshot http://www.picamatic.com/view/3436443_bpelcompare/ Quellcode: http://dl.dropbox.com/u/49126809/org.eclipse.emf.compare.ui.gef.zip – javapowered
Danke, aber leider enthält die Zip nur leere Ordner? – MatF