68 lines
2.6 KiB
Lua
68 lines
2.6 KiB
Lua
--
|
|
-- Main Home Page
|
|
--
|
|
|
|
local iocontrol = require("pocket.iocontrol")
|
|
|
|
local diag_apps = require("pocket.ui.apps.diag_apps")
|
|
|
|
local core = require("graphics.core")
|
|
|
|
local Div = require("graphics.elements.div")
|
|
local MultiPane = require("graphics.elements.multipane")
|
|
local TextBox = require("graphics.elements.textbox")
|
|
|
|
local AppPageSel = require("graphics.elements.controls.app_page_selector")
|
|
local App = require("graphics.elements.controls.app")
|
|
|
|
local cpair = core.cpair
|
|
|
|
local ALIGN = core.ALIGN
|
|
|
|
-- new home page view
|
|
---@param root graphics_element parent
|
|
local function new_view(root)
|
|
local db = iocontrol.get_db()
|
|
|
|
local main = Div{parent=root,x=1,y=1}
|
|
|
|
local apps = Div{parent=main,x=1,y=1,height=19}
|
|
|
|
local apps_1 = Div{parent=apps,x=1,y=1,height=15}
|
|
local apps_2 = Div{parent=apps,x=1,y=1,height=15}
|
|
|
|
local panes = { apps_1, apps_2 }
|
|
|
|
local app_pane = MultiPane{parent=apps,x=1,y=1,panes=panes,height=15}
|
|
|
|
AppPageSel{parent=apps,x=11,y=18,page_count=2,active_color=colors.lightGray,callback=app_pane.set_value,fg_bg=cpair(colors.gray,colors.black)}
|
|
|
|
local d_apps = diag_apps(main)
|
|
|
|
local page_panes = { apps, d_apps.Alarm.e }
|
|
|
|
local page_pane = MultiPane{parent=main,x=1,y=1,panes=page_panes}
|
|
|
|
local npage_home = db.nav.new_page(nil, 1, page_pane)
|
|
local npage_apps = db.nav.new_page(npage_home, 1)
|
|
|
|
local npage_alarm = db.nav.new_page(npage_apps, 2)
|
|
npage_alarm.tasks = d_apps.Alarm.tasks
|
|
|
|
App{parent=apps_1,x=3,y=2,text="\x17",title="PRC",callback=function()end,app_fg_bg=cpair(colors.black,colors.purple)}
|
|
App{parent=apps_1,x=10,y=2,text="\x15",title="CTL",callback=function()end,app_fg_bg=cpair(colors.black,colors.green)}
|
|
App{parent=apps_1,x=17,y=2,text="\x08",title="DEV",callback=function()end,app_fg_bg=cpair(colors.black,colors.lightGray)}
|
|
App{parent=apps_1,x=3,y=7,text="\x7f",title="Waste",callback=function()end,app_fg_bg=cpair(colors.black,colors.brown)}
|
|
App{parent=apps_1,x=10,y=7,text="\xb6",title="Guide",callback=function()end,app_fg_bg=cpair(colors.black,colors.cyan)}
|
|
|
|
TextBox{parent=apps_2,text="Diagnostic Apps",x=1,y=2,height=1,alignment=ALIGN.CENTER}
|
|
|
|
App{parent=apps_2,x=3,y=4,text="\x0f",title="Alarm",callback=npage_alarm.nav_to,app_fg_bg=cpair(colors.black,colors.red),active_fg_bg=cpair(colors.white,colors.gray)}
|
|
App{parent=apps_2,x=10,y=4,text="\x1e",title="LoopT",callback=function()end,app_fg_bg=cpair(colors.black,colors.cyan)}
|
|
App{parent=apps_2,x=17,y=4,text="@",title="Comps",callback=function()end,app_fg_bg=cpair(colors.black,colors.orange)}
|
|
|
|
return main
|
|
end
|
|
|
|
return new_view
|