1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- #pragma once
- #include "ManipulationEventSink.h"
- namespace ManipulationHelper
- {
- /// <summary>
- /// 操作帮助器,用来直接面相用户的接口.封装了对ManipulationEventSink(_IManipulationEvents)和IManipulationProcessor的操作;
- /// </summary>
- class ManipulationHelper
- {
- public:
- /// <summary>
- /// 构造函数
- /// </summary>
- /// <param name="">帮助器绑定的控件的窗口句柄</param>
- ManipulationHelper(HWND);
- ~ManipulationHelper();
- /// <summary>
- /// 封装的IManipulationProcessor的ProcessDown方法;实现用户把Touch消息(TouchDown)的相关内容放入Processor里面;
- /// </summary>
- /// <param name="manipulatorId">Touch消息对应的操作ID</param>
- /// <param name="x">Touch消息触点的X坐标(屏幕坐标系)</param>
- /// <param name="y">Touch消息触点的Y坐标(屏幕坐标系)</param>
- /// <returns></returns>
- int ProcessDown(MANIPULATOR_ID manipulatorId, FLOAT x, FLOAT y);
- //封装的IManipulationProcessor的ProcessMove方法;实现用户把Touch消息(TouchMove)的相关内容放入Processor里面;
- int ProcessMove(MANIPULATOR_ID manipulatorId, FLOAT x, FLOAT y);
- //封装的IManipulationProcessor的ProcessUp方法;实现用户把Touch消息(TouchUp)的相关内容放入Processor里面;
- int ProcessUp(MANIPULATOR_ID manipulatorId, FLOAT x, FLOAT y);
- /// <summary>
- /// 设置_IManipulationEvents的ManipulationStarted接口回调函数(委托)
- /// </summary>
- /// <param name="">回调函数指针</param>
- void SetManipulationStartedCallBack(ManipulationStartedCallBack);
- // 设置_IManipulationEvents的ManipulationDelta接口回调函数(委托)
- void SetManipulationDeltaCallBack(ManipulationDeltaCallBack);
- // 设置_IManipulationEvents的ManipulationCompleted接口回调函数(委托)
- void SetManipulationCompletedCallBack(ManipulationCompletedCallBack);
- //是否初始化Ok的标志;主要用作表示构造函数是否初始化完整;
- BOOL InitOkFlag = false;
- private:
- //初始化各主要成员的实例
- BOOL InitInstance();
- //实现_IManipulationEvents接口的成员;用来处理IManipulationProcessor生成的触摸操作事件;
- ManipulationEventSink* m_pManipulationEventSink = NULL;
- //Com组件的IManipulationProcessor实例成员;
- IManipulationProcessor* m_pIManipProc = NULL;
-
- //帮助器绑定的控件的窗口句柄
- HWND m_wndHandle = NULL;
- };
- }
|