summaryrefslogtreecommitdiffstats
path: root/src/kernel/qpainter_x11.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <[email protected]>2012-11-18 23:46:56 -0600
committerTimothy Pearson <[email protected]>2012-11-18 23:46:56 -0600
commitb5d6591054de1d4f66280207023c43e9e191146c (patch)
treee9dd28d035aecbeac076c260c2a1fab9e6ba6b97 /src/kernel/qpainter_x11.cpp
parent13a971ccd957eb195fbc8237b0b16c28d9f56583 (diff)
downloadqt3-b5d6591054de1d4f66280207023c43e9e191146c.tar.gz
qt3-b5d6591054de1d4f66280207023c43e9e191146c.zip
Add flush command to external painter command set
Diffstat (limited to 'src/kernel/qpainter_x11.cpp')
-rw-r--r--src/kernel/qpainter_x11.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/kernel/qpainter_x11.cpp b/src/kernel/qpainter_x11.cpp
index c1e4e07..2aea6bc 100644
--- a/src/kernel/qpainter_x11.cpp
+++ b/src/kernel/qpainter_x11.cpp
@@ -1264,8 +1264,16 @@ bool QPainter::end() // end painting
\sa flush() CoordinateMode
*/
-void QPainter::flush(const QRegion &, CoordinateMode)
+void QPainter::flush(const QRegion &rgn, CoordinateMode m)
{
+ if ( testf(ExtDev) ) {
+ QPDevCmdParam param[2];
+ param[0].rgn = &rgn;
+ param[1].ival = m;
+ pdev->cmd( QPaintDevice::PdcFlushRegion, this, param );
+ return;
+ }
+
flush();
}
@@ -1278,6 +1286,11 @@ void QPainter::flush(const QRegion &, CoordinateMode)
void QPainter::flush()
{
+ if ( testf(ExtDev) ) {
+ pdev->cmd( QPaintDevice::PdcFlush, this, 0 );
+ return;
+ }
+
if ( isActive() && dpy )
XFlush( dpy );
}