backbufferwnd.h 990 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #ifndef __BBWND_H
  2. #define __BBWND_H
  3. #include <api/wnd/wndclass/abstractwndhold.h>
  4. #ifdef WASABI_COMPILE_SKIN
  5. #define BBWND_PARENT AbstractWndHolder
  6. #else
  7. #define BBWND_PARENT ServiceWndHolder
  8. #endif
  9. /**
  10. class BackBufferWnd
  11. @short
  12. @author Nullsoft
  13. @ver 1.0
  14. @see
  15. */
  16. class BackBufferWnd : public BBWND_PARENT {
  17. public:
  18. BackBufferWnd();
  19. virtual ~BackBufferWnd();
  20. virtual int onPaint(Canvas *c);
  21. /**
  22. BackBufferWnd method wantBackBuffer .
  23. @ret 0
  24. @param None
  25. */
  26. virtual int wantBackBuffer() { return 0; }
  27. virtual BltCanvas *getBackBuffer();
  28. virtual int onSiblingInvalidateRgn(api_region *r, ifc_window *who, int who_idx, int my_idx);
  29. /**
  30. BackBufferWnd method wantSiblingInvalidations .
  31. @ret 0
  32. @param None
  33. */
  34. virtual int wantSiblingInvalidations() { return wantBackBuffer(); }
  35. private:
  36. int backbuffer;
  37. BltCanvas *back_buffer;
  38. int canvas_w, canvas_h;
  39. };
  40. #endif