YSTest: InputManager.h 源文件

YSTest PreAlpha_b900_20201012 The YSLib Test Project

InputManager.h
浏览该文件的文档.
1 /*
2 © 2012-2016 FrankHB.
3
4 This file is part of the YSLib project, and may only be used,
5 modified, and distributed under the terms of the YSLib project
6 license, LICENSE.TXT. By continuing to use, modify, or distribute
7 this file you indicate that you have read the license and
8 understand and accept it fully.
9 */
10
28 #ifndef INC_Helper_InputManager_h_
29 #define INC_Helper_InputManager_h_ 1
30
31 #include "YModules.h"
32 #include YFM_Helper_YGlobal
33 #include YFM_YSLib_UI_YGUI
34
35 namespace YSLib
36 {
37
38 namespace Devices
39 {
40
45 class YF_API InputManager : private noncopyable
46 {
47 private:
52 lref<UI::GUIState> GUI_state;
57 Drawing::Point cursor_state;
62 lref<GUIHost> host;
63
64 #if YCL_Win32
65
69 observer_ptr<UI::IWidget> p_text_focus_cache = {};
74 Drawing::Point caret_location_cache{Drawing::Point::Invalid};
75 #endif
76
77 public:
82 InputManager();
83
91 void
92 DispatchInput(UI::IWidget&);
93
100 observer_ptr<UI::IWidget>
101 Update();
102 };
103
104 } // namespace Devices;
105
106 } // namespace YSLib;
107
108 #endif
109
YSLib::Devices::InputManager
输入管理器。
Definition: InputManager.h:46
ystdex::lref
左值引用包装。
Definition: ref.hpp:61
YSLib::Drawing::GBinaryGroup< SPos >::Invalid
static const GBinaryGroup Invalid
无效（不在屏幕坐标系中）对象。
Definition: YGDIBase.h:298
YF_API
#define YF_API
Definition: Platform.h:56
YSLib::Devices::InputManager::host
lref< GUIHost > host
GUI 宿主。
Definition: InputManager.h:62
YSLib::Drawing::GBinaryGroup< SPos >
YSLib
YSLib 命名空间。
Definition: AndroidHost.h:46
YModules.h
YSLib 用户界面模块配置文件。
YSLib::Devices::InputManager::GUI_state
lref< UI::GUIState > GUI_state
GUI 状态。
Definition: InputManager.h:52
ystdex::bases::noncopyable
不可复制对象：禁止派生类调用默认原型的复制构造函数和复制赋值操作符。
Definition: base.h:50
YSLib::Devices::InputManager::cursor_state
Drawing::Point cursor_state
指针设备光标位置。
Definition: InputManager.h:57