簡體   English   中英

如何根據項目性質在eclipse RCP應用程序中設置`activeWhen / enabledWhen`命令

[英]How set `activeWhen/enabledWhen` command in eclipse RCP application according to project nature

我使用Project nature RCPProjectNature_1和RCPProjectNature_2來刪除RCP。

我想只有當具有自然RCPProjectNature_1的項目打開並且一旦具有RCPProjectNature_1的項目關閉時,工具欄菜單才會激活,工具欄菜單應該被禁用。

例如,我有eclipse項目

  1. 項目性質類型為RCPProjectNature_1的RCPProject1
  2. 項目性質類型為RCPProjectNature_2的RCPProject2

應用程序具有有效的工具欄菜單,僅當具有RCPProjectNature_1的任何項目打開時才應啟用。 否則它應該變灰

我如何在plugin.xml中編寫表達式?

要測試單個項目,請在org.eclipse.core.resources.projectNature屬性上使用<test>

org.eclipse.jdt.ui插件的一個例子:

<enabledWhen>
   <adapt type="org.eclipse.core.resources.IProject">
      <test property="org.eclipse.core.resources.projectNature"
            value="org.eclipse.jdt.core.javanature"/>
   </adapt>         
</enabledWhen>

何時測試具有Java特性的Project對象。

更新:

無法在正常的命令表達式中遍歷所有項目,因此您必須使用org.eclipse.core.expressions.propertyTesters擴展點編寫自己的屬性測試器。 此屬性測試人員可以檢查工作區項目( IProject對象)。

暫無
暫無

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

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