1
0
mirror of https://github.com/kepler155c/opus synced 2025-11-10 04:23:01 +00:00

api cleanup

This commit is contained in:
kepler155c@gmail.com
2017-11-15 00:08:42 -05:00
parent f533e42c0c
commit a8a4ceb85d
7 changed files with 119 additions and 96 deletions

View File

@@ -11,6 +11,7 @@ local multishell = _ENV.multishell
local os = _G.os
local settings = _G.settings
local shell = _ENV.shell
local turtle = _G.turtle
multishell.setTitle(multishell.getCurrent(), 'System')
UI:configure('System', ...)
@@ -44,7 +45,7 @@ local systemPage = UI.Page {
},
aliasTab = UI.Window {
tabTitle = 'Aliases',
tabTitle = 'Alias',
alias = UI.TextEntry {
x = 2, y = 2, ex = -2,
limit = 32,
@@ -141,6 +142,64 @@ local systemPage = UI.Page {
},
}
if turtle then
local Home = require('turtle.home')
local values = { }
Config.load('gps', values.home or { })
systemPage.tabs:add({
gpsTab = UI.Window {
tabTitle = 'GPS',
labelText = UI.Text {
x = 3, y = 2,
value = 'On restart, return to this location'
},
grid = UI.Grid {
x = 3, ex = -3, y = 4,
height = 2,
values = values,
inactive = true,
columns = {
{ heading = 'x', key = 'x' },
{ heading = 'y', key = 'y' },
{ heading = 'z', key = 'z' },
},
},
button1 = UI.Button {
x = 3, y = 7,
text = 'Set home',
event = 'gps_set',
},
button2 = UI.Button {
ex = -3, y = 7, width = 7,
text = 'Clear',
event = 'gps_clear',
},
},
})
function systemPage.tabs.gpsTab:eventHandler(event)
if event.type == 'gps_set' then
systemPage.notification:info('Determining location', 10)
systemPage:sync()
if Home.set() then
Config.load('gps', values)
self.grid:setValues(values.home or { })
self.grid:draw()
systemPage.notification:success('Location set')
else
systemPage.notification:error('Unable to determine location')
end
return true
elseif event.type == 'gps_clear' then
fs.delete('usr/config/gps')
self.grid:setValues({ })
self.grid:draw()
return true
end
end
end
if settings then
local values = { }
for _,v in pairs(settings.getNames()) do
@@ -162,8 +221,6 @@ if settings then
{ heading = 'Setting', key = 'name' },
{ heading = 'Value', key = 'value' },
},
accelerators = {
},
},
}
})