在PropertySheetPage显示的属性中, 如果需要自定义属性显示的上下顺序, 就需要给PropertySheetPage添加一个PropertySheetSorter, 从而决定属性显示的上下顺序.
protected void setSorter(PropertySheetSorter sorter) {
但是, 这个方法是protected的, 所以, 只有在给Editor添加PropertySheetPage的时候, 需要使用比较脏的方法给PropertySheetPage 设置一个sorter了.
我的做法如下:
propertySheetPage = new PropertySheetPage() {
/**
* @see org.eclipse.ui.views.properties.PropertySheetPage#createControl(org.eclipse.swt.widgets.Composite)
*/
@Override
public void createControl(Composite parent) {
// 设置一个使用描述来排序的Sorter
PropertySheetSorter sorter = new PropertySheetSorter() {
public int compare(IPropertySheetEntry entryA, IPropertySheetEntry entryB) {
// 使用IPropertySheetEntry的description排序.
return getCollator().compare(entryA.getDescription(), entryB.getDescription());
}
};
this.setSorter(sorter);
super.createControl(parent);
}
};
注: 排序的规制是使用entryA.getDescription()来作为排序依据.
于是: Model中的代码如下:
public IPropertyDescriptor[] getPropertyDescriptors() {
TextPropertyDescriptor locationXPD = new TextPropertyDescriptor(P_LOCATION_X, "X坐标");
locationXPD.setDescription("01");
TextPropertyDescriptor locationYPD = new TextPropertyDescriptor(P_LOCATION_Y, "Y坐标");
locationYPD.setDescription("02");
return new IPropertyDescriptor[] { locationXPD, locationYPD};
}
效果: 'X坐标' 排在了 'Y坐标' 的前面了.
分享到:
相关推荐
在GEF(Graphical Editing Framework)中,属性视图(Property View)的实现是一个关键功能,它允许用户查看和编辑图形模型的属性。属性视图是数据源与用户界面之间的桥梁,确保图形模型和属性视图之间保持同步更新...
这个入门学习例子旨在帮助初学者理解GEF的基本用法和核心概念,通过实例展示如何利用GEF实现工具栏、菜单栏、属性栏以及图形的交互功能,如移动、删除、撤销、连线等,并涵盖了大纲视图和鹰眼功能的实现。...
"GEF-whole-upload.pdf"这个名字可能表明这是一份综合性的文档,涵盖了GEF的全部内容,或者是某个大型项目的完整上传指南,指导用户如何将整个GEF应用部署到服务器或者共享给他人。 总的来说,这个“GEF资源打包”...
1. 创建PathFigure实例:这是折线的基础,你可以设置其填充颜色、边框颜色等属性。 2. 创建Segment实例:如LineSegment、BezierSegment等,用于表示转折线的不同部分。每个Segment都有自己的坐标点,可以通过设置...
GEF的核心功能是提供了一套强大的组件和API,用于创建可交互的、图形式的用户界面。通过使用GEF,开发者可以轻松地创建出具有拖放、连接线、节点和图形编辑功能的应用。在Java编程中,GEF是一个非常有价值的工具,...
这通常涉及到设置项目属性,导入必要的库,以及配置项目的构建路径。 **3. 设计模型** 在GEF中,你需要首先定义你的数据模型,这可能涉及使用EMF(Eclipse Modeling Framework)来创建Ecore模型。Ecore模型是元模型...
它支持多种图形操作,如绘制矩形、圆形、线条等基本形状,以及填充颜色、设置边框样式等功能。同时,Draw2D还提供了事件处理机制,使得图形可以响应用户的交互操作。 该资源包中的文档包括: 1. "GEF.doc" 和 ...
开发者可以通过导入这个JAR文件,将GEF的功能整合到他们的Eclipse插件项目中。 2. **artifacts.jar**:此文件通常包含了软件的元数据,例如依赖关系、版本信息等。在Eclipse插件开发中,它可能用于帮助Eclipse的...
这一步至关重要,没有正确设置依赖,将无法在项目中使用GEF功能。 #### 三、创建Editor与GEF基本结构 在RCP项目中,**Editor**是最常见的GEF承载对象,它继承自`EditorPart`,提供了图形修改后的自动保存机制,这...
标题“GEF实现拷贝粘贴”涉及到的是在软件开发中使用Graphical Editing Framework(GEF)进行图形界面编辑时,如何实现复制和粘贴功能的技术。GEF是Eclipse平台下用于构建图形化编辑器的框架,它提供了一套完整的...
在Android ADT中,GEF的作用主要体现在可视化布局编辑器上,它允许开发者通过拖放的方式设计XML布局文件,实时预览UI效果,以及方便地调整控件的属性和布局关系。此外,GEF还支持图元工厂(MetaFactory),可以生成...
**GEF(Graphical Editing Framework)** 是一个用于构建图形编辑工具的开源框架,它为开发人员提供了一套全面的库和工具,用于创建基于Eclipse的富客户端平台(RCP)的应用程序,特别是那些涉及图形用户界面(GUI)...
3. **gef的命令与功能**:gef提供了许多实用的命令,如`gef help`可以查看所有可用命令,`gef config`用于配置gef的设置,`gef load`则可以加载新的gef插件。此外,gef还包含了一些针对内存分析、反汇编、堆栈跟踪等...
在本文中,我们将深入探讨Gef的学习过程,涵盖其基本概念、核心功能以及如何应用于MVC架构和富客户端开发。 首先,让我们了解Gef的基础知识。Gef是用Python编写的,它通过添加新的命令、改进现有命令和提供额外的...
- 添加依赖后,项目的构建路径将包含GEF库,从而可以在项目中使用GEF功能。 ### 创建Editor 接下来,我们将创建一个Editor,这是GEF应用中最核心的部分之一。通常情况下,GEF会集成到Editor中而非View中,这是...
在Java环境中,GEF常与SWT(Standard Widget Toolkit)结合使用,提供强大的图形渲染和交互功能。 本教程主要涉及以下几点关键知识点: 1. **GEF基础概念** GEF的核心是其五层架构,包括Model(模型)、View...
- **GEF (Graphical Editing Framework)**:GEF是Eclipse平台提供的一个用于构建图形编辑器的框架,能够帮助开发者快速构建功能丰富的图形用户界面。适用于创建各种类型的图形编辑器,如流程图编辑器、UML建模工具等...