我添加了擴展點org.eclipse.ui.menus
在調試視圖中創建一個新按鈕。活動調試會話的命令表達式?
完美的作品,但這個特殊的按鈕現在總是可見的。如何添加visibleWhen
條件來檢查調試會話當前是否正在運行?
我檢查了Command Core Expressions,但沒有找到任何可能在這種情況下工作的表達式。
我添加了擴展點org.eclipse.ui.menus
在調試視圖中創建一個新按鈕。活動調試會話的命令表達式?
完美的作品,但這個特殊的按鈕現在總是可見的。如何添加visibleWhen
條件來檢查調試會話當前是否正在運行?
我檢查了Command Core Expressions,但沒有找到任何可能在這種情況下工作的表達式。
在org.eclipse.jdt.debug.ui
插件使用表達式像這樣的菜單:
<visibleWhen
checkEnabled="false">
<and>
<systemTest
property="org.eclipse.jdt.debug.ui.debuggerActive"
value="true">
</systemTest>
... other tests ...
</and>
</visibleWhen>
有一個在CDT一個很好的例子項目上如何開始定製DSF。請看看它的plugin.xml
,並按照在此定義的命令ID的用法:org.eclipse.cdt.examples.dsf.gdb.command.showVersion
這是來自該代碼的visibleWhen
的其中之一。
<visibleWhen
checkEnabled="false">
<and>
<reference
definitionId="org.eclipse.cdt.debug.ui.testIsDebugActionSetActive">
</reference>
<with variable="org.eclipse.core.runtime.Platform">
<test property="org.eclipse.core.runtime.bundleState"
args="org.eclipse.cdt.examples.dsf.gdb"
value="ACTIVE">
</test>
</with>
</and>
</visibleWhen>
感謝Greg。我忘了提及我正在使用CDT,我想這就是爲什麼它在我的情況下不起作用(我認爲調試視圖完全獨立於CDT)。那麼,你知道如何在CDT中做到這一點嗎? –
我對CDT一無所知。 –