鼠标坐标改用Vector2i传递
This commit is contained in:
@@ -57,12 +57,12 @@ namespace hgl::io
|
|||||||
|
|
||||||
virtual EventProcResult OnEvent (const EventHeader &header,const uint64 data) override;
|
virtual EventProcResult OnEvent (const EventHeader &header,const uint64 data) override;
|
||||||
|
|
||||||
virtual bool OnMove (int,int){return false;}
|
virtual bool OnMove (const Vector2i &){return false;}
|
||||||
virtual bool OnWheel (int,int){return false;}
|
virtual bool OnWheel (const Vector2i &){return false;}
|
||||||
|
|
||||||
virtual bool OnPressed (int,int,MouseButton){return false;}
|
virtual bool OnPressed (const Vector2i &,MouseButton){return false;}
|
||||||
virtual bool OnReleased (int,int,MouseButton){return false;}
|
virtual bool OnReleased (const Vector2i &,MouseButton){return false;}
|
||||||
virtual bool OnDblClicked(int,int,MouseButton){return false;}
|
virtual bool OnDblClicked(const Vector2i &,MouseButton){return false;}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 某按键是否按下
|
* 某按键是否按下
|
||||||
|
@@ -8,23 +8,23 @@ namespace hgl::io
|
|||||||
{
|
{
|
||||||
med=(MouseEventData *)&data;
|
med=(MouseEventData *)&data;
|
||||||
|
|
||||||
|
position.x=med->x;
|
||||||
|
position.y=med->y;
|
||||||
|
|
||||||
if(MouseEventID(header.id)==MouseEventID::Wheel)
|
if(MouseEventID(header.id)==MouseEventID::Wheel)
|
||||||
{
|
{
|
||||||
if(OnWheel (med->x,med->y) )return EventProcResult::Break;
|
if(OnWheel (position) )return EventProcResult::Break;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
position.x=med->x;
|
|
||||||
position.y=med->y;
|
|
||||||
|
|
||||||
switch(MouseEventID(header.id))
|
switch(MouseEventID(header.id))
|
||||||
{
|
{
|
||||||
case MouseEventID::Move: if(OnMove (med->x,med->y) )return EventProcResult::Break;break;
|
case MouseEventID::Move: if(OnMove (position) )return EventProcResult::Break;break;
|
||||||
case MouseEventID::Pressed: pressed_statues[med->button]=true;
|
case MouseEventID::Pressed: pressed_statues[med->button]=true;
|
||||||
if(OnPressed (med->x,med->y,MouseButton(med->button)))return EventProcResult::Break;break;
|
if(OnPressed (position,MouseButton(med->button)))return EventProcResult::Break;break;
|
||||||
case MouseEventID::Released: pressed_statues[med->button]=false;
|
case MouseEventID::Released: pressed_statues[med->button]=false;
|
||||||
if(OnReleased (med->x,med->y,MouseButton(med->button)))return EventProcResult::Break;break;
|
if(OnReleased (position,MouseButton(med->button)))return EventProcResult::Break;break;
|
||||||
case MouseEventID::DblClicked: if(OnDblClicked (med->x,med->y,MouseButton(med->button)))return EventProcResult::Break;break;
|
case MouseEventID::DblClicked: if(OnDblClicked (position,MouseButton(med->button)))return EventProcResult::Break;break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user