summaryrefslogtreecommitdiffhomepage
path: root/element.lua
diff options
context:
space:
mode:
authorAki <nthirtyone@gmail.com>2016-12-20 06:05:56 +0100
committerGitHub <noreply@github.com>2016-12-20 06:05:56 +0100
commit493a89fb354ee6ce667d29a7b96bb4fdd0f6697f (patch)
treed862856d4b62a6c996ea16211ebd321206e236b4 /element.lua
parented6ad6687aeb5359af48bc97c1dbf5dd66842c9c (diff)
parent73bcd524906c51d43b22b3ea68c64b38f130bea6 (diff)
downloadroflnauts-493a89fb354ee6ce667d29a7b96bb4fdd0f6697f.zip
roflnauts-493a89fb354ee6ce667d29a7b96bb4fdd0f6697f.tar.gz
roflnauts-493a89fb354ee6ce667d29a7b96bb4fdd0f6697f.tar.bz2
Merge pull request #16 from nthirtyone/menuv1.0-pre.4
Menu
Diffstat (limited to 'element.lua')
-rw-r--r--element.lua42
1 files changed, 42 insertions, 0 deletions
diff --git a/element.lua b/element.lua
new file mode 100644
index 0000000..f9d1c3d
--- /dev/null
+++ b/element.lua
@@ -0,0 +1,42 @@
+-- `Element`
+-- Empty element for `Menu` creation. Can be anything.
+Element = {
+ x = 0,
+ y = 0,
+ parent
+}
+function Element:new(parent)
+ local o = {}
+ setmetatable(o, self)
+ self.__index = self
+ o.parent = parent
+ return o
+end
+function Element:delete() end -- deletes Element
+function Element:getPosition() return self.x, self.y end -- gives x,y of Element
+function Element:setPosition(x,y)
+ self.x, self.y = x, y
+ return self
+end
+function Element:set(name, func)
+ if type(name) == "string" and func ~= nil then
+ self[name] = func
+ end
+ return self
+end
+
+-- Menu callbacks
+function Element:focus() -- Called when Element gains focus
+ return false
+end
+function Element:blur() end -- Called when Element loses focus
+
+-- LÖVE2D callbacks
+function Element:draw(scale) end
+function Element:update(dt) end
+
+-- Controller callbacks
+function Element:controlpressed(set, action, key) end
+function Element:controlreleased(set, action, key) end
+
+return Element \ No newline at end of file