add simple blocker component

This commit is contained in:
Insality 2019-09-26 08:53:47 +03:00
parent 4a2458ca3b
commit 78807d7c8d
2 changed files with 34 additions and 0 deletions

33
druid/base/blocker.lua Normal file
View File

@ -0,0 +1,33 @@
--- Component to block input on specify zone (node)
-- @module base.blocker
local const = require("druid.const")
local helper = require("druid.helper")
local M = {}
M.interest = {
const.ON_SWIPE
}
function M.init(self, node)
self.node = helper.get_node(node)
self.event = const.ACTION_TOUCH
end
function M.on_input(self, action_id, action)
if not helper.is_enabled(self.node) then
return false
end
if gui.pick_node(self.node, action.x, action.y) then
return true
end
return false
end
return M

View File

@ -16,6 +16,7 @@ local _fct_metatable = {}
--- Basic components
M.comps = {
button = require("druid.base.button"),
blocker = require("druid.base.blocker"),
back_handler = require("druid.base.back_handler"),
text = require("druid.base.text"),
timer = require("druid.base.timer"),