draw2d设计内幕之一:LightweightSystem设计和实现剖析
作者:余学锋 编辑:javamxj 发布:javamxj 源站点:
分享Java快乐
这篇文章假设读者在浏览本章之前,已经对LightweightSystem有了一定的了解,基本上应该要明白LightweightSystem究竟是个什么?在
分享Java快乐 的
Draw2d专栏 中有关于LightweightSystem介绍的文章。在本文章中,提供了一个dxf文件解析器和dxf浏览器。dxf浏览器就是利用draw2d编写的。本文章力图言简意赅的解释与LightweightSystem相关的设计和实现,所以对一些基本的技术名词和术语并没有或没有详细的解释。
1. LightweightSystem设计和实现
1.1 LightweightSystem设计
LightWeightSystem设计图
设计图表明,一个LightweightSystem由四个不可缺少的部分组成:画布控件、图形元素更新管理器、事件分发器、根图形元素。内容是需要在画布上显示的与应用相关的图新元素,并不要求LightweightSystem一定就要拥有内容图形元素;对LightweightSystem而言,内容图形元素可有可无,但如果内容图形元素为空,那么LightweightSystem就什么也不显示。向LightweightSystem设置内容的动作,实际上就是将内容图形元素作为孩子增加到根图形元素中,并且在LightweightSystem中记录下对内容图形元素的直接引用(由变量contents引用)。