WEB开发网
开发学院软件开发Java 如何使用 Eclipse CNF 的 Saveable Protocol 实现... 阅读

如何使用 Eclipse CNF 的 Saveable Protocol 实现对 View 的保存

 2010-05-04 00:00:00 来源:WEB开发网   
核心提示: 图 2. triggerPoints 属性然后,通过 org.eclipse.ui.navigator.viewer 扩展点,如何使用 Eclipse CNF 的 Saveable Protocol 实现对 View 的保存(2),将要展现的内容绑定到 view 上,用户不再需要通过硬编程(ha

图 2. triggerPoints 属性
如何使用 Eclipse CNF 的 Saveable Protocol 实现对 View 的保存

然后,通过 org.eclipse.ui.navigator.viewer 扩展点,将要展现的内容绑定到 view 上,用户不再需要通过硬编程(hard-code)的方式将 ContentProvider 和 LabelProvider 注册到特定的 View 上。在 org.eclipse.ui.navigator.viewer 扩展点上,我们需要指定 viewerContentBinding 来设定导航器中内容的可见性,其中 includes 语句表明该内容在 view 上为可见,pattern 为预先定义好的展示内容的 id。

Editor 的保存

在 Eclipse 中,用于展示和修改模型内容的 UI 容器包括编辑器(editor)与视图(view),如下图所示。我们可以通过继承抽象类 EditorPart 和 ViewPart 来定制所需要编辑器与视图来完成模型的修改与保存。

图 3. WorkbenchPart 的继承关系
如何使用 Eclipse CNF 的 Saveable Protocol 实现对 View 的保存

EditorPart 中几个重要的方法:

publicabstractbooleanisDirty(): 用于表明编辑器中的内容是否发生修改,当编辑器的内容发生修改时,编辑器的标题栏显式地出现“*”号,同时,主菜单下“文件”下的全局“保存”按钮变为可用。当编辑器中的内容发生改变时,isDirty 方法不会自动变调用。因此我们要对可修改的 UI 元素,如 Text, CheckBox 等注册事件监听器,当修改发生时,由监听器将编辑器的 dirty 标志位置为 true。由于 isDirty() 在编辑器的生命周期中会被频繁地调用,因此不宜在这种方法中加入过多的执行语句,否则会影响程序的执行速度。

上一页  1 2 3 4 5 6 7  下一页

Tags:如何 使用 Eclipse

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接