擴展點:
org.eclipse.ui.bindings
org.eclipse.ui.contexts
擴展點org.eclipse.ui.bindings是給command增加快捷鍵,結合(介紹二),給命令com.xxxx.test.command1增加快捷鍵,
示例代碼如下:
<extension
point="org.eclipse.ui.bindings">
<key
commandId="com.xxxx.test.command1"
contextId="org.eclipse.ui.contexts.window"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+F7">
</key>
</extension>
這樣快捷鍵Shift+F7在Eclipse工作臺上都會起作用,但是如果想讓命令的快捷鍵只對特定的視圖或者編輯器起作用,那么可以通過org.eclipse.ui.contexts擴展點來自定義上下文。
<extension
point="org.eclipse.ui.contexts">
<context
id="viewmenu.testcontext"
name="ViewContext"
parentId="org.eclipse.ui.contexts.window">
</context>
</extension>
擴展之后,需要修改org.eclipse.ui.bindings擴展中的contextId屬性為viewmenu.testcontext。
另外還需要在需要增加該快捷鍵的編輯器或者視圖對應類中增加如下代碼(視圖類在代碼的createControl方法,編輯器類在代碼的init方法):
IContextService contextService =
(IContextService) getSite().getService(IContextService.class);
contextService.activateContext("viewmenu.testcontext");
org.eclipse.ui.bindings
org.eclipse.ui.contexts
擴展點org.eclipse.ui.bindings是給command增加快捷鍵,結合(介紹二),給命令com.xxxx.test.command1增加快捷鍵,
示例代碼如下:










這樣快捷鍵Shift+F7在Eclipse工作臺上都會起作用,但是如果想讓命令的快捷鍵只對特定的視圖或者編輯器起作用,那么可以通過org.eclipse.ui.contexts擴展點來自定義上下文。









擴展之后,需要修改org.eclipse.ui.bindings擴展中的contextId屬性為viewmenu.testcontext。
另外還需要在需要增加該快捷鍵的編輯器或者視圖對應類中增加如下代碼(視圖類在代碼的createControl方法,編輯器類在代碼的init方法):



