zoukankan      html  css  js  c++  java
  • 快速Eclipse开发经验文本替换和操作界面

    原创 快速Eclipse开发经验--文本替换和操作界面收藏

     
    快速Eclipse插件开发经验。
    1.取得对当前选中文本内容,并转换。
    1)定义Action实现IEditorActionDelegate接口。
    2)取得当前编辑器(getEditor())。
    PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
    3)取得选中文本。
    (ITextSelection) getEditor().getEditorSite().getSelectionProvider().getSelection();
    4)替换选中文本。
    AbstractTextEditor editor = (AbstractTextEditor) getEditor();
    editor.getDocumentProvider().getDocument(editor.getEditorInput());
    document.replace(offset, length, replaceText);
     
    5)选中替换后的文本。
    ITextSelection tsNew = new TextSelection(document, offset, length);
    getEditor().getEditorSite().getSelectionProvider().setSelection(tsNew);
     
    2.菜单分组,图标,快捷键,工具条的实现。
    1)菜单分组。如下分成4组,组之间有分隔线。
    <menu label="XXXXTools(&amp;T)" id="XXXXToolsMenu">
    <separator name="XXXXToolsGroupTxt"></separator>
    <separator name="XXXXToolsGroupSql"></separator>
    <separator name="XXXXToolsGroupCode"></separator>
    <separator name="XXXXToolsGroupRefrence"></separator>
    </menu>
     
    2)分配Action到组。设置图标。和工具条
    <action label="To Lower Case(&amp;L)"
           class="XXXXTools.actions.text.ToLowerCaseAction"
           icon="icons/lower.gif"
           menubarPath="XXXXToolsMenu/XXXXToolsGroupTxt"
           toolbarPath="XXXXToolsGroupTxt"
           id="XXXXTools.actions.text.ToLowerCaseAction"
           definitionId="XXXXTools.actions.text.ToLowerCaseAction">
           <selection class="org.eclipse.jface.text.ITextSelection" />
    </action>
    3)设置快捷键。
    <extension point="org.eclipse.ui.commands">    
           <command name="To Lower Case"
                         id="XXXXTools.actions.text.ToLowerCaseAction" /> 
    </extension>
    <extension point="org.eclipse.ui.bindings">       
           <key sequence="Ctrl+Shift+U"
                         contextId="org.eclipse.ui.textEditorScope"
                         commandId="XXXXTools.actions.text.ToLowerCaseAction"
                         schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" />
    </extension>
  • 相关阅读:
    Webstorm常用快捷键
    微信内置浏览器是什么?(复制篇)
    jquery.cookie.js 操作cookie实现记住密码功能的实现代码
    sublime text 3 快捷键大全
    http_load的安装及使用方法
    Mysql压测工具mysqlslap 讲解
    ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
    percona-toolkit工具包的使用教程之开发类工具
    MYSQL管理之主从同步管理
    percona-toolkit系列之介绍和安装(mysql复制工具)
  • 原文地址:https://www.cnblogs.com/okuc/p/4149345.html
Copyright © 2011-2022 走看看