OpenOffice桌面环境(Desktop Environment)
com.sun.star.frame.Desktop服务是OpenOffice.org应用框架的中心(核心)管理实例。所有的OpenOffice.org应用窗体被组织成包含可视化组件的帧(frames)的层次结构。desktop是这个层次结构中根(root)帧。从这个桌面(desktop)可以加载可视化组件、访问帧和组件、终止office、遍历框架的层次结构和调度命令请求。
这个服务的名字是在StarOffice5.x时提出的,在StarOffice5.x时,所有的文档窗体都嵌入到一个共同的被StarOffice桌面占用的应用窗体中。层次结构中的根帧被称为桌面帧。
桌面对象和帧对象使用辅助服务,例如com.sun.star.document.TypeDetection服务和其他与UNOoffice交互的不透明的实现,它们在OpenOffice.orgAPI中都不太容易理解。后者的例子是全局文档事件处理和它的用户接口(Tools>Customize>Events??),用分发API(dispatchAPI)的菜单栏本身就不是UNO服务。桌面服务和周围的对象一起叫做桌面环境。
有桌面管理的可视化的组件可以是三种不同的类型对象:成熟的带一个文档模型和控制器的office文档;有一个控制器但是没有模型的组件,例如目录和数据库浏览;没有API控制器的简单窗体,例如,预览窗体。这些组件类型的共同点是com.sun.star.lang.XComponent接口。带控制器的组件也调用office组件,而简单的窗口被称为常规(trivial)组件。
在OpenOffice.orgAPI中的帧在窗体、组件和桌面环境之间起着承上启下的作用。
和其他服务相似,com.sun.star.frame.Desktop服务可以被另一个扩展OpenOffice.org功能的实现交换。通过交换桌面服务器,可能使用不同类型的窗口或在使OpenOffice.org用MDI代替SDI。这不是一件容易做的事情,但是它可能不用改变任何其他OpenOffice.org的代码