我最终还是给GacUI专门申请了一个codeplex的项目主页:
http://gac.codeplex.com。Vczh Library++ 3.0上面上传的代码大多是实验产品,相比把GacUI也放在上面发布不太合适,所以开了一个新项目。新的项目使用MS-PL协议。MS-PL的协议跟BSD、MIT和Apache等协议几乎是一样的,除了“他人不得用MS-PL协议的代码申请专利”。这是一个避免纠纷的好方法。
GacUI现在还没全部完成。目前正在制作文档和教程。文档应该要么是html要么是pdf,教程会跟文档合并到一起去。GacUI大体上还是能用,不过目前处于alpha状态。
已经完成的功能有:
1、GDI和Direct2D渲染器
2、皮肤系统
3、各种基于MVVM模式设计的控件
4、可切换的窗口系统。我目前只提供了一个用Windows窗口做窗口骨架的provider,如果你们高兴的话也可以去写一个虚拟的,然后就可以选择Direct2D渲染器,最后合并到游戏里面。
还没完成的功能有:
1、按键操作。目前只有文本框接受按键,列表和菜单什么的还没有,快捷键功能也还没有。
2、基本对话框的支持。这个我应该不会自己做,而是使用API提供的打开保存文件对话框什么的。
3、更加高级的控件,譬如Ribbon、VisualStudio那样子的Docking等等。
4、其它。
在这次完成基本的文档和教程之后,将会继续开发GacUI剩余的部分。
之前的实验,让我最终采用代码方式来发布GacUI,并且用抓取PDB地方法,结合Visual C++提供的XML注释来生成文档的reference部分。GacUI虽然文件上百,不过我已经写了一个代码生成器,将他们合并成了3个h文件和2个cpp:Vczh Library++3.0的公共部分一个cpp;GacUI的部分一个cpp。这有利于我将来继续提供脚本引擎或者其他东西,可以共享代码一起编译。现在使用GacUI,只需要将这5个文件添加进工程就好了。而且cpp只有两个,所以如果项目使用预编译头(precompiled header)的话,给这两个cpp分别加上#include "stdafx.h"也将十分简单。
posted on 2012-03-24 02:31
陈梓瀚(vczh) 阅读(4329)
评论(7) 编辑 收藏 引用 所属分类:
GacUI