diff options
Diffstat (limited to 'include/cru/platform/native/cursor.hpp')
-rw-r--r-- | include/cru/platform/native/cursor.hpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/include/cru/platform/native/cursor.hpp b/include/cru/platform/native/cursor.hpp new file mode 100644 index 00000000..b0ff4494 --- /dev/null +++ b/include/cru/platform/native/cursor.hpp @@ -0,0 +1,37 @@ +#pragma once + +#include "../native_resource.hpp" + +#include <memory> + +namespace cru::platform::native { +class Cursor : public NativeResource { + public: + Cursor() = default; + + CRU_DELETE_COPY(Cursor) + CRU_DELETE_MOVE(Cursor) + + ~Cursor() override = default; +}; + +enum class SystemCursor { + Arrow, + Hand, +}; + +class CursorManager : public NativeResource { + public: + CursorManager() = default; + + CRU_DELETE_COPY(CursorManager) + CRU_DELETE_MOVE(CursorManager) + + ~CursorManager() override = default; + + public: + virtual std::shared_ptr<Cursor> GetSystemCursor(SystemCursor type) = 0; + + //TODO: Add method to create cursor. +}; +} // namespace cru::platform::native |