2013-03-10 59 views
3

我是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中的代碼,編輯器爲空。

請告訴我如何顯示的代碼中嵌入的編輯

+0

我期待創造一個XTEXT編輯出的java月食的字符串。你找到一個解決這個問題? – Giannis 2013-05-11 14:25:13

回答

相關問題