主体的最开始的下挂节点的部分自己没有研究,自己只是在这个的基础上下挂了一些其他的东西,但是拜读了整个的代码,觉得非常的有意思,写了一个回顾和总结。

自己在已经有的树上下挂一个场景节点,就像在project下下挂一些业务节点,可以将代码和业务的关联更紧密,领导看的更方便。

下面直接进入正文,观看者最好结合idea源码观看。

目标,首先下挂一级子节点,其次是在挂到其他业务上和该节点有关系的地方。

1.直接下挂节点,当不复杂的时候,直接起一个节点,选择放下去即可。idea提供的扩展点很丰富,直接源码里面搜索。

2.该类型节点放到其他节点下是,getchildren方法是挂子节点的地方,注意:由于还需要有equals和其他的比较类型等情况,最好不要将不同类型的节点挂在一个子节点下,否则需要去重写比较多的equals等,这是涉及到idea的节点检查机制,有些断言过不去。当然扩展同一个的类型节点,修改它的参数,将逻辑一概,这是一个好的挂在新类型节点的方式。

3.节点的扩展,没有印象了。比较简单

4.类加载的概念,一个配置类可以每次重新去读取,执行后即可放到java类加载器中,DynamicLoader.compile()把文件加类名变成字符流i,之后classloader加载自己字符流,最好classloader.load 全类名就已经加载进去了。之后利用java的反射或者实例化还操作了。

5.4虽然4很牛逼,但是最好是在本项目内使用,插件不好用,因为回去找类库,所以多了import后找不到,所以改成了字符串匹配

6.idea的一个全局的动作拦截器,写法如下。

首先实在plugin.xml注册一个backgroundPostStartUpActivity 这是是需要背景加载的东西。

命名这个backgroundPostStartUpActivity implates StartupActivity,重写runActivity方法,这里面的东西都会跑起来,为了后台跑加了一个idea的线程,ApplicationManager,getApplication().runReadAction ->({这里面会有一系列出事的动作})

一系列的初始化动作像ActionManager添加监听器,监听方法为afterActionPerformed()在里面写逻辑呼叫额,传入的为全局量action dataContext,anActionEvent。可获取action的全部信息,将以上内容用方法包裹起来,调用即可。

7.关于一个全新的panel

在project在扩展一个权限的panel,在plugin.xml中差异如一个projectViewPane,即是全局放入节点,Extends abstractProjectViewPane 重写对应的方法,这是此视图的最基本的规则。

接下来可以先建一个抽象类节点,定义些这个pannel下的出事信息,写下这个pannel的所有信息,

其次就是弄一个树显示在这个下面的,就是利用addchildren发的方法,一级级的下套,第一层节点是没有实际信息的,直接将剩下的有实际信息的节点下挂到。实际信息的addchildren就需要根据业务扩展逻辑。

IDEA工具-在pannel自己独立下挂一个节点(非标准)相关推荐

  1. media-ctl 工具打印media control框架下media设备节点拓扑结构

    硬件设备:RV1126 [root@RV1126_RV1109:/]# media-ctl -p /dev/media0 Media controller API version 4.19.111Me ...

  2. linux git管理工具,分享|三款 Linux 下的 Git 图形客户端

    了解这三个 Git 图形客户端工具如何增强你的开发流程. 在 Linux 下工作的人们对 Git 非常熟悉.一个理所当然的原因是,Git 是我们这个星球上最广为人知也是使用最广泛的版本控制工具.不过大 ...

  3. 让你轻松实现linux下挂在windows下的ntfs硬盘

    NTFS-3g是一款linux下挂在windows的ntfs类型硬盘的工具,本文讲诉如何交叉编译此工具. NTFS-3g交叉移植 所需代码: ntfs-3g-2009.4.4.tar ./config ...

  4. pandas 作图 统计_Pandas数据可视化工具——Seaborn用法整理(下)

    本科数学,编程几乎零基础(之前只学过matlab)今年年初开始学习Python数据挖掘,找到了一个很好的平台--BigQuant,省去了安装Python和安装各种库的烦恼.我最近在开始了解机器学习,B ...

  5. 项目管理实践之版本控制工具SVN在Windows平台下的平台搭建

    通过<项目管理实践之版本控制工具SVN>我们知道,在windows平台下,如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装SVN Server为 ...

  6. IIC下挂多外设,SCLK频率高导致挂死疑问

    最近做IIC接口下挂多个外设,但是发现SCLK速率设置为400KHz时,系统运行一段时间就卡死,主要是OLED的影响,万用表测量SCL SDA电平为高:查了下IIC相关的资料,某个论坛上的帖子给了很大 ...

  7. TP-Link ER系列路由器下挂路由器设置VLAN方法

     客户的路由器是ER5110G(以下称R1),WAN接的企业宽带,有公网IP,LAN配置了DHCP,分配的是28网段.其中一个LAN口下挂了一个TP的路由器(以下称R2),要求R2下的网络使用不同的网 ...

  8. 关于家用路由器下挂多个设备包括下挂路由器的操作

    有图有真相. 这种普通路由器很容易搞,便宜的很. R1链接一根入户的网线.采用pppoe登录. 这个怎么设置大家都知道的,地址设置是192.168.1.1/24 R2是无线路由器.R1在楼上lan口拉 ...

  9. x86 smbus 下挂eeprom不能写问题

    目录 背景 分析 驱动影响 SPD register 接口 只读 修改验证 总结 背景 x86 smbus上下挂一个eeprom,只能读取,不能写入. 写入命令采用: i2cset -y -f 0 0 ...

最新文章

  1. 剑指offer青蛙跳台阶问题
  2. [JDK翻译][Executor][ExecutorService]
  3. c winform 上传文件到mysql_WinForm上传文件至服务器
  4. [转]oracle 11g 忘记 默认用户密码
  5. 《Easy RL:强化学习教程》出版了!文末送书
  6. [复变函数]第17堂课 5 解析函数的 Laurent 展式与孤立奇点 5. 1 解析函数的 Laurent 展式...
  7. 如何自己找数据分析项目来做?
  8. echarts 柱状图如何不顶格_echarts柱状图如何中间对齐而不是底部对齐?
  9. 【luogu P2319 [HNOI2006]超级英雄】 题解
  10. linux之源程序编译安装
  11. 用JAVA写一个视频播放器
  12. 基于信息论的编码技术
  13. 直方图规定化的编程实现
  14. SMAIL 语法大全(Dalvik 虚拟机操作码)
  15. 校园网 显示ldap服务器连接不上,客户端无法连接到LDAP服务器
  16. lbp2900打印机linux驱动下载,佳能LBP2900+驱动下载-佳能LBP2900+打印机驱动下载 V3.30官方版--pc6下载站...
  17. 算法竞赛入门经典 UVa815 Flooded!
  18. PDF软件最新版本功能介绍
  19. 计算机财务管理专业有哪些课程设计,财务管理专业课程设计模版.pdf
  20. 判断是手机还是平板html,“吃鸡”用平板好还是手机好?大神给出了答案,不同理解不同格局...

热门文章

  1. c语言黑色星期五代码解析,C语言判断黑色星期五
  2. 易飞ERP工作流解决方案之【企业微信集成】
  3. 湖南艺术职业学院计算机音乐,【音乐会预告】音乐系“韵展新程——计算机音乐制作”视听音乐会...
  4. 【重要通知】中国图象图形学学会2022年度系列奖励推荐工作启动
  5. MRD文档的写作----产品经理深入浅出课程
  6. 计算机三级考试时间duan,英语三级考试作文常用句子大全
  7. Jetpack系列:喜新厌旧的程序员~KTX篇
  8. 2022云计算技能大赛
  9. 2019210025曾培圣
  10. 萤火商城V2.0源码