3
0
mirror of https://github.com/britzl/monarch.git synced 2025-09-28 02:22:20 +02:00

replace hashes with constants

This commit is contained in:
AGulev
2017-11-03 09:50:28 +03:00
parent d02cd03d2c
commit de2fa9c4e2
4 changed files with 99 additions and 44 deletions

View File

@@ -1,3 +1,5 @@
local monarch = require "monarch.monarch"
local M = {}
local WIDTH = tonumber(sys.get_config("display.width"))
@@ -6,17 +8,17 @@ local HEIGHT = tonumber(sys.get_config("display.height"))
local LEFT = vmath.vector3(-WIDTH * 2, 0, 0)
local RIGHT = vmath.vector3(WIDTH * 2, 0, 0)
local TOP = vmath.vector3(0, HEIGHT * 2, 0)
local BOTTOM = vmath.vector3(0, -HEIGHT * 2, 0)
local BOTTOM = vmath.vector3(0, - HEIGHT * 2, 0)
function M.instant(node, to, easing, duration, delay, url)
msg.post(url, "transition_done")
msg.post(url, monarch.TRANSITION.DONE)
end
local function slide_in(direction, node, to, easing, duration, delay, url)
local from = to + direction
gui.set_position(node, from)
gui.animate(node, gui.PROP_POSITION, to, easing, duration, delay, function()
msg.post(url, "transition_done")
msg.post(url, monarch.TRANSITION.DONE)
end)
end
@@ -41,7 +43,7 @@ local function slide_out(direction, node, from, easing, duration, delay, url)
local to = from + direction
gui.set_position(node, from)
gui.animate(node, gui.PROP_POSITION, to, easing, duration, delay, function()
msg.post(url, "transition_done")
msg.post(url, monarch.TRANSITION.DONE)
end)
end
@@ -67,23 +69,23 @@ function M.create(node)
assert(node, "You must provide a node")
local instance = {}
local transitions = {
[hash("transition_show_in")] = M.instant,
[hash("transition_show_out")] = M.instant,
[hash("transition_back_in")] = M.instant,
[hash("transition_back_out")] = M.instant,
[monarch.TRANSITION.SHOW_IN] = M.instant,
[monarch.TRANSITION.SHOW_OUT] = M.instant,
[monarch.TRANSITION.BACK_IN] = M.instant,
[monarch.TRANSITION.BACK_OUT] = M.instant,
}
local initial_position = gui.get_position(node)
-- Forward on_message calls here
function instance.handle(message_id, message, sender)
if transitions[message_id] then
transitions[message_id](sender)
end
end
-- Specify the transition function when this node is transitioned
-- to
-- @param fn Transition function (see slide_in_left and other above)
@@ -91,7 +93,7 @@ function M.create(node)
-- @param duration Transition duration
-- @param delay Transition delay
function instance.show_in(fn, easing, duration, delay)
transitions[hash("transition_show_in")] = function(url)
transitions[monarch.TRANSITION.SHOW_IN] = function(url)
fn(node, initial_position, easing, duration, delay or 0, url)
end
return instance
@@ -100,7 +102,7 @@ function M.create(node)
-- Specify the transition function when this node is transitioned
-- from when showing another screen
function instance.show_out(fn, easing, duration, delay)
transitions[hash("transition_show_out")] = function(url)
transitions[monarch.TRANSITION.SHOW_OUT] = function(url)
fn(node, initial_position, easing, duration, delay or 0, url)
end
return instance
@@ -109,7 +111,7 @@ function M.create(node)
--- Specify the transition function when this node is transitioned
-- to when navigating back in the screen stack
function instance.back_in(fn, easing, duration, delay)
transitions[hash("transition_back_in")] = function(url)
transitions[monarch.TRANSITION.BACK_IN] = function(url)
fn(node, initial_position, easing, duration, delay or 0, url)
end
return instance
@@ -118,13 +120,13 @@ function M.create(node)
--- Specify the transition function when this node is transitioned
-- from when navigating back in the screen stack
function instance.back_out(fn, easing, duration, delay)
transitions[hash("transition_back_out")] = function(url)
transitions[monarch.TRANSITION.BACK_OUT] = function(url)
fn(node, initial_position, easing, duration, delay or 0, url)
end
return instance
end
return instance
end
return M
return M