uiaccelerator_plat/alf_core_toolkit_api/inc/uiacceltk/HuiCanvasVisual.h
changeset 13 8f67d927ea57
parent 0 15bf7259bb7c
child 14 83d2d132aa58
--- a/uiaccelerator_plat/alf_core_toolkit_api/inc/uiacceltk/HuiCanvasVisual.h	Tue Feb 02 07:56:43 2010 +0200
+++ b/uiaccelerator_plat/alf_core_toolkit_api/inc/uiacceltk/HuiCanvasVisual.h	Fri Mar 19 09:43:21 2010 +0200
@@ -399,10 +399,13 @@
 
 public:    
     IMPORT_C void StoreRenderBufferL();
-    void DrawStoredVisualRenderBuffer() const;
-    void DrawStoredFullScreenRenderBuffer(CHuiGc& aGc) const;
+    void DrawStoredVisualRenderBuffer(TInt aCanvasDrawMode) const;
+    void DrawStoredFullScreenRenderBuffer(TInt aCanvasDrawMode, CHuiGc& aGc) const;
     IMPORT_C void FreeRenderBuffer();
-        
+
+protected:
+    virtual void VisualExtension(const TUid& aExtensionUid, TAny** aExtensionParams);
+
 private:
        
     THuiCanvasPaintedArea CanvasPaintedArea(TInt aIndex) const;
@@ -411,6 +414,15 @@
     void DrawCanvasChildren(CHuiGc& aGc, TInt aIncludeCanvasFlags, TInt aExcludeCanvasFlags) const;
     TBool ChildTreeChanged(TInt aExcludeCanvasFlags) const;
     
+    static TBool RecursiveChildTreeChanged(CHuiVisual* aVisual, TInt aExcludeCanvasFlags);
+    static TBool RecursiveIsExternalContentDrawingEnabled(CHuiVisual* aVisual);
+    static TBool RecursiveHasCommandBuffers(CHuiVisual* aVisual);
+    
+    void CollectPaintedRegion(TRegion& aRecursivePaintRegion, TInt aExcludeCanvasFlags) const;
+    void CollectRecursivePaintedRegion(TRegion& aRecursivePaintRegion, TInt aExcludeCanvasFlags) const;
+    
+    TBool CanSkipDrawing() const;
+
 private: 
 
     struct THuiCanvasVisualData;