temp: add a "display_if" setting

Adds a "display_if" setting to temp module.  This is a snippet that will
be evaulated, and if the result is true, it will display the module's
output.
This commit is contained in:
David Wahlstrom 2016-05-11 13:38:28 -07:00
parent 4611295475
commit b901cec5a6

View File

@ -11,6 +11,7 @@ class Temperature(IntervalModule):
settings = (
("format",
"format string used for output. {temp} is the temperature in degrees celsius"),
('display_if', 'snippet that gets evaluated. if true, displays the module output'),
"color",
"file",
"alert_temp",
@ -21,11 +22,13 @@ class Temperature(IntervalModule):
file = "/sys/class/thermal/thermal_zone0/temp"
alert_temp = 90
alert_color = "#FF0000"
display_if = 'True'
def run(self):
with open(self.file, "r") as f:
temp = float(f.read().strip()) / 1000
if eval(self.display_if):
self.output = {
"full_text": self.format.format(temp=temp),
"color": self.color if temp < self.alert_temp else self.alert_color,