summaryrefslogtreecommitdiff
path: root/slideshow/source/inc/screenupdater.hxx
diff options
context:
space:
mode:
authorChristian Lippka <christian.lippka@sun.com>2010-01-04 15:43:22 +0100
committerChristian Lippka <christian.lippka@sun.com>2010-01-04 15:43:22 +0100
commitb71823a291b10fe67cd96b81bce3fb0d91dcb893 (patch)
tree756017bd26f549770d70b47488b4fe11aaff1504 /slideshow/source/inc/screenupdater.hxx
parentdada72080460ab3a1bf4228a38454339b1d5f204 (diff)
parenteb86211c1db0bb492669e7ac8302b89254ed4793 (diff)
merge to m68
Diffstat (limited to 'slideshow/source/inc/screenupdater.hxx')
-rw-r--r--slideshow/source/inc/screenupdater.hxx21
1 files changed, 21 insertions, 0 deletions
diff --git a/slideshow/source/inc/screenupdater.hxx b/slideshow/source/inc/screenupdater.hxx
index 07837d6bfc4c..33d6c5d7263f 100644
--- a/slideshow/source/inc/screenupdater.hxx
+++ b/slideshow/source/inc/screenupdater.hxx
@@ -111,9 +111,30 @@ namespace slideshow
*/
void requestImmediateUpdate();
+ class UpdateLock {public: virtual void Activate (void) = 0; };
+
+ /** Call this method to create a lock instead of calling
+ lockUpdates() and unlockUpdates() directly.
+ @param bStartLocked
+ When <TRUE/> then the UpdateLock is created already
+ locked. When <FALSE/> then Activate() has to be called in order
+ to lock the lock.
+ */
+ ::boost::shared_ptr<UpdateLock> createLock (const bool bStartLocked);
+
+ /** Lock updates to prevent intermediate repaints.
+ */
+ void lockUpdates (void);
+
+ /** When called as often as lockUpdates() then commitUpdates()
+ is called.
+ */
+ void unlockUpdates (void);
+
private:
struct ImplScreenUpdater;
boost::scoped_ptr<ImplScreenUpdater> mpImpl;
+
};
}
}