Compare commits
2 Commits
233d3119e5
...
8197d0a6f6
Author | SHA1 | Date | |
---|---|---|---|
![]() |
8197d0a6f6 | ||
![]() |
05116679d2 |
@ -60,6 +60,26 @@ function Padding:getPaddingBottom()
|
|||||||
return self.bottom
|
return self.bottom
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local function compareSet(value, default, didChange)
|
||||||
|
return value or default, didChange or (value ~= nil and value ~= default)
|
||||||
|
end
|
||||||
|
|
||||||
|
function Padding:setPadding(opts)
|
||||||
|
if type(opts) ~= "table" then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
local changed = false
|
||||||
|
self.left, changed = compareSet(opts.left, self.left, changed)
|
||||||
|
self.right, changed = compareSet(opts.right, self.right, changed)
|
||||||
|
self.top, changed = compareSet(opts.top, self.top, changed)
|
||||||
|
self.bottom, changed = compareSet(opts.bottom, self.bottom, changed)
|
||||||
|
|
||||||
|
if changed then
|
||||||
|
self:_reload()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function Padding:getInnerWidth()
|
function Padding:getInnerWidth()
|
||||||
return self.element:getWidth()
|
return self.element:getWidth()
|
||||||
end
|
end
|
||||||
|
@ -312,6 +312,7 @@ local PAGES = {
|
|||||||
|
|
||||||
local group = state:getExtra()
|
local group = state:getExtra()
|
||||||
if group == nil then
|
if group == nil then
|
||||||
|
print("No group passed to GROUP_DETAIL")
|
||||||
state:setPage("MAIN")
|
state:setPage("MAIN")
|
||||||
return NOOP
|
return NOOP
|
||||||
end
|
end
|
||||||
@ -417,7 +418,7 @@ local PAGES = {
|
|||||||
bgColor = colors.gray
|
bgColor = colors.gray
|
||||||
},
|
},
|
||||||
onClick = function(e, x, y, s)
|
onClick = function(e, x, y, s)
|
||||||
state:setPage("REQUEST")
|
state:setPage("REQUEST", group)
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
@ -435,19 +436,47 @@ local PAGES = {
|
|||||||
end,
|
end,
|
||||||
|
|
||||||
REQUEST = function(state, newPage)
|
REQUEST = function(state, newPage)
|
||||||
local helloPage = Text:new{
|
local group = state:getExtra()
|
||||||
text = "Hello Request"
|
if group == nil then
|
||||||
|
print("No group passed to REQUEST")
|
||||||
|
state:setPage("MAIN")
|
||||||
|
return NOOP
|
||||||
|
end
|
||||||
|
local paddingSide = 0
|
||||||
|
local paddingTop = 0
|
||||||
|
|
||||||
|
local itemName = fitText(group:getSimpleName(), state.width - (paddingSide * 2))
|
||||||
|
local itemLeftPad, itemRightPad = getCenterPad(#itemName, state.width - (paddingSide * 2))
|
||||||
|
|
||||||
|
local paddedTitle = Padding:new{
|
||||||
|
top = 1,
|
||||||
|
left = itemLeftPad,
|
||||||
|
right = itemRightPad,
|
||||||
|
bottom = 1,
|
||||||
|
element = Text:new{
|
||||||
|
id = "title",
|
||||||
|
text = itemName,
|
||||||
|
bgColor = colors.gray
|
||||||
|
},
|
||||||
|
bgColor = colors.gray,
|
||||||
|
onClick = function(e, x, y, s)
|
||||||
|
local title = e:findById("title")
|
||||||
|
title:setText("Clicked")
|
||||||
|
local newLeftPad, newRightPad = getCenterPad(#("Clicked"), state.width - (paddingSide * 2))
|
||||||
|
e:setPadding{ left = newLeftPad, right = newRightPad }
|
||||||
|
return true
|
||||||
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
local stuffContainer = Container:new{
|
local stuffContainer = Container:new{
|
||||||
[Children:getId()] = {
|
[Children:getId()] = {
|
||||||
helloPage
|
paddedTitle
|
||||||
},
|
},
|
||||||
width = state.width,
|
width = state.width,
|
||||||
height = state.height,
|
height = state.height,
|
||||||
parent = state.monitor,
|
parent = state.monitor,
|
||||||
onClick = function(e, x, y, s)
|
onClick = function(e, x, y, s)
|
||||||
state:setPage("GROUP_DETAIL")
|
state:setPage("GROUP_DETAIL", group)
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user