posts - 36, comments - 30, trackbacks - 0, articles - 3
          擴(kuò)展點(diǎn):
          org.eclipse.ui.bindings
          org.eclipse.ui.contexts

          擴(kuò)展點(diǎn)org.eclipse.ui.bindings是給command增加快捷鍵,結(jié)合(介紹二),給命令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擴(kuò)展點(diǎn)來自定義上下文。

          <extension
                     
          point="org.eclipse.ui.contexts">
                  
          <context
                        
          id="viewmenu.testcontext"
                        name
          ="ViewContext"
                        parentId
          ="org.eclipse.ui.contexts.window">
                  
          </context>
          </extension>

          擴(kuò)展之后,需要修改org.eclipse.ui.bindings擴(kuò)展中的contextId屬性為viewmenu.testcontext。

          另外還需要在需要增加該快捷鍵的編輯器或者視圖對應(yīng)類中增加如下代碼(視圖類在代碼的createControl方法,編輯器類在代碼的init方法):

          IContextService contextService = 
          (IContextService) getSite().getService(IContextService.
          class);
          contextService.activateContext(
          "viewmenu.testcontext");
          主站蜘蛛池模板: 会泽县| 通城县| 临西县| 西和县| 丰城市| 景德镇市| 拉孜县| 富川| 雷山县| 嘉定区| 开化县| 剑河县| 曲松县| 海口市| 武鸣县| 宣城市| 璧山县| 曲沃县| 黑水县| 安达市| 堆龙德庆县| 夏河县| 长岭县| 汉阴县| 永德县| 武义县| 弋阳县| 新竹市| 广东省| 铁力市| 信宜市| 陕西省| 华宁县| 平塘县| 荔波县| 桑日县| 泌阳县| 白山市| 观塘区| 龙州县| 明水县|