Fix using #allTabs; it isnt a list
This commit is contained in:
parent
2a0176888a
commit
7413d5427c
|
@ -1,4 +1,5 @@
|
||||||
local parent = term.current()
|
local parent = term.current()
|
||||||
|
local tabCount = 0
|
||||||
local allTabs = {}
|
local allTabs = {}
|
||||||
local tabOrder = {}
|
local tabOrder = {}
|
||||||
local currentTab = nil
|
local currentTab = nil
|
||||||
|
@ -26,6 +27,7 @@ local function addTab(tab, order_idx)
|
||||||
end
|
end
|
||||||
allTabs[tab.name] = tab
|
allTabs[tab.name] = tab
|
||||||
tabOrder[order_idx] = tab.name
|
tabOrder[order_idx] = tab.name
|
||||||
|
tabCount = tabCount + 1
|
||||||
return tab
|
return tab
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -43,14 +45,14 @@ local function showTab(name)
|
||||||
end
|
end
|
||||||
|
|
||||||
local function switchTab()
|
local function switchTab()
|
||||||
assert(#allTabs > 0, "tabs need to be registered in order to switch tabs")
|
assert(tabCount > 0, "tabs need to be registered in order to switch tabs")
|
||||||
local idx = 0
|
local idx = 0
|
||||||
if currentTab ~= nil then
|
if currentTab ~= nil then
|
||||||
currentTab.window.setVisible(false)
|
currentTab.window.setVisible(false)
|
||||||
idx = tabOrder[currentTab.name]
|
idx = tabOrder[currentTab.name]
|
||||||
end
|
end
|
||||||
idx = idx + 1
|
idx = idx + 1
|
||||||
if idx > #allTabs then
|
if idx > tabCount then
|
||||||
idx = 1
|
idx = 1
|
||||||
end
|
end
|
||||||
currentTab = allTabs[tabOrder[idx]]
|
currentTab = allTabs[tabOrder[idx]]
|
||||||
|
|
Loading…
Reference in a new issue