liquid_feedback_frontend
annotate env/ui/bargraph.lua @ 94:91671766a701
Added tag beta26 for changeset e401012af093
| author | bsw | 
|---|---|
| date | Thu Aug 19 15:37:51 2010 +0200 (2010-08-19) | 
| parents | 00d1004545f1 | 
| children | 5d797c6706d5 | 
| rev | line source | 
|---|---|
| bsw/jbe@0 | 1 function ui.bargraph(args) | 
| bsw/jbe@19 | 2 local text = "" | 
| bsw/jbe@19 | 3 for i, bar in ipairs(args.bars) do | 
| bsw/jbe@19 | 4 if #text > 0 then | 
| bsw/jbe@19 | 5 text = text .. " / " | 
| bsw/jbe@19 | 6 end | 
| bsw/jbe@19 | 7 text = text .. tostring(bar.value) | 
| bsw/jbe@19 | 8 end | 
| bsw/jbe@0 | 9 ui.container{ | 
| bsw/jbe@0 | 10 attr = { | 
| bsw/jbe@19 | 11 class = args.class or "bargraph", | 
| bsw/jbe@19 | 12 title = tostring(text) | 
| bsw/jbe@0 | 13 }, | 
| bsw/jbe@0 | 14 content = function() | 
| bsw/jbe@19 | 15 local at_least_one_bar = false | 
| bsw/jbe@0 | 16 for i, bar in ipairs(args.bars) do | 
| bsw@2 | 17 if bar.value > 0 then | 
| bsw/jbe@19 | 18 at_least_one_bar = true | 
| bsw/jbe@4 | 19 local value = bar.value * args.width / args.max_value | 
| bsw@2 | 20 ui.container{ | 
| bsw@2 | 21 attr = { | 
| bsw@2 | 22 style = "width: " .. tostring(value) .. "px; background-color: " .. bar.color .. ";", | 
| bsw@2 | 23 }, | 
| bsw@2 | 24 content = function() slot.put(" ") end | 
| bsw@2 | 25 } | 
| bsw@2 | 26 end | 
| bsw/jbe@0 | 27 end | 
| bsw/jbe@19 | 28 if not at_least_one_bar then | 
| bsw/jbe@19 | 29 slot.put(" ") | 
| bsw/jbe@19 | 30 end | 
| bsw/jbe@0 | 31 end | 
| bsw/jbe@0 | 32 } | 
| bsw/jbe@0 | 33 end |