diff --git a/src/telem/init.lua b/src/telem/init.lua index 526bf2d..d2325ec 100644 --- a/src/telem/init.lua +++ b/src/telem/init.lua @@ -1,9 +1,9 @@ -- Telem by cyberbit -- MIT License --- Version 0.5.0 +-- Version 0.5.1 local _Telem = { - _VERSION = '0.5.0', + _VERSION = '0.5.1', util = require 'telem.lib.util', input = require 'telem.lib.input', output = require 'telem.lib.output', diff --git a/src/telem/lib/output/basalt/GraphOutputAdapter.lua b/src/telem/lib/output/basalt/GraphOutputAdapter.lua index d9c996e..5038f32 100644 --- a/src/telem/lib/output/basalt/GraphOutputAdapter.lua +++ b/src/telem/lib/output/basalt/GraphOutputAdapter.lua @@ -11,8 +11,8 @@ GraphOutputAdapter.MAX_ENTRIES = 50 GraphOutputAdapter.SCALE_TICK = 10 local function graphtrackrange (self) - local min = self.graphdata[1] - local max = self.graphdata[1] + local min = math.huge + local max = -math.huge for k,v in ipairs(self.graphdata) do if v < min then min = v end @@ -34,40 +34,40 @@ function GraphOutputAdapter:constructor (frame, filter, bg, fg) end function GraphOutputAdapter:register (bg, fg) - local currentmin = 0 - local currentmax = 1000 + local currentmin = math.huge + local currentmax = -math.huge self.tick = 0 self.bInnerFrame = self.bBaseFrame:addFrame() :setBackground(bg) - :setSize('{parent.w}', '{parent.h}') + :setSize('parent.w + 1', 'parent.h') local fGraph = self.bInnerFrame:addFrame('fGraph'):setBackground(bg) :setPosition(1,1) - :setSize('{parent.w - 2}', '{parent.h - 6}') + :setSize('parent.w', 'parent.h - 6') local fLabel = self.bInnerFrame:addFrame('fLabel'):setBackground(bg) - :setSize('{parent.w - 2}', 4) - :setPosition(1,'{parent.h - 5}') + :setSize('parent.w', 4) + :setPosition(1,'parent.h - 4') local fLabelMax = self.bInnerFrame:addFrame('fLabelMax'):setBackground(bg) :setSize(6, 1) - :setPosition('{parent.w - 7}',1) + :setPosition('parent.w - 6',1) local fLabelMin = self.bInnerFrame:addFrame('fLabelMin'):setBackground(bg) :setSize(6, 1) - :setPosition('{parent.w - 7}','{fLabel.y - 2}') + :setPosition('parent.w - 6','fLabel.y - 1') self.label = fLabel:addLabel() :setText("-----") - :setPosition('{parent.w/2-self.w/2}', 2) + :setPosition('parent.w/2-self.w/2', 2) :setForeground(fg) :setBackground(bg) self.graph = fGraph:addGraph() :setPosition(1,1) - :setSize('{parent.w - 1}', '{parent.h - 1}') + :setSize('parent.w - 1', 'parent.h - 1') :setMaxEntries(self.MAX_ENTRIES) :setBackground(bg) :setGraphColor(fg) @@ -75,10 +75,10 @@ function GraphOutputAdapter:register (bg, fg) self.graphscale = fGraph:addGraph() :setGraphType('scatter') - :setPosition(1,'{parent.h - 1}') - :setSize('{parent.w - 1}', 2) + :setPosition(1,'parent.h') + :setSize('parent.w - 1', 2) :setMaxEntries(self.MAX_ENTRIES) - :setBackground(colors.transparent) + :setBackground(bg) :setGraphSymbol('|') self.labelmax = fLabelMax:addLabel() @@ -93,7 +93,7 @@ function GraphOutputAdapter:register (bg, fg) :setForeground(fg) :setBackground(bg) - self.graph:setMinValue(currentmin):setMaxValue(currentmax) + -- self.graph:setMinValue(currentmin):setMaxValue(currentmax) end function GraphOutputAdapter:write (collection) @@ -107,6 +107,11 @@ function GraphOutputAdapter:write (collection) local newmin, newmax = graphtrackrange(self) + if newmin == newmax then + newmin = newmin - 1 + newmax = newmax + 1 + end + self.graph:setMinValue(newmin):setMaxValue(newmax) self.graph:addDataPoint(resultMetric.value) diff --git a/src/telem/lib/output/basalt/LabelOutputAdapter.lua b/src/telem/lib/output/basalt/LabelOutputAdapter.lua index bf9d12b..77ed869 100644 --- a/src/telem/lib/output/basalt/LabelOutputAdapter.lua +++ b/src/telem/lib/output/basalt/LabelOutputAdapter.lua @@ -24,7 +24,7 @@ function LabelOutputAdapter:register (bg, fg, fontSize) -- TODO idk if this inner frame is necessary self.bInnerFrame = self.bBaseFrame:addFrame() :setBackground(bg) - :setSize('{parent.w}', '{parent.h}') + :setSize('parent.w', 'parent.h') self.bLabelValue = self.bInnerFrame :addLabel() @@ -32,7 +32,7 @@ function LabelOutputAdapter:register (bg, fg, fontSize) :setFontSize(fontSize or 2) :setBackground(bg) :setForeground(fg) - :setPosition('{parent.w/2-self.w/2}', '{parent.h/2-self.h/2}') + :setPosition('parent.w/2-self.w/2', 'parent.h/2-self.h/2') self.bLabelName = self.bInnerFrame :addLabel()