5-想不想在Davinci Configurator上自定义插件?

目录

1、一图释义

2、答疑解惑

3、延伸和拓展

4、回味和预告

5、总结


如果想,请阅读此文。

1、一图释义

笔者在上一篇原创文章中提到Eclipse RCP中涉及的常见概念,分别是Application,Workbench,WorkbenchWindow,ActionBar和Perspective。很多读者反映,即使认真读完这些名词的解释也是一脸懵,不知道该如何理解。那么,笔者精心准备了一张图,希望对读者掌握这些概念有帮助。

图片

2、答疑解惑

在前文中,笔者曾经留下彩蛋,红框中的View界面是怎么出现在Eclipse RCP应用中呢?

最后,读者可能有疑问,在createInitialLayout()中并没有设置页面的代码,那为什么hellobeijing项目运行后,怎么会有一个用红框圈出的“View”页面呢?笔者将在后续贴文中为读者解密。

汽车基础软件,公众号:汽车基础软件一张图解密Vector Davinci Configurator启动流程

在本文中,笔者将继续以hellobeijing项目为例,详细解答设计思路。

首先,在“项目浏览”栏找到plugin.xml文件,并点击"Extensions"标签。可以看到,“View”界面是“org.eclipse.ui.views”扩展的元素,并且class属性对应的是包com.basicsw.hellobeijing中的View.java文件。

图片

然后,在Src文件夹中打开View.java文件。View类继承自ViewPart抽象类,需重写两个抽象方法createPartControl()和setFocus()。其中,createPartControl()用于创建View界面中的控件。setFocus()用户在创建完成后设置默认的焦点状态。

在View.java中,createPartControl()新建了表格控件TableViewer实例,并且往表格的每一行填充了图片元素和数据元素;setFocus()设置表格控件获取焦点。

图片

最后,在“org.eclipse.ui.perspectiveExtensions”扩展中设置“View”界面的显示位置。

图片

这样,无需在Perspective.java中手写任何代码,就能在Eclipse RCP应用中定制新的界面,是不是非常神奇?!

3、延伸和拓展

为了加深对本文提到的两个扩展的理解,笔者在hellobeijing项目中自定义一个TestView界面,效果展示如下。读者可以自行尝试修改hellobeijing项目的配置和源码。如果读者尝试不成功,请关注公众号后留言,将有专人为您解答。

图片

4、回味和预告

什么是模块化和动态化?什么是插件?什么是即插即用?回味本文中用鼠标点点点就能创建界面,是不是加深了对这些概念的理解?所有这些,其实依赖于Eclipse RCP平台中的OSGi(Open Service gateway initactive)框架。

至此,可能有读者疑问:在Eclipse RCP中自定义插件后,怎么打包、发布和部署插件,尤其是安装在Davinci Configurator中?如需进一步了解,敬请关注公众号。

5、总结

为积极响应Eclipse软件定义汽车工作组倡导的开源精神,考虑到在中文语法环境中Eclipse RCP平台的开发资料极度稀缺,汽车基础软件公众号陆续发布一系列的原创文章,深入介绍基于Eclipse RCP平台的汽车工具链软件开发方法,敬请关注微信公众号以获取更多精彩内容。

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值