First commit
This commit is contained in:
		@@ -0,0 +1,36 @@
 | 
			
		||||
-- @docclass
 | 
			
		||||
function g_mouse.bindAutoPress(widget, callback, delay, button)
 | 
			
		||||
  local button = button or MouseLeftButton
 | 
			
		||||
  connect(widget, { onMousePress = function(widget, mousePos, mouseButton)
 | 
			
		||||
    if mouseButton ~= button then
 | 
			
		||||
      return false
 | 
			
		||||
    end
 | 
			
		||||
    local startTime = g_clock.millis()
 | 
			
		||||
    callback(widget, mousePos, mouseButton, 0)
 | 
			
		||||
    periodicalEvent(function()
 | 
			
		||||
      callback(widget, g_window.getMousePosition(), mouseButton, g_clock.millis() - startTime)
 | 
			
		||||
    end, function()
 | 
			
		||||
      return g_mouse.isPressed(mouseButton)
 | 
			
		||||
    end, 30, delay)
 | 
			
		||||
    return true
 | 
			
		||||
  end })
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function g_mouse.bindPressMove(widget, callback)
 | 
			
		||||
  connect(widget, { onMouseMove = function(widget, mousePos, mouseMoved)
 | 
			
		||||
    if widget:isPressed() then
 | 
			
		||||
      callback(mousePos, mouseMoved)
 | 
			
		||||
      return true
 | 
			
		||||
    end
 | 
			
		||||
  end })
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function g_mouse.bindPress(widget, callback, button)
 | 
			
		||||
  connect(widget, { onMousePress = function(widget, mousePos, mouseButton)
 | 
			
		||||
    if not button or button == mouseButton then
 | 
			
		||||
      callback(mousePos, mouseButton)
 | 
			
		||||
      return true
 | 
			
		||||
    end
 | 
			
		||||
    return false
 | 
			
		||||
  end })
 | 
			
		||||
end
 | 
			
		||||
		Reference in New Issue
	
	Block a user