-
Notifications
You must be signed in to change notification settings - Fork 5
Grid 配置
花生PeA edited this page Feb 23, 2019
·
2 revisions
Grid 独立于 drawInfo,在扩展和逻辑 Component 之间使用,其功能比较广,主要有:
- 控制扩展和逻辑 Component 的某些(默认)行为,比如在 timeline.apply() 中设置 Canvas 的宽度,在 ConflictFixer 中控制 EvnetAxis 单次移动的大小
- 参与计算叶子 Component 的 drawInfo,比如
grid.axisWidth
直接为成了axisBody.width
Grid 不存在与叶子 Component 中。若叶子 Component 想要使用 Grid 中的信息,应该使用 drawInfo,由父节点将 Gird 赋值到叶子节点的 drawInfo 中。
设计 Grid 的目的主要有:
- 可以快速的改变 Short Night 的某些行为
- 为一套主题下衍生出多套主题提供可能。比如一个主题可以通过改变 Grid 中的信息,来改变这个主题的配色、绘制出图片的大小等
对于叶子 Component 来说,drawInfo 代表了这个 Component 的全部信息,而对于逻辑 Component,Grid + drawInfo 才能代表一个逻辑 Component 的全部信息。