187 lines
2.8 KiB
C++
187 lines
2.8 KiB
C++
#ifndef _COMMON_WINMSG_HPP_
|
|
#define _COMMON_WINMSG_HPP_
|
|
#ifndef _COMMON_WINDOWS_HPP_
|
|
#include <common/windows.hpp>
|
|
#endif
|
|
#ifndef _COMMON_POINT_HPP_
|
|
#include <common/point.hpp>
|
|
#endif
|
|
|
|
class WinMsg : private MSG
|
|
{
|
|
public:
|
|
WinMsg(void);
|
|
WinMsg(const WinMsg &someWinMsg);
|
|
WinMsg(const MSG &someMSG);
|
|
~WinMsg();
|
|
WinMsg &operator=(const WinMsg &someWinMsg);
|
|
WinMsg &operator=(const MSG &someMSG);
|
|
WORD operator==(const WinMsg &someWinMsg)const;
|
|
operator MSG&(void);
|
|
HWND hwnd(void)const;
|
|
void hwnd(HWND hwnd);
|
|
UINT message(void)const;
|
|
void message(UINT message);
|
|
WPARAM wParam(void)const;
|
|
void wParam(WPARAM wParam);
|
|
LPARAM lParam(void)const;
|
|
void lParam(LPARAM lParam);
|
|
DWORD time(void)const;
|
|
void time(DWORD time);
|
|
Point point(void)const;
|
|
void point(const Point &somePoint);
|
|
private:
|
|
void zeroInit(void);
|
|
};
|
|
|
|
inline
|
|
WinMsg::WinMsg(void)
|
|
{
|
|
zeroInit();
|
|
}
|
|
|
|
inline
|
|
WinMsg::WinMsg(const WinMsg &someWinMsg)
|
|
{
|
|
*this=someWinMsg;
|
|
}
|
|
|
|
inline
|
|
WinMsg::WinMsg(const MSG &someMSG)
|
|
{
|
|
*this=someMSG;
|
|
}
|
|
|
|
inline
|
|
WinMsg::~WinMsg()
|
|
{
|
|
}
|
|
|
|
inline
|
|
WinMsg &WinMsg::operator=(const WinMsg &someWinMsg)
|
|
{
|
|
hwnd(someWinMsg.hwnd());
|
|
message(someWinMsg.message());
|
|
wParam(someWinMsg.wParam());
|
|
lParam(someWinMsg.lParam());
|
|
time(someWinMsg.time());
|
|
point(someWinMsg.point());
|
|
return *this;
|
|
}
|
|
|
|
inline
|
|
WinMsg &WinMsg::operator=(const MSG &someMSG)
|
|
{
|
|
hwnd(someMSG.hwnd);
|
|
message(someMSG.message);
|
|
wParam(someMSG.wParam);
|
|
lParam(someMSG.lParam);
|
|
time(someMSG.time);
|
|
point(Point(someMSG.pt.x,someMSG.pt.y));
|
|
return *this;
|
|
|
|
}
|
|
|
|
inline
|
|
WORD WinMsg::operator==(const WinMsg &someWinMsg)const
|
|
{
|
|
return (hwnd()==someWinMsg.hwnd()&&
|
|
message()==someWinMsg.message()&&
|
|
wParam()==someWinMsg.wParam()&&
|
|
lParam()==someWinMsg.lParam()&&
|
|
time()==someWinMsg.time()&&
|
|
point()==someWinMsg.point());
|
|
}
|
|
|
|
inline
|
|
WinMsg::operator MSG&(void)
|
|
{
|
|
return *this;
|
|
}
|
|
|
|
inline
|
|
HWND WinMsg::hwnd(void)const
|
|
{
|
|
return MSG::hwnd;
|
|
}
|
|
|
|
inline
|
|
void WinMsg::hwnd(HWND hwnd)
|
|
{
|
|
MSG::hwnd=hwnd;
|
|
}
|
|
|
|
inline
|
|
UINT WinMsg::message(void)const
|
|
{
|
|
return MSG::message;
|
|
}
|
|
|
|
inline
|
|
void WinMsg::message(UINT message)
|
|
{
|
|
MSG::message=message;
|
|
}
|
|
|
|
inline
|
|
WPARAM WinMsg::wParam(void)const
|
|
{
|
|
return MSG::wParam;
|
|
}
|
|
|
|
inline
|
|
void WinMsg::wParam(WPARAM wParam)
|
|
{
|
|
MSG::wParam=wParam;
|
|
}
|
|
|
|
inline
|
|
LPARAM WinMsg::lParam(void)const
|
|
{
|
|
return MSG::lParam;
|
|
}
|
|
|
|
inline
|
|
void WinMsg::lParam(LPARAM lParam)
|
|
{
|
|
MSG::lParam=lParam;
|
|
}
|
|
|
|
inline
|
|
DWORD WinMsg::time(void)const
|
|
{
|
|
return MSG::time;
|
|
}
|
|
|
|
inline
|
|
void WinMsg::time(DWORD time)
|
|
{
|
|
MSG::time=time;
|
|
}
|
|
|
|
inline
|
|
Point WinMsg::point(void)const
|
|
{
|
|
return Point(MSG::pt.x,MSG::pt.y);
|
|
}
|
|
|
|
inline
|
|
void WinMsg::point(const Point &somePoint)
|
|
{
|
|
MSG::pt.x=somePoint.x();
|
|
MSG::pt.y=somePoint.y();
|
|
}
|
|
|
|
inline
|
|
void WinMsg::zeroInit(void)
|
|
{
|
|
MSG::hwnd=0;
|
|
MSG::message=0;
|
|
MSG::wParam=0;
|
|
MSG::lParam=0;
|
|
MSG::time=0;
|
|
MSG::pt.x=0;
|
|
MSG::pt.y=0;
|
|
}
|
|
#endif
|