diff options
author | crupest <crupest@outlook.com> | 2019-12-12 23:26:04 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2019-12-12 23:26:04 +0800 |
commit | f2aa96fba0b72eeeadf5160ea5df2c8143ec8aa0 (patch) | |
tree | b045d35bb2cf7281ab69abbd51302c85ea9ec3ef /include/cru/win/native/cursor.hpp | |
parent | 02f46ada9ef85165759f5e58d665510077149ef3 (diff) | |
download | cru-f2aa96fba0b72eeeadf5160ea5df2c8143ec8aa0.tar.gz cru-f2aa96fba0b72eeeadf5160ea5df2c8143ec8aa0.tar.bz2 cru-f2aa96fba0b72eeeadf5160ea5df2c8143ec8aa0.zip |
...
Diffstat (limited to 'include/cru/win/native/cursor.hpp')
-rw-r--r-- | include/cru/win/native/cursor.hpp | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/include/cru/win/native/cursor.hpp b/include/cru/win/native/cursor.hpp index 3ef480ea..e5728b1c 100644 --- a/include/cru/win/native/cursor.hpp +++ b/include/cru/win/native/cursor.hpp @@ -1,32 +1,30 @@ #pragma once -#include <memory> -#include "../win_pre_config.hpp" +#include "resource.hpp" -#include "cru/common/base.hpp" #include "cru/platform/native/cursor.hpp" -#include "cru/win/native/platform_id.hpp" + +#include <memory> namespace cru::platform::native::win { -class WinCursor : public Cursor { +class WinCursor : public WinNativeResource, public virtual ICursor { public: - WinCursor(HCURSOR handle, bool auto_delete); + WinCursor(HCURSOR handle, bool auto_destroy); CRU_DELETE_COPY(WinCursor) CRU_DELETE_MOVE(WinCursor) ~WinCursor() override; - CRU_PLATFORMID_IMPLEMENT_WIN - public: HCURSOR GetHandle() const { return handle_; } private: HCURSOR handle_; - bool auto_delete_; + bool auto_destroy_; }; -class WinCursorManager : public CursorManager { +class WinCursorManager : public WinNativeResource, + public virtual ICursorManager { public: WinCursorManager(); @@ -35,13 +33,11 @@ class WinCursorManager : public CursorManager { ~WinCursorManager() override = default; - CRU_PLATFORMID_IMPLEMENT_WIN - public: - std::shared_ptr<WinCursor> GetSystemWinCursor(SystemCursor type); + std::shared_ptr<WinCursor> GetSystemWinCursor(SystemCursorType type); - std::shared_ptr<Cursor> GetSystemCursor(SystemCursor type) override { - return std::static_pointer_cast<Cursor>(GetSystemWinCursor(type)); + std::shared_ptr<ICursor> GetSystemCursor(SystemCursorType type) override { + return std::static_pointer_cast<ICursor>(GetSystemWinCursor(type)); } private: |