diff options
Diffstat (limited to 'roles/home/desktop/eww/widgets')
| -rw-r--r-- | roles/home/desktop/eww/widgets/default.css | 1 | ||||
| -rw-r--r-- | roles/home/desktop/eww/widgets/default.yuck | 2 | ||||
| -rw-r--r-- | roles/home/desktop/eww/widgets/meter.css | 9 | ||||
| -rw-r--r-- | roles/home/desktop/eww/widgets/meter.yuck | 41 | ||||
| -rw-r--r-- | roles/home/desktop/eww/widgets/stat.yuck | 24 |
5 files changed, 77 insertions, 0 deletions
diff --git a/roles/home/desktop/eww/widgets/default.css b/roles/home/desktop/eww/widgets/default.css new file mode 100644 index 0000000..e6d3764 --- /dev/null +++ b/roles/home/desktop/eww/widgets/default.css @@ -0,0 +1 @@ +@import "meter.css"; diff --git a/roles/home/desktop/eww/widgets/default.yuck b/roles/home/desktop/eww/widgets/default.yuck new file mode 100644 index 0000000..bedb80e --- /dev/null +++ b/roles/home/desktop/eww/widgets/default.yuck @@ -0,0 +1,2 @@ +(include "./widgets/meter.yuck") +(include "./widgets/stat.yuck") diff --git a/roles/home/desktop/eww/widgets/meter.css b/roles/home/desktop/eww/widgets/meter.css new file mode 100644 index 0000000..df65382 --- /dev/null +++ b/roles/home/desktop/eww/widgets/meter.css @@ -0,0 +1,9 @@ +.meter .background { + color: @bg1; + background: rgba(0, 0, 0, 0); +} + +.meter .progress { + color: @accent; + background: rgba(0, 0, 0, 0); +} diff --git a/roles/home/desktop/eww/widgets/meter.yuck b/roles/home/desktop/eww/widgets/meter.yuck new file mode 100644 index 0000000..af2c3f3 --- /dev/null +++ b/roles/home/desktop/eww/widgets/meter.yuck @@ -0,0 +1,41 @@ +(defwidget meter [value label] + (overlay :class {"meter" + + (value >= 90 ? " almost-full" : "") + + (value >= 99 ? " full" : "") + + (value <= 10 ? " almost-empty" : "") + + (value <= 1 ? " empty" : "") + } + + :width 100 + + (circular-progress :class "background" + :value 80 + :start-at 35 + :thickness 10 + :width 100 + ) + + (circular-progress :class "progress" + :value {value*0.8} + :start-at 35 + :thickness 10 + :width 100 + ) + + (box + :orientation "v" + :valign "center" + :space-evenly false + :spacing 2 + + (children) + + {round(value, 2)+"%"} + ) + + (transform + :translate-y "44px" + (label :markup {"<b>"+label+"</b>"}) + ) + ) +) diff --git a/roles/home/desktop/eww/widgets/stat.yuck b/roles/home/desktop/eww/widgets/stat.yuck new file mode 100644 index 0000000..1ef76f2 --- /dev/null +++ b/roles/home/desktop/eww/widgets/stat.yuck @@ -0,0 +1,24 @@ +(defwidget stat [key value ?class] + (overlay + (box :class {class} + :orientation "h" + :spacing 45 + + (label + :text {key} + :halign "start" + :hexpand true + ) + + (label + :text {value} + :halign "end" + :hexpand true + ) + ) + + (label :class "faint" + :text "..." + ) + ) +) |