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工作臺(tái)上都會(huì)起作用,但是如果想讓命令的快捷鍵只對(duì)特定的視圖或者編輯器起作用,那么可以通過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。

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

          IContextService contextService = 
          (IContextService) getSite().getService(IContextService.
          class);
          contextService.activateContext(
          "viewmenu.testcontext");
          主站蜘蛛池模板: 沙坪坝区| 澄城县| 南乐县| 宜兰市| 司法| 孟州市| 阿巴嘎旗| 翁牛特旗| 桃源县| 象州县| 德江县| 丰宁| 泰来县| 惠来县| 濮阳县| 赤城县| 伊通| 富平县| 顺昌县| 饶河县| 玛纳斯县| 万荣县| 彰化市| 增城市| 淮北市| 临城县| 牟定县| 陆河县| 安吉县| 航空| 济阳县| 岳普湖县| 涟源市| 西安市| 武陟县| 鹤峰县| 碌曲县| 锡林浩特市| 阿拉善左旗| 巩义市| 新宁县|