summaryrefslogtreecommitdiffstats
path: root/py3status
diff options
context:
space:
mode:
Diffstat (limited to 'py3status')
-rw-r--r--py3status/modules/dpms.py33
1 files changed, 32 insertions, 1 deletions
diff --git a/py3status/modules/dpms.py b/py3status/modules/dpms.py
index ecbc3a7..262c82b 100644
--- a/py3status/modules/dpms.py
+++ b/py3status/modules/dpms.py
@@ -6,6 +6,14 @@ This module allows activation and deactivation
of DPMS (Display Power Management Signaling)
by clicking on 'DPMS' in the status bar.
+Configuration parameters:
+ - format: output format string
+ - status_off: string to display when DPMS is enabled
+ - status_on: string to display when DPMS is disabled
+
+Format of status string placeholders:
+ {status} - DPMS status (defined by status_on/off parameters)
+
@author Andre Doser <dosera AT tf.uni-freiburg.de>
"""
@@ -15,6 +23,11 @@ from os import system
class Py3status:
"""
"""
+ # available configuration parameters
+ format = "DPMS"
+ status_off = "Off"
+ status_on = "On"
+
def dpms(self, i3s_output_list, i3s_config):
"""
Display a colorful state of DPMS.
@@ -23,13 +36,16 @@ class Py3status:
self.run = system('xset -q | grep -iq "DPMS is enabled"') == 0
response = {
- 'full_text': 'DPMS'
+ 'full_text': self.format.format(
+ status = self.status_on if self.run else self.status_off
+ )
}
if self.run:
response['color'] = i3s_config['color_good']
else:
response['color'] = i3s_config['color_bad']
+
return response
def on_click(self, i3s_output_list, i3s_config, event):
@@ -43,3 +59,18 @@ class Py3status:
else:
self.run = True
system("xset +dpms;xset s on")
+
+if __name__ == "__main__":
+ """
+ Test this module by calling it directly.
+ """
+ from time import sleep
+ x = Py3status()
+ config = {
+ 'color_bad': '#FF0000',
+ 'color_good': '#00FF00',
+ }
+
+ while True:
+ print(x.dpms([], config))
+ sleep(1)