随笔-341  评论-2670  文章-0  trackbacks-0
08 2009 档案
C++界面库:使用Graphic Element Template制作按钮模板      摘要: 这一次制作的按钮模板具有通过模板属性动态配置图形的功能。模板的属性一共有6个:x、y、w、h、state、content,其中state有normal、hot和press三个取值。XML、代码和截图如下:  阅读全文
posted @ 2009-08-20 05:38 陈梓瀚(vczh) 阅读(4339) | 评论 (7)  编辑
C++界面库:Graphic Element Template实现      摘要: 这篇文章描述的一个图形元素模板终于通过了冒烟测试。下面将展示模板的XML代码、调用模板的代码以及截图。  阅读全文
posted @ 2009-08-19 03:29 陈梓瀚(vczh) 阅读(3613) | 评论 (5)  编辑
C++界面库:为Graphic Element Template做了一个XML Schema      摘要: 我们知道制作控件的时候,其实最困难的不是定出那个支撑整个系统的架构,而是为各种空间写绘制的代码(囧)。为了解决这个问题,我在这套渲染库上设计了一种XML写成的模板,然后在模板内部提供一个简单的语言来进行简单但是强大的运算。这样的话,不仅可以省略很多代码,还为控件的换肤提供了强有力的支持。
  阅读全文
posted @ 2009-08-07 07:29 陈梓瀚(vczh) 阅读(3059) | 评论 (1)  编辑
C++界面库:在GDI上添加完全的alpha混合支持      摘要: 做完了小型WCF之后,就是小型的WPF了。之前那个完全避免用户大部分的错误使用导致的死锁的方案还有一点点的问题,所以先休息一下,做做别的。为了在C++上重现一套类似WPF的工具,首先要解决绘图部分。

绘图的设备当然是需要可切换的,于是用bridge模式定义了大量的接口,这些接口用来创建画笔、画刷、字体和图形,然后图形用树的形式组织起来,最后放到一块跟窗口链接的画板上面,有需要的时候自动绘制。为了最快速地开始工作,我实现了一个GDI的绘图设备,以后有空再做DirectX的。但是我们知道GDI对alpha的支持是很弱的,只有一个叫alphablend的API用来贴bitmap,因此为了让画刷和画笔都能够支持alpha渐变、alpha位图和alpha颜色,做了很多的工作。  阅读全文
posted @ 2009-08-02 02:41 陈梓瀚(vczh) 阅读(6499) | 评论 (3)  编辑