2011-6-20
1.可使用 draw2d 中的类 Animation 做 GEF 动画,动画针对figure缩放和位置移动
2011-7-12
1.添加RCP圆角的办法
在ApplicationWorkbenchWindowAdvisor的preWindowOpen()中加入下面代码
PlatformUI.getPreferenceStore().setValue(IWorkbenchPreferenceConstants.SHOW_TRADITIONAL_STYLE_TABS, false);
2011-11-22
1.GMF/GEF/EMF各种命令转换组合等
CompoundCommand 组合各自命令
转换ICommandproxy
反之Commandproxy
CompositeTransactionCommand,GMF命令组合
2011-4-29
1.在GEF中注册拖放目标源 写在方法
initializeGraphicalViewer()中,
例如: viewer.addDropTargeListenercnewResovceDropTargetListener(liencese);
2.在特定的Editor中配置独特的Action方法
在Editor扩展点文件中配置属性Contributorclass。
该类继承EditorActionBarContributor
添加方法 :
public void init(IACtionBars bars){
IToolBarManger toolbar =bars.getToolBarManager();
toolbar.add(new separator());
toolbar.add(action);自定义的
}
2011-12-1
1.制作GMF图元动画,以及修改图元位置
private void refreshBounds(IGraphicalEditPart editPart) {
int x = ((Integer) editPart.getStructuralFeatureValue(NotationPackage.eINSTANCE.getLocation_X())).intValue();//模型位置
int y = ((Integer) editPart.getStructuralFeatureValue(NotationPackage.eINSTANCE.getLocation_Y())).intValue();//模型位置
Point loc = new Point(x, y);
IFigure figure = editPart.getFigure();
Animation.markBegin();//动画
((GraphicalEditPart) editPart.getParent()).setLayoutConstraint(editPart, figure, new Rectangle(loc, TaskEditPart.TASK_FIGURE_SIZE));//设置界面位置,
Animation.run(600);
}
修改一个图元的位置,应该线修改他的模型位置,在通过上面方法设置他的显示位置。
2.手动创建图元可以通过构建createElementCommand,构建createElementRequest来创建
2011-12-5
1.GMF修改节点拉出和拉入连线的策略
系统写在了 ShapeNodeEditPart installEditPolicy(EditPolicyRoles.CONNECTION_HANDLES_ROLE,
new ConnectionHandleEditPolicy());里头,
重写 ConnetionHandleEditPolicy();控制展现和功能。
2.控制从资源视图推拽对象(例如资源视图)到GMF视图
修改注册 DiagramDropTargetListener 到DiagramEditPart中的注册,然后此Listener天然成了一个selectTool(比喻),查看事件到请求的封装,到策略分发。即可完成。
注:因为一般的JAVA 透视图的资源视图是添加了swt的dnd拖拽监听器的,如果是自定义视图,须在自己的树view里头注册。如果是GEF,GEF的监听器需自己注册到gef编辑器的最大的那个view里头。
2011-12-8
1.TreeViewer 出现两种颜色的字体同时出现。(类似java编辑器里头的其他树形视图一样)
需要使用 DecoratingStyledCellLabelProvider 包装labelprovider。
例:
类1
public class TreeViewLabelProvider extends LabelProvider implements IStyledLabelProvider {
public String getText(Object element) {
Itree node = (Itree) element;
return node.getName();
}
public Image getImage(Object element) {
return null;
}
public StyledString getStyledText(Object obj) {
String name = getText(obj);
StyledString str = new StyledString(name);
str.append(" :" + name, StyledString.DECORATIONS_STYLER);
return str;
}
}
类2
public class DecoratingTreeLabelProvider extends DecoratingStyledCellLabelProvider implements ILabelProvider {
private ILabelProvider provider;
public DecoratingTreeLabelProvider(TreeViewLabelProvider provider) {
super(provider, PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator(), null);
this.provider = provider;
}
//这里使用的是platformUI里头的DecoratorManager(),需要是插件工程,其他地方使用,需自己实现LabelDecorator();
public String getText(Object element) {
return provider.getText(element);
}
}
使用
TreeViewLabelProvider treeViewLabelProvider = new TreeViewLabelProvider();
treeViewer.setLabelProvider(new DecoratingTreeLabelProvider(treeViewLabelProvider));
treeViewer.setContentProvider(new TreeContentProvider());
分享到:
相关推荐
这涉及到软件设计模式的理解,如插件化、组件化等。 通过学习这个三合一小程序源码,开发者不仅能掌握微信小程序的基本开发流程,还能深入理解用户交互设计、数据处理、网络请求等多个方面,对提升自身技能和创新...
在这款胶囊日记插件中,JavaScript被用来实现用户交互、数据存储以及与Chrome浏览器API的通信。开发过程中,开发者可能使用了事件监听、异步处理、Ajax请求等JavaScript技术,以确保插件的实时性和响应性。 Chrome...
### J2EE开发日记-MyEclipse快捷键与插件大全 #### MyEclipse快捷键大全 本章节将详细介绍在MyEclipse开发环境中使用的各种快捷键及其功能。 1. **编辑器操作** - `Ctrl+M`: 改变当前编辑窗口大小。 - `Ctrl+Q`...
Bootstrap的核心特性包括栅格系统、预定义的CSS样式、JavaScript插件以及一系列易于使用的组件,如按钮、表单、导航条、下拉菜单等。在"小熊日记"网页中,Bootstrap的栅格系统可能被用来创建灵活的布局,使得内容...
《牛顿日记网络日记薄Access动网插件版》是一款专为动网论坛设计的日记应用插件,它能够与动网论坛无缝集成,让用户在同一个平台上既能参与论坛讨论,又能记录个人的点滴生活。这款插件的核心特性是利用论坛的用户...
这是我主要使用的开发插件,下载地址是: http://www.microsoft.com/downloads/details.aspx?familyid=3E1DCCCD-1CCA-433ABB4D- 97B96BF7AB63&displaylang=en MOSS SDK 下载地址:...
从提供的实习日记中,我们可以提炼出一些关键的知识点: 1. **作息调整**:从学校到职场的转变,实习生需要适应新的作息时间,这不仅是生活上的变化,也是心态上的调整。 2. **Java Web开发**:实习生在实习期间...
由于日记插件依赖于论坛的用户数据,这意味着它需要访问动网论坛的数据库来获取和存储用户的个人信息及日记内容。因此,安装过程中需要按照提供的安装文档,正确配置数据库连接参数,如数据库服务器地址、用户名、...
auto diary面向程序员的日记同步插件使用这个插件,可以通过简单的配置,让日记同步起来。面向的用户:会使用 git 的程序员使用 vscode 作为码字工具的人配置只需要在 workspace 根目录增加一个配置文件:.auto-...
如何安装? 步骤一:将压缩包解压,cgi-bin下的文件一同上传到服务器的cgi-bin目录下,注意一定要... 比如名字可以起:私人日记 链接:http://yoururl/cgi-bin/day.cgi 步骤四:刷新论坛首页,点击插件,就可以看到了!
微信小程序源码-小熊日记.zip微信小程序源码-小熊日记.zip微信小程序源码-小熊日记.zip微信小程序源码-小熊日记.zip微信小程序源码-小熊日记.zip微信小程序源码-小熊日记.zip微信小程序源码-小熊日记.zip微信小程序...
1. "Infinity-最佳新标签页增强插件.crx":这可能是一个新标签页增强插件,它可能会提供自定义启动页、快速访问Elasticsearch集群或提供一些实用工具的功能,提升用户的工作效率。 2. "elasticsearch-head.crx":这...
在FourteenFish网站上快速添加CPD到您的学习日记。 在任何网页上,单击扩展名,您将进入学习日记,其中已经填写了几个字段。您可以选择在页面上选择一些文本,然后单击图标以在“注释”框中包括该文本。 支持语言:...
手柄输入管理插件,支持多手柄多玩家键位设置 Rewired is an advanced input system that completely redefines how you work with input, giving you an unprecedented level of control over one of the most ...
QQ空间插件-IE6专用就是为了这些用户而设计的,它弥补了IE6在处理现代网页时的不足,提高了加载速度和兼容性。 QzoneMusic.exe文件很可能是QQ空间插件中的一个组件,专注于音乐播放功能。在QQ空间中,用户可以创建...
这款插件的特色在于其独特的功能,它将古老的“晨间日记”概念与现代数字工具相结合,通过一种有趣且实用的方式提醒用户关注生活中的感恩和目标设定。 首先,让我们深入了解“公鸡”(Rooster)这个名称的含义。...
相册集成HighSlide、LightBox、GreyBox、ThickBox特效,并可以使用外部的Z-Blog插件; 停用时自动删除生成的文件,替换添加的导航,一键安装,一键卸载; 可以添加不同的相册,方便的设置和修改相册简介,并且可以...
青春日记多用户网络日记程序是一个漂亮精致的网络日记本,它界面美观、功能丰富、使用方便,包含了用户登录注册、日记本排行、日记搜索、日记管理、留言评论等功能,还有音乐播放、时钟日历、愿望小寺等小功能。...
"domodel-diary-crx插件"是一款专为英语用户设计的浏览器扩展程序,它提供了一个简洁而实用的日记应用,让记录日常生活变得更加方便。这款插件的核心特点在于其便捷性和安全性,使得用户可以在繁忙的网络环境中快速...
控制面板适合站长二次开发不同插件 4、用户日记首页留言本与个人形象为动态JS特效,简单而动感。 5、用户可添加与管理自己的音乐,音乐将在用户日记页面播放。 7、用户可设置日记本背景图,主题图以及单篇日记的主题...