cursor.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #ifndef __CURSOR_H
  2. #define __CURSOR_H
  3. #ifdef _WIN32 // PORT ME
  4. #include <bfc/dispatch.h>
  5. #include <api/syscb/callbacks/skincb.h>
  6. #include <bfc/string/bfcstring.h>
  7. #include <bfc/string/StringW.h>
  8. class Cursor : public Dispatchable
  9. {
  10. public:
  11. OSCURSORHANDLE getOSHandle();
  12. enum {
  13. CURSOR_GETOSHANDLE = 0,
  14. };
  15. };
  16. inline OSCURSORHANDLE Cursor::getOSHandle() {
  17. return _call(CURSOR_GETOSHANDLE, (OSCURSORHANDLE)NULL);
  18. }
  19. class CursorI : public Cursor {
  20. public:
  21. CursorI() {}
  22. virtual ~CursorI() {}
  23. virtual OSCURSORHANDLE getOSHandle()=0;
  24. protected:
  25. RECVS_DISPATCH;
  26. };
  27. #ifdef WASABI_COMPILE_SKIN
  28. class SkinCursor : public CursorI, public SkinCallbackI {
  29. public:
  30. SkinCursor();
  31. SkinCursor(const wchar_t *elementid);
  32. virtual ~SkinCursor();
  33. virtual void setCursorElementId(const wchar_t *id);
  34. virtual int skincb_onReset();
  35. virtual OSCURSORHANDLE getOSHandle();
  36. virtual void reset();
  37. private:
  38. StringW name;
  39. OSCURSORHANDLE cursor;
  40. };
  41. #endif
  42. #endif
  43. #endif