summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@collabora.com>2015-05-19 15:54:34 +0200
committerJan Holesovsky <kendy@collabora.com>2015-05-19 15:58:36 +0200
commit5094075fb1544ad29c2505f86862774c32500545 (patch)
tree0fde60760ce343f657e0792c529fe395422cf8f6 /include
parent94a76b9fa7f7dcf698da2cc27255e1dd461aa53a (diff)
rendercontext: Double-buffer an entire hierarchy.
This finally allows real double-buffering. Also with the per-widget setting, no need to be experimental any more. Change-Id: I405b3b2ce084cb8176b761e7113d3c3c87a6febf
Diffstat (limited to 'include')
-rw-r--r--include/vcl/window.hxx12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx
index c86ecb8d7daa..d975ff872fad 100644
--- a/include/vcl/window.hxx
+++ b/include/vcl/window.hxx
@@ -609,7 +609,17 @@ private:
SAL_DLLPRIVATE void ImplCalcOverlapRegion( const Rectangle& rSourceRect, vcl::Region& rRegion,
bool bChildren, bool bParent, bool bSiblings );
- SAL_DLLPRIVATE void ImplCallPaint( const vcl::Region* pRegion, sal_uInt16 nPaintFlags );
+ /** Invoke the actual painting.
+
+ This function is kind of recursive - it may be called from the
+ PaintHelper destructor; and on the other hand it creates PaintHelper
+ that (when destructed) calls other ImplCallPaint()'s.
+
+ @param rBuffer VirtualDevice for double-buffering. It is only passed
+ here, the actual handling happens in the PaintHelper.
+ */
+ SAL_DLLPRIVATE void ImplCallPaint(const VclPtr<VirtualDevice>& rBuffer, const vcl::Region* pRegion, sal_uInt16 nPaintFlags);
+
SAL_DLLPRIVATE void ImplCallOverlapPaint();
SAL_DLLPRIVATE void ImplPostPaint();