Mercurial > MadButterfly
view orgfiles/auto_update.muse @ 1253:07e0cb1e051d
Add class consistency_checker for domview_ui.
- consistency_checker is to check consistency of the DOM-tree
associated with a domview_ui.
- It is so closed to domview_ui, so it may access private
variables.
- But, it uses public interface of domview_ui if possible.
- consistency_checker is not integrated to domview_ui for separating
functions of consistency checking from the domview_ui. It collects
relative logic into a place and setups a boundary from others.
author | Thinker K.F. Li <thinker@codemud.net> |
---|---|
date | Tue, 11 Jan 2011 11:43:32 +0800 |
parents | 79e9edf4c00a |
children |
line wrap: on
line source
When an object change it's size, position, or components inside it, other objects overlaid with the object in old or new positions should be re-drawed. The place that the object is resident in old or new position should be cleared before re-drawing. We need a system to determine and track effected by the change of an object. The graphics are grouped into groups in tree-hierachy. One group can be part of another group. When a group's transformation matrix is chagned, all child groups should be affected. All it's members should also be re-drawed. All members of a group been changed are linked into update list in their order. The one more close to tree root is more earier in the list. Transformations can only apply to groups. A tree of coord_t is maintained to model relationships of groups. Coord_t is coordination, a transfromation from user space to upper level's space or devcie space. coord_t must know graphics in respective group. Once transformation matrix of a coord_t object changed, it can ask members to re-drawed them-self. Changes of the transformation of a coord_t should be propagated to child coord_t objects/groups.