鼠标坐标改用Vector2i传递

This commit is contained in:
2025-07-27 23:52:34 +08:00
parent 0ed44f0531
commit 11838e9cc8
2 changed files with 13 additions and 13 deletions

View File

@@ -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;}
/** /**
* 某按键是否按下 * 某按键是否按下

View File

@@ -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;
} }
} }
} }