00001 00005 00006 #ifndef _H_IMG_CanvasRGBA32 00007 #define _H_IMG_CanvasRGBA32 00008 00009 #include "IMG_PixmapRGBA32.h" 00010 #include "GEN_Shared.h" 00011 00012 class IMG_BrushRGBA32; 00013 class IMG_CanvasRGBA32Action; 00014 00015 00024 00025 class IMG_CanvasRGBA32 : public IMG_PixmapRGBA32, public GEN_Shared { 00026 public: 00034 IMG_CanvasRGBA32(TUns32 width, TUns32 height); 00035 00045 IMG_CanvasRGBA32(void* image, TUns32 width, TUns32 height, TUns32 rowBytes); 00046 00051 virtual void startStroke(); 00052 00062 virtual void drawStroke(TInt32 x1, TInt32 y1, TInt32 x2, TInt32 y2, const IMG_BrushRGBA32& brush); 00063 00073 virtual void drawStroke(float u1, float v1, float u2, float v2, const IMG_BrushRGBA32& brush); 00074 00080 virtual IMG_CanvasRGBA32Action* endStroke(); 00081 00082 protected: 00087 virtual IMG_CanvasRGBA32::~IMG_CanvasRGBA32(); 00088 00099 virtual void draw(TInt32 xStart, TInt32 yStart, TInt32 xEnd, TInt32 yEnd, const IMG_BrushRGBA32& brush, bool drawEndPoint = true); 00100 00101 IMG_PixmapRGBA32* m_undoPixmap; 00102 IMG_Rect m_undoRect; 00103 }; 00104 00105 00106 #endif // _H_IMG_CanvasRGBA32