本文整理汇总了C++中KstPainter::flush方法的典型用法代码示例。如果您正苦于以下问题:C++ KstPainter::flush方法的具体用法?C++ KstPainter::flush怎么用?C++ KstPainter::flush使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KstPainter
的用法示例。
在下文中一共展示了KstPainter::flush方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: clipRegion
QRegion KstViewPicture::clipRegion() {
if (_clipMask.isNull()) {
_myClipMask = QRegion();
QBitmap bm1(_geom.bottomRight().x() + 1, _geom.bottomRight().y() + 1, true);
if (!bm1.isNull()) {
KstPainter p;
p.setMakingMask(true);
p.begin(&bm1);
p.setViewXForm(true);
KstBorderedViewObject::paintSelf(p, QRegion());
p.flush();
p.end();
_clipMask = QRegion(bm1);
}
QBitmap bm2(_geom.bottomRight().x() + 1, _geom.bottomRight().y() + 1, true);
if (!bm2.isNull()) {
KstPainter p;
p.setMakingMask(true);
p.begin(&bm2);
p.setViewXForm(true);
paintSelf(p, QRegion());
p.flush();
p.end();
_myClipMask = QRegion(bm2);
}
}
return _myClipMask | _clipMask;
}
示例2: clipRegion
QRegion KstViewLabel::clipRegion() {
if (_clipMask.isNull()) {
if (_transparent) {
const QRect cr(contentsRect());
// slow but preserves antialiasing...
QBitmap bm = _backBuffer.buffer().createHeuristicMask(false);
_clipMask = QRegion(bm);
_clipMask.translate(cr.topLeft().x(), cr.topLeft().y());
QBitmap bm1(_geom.bottomRight().x() + 1, _geom.bottomRight().y() + 1, true);
if (!bm1.isNull()) {
KstPainter p;
p.setMakingMask(true);
p.begin(&bm1);
p.setViewXForm(true);
KstBorderedViewObject::paintSelf(p, QRegion());
paint(p, QRegion());
p.flush();
p.end();
_clipMask |= QRegion(bm1);
}
} else {
_clipMask = KstBorderedViewObject::clipRegion();
}
}
return _clipMask;
}