RCP应用程序开发系列(1)

一、SWT
SWT 是一种 low-level 图形库,它提供了标准的UI控制器,例如lists, menus, fonts, and colors, 因为图形库显露了当前视窗系统能提供的组件. "SWT 提供了有效的,便利方访问它实现的操作系统的UI工具." SWT小组是这样评价SWT的。




SWT的策略是尽可能使用本地计件(widgets)。这可以使得基于SWT的应用程序的外观和本地窗口一样。所以,基于SWT的系统是轻便的,本地化的


注意:SWT不依赖于Runtime或OSGI框架,它是独立的库,可以被Eclipse或RCP以外的应用程序使用。

二、JFace
尽管SWT提供了访问本地窗口系统的能力,但JFace使得通常的UI概念的结构更合理,更易使用。UI小组这样描述JFace:

“JFace是一个UI工具包,它能处理许多常见的编程工作。JFace是独立的窗口系统,独立于它的API及其实现,它于与SWT一些工作,而不是隐藏它”。

它包括了整个UI工具包组件,从图片到字体注册,文本支持,对话框和透视图框架,耗时操作的进度工具条。这些和其它JFace UI结构,例如actions,viewers,组成了Eclipse UI的基础。

三、UI Workbench
因为JFaces给SWT加入了结构化,工作台添加了表现层(presentation)和协作(coordinateion)给JFaces。对于用户来说,工作台由视图集和编辑器构成,他们被部署在一个特殊层中。工作台包括:

· 提供了基于部署(contribution-based)的UI扩展功能

· 定义了强大的UI范例,如窗口(windows),透视图(perspective),视图(views),编辑器(editors)和动作(actions)

1. 基于部署的扩展-通过配置文件实现
尽管JFace引入了actions,preferences,wizards,windows等,工作台提供了扩展点机制,它允许插件通过申明定义UI元素。例如,wizard和preference页面扩展点简单的构建与相关的JFace结构。

然而,使用扩展来构建一个UI会在系统复杂性和性能方面从根本上影响UI的规模。声明扩展的根本目的是使得你的应用程序在需要的时候才会构建。

因为所有的扩展都是采用的延迟(lazily)加载的机制,应用程序的大小变得更合适。因为你的UI会越变越多,它包括了更多的视图,编辑器和动作。如果没有声明机制,那样的增长需要额外的加载和执行代码。增加了代码的数量和启动时间,应用程序也会变得无法管理。通过使用扩展,代码只有在需要的时候才会被加载。

2.透视图,视图,编辑器
工作台给用户一系列窗口。在每一个窗口中,工作台允许用户像管理文件夹一样合理的组织相关的内容。透视图是一种可视的容器,它包含了需要给用户展示的视图和编辑器等内容。这些都被部署在透视图中。

下面列出了组织透视图中内容的方法:

· 将编辑与其它视图一起叠放


· 将视图与其它视图一起叠放

· 将视图与主工作台窗口分离

· 调整视图和编辑器的大小,最小或最大化编辑器

· 创建fast view并固定在窗口的边上
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值