local listview = require "listview" local keys = {[1]="a", [2]="c"} local obj = {a="b", c="d"} local frame = term.current() local function setTerm(termlike) frame = termlike end local function setObject(other) obj = other keys = {} for key, _ in other do keys.insert(key) end table.sort(keys) end local function fetch(wait_for) local currentIdx = 1 for i, key in pairs(keys) do listview.updateItemAt(currentIdx, tostring(key)..": "..tostring(obj[key])) currentIdx = currentIdx + 1 end listview.clearFrom(currentIdx) end local function displayTab(self) listview.updatePage(self.scrollPos) end return { name="inspect", setTerm=setTerm, setObject=setObject, fetch=fetch, displayTab=displayTab, }