我是xtext的新手,我已經使用xtext創建了一個DSL,並且生成了具有很多功能的編輯器,如內容輔助和語法着色,現在問題是我想在對話框中嵌入編輯器。在對話框中Xtext DSL嵌入式編輯器
爲了實現這個即時通訊使用EmbeddedEditor,我能夠獲得嵌入式編輯器並將其放置在對話框中,但嵌入式編輯器不顯示文件的內容。
文件C:/Eclipse_Work/workspace/runtime_workspace/apa/ex.mydsl包含:
import com.ex.test;
entity{
element a;
}
在createcontrol的代碼(對話框)是:
IEditedResourceProvider resourceProvider=new IEditedResourceProvider() {
@Override
public XtextResource createResource() {
try {
Resource resource = resourceSet.createResource(URI.createURI("C:/Eclipse_Work/workspace/runtime_workspace/apa/ex.mydsl"));
XtextResource resource2=(XtextResource)resource;
return (XtextResource) resource;
} catch (Exception e) {
return null;
}
}
};
MyDslActivator activator = MyDslActivator.getInstance();
Injector injector = activator
.getInjector(MyDslActivator.COM_APAMA_STUDIO_QUERY_EXT_MYDSL);
@SuppressWarnings("restriction")
EmbeddedEditorFactory factory = injector.getInstance(EmbeddedEditorFactory.class);
EmbeddedEditor handle= factory.newEditor(resourceProvider).withParent(
composite);
EmbeddedEditorModelAccess partialEditor= handle.createPartialEditor();
handle.getViewer().getControl().setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true, 2, 0));
當我運行該對話框以編輯區域打開,但不顯示ex.mydsl中的代碼,編輯器爲空。
請告訴我如何顯示的代碼中嵌入的編輯
我期待創造一個XTEXT編輯出的java月食的字符串。你找到一個解決這個問題? – Giannis 2013-05-11 14:25:13