簡體   English   中英

在Eclipse RCP應用程序中,可以在pluginCustomization文件中定義透視圖嗎?

[英]In an eclipse RCP application, can you define a perspective in your pluginCustomization file?

我希望能夠在Eclipse RCP應用程序中定義透視圖,而無需為其編寫Java類。 這將允許我改變這種觀點而無需重新編譯源代碼並刪除不必要的java類。

目前,我確實在Java類中定義了一個Perspective,並且如果我想在不重新編譯的情況下對其進行修改,則可以使用其他名稱進行保存,然后將首選項導出到.epf文件(從運行的應用程序中)並粘貼_persp=行進入我的應用程序pluginCustomization.ini ,在運行時使用-Declipse.pluginCustomization=指定。

這行得通,但是我無法使用org.eclipse.ui/PERSPECTIVE_BAR_EXTRAS將這些復制的透視圖顯示在Extras欄中,幾乎無法編輯此類xml透視圖,因為它們全部在一行上,並且我仍然有一個我不使用不需要的Java類。

  • 因此,在eclipse RCP應用程序中,有沒有一種方法可以在您的pluginCustomization文件中定義一個透視圖,而無需Java類的支持?
    • 如果是這樣,你可以定義_persp=相對於一個文件中的行,包含格式良好的xml代碼,或者是你堅持everythingcompactedononeline?
  • 另外,還有其他方法可以實現我想要的嗎?

我不確定是否正在尋找它,但是例如,您可能想嘗試創建自己的擴展點(請參閱http://www.vogella.com/articles/EclipseExtensionPoint/article.html )。 在這種情況下,您可能會看起來像這樣:

 <extension-point id="my.perspectives" name="perspectives" schema="perspectives.exsd"/>

以一個具有“ id”屬性的元素“ perspective”(類型為“ identifier”)和“ org.eclipse.ui.perspectives/perspective/@id”作為參考(也可以將其設置為“字符串”類型,如果您不希望綁定到任何月食標識符)。

在您的plugin.xml中,然后添加如下內容:

<extension
         point="my.perspectives">
<perspective id="my.perpsective.id"/>
</extension>

然后,您可以按以下方式處理擴展點:

for (IConfigurationElement element: Platform.getExtensionRegistry().getConfigurationElementsFor("my.perspectives")) {
  String perspectiveId = element.getAttribute("id");
}

並使用透視圖ID做任何您想做的事情。 希望能有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM