summaryrefslogtreecommitdiffhomepage
path: root/src/Plugins/Monitors.hs
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@gmail.com>2011-01-13 10:34:09 -0600
committerThomas Tuegel <ttuegel@gmail.com>2011-01-13 10:36:41 -0600
commite3c9b33170f1064077aa8578342369657b9e059c (patch)
tree8478ba072b620a8da621828ce117139458c216d5 /src/Plugins/Monitors.hs
parentbfbbe753e83efa25bc3408e61fe86c6223e6c695 (diff)
downloadxmobar-e3c9b33170f1064077aa8578342369657b9e059c.tar.gz
xmobar-e3c9b33170f1064077aa8578342369657b9e059c.tar.bz2
Added volume monitor based on alsa-mixer.
Diffstat (limited to 'src/Plugins/Monitors.hs')
-rw-r--r--src/Plugins/Monitors.hs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/Plugins/Monitors.hs b/src/Plugins/Monitors.hs
index 9887d74..14d97a2 100644
--- a/src/Plugins/Monitors.hs
+++ b/src/Plugins/Monitors.hs
@@ -38,6 +38,9 @@ import Plugins.Monitors.Wireless
#ifdef LIBMPD
import Plugins.Monitors.MPD
#endif
+#ifdef ALSA
+import Plugins.Monitors.Volume
+#endif
data Monitors = Weather Station Args Rate
| Network Interface Args Rate
@@ -61,6 +64,9 @@ data Monitors = Weather Station Args Rate
#ifdef LIBMPD
| MPD Args Rate
#endif
+#ifdef ALSA
+ | Volume String String Args Rate
+#endif
deriving (Show,Read,Eq)
type Args = [String]
@@ -95,6 +101,9 @@ instance Exec Monitors where
#ifdef LIBMPD
alias (MPD _ _) = "mpd"
#endif
+#ifdef ALSA
+ alias (Volume m c _ _) = m ++ ":" ++ c
+#endif
start (Weather s a r) = runM (a ++ [s]) weatherConfig runWeather r
start (Network i a r) = runM (a ++ [i]) netConfig runNet r
start (Thermal z a r) = runM (a ++ [z]) thermalConfig runThermal r
@@ -117,3 +126,6 @@ instance Exec Monitors where
#ifdef LIBMPD
start (MPD a r) = runM a mpdConfig runMPD r
#endif
+#ifdef ALSA
+ start (Volume m c a r) = runM a volumeConfig (runVolume m c) r
+#endif