core: add optional parameters to enterFrame for mouse coordinates. allows user to use a separate coordinate system than the screen for ui elements
This commit is contained in:
parent
1767782603
commit
28abbc8bd1
1 changed files with 11 additions and 2 deletions
13
core.lua
13
core.lua
|
@ -176,15 +176,24 @@ function suit:keyPressedOn(id, key)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- state update
|
-- state update
|
||||||
function suit:enterFrame()
|
function suit:enterFrame(mouseX, mouseY)
|
||||||
if not self.mouse_button_down then
|
if not self.mouse_button_down then
|
||||||
self.active = nil
|
self.active = nil
|
||||||
elseif self.active == nil then
|
elseif self.active == nil then
|
||||||
self.active = NONE
|
self.active = NONE
|
||||||
end
|
end
|
||||||
|
local mx = mouseX
|
||||||
|
local my = mouseY
|
||||||
|
|
||||||
|
if mx == nil then
|
||||||
|
mx = love.mouse.getX()
|
||||||
|
end
|
||||||
|
if my == nil then
|
||||||
|
my = love.mouse.getY()
|
||||||
|
end
|
||||||
|
|
||||||
self.hovered_last, self.hovered = self.hovered, nil
|
self.hovered_last, self.hovered = self.hovered, nil
|
||||||
self:updateMouse(love.mouse.getX(), love.mouse.getY(), love.mouse.isDown(1))
|
self:updateMouse(mx, my, love.mouse.isDown(1))
|
||||||
self.key_down, self.textchar = nil, ""
|
self.key_down, self.textchar = nil, ""
|
||||||
self:grabKeyboardFocus(NONE)
|
self:grabKeyboardFocus(NONE)
|
||||||
self.hit = nil
|
self.hit = nil
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue