GEF最简单的入门-helloword(1)
最近做插件项目。主要负责GEF这块。
好吧。资料真少的可以。特别是入门。都是一大堆一大堆的。网上最火的八进制的文章但对于我这种菜鸟级别看了还是一头雾水。各种资料折腾了半天。终于折腾出一个真正的入门例子。啊。亲爱的helloword。
写完之后发现GEF入门难其实就难在他的mvc模式,真够绕的。写个helloword就绕了半天。也难怪老大让我接受这个东西的时候语重心长的说。不是那么容易的。
好吧。开始写这个绕昏了的helloword。
写的很烂。里面很多自己都没弄懂。将就看吧。主要是先把这该死的gef。mvc流程跑一片。
环境搭建就不说了。网上自己找。
第一步。新建插件工程
下一步自己命名文件名字HelloWoldGef
继续下一步师傅选择富客户端。点击no。
下一步创建一个编辑器
继续下一步前三个可以自己命名。注意最后一个FileExtension就是插件编辑器的后缀名
最后点击Finish。工程建立完成。
然后我们看看这个工程。重点是plugin.xml,打开可以看到右边的东西。刚刚我们新建工程时候定义的这个编辑器的属性就配置在这里面。右边的extensions
很明显就是上面提过的扩展名helogef。这里可以自己再次修改。class就是左边的HelloWoldEditor。好吧。至于这个类其他的那一堆东西。我现在也不晓得是啥子。但是要做这个helloworld貌似我不用关系这些。所以。其他让人头大的东西就占时当不存在。
然后这个Extensions文件对应的代码,点开下面的plugin.XML就可以看到了。细节就不说了。我懒得写。
ok。开始伟大的Gef Helloword工程。哎。真麻烦。
因为gef是个让人看的头昏的mvc。所以。嗯。我们按照mvc的模式走。很明显我们需要建立三个包。view。controller,model。view在gef中默认是编辑器
就是上面上的HelloWoldEditor类。嗯。来建立controller跟model包里的类
Model包下一个HelloModel模型类。controller下,一个HelloEditorPart控制类。一个PartFactory工程类。嗯。看着这两个类就晓得为啥子我说这mvc够绕了吧。还要用一个工厂管理。
now。hellowold所需要的类就算全部搞定了。现在我们就要在编辑器包中的HelloWoldEditor等类下面红线里的5个类做工作了、
ok开始写代码。分两篇博客写。看下一篇博客
GEF最简单的入门-helloword(1)的更多相关文章
- Python简单爬虫入门三
我们继续研究BeautifulSoup分类打印输出 Python简单爬虫入门一 Python简单爬虫入门二 前两部主要讲述我们如何用BeautifulSoup怎去抓取网页信息以及获取相应的图片标题等信 ...
- Python简单爬虫入门二
接着上一次爬虫我们继续研究BeautifulSoup Python简单爬虫入门一 上一次我们爬虫我们已经成功的爬下了网页的源代码,那么这一次我们将继续来写怎么抓去具体想要的元素 首先回顾以下我们Bea ...
- GJM : Python简单爬虫入门(二) [转载]
感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...
- DirectShow 最简单的入门 -- 播放一段视频
#include <dshow.h> #pragma comment(lib,"strmbase.lib") #pragma comment(lib,"qua ...
- echarts之简单的入门——【二】再增加一个柱状图和图例组件
echarts之简单的入门——[一]做个带时间轴的柱状统计图 现在需求说,我需要知道日答题总次数和活跃人数,那么我们如何在上面的图表中增加一个柱状图呢? 如果你看过简单入门中的配置项手册中series ...
- C#中缓存的使用 ajax请求基于restFul的WebApi(post、get、delete、put) 让 .NET 更方便的导入导出 Excel .net core api +swagger(一个简单的入门demo 使用codefirst+mysql) C# 位运算详解 c# 交错数组 c# 数组协变 C# 添加Excel表单控件(Form Controls) C#串口通信程序
C#中缓存的使用 缓存的概念及优缺点在这里就不多做介绍,主要介绍一下使用的方法. 1.在ASP.NET中页面缓存的使用方法简单,只需要在aspx页的顶部加上一句声明即可: <%@ Outp ...
- 《从0到1学习Flink》—— Mac 上搭建 Flink 1.6.0 环境并构建运行简单程序入门
准备工作 1.安装查看 Java 的版本号,推荐使用 Java 8. 安装 Flink 2.在 Mac OS X 上安装 Flink 是非常方便的.推荐通过 homebrew 来安装. brew in ...
- MongoDB最简单的入门教程之二 使用nodejs访问MongoDB
在前一篇教程 MongoDB最简单的入门教程之一 环境搭建 里,我们已经完成了MongoDB的环境搭建. 在localhost:27017的服务器上,在数据库admin下面创建了一个名为person的 ...
- MongoDB最简单的入门教程之三 使用Java代码往MongoDB里插入数据
前两篇教程我们介绍了如何搭建MongoDB的本地环境: MongoDB最简单的入门教程之一 环境搭建 以及如何用nodejs读取MongoDB里的记录: MongoDB最简单的入门教程之二 使用nod ...
随机推荐
- 解读Android LOG机制的实现【转】
转自:http://www.cnblogs.com/hoys/archive/2011/09/30/2196199.html http://armboard.taobao.com/ Android提供 ...
- WEBAPI 帖子收藏
[翻译]ASP.NET Web API入门 [翻译]ASP.NET WEB API异常处理 ASP.NET WebAPI 路由规则与POST数据 ASP.NET Web API路由规则(二) ASP. ...
- Linux umount的device is busy问题
现象: [root@dbserver ~]# df -h文件系统 容量 已用 可用 已用%% 挂载点/dev/vda1 9.9G 3.9G 5.6G 41% /tmpfs 3.9G 100K 3.9G ...
- linux系统下安装nginx
1.第一步:获取nginx的安装包 wget http://nginx.org/download/nginx-1.7.8.tar.gz 2.解压安装包tar -xvf nginx-1.7.8.tar. ...
- Shiro:授权控制
对容易忽略的地方记录如下: 1.需要引入下面2个依赖,具体版本根据自身环境修改: <dependency> <groupId>org.apache.geronimo.bundl ...
- Windows caffe VGG人脸识别
caffe自带的例子有mnist和cifar10,cifar10和mnist的运行方式类型,下好图片数据文件后,训练例子中的模型,然后测试模型,也可以自己用图片进行预测分类(自己图片最好是cifar1 ...
- mysql innodb 行级锁升级
创建数据表test,表定义如下所示: CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) NO ...
- 前端架构之路:Windows下安装Nodejs步骤
最近打算把我们的微信端用Vue.js重构,为什么选择Vue.js,一是之前使用的是传统的asp.net mvc,多页面应用用户体验比单页面要差.二是使用过Angular.js,感觉对开发人员要求较 ...
- bzoj [ZJOI2008]生日聚会Party
思路:dp, 用dp[ i ][ j ][ u ][ v ] 表示, 有n个人,其中有j个是男生,后缀区间中男生人数减去女生人数的最大值为u, 女生人数减去男生人数 的最大值为v, 然后就能写出状态转 ...
- bzoj 1150
思路:写的时候感觉是贪心但是没有什么思路... 看了题解,原来有一个选了能反悔的贪心思路, 如果最优那么每个城市只能和旁边的相邻 城市连边,所以问题变成了由n个数,不能取相邻的两个数,取k个最小是多少 ...