1 /*! 2 @file 3 @author George Evmenov 4 @date 02/2011 5 */ 6 #ifndef WINDOW_DELEGATE_H_ 7 #define WINDOW_DELEGATE_H_ 8 9 #include "MyGUI_Prerequest.h" 10 #include <string> 11 #include "Buffer.h" 12 #include <berkelium/WindowDelegate.hpp> 13 14 namespace MyGUI 15 { 16 17 class BerkeliumWidget; 18 19 class MYGUI_EXPORT_DLL BerkeliumDelegate : 20 public Berkelium::WindowDelegate 21 { 22 public: 23 BerkeliumDelegate(); 24 25 void setWindow(Berkelium::Window* _window); 26 void setBuffer(helpers::Buffer* _buffer); 27 void setWidget(MyGUI::BerkeliumWidget* _widget); 28 29 protected: 30 virtual void onPaint( 31 Berkelium::Window *win, 32 const unsigned char *sourceBuffer, 33 const Berkelium::Rect &sourceBufferRect, 34 size_t numCopyRects, 35 const Berkelium::Rect *copyRects, 36 int dx, int dy, 37 const Berkelium::Rect &scrollRect); 38 39 virtual void onCursorUpdated(Berkelium::Window *win, const Berkelium::Cursor& newCursor); 40 41 private: 42 Berkelium::Window* mWindow; 43 helpers::Buffer* mBuffer; 44 MyGUI::BerkeliumWidget* mWidget; 45 }; 46 47 } // namespace MyGUI 48 49 #endif // WINDOW_DELEGATE_H_ 50