MCPcopy Create free account
hub / github.com/Overload-Technologies/Overload / AddMousePosEvent

Method AddMousePosEvent

Dependencies/ImGui/src/imgui.cpp:1752–1776  ·  view source on GitHub ↗

Queue a mouse move event

Source from the content-addressed store, hash-verified

1750
1751// Queue a mouse move event
1752void ImGuiIO::AddMousePosEvent(float x, float y)
1753{
1754 IM_ASSERT(Ctx != NULL);
1755 ImGuiContext& g = *Ctx;
1756 if (!AppAcceptingEvents)
1757 return;
1758
1759 // Apply same flooring as UpdateMouseInputs()
1760 ImVec2 pos((x > -FLT_MAX) ? ImFloor(x) : x, (y > -FLT_MAX) ? ImFloor(y) : y);
1761
1762 // Filter duplicate
1763 const ImGuiInputEvent* latest_event = FindLatestInputEvent(&g, ImGuiInputEventType_MousePos);
1764 const ImVec2 latest_pos = latest_event ? ImVec2(latest_event->MousePos.PosX, latest_event->MousePos.PosY) : g.IO.MousePos;
1765 if (latest_pos.x == pos.x && latest_pos.y == pos.y)
1766 return;
1767
1768 ImGuiInputEvent e;
1769 e.Type = ImGuiInputEventType_MousePos;
1770 e.Source = ImGuiInputSource_Mouse;
1771 e.EventId = g.InputEventsNextEventId++;
1772 e.MousePos.PosX = pos.x;
1773 e.MousePos.PosY = pos.y;
1774 e.MousePos.MouseSource = g.InputEventsNextMouseSource;
1775 g.InputEventsQueue.push_back(e);
1776}
1777
1778void ImGuiIO::AddMouseButtonEvent(int mouse_button, bool down)
1779{

Calls 4

ImFloorFunction · 0.85
FindLatestInputEventFunction · 0.85
ImVec2Function · 0.85
push_backMethod · 0.45

Tested by

no test coverage detected