0

.jsEclipse プラグイン開発は初めてで、アクティブなワークベンチ ウィンドウがまたは.htmlファイルでない場合、メニュー項目のコマンド ハンドラを無効にしようとしています。

次のように、テキスト エディターでない場合に無効にするコードを見つけました。

<activeWhen>
    <with variable="activeEditorId">
       <equals value="org.eclipse.ui.DefaultTextEditor"/>
    </with>
</activeWhen>

javascript および html エディターに同様の機能が必要です。

4

1 に答える 1

1

これは、次のような定義を使用して実行できます。

<extension point="org.eclipse.core.expressions.definitions">
        <definition id="example.definitions.sampleDefinition">
          <adapt type="org.eclipse.core.resources.IResource">
            <or>
                <test property="org.eclipse.core.resources.name"
                         value="*.html"/>
                 <test property="org.eclipse.core.resources.name"
                         value="*.js"/>
            </or>
           </adapt>
        </definition>
   </extension>

そして、次のように、対応するコマンド ハンドラーのタグでこの定義 ID を使用する必要があります。

<enabledWhen>
        <with variable="activeEditorInput">
    <reference definitionId="example.definitions.sampleDefinition"/>
  </with>
</enabledWhen>

私はこのコードを使用しています。それはうまくいっています。

于 2012-05-03T10:20:26.097 に答える