`
fm2005
  • 浏览: 18115 次
社区版块
存档分类
最新评论

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

 
阅读更多

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

<script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&amp;u='+escape(d.location.href)+'&amp;c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>

快速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>
分享到:
评论

相关推荐

    Eclipse权威开发指南2.pdf

    9.4.2 管理运行时环境和开发环境..... 230 9.4.3 创建并运行插件..... 231 9.5 练习概述...... 232 9.6 本章小结...... 233 9.7 参考文献...... 233 第10章 使用胖客户端平台创建 应用程序..... 235 10.1 在RCP...

    Eclipse权威开发指南1.pdf

    9.4.2 管理运行时环境和开发环境..... 230 9.4.3 创建并运行插件..... 231 9.5 练习概述...... 232 9.6 本章小结...... 233 9.7 参考文献...... 233 第10章 使用胖客户端平台创建 应用程序..... 235...

    Eclipse权威开发指南3.pdf

    9.4.2 管理运行时环境和开发环境..... 230 9.4.3 创建并运行插件..... 231 9.5 练习概述...... 232 9.6 本章小结...... 233 9.7 参考文献...... 233 第10章 使用胖客户端平台创建 应用程序..... 235...

    新版Android开发教程.rar

    这一联盟将会支持 Google 发布的 Android 手机操作系统或者应用软件,共同开发名为 Android 的 开 放源代码的移动系统。开放手机联盟包括手机制造商、手机芯片厂商和移动运营商几类。目前,联盟成员 数 量已经达到了...

    Eclipse_Swt_Jface_核心应用_部分19

    1.6.2 Eclipse的UI界面基于JFace 10 1.7 本章小结 10 第2章 配置SWT开发环境 11 2.1 下载和安装Eclipse 11 2.1.1 Eclipse下载页面介绍 11 2.1.2 下载Eclipse 12 2.1.3 安装Eclipse语言包 14 .2.1.4 ...

    matlab批量替换代码-tech:科技

    matlab批量替换代码 技术说明 CLI程序 卷曲 httpie Python 硬件相关 uPython(MicroPython / CircuitPython) 皮塞里亚尔 :I2C框架 网络 paho-mqtt:Eclipse Paho MQTT Python客户端库 开发工具 火:自动生成CLI...

    eclipse快捷键大全

    eclipse快捷键大全 1. 常用快捷键 (1)Ctrl+Space 说明:内容助理。提供对方法,变量,参数,javadoc等得提示,应运在多种场合,总之需要提示的时候可先按此快捷键。 注:避免输入法的切换设置与此设置冲突 (2)Ctrl+Shift+...

    Audio-Steganography:它是通过使用最低有效位方法(LSB)隐藏音频文件中的文本数据的应用程序。 我们的项目实现使用Java编程语言来开发用户界面,嵌入和提取模块

    我们的项目实现使用Java编程语言来开发用户界面,嵌入和提取模块。 隐写术是一种将信息隐藏在某些媒体中以进行安全通信的技术。 最低有效位编码(LSB):是数字音频以及其他媒体类型信息隐藏的最早技术之一。 在该...

    ZendStudio-13.5.1及注册码13.5.0.v20160523-0242

    http://116.199.115.84:83/1Q2W3E4R5T6Y7U8I9O0P1Z2X3C4V5B/downloads.zend.com/studio-eclipse/13.5.1/ZendStudio-13.5.1-win32.win32.x86_64.exe 1. 安装完成后,先打开解压文件的破解补丁文件夹,将...

    gcsearch:Eclipse 的谷歌代码搜索插件

    该项目的目的是提供直观的界面,用于直接从您可爱的 Eclipse IDE 中通过 Google 代码搜索搜索公共源代码。 安装 您必须有 Eclipse 3.5 及更高版本。 转到帮助 -&gt; 安装新软件... 类型更新站点: : 按 ENTER。 ...

    java开源包1

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    本书是第II卷,以开发人员在项目开发中经常遇到的问题和必须掌握的技术为中心,介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作典型...

    java开源包10

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    Java开发技术大全 电子版

    Java开发技术大全 电子版 第1篇Java基础知识入门. 第1章Java的开发运行环境2 1.1Java的运行环境与虚拟机2 1.2Java的开发环境4 1.2.1JDK的安装4 1.2.2如何设置系统环境变量6 1.2.3编译命令的使用8 1.2.4解释...

    php网络开发完全手册

    第6章 文件系统与文本数据操作 91 6.1 PHP中目录操作详解 91 6.1.1 打开目录 91 6.1.2 关闭目录 91 6.1.3 读取目录中的文件 92 6.1.4 创建目录 92 6.1.5 删除目录 93 6.2 PHP中文件操作详解 93 6.2.1 打开文件 93 ...

    java开源包11

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包2

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

Global site tag (gtag.js) - Google Analytics