2017-09-10 23:56:52 +08:00
|
|
|
|
#include "..\easy2d.h"
|
|
|
|
|
|
#include "..\EasyX\easyx.h"
|
|
|
|
|
|
|
|
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
static MouseMsg s_mouseMsg = MouseMsg();
|
|
|
|
|
|
|
|
|
|
|
|
// <20><> EasyX <20><> MOUSEMSG ת<><D7AA>Ϊ MouseMsg
|
|
|
|
|
|
static void ConvertMsg(MOUSEMSG msg);
|
|
|
|
|
|
|
|
|
|
|
|
void easy2d::MouseMsg::__exec()
|
|
|
|
|
|
{
|
|
|
|
|
|
// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
while (MouseHit())
|
|
|
|
|
|
{
|
|
|
|
|
|
// ת<><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
ConvertMsg(GetMouseMsg());
|
|
|
|
|
|
// ִ<>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
2017-09-12 12:53:34 +08:00
|
|
|
|
App::get()->getCurrentScene()->_exec();
|
2017-09-10 23:56:52 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
MouseMsg MouseMsg::getMsg()
|
|
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg; // <20><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isLButtonDown()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.mkLButton;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isRButtonDown()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.mkRButton;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isMButtonDown()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.mkMButton;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int MouseMsg::getMouseX()
|
|
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.x;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int MouseMsg::getMouseY()
|
|
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.y;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int MouseMsg::getMouseWheel()
|
|
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.wheel;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnMouseMoved()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_MOUSEMOVE;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnLButtonDBClicked()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_LBUTTONDBLCLK;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnLButtonDown()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_LBUTTONDOWN;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnLButtonUp()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_LBUTTONUP;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnRButtonDBClicked()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_RBUTTONDBLCLK;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnRButtonDown()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_RBUTTONDOWN;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnRButtonUp()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_LBUTTONUP;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnMButtonDBClicked()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_MBUTTONDBLCLK;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnMButtonDown()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_MBUTTONDOWN;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnMButtonUp()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_MBUTTONUP;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2017-09-12 12:53:34 +08:00
|
|
|
|
bool MouseMsg::isOnWheel()
|
2017-09-10 23:56:52 +08:00
|
|
|
|
{
|
|
|
|
|
|
return s_mouseMsg.uMsg == WM_MOUSEWHEEL;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void MouseMsg::resetMouseMsg()
|
|
|
|
|
|
{
|
|
|
|
|
|
s_mouseMsg.uMsg = 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void ConvertMsg(MOUSEMSG msg)
|
|
|
|
|
|
{
|
|
|
|
|
|
// <20><> MOUSEMSG ת<><D7AA>Ϊ MouseMsg
|
|
|
|
|
|
/// <20><>Ȼ MOUSEMSG <20><> MouseMsg <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>
|
2017-09-12 12:53:34 +08:00
|
|
|
|
/// <20><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>ʵ<EFBFBD><CAB5> Easy2D <20><> EasyX <20>ķ<EFBFBD><C4B7>룬<EFBFBD><EBA3AC><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD> MouseMsg
|
2017-09-10 23:56:52 +08:00
|
|
|
|
s_mouseMsg.uMsg = msg.uMsg;
|
|
|
|
|
|
s_mouseMsg.mkLButton = msg.mkLButton;
|
|
|
|
|
|
s_mouseMsg.mkMButton = msg.mkMButton;
|
|
|
|
|
|
s_mouseMsg.mkRButton = msg.mkRButton;
|
|
|
|
|
|
s_mouseMsg.wheel = msg.wheel;
|
|
|
|
|
|
s_mouseMsg.x = msg.x;
|
|
|
|
|
|
s_mouseMsg.y = msg.y;
|
|
|
|
|
|
}
|