MVC 模式真强
原先的程序画图时只有一种连接线,昨晚开始尝试添加另外的线类型,不过一直尝试没有成功,后来还是去那个日本人的网站,下载了例子来研究。恍然大悟。原来我之前的程序是直接在 EditPolicy 和 Command 里面访问那单独的一种链接线,所有后来想新添加一种线的时候百思不得其解怎么再添加一个 EditPolicy 和 Command,其实正确的方法是应该把所有的连接线都作为一个抽象连接线父类的子类,然后在 EditPlocy 和 Command 只访问这个抽象的父类。这样一来,随便你添加多少种连接线,都和 EditPolicy 及 Command 无关,增加新的线将会十分方便。我也是第一次体会到了 MVC 的好处。同理应该也适用于图形,不过还没有尝试。
现在我接触到的仍是 CanvasViewer,还没有接触 TreeViewer,希望一切顺利。同时还有和底层数据连接的工作待做。
说心里话,那个日本人的网站真是学习 GEF 的绝佳站点,要是有哪个好心人翻译成英文就好了。那个作者水平很高,也坚持在写这个 GEF 学习系列,可是如果他用英文写改多好啊,不知道会帮助多少人;)