本文整理汇总了C++中Painter::setBlendMode方法的典型用法代码示例。如果您正苦于以下问题:C++ Painter::setBlendMode方法的具体用法?C++ Painter::setBlendMode怎么用?C++ Painter::setBlendMode使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Painter
的用法示例。
在下文中一共展示了Painter::setBlendMode方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: draw
void CustomStyle::draw(Painter& p, Button*, Element /*e*/, const WidgetState &st, const Rect &r, const Extra&) const {
p.setBlendMode( Tempest::alphaBlend );
p.translate(r.x,r.y);
const Button::Type buttonType=st.button;
const bool drawBackFrame = (buttonType!=Button::T_ToolButton || st.highlighted) &&
buttonType!=Button::T_FlatButton;
if( drawBackFrame ) {
auto c = p.color();
if( st.pressed )
p.setColor(second[Dark]); else
if( st.highlighted )
p.setColor(second[Dark]); else
p.setColor(second[Normal]);
p.drawRect(0,0,r.w,r.h);
p.setColor(c);
}
if( drawBackFrame ) {
p.setColor(border);
p.unsetTexture();
p.drawLine(0,0, r.w-1,0 );
p.drawLine(0,r.h-1,r.w-1,r.h-1);
p.drawLine(0, 0, 0,r.h-1);
p.drawLine(r.w-1, 0,r.w-1,r.h );
}
p.translate(r.x,r.y);
}