rsyntaxtextarea二次开发(待续)

简介:

对rsyntaxtextarea 的改造

(1)增加右键菜单

rsyntaxtextarea  已经有右键菜单,如下:

我计划增加如下菜单: 

 

修改的类:org/fife/ui/rtextarea/RTextArea.Java

具体修改方法:createPopupMenu

新增的监听器:org/fife/ui/rtextarea/listen/PopupMenuListener2.java



 

 

第二步:修改org/fife/ui/rtextarea/RTextArea_zh_CN.properties



 

第三步:修改org/fife/ui/rtextarea/RTextArea.java setActionProperties方法



 

 

(2)增加快捷键

第一步:修改org/fife/ui/rtextarea/RTextAreaEditorKit.java

增加RecordableTextAction 类的实现

Java代码   收藏代码
  1. /** 
  2.      * Search. 
  3.      */  
  4.     public static class SearchAction extends RecordableTextAction {  
  5.   
  6.         public SearchAction() {  
  7.             super(rtaSearchAction);  
  8.         }  
  9.   
  10.         public SearchAction(String name, Icon icon, String desc,  
  11.                           Integer mnemonic, KeyStroke accelerator) {  
  12.             super(name, icon, desc, mnemonic, accelerator);  
  13.         }  
  14.   
  15.         @Override  
  16.         public void actionPerformedImpl(ActionEvent e, RTextArea textArea) {  
  17.             SearchInputDialog searchInputDialog = new SearchInputDialog(textArea,null);  
  18.             searchInputDialog.setVisible(true);  
  19.         }  
  20.   
  21.         @Override  
  22.         public final String getMacroID() {  
  23.             return rtaSearchAction;  
  24.         }  
  25.   
  26.     }  

 

第二步:增加action的描述

 

 

第三步:修改org/fife/ui/rtextarea/RTADefaultInputMap.java 的方法RTADefaultInputMap



 

第四步:修改org/fife/ui/rtextarea/RTextAreaEditorKit.java

在静态变量defaultActions中增加:

Java代码   收藏代码
  1. new SearchAction()  

 

 

 

(3)

 

(4)

 

相关文章
|
3天前
|
移动开发 小程序 JavaScript
(一)、项目介绍及知识点概述【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】
(一)、项目介绍及知识点概述【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】
23 0
一键自动化博客发布工具,用过的人都说好(掘金篇)
使用一键自动化博客发布工具blog-auto-publishing-tools把博客发布到掘金上。
一键自动化博客发布工具,用过的人都说好(掘金篇)
|
3天前
|
Web App开发
一键自动化博客发布工具,用过的人都说好(简书篇)
给大家推荐一个一键自动化博客发布工具,完全的一键操作,让你轻松告别手动发布博客的烦恼。
|
3天前
|
前端开发 JavaScript 搜索推荐
《VitePress 简易速速上手小册》第4章 博客功能增强(2024 最新版)
《VitePress 简易速速上手小册》第4章 博客功能增强(2024 最新版)
39 0
|
3天前
|
JSON 开发者 数据格式
揭秘5.3k⭐开发者的秘密武器:it-tools在线工具集,你不可不知!
揭秘5.3k⭐开发者的秘密武器:it-tools在线工具集,你不可不知!
24 0
|
3天前
|
安全 Linux 网络安全
如何搭建 Laravel 开发环境保姆级教程(附链接)
如何搭建 Laravel 开发环境保姆级教程(附链接)
|
存储 数据管理 程序员
CATIA V6 二次开发—概述
CATIA V6 二次开发—概述
CATIA V6 二次开发—概述
|
C# 开发工具
基于C#的ArcEngine二次开发47:Addins常见问题解决方案集锦
基于C#的ArcEngine二次开发47:Addins常见问题解决方案集锦
基于C#的ArcEngine二次开发47:Addins常见问题解决方案集锦
|
SQL 架构师 算法