add cpu module with /proc/stat collector, visible grid cells, dark background, and fullscreen dashboard

This commit is contained in:
Eric Smith 2026-05-20 12:59:50 -04:00
parent 5aabc1f7ef
commit 499df2846c
6 changed files with 190 additions and 3 deletions

49
panels/cpu/cpu_module.gd Normal file
View file

@ -0,0 +1,49 @@
extends ModuleBase
class_name CpuModule
@onready var title_label: Label = %Title
@onready var label: Label = %Label
@onready var progress: ProgressBar = %ProgressBar
var _collector: CpuCollector
func initialize() -> void:
module_title = "CPU"
_collector = CpuCollector.new()
_style()
func refresh(data: Dictionary) -> void:
var usage: float = _collector.collect()
if usage < 0.0:
return
var pct: int = roundi(usage)
label.text = "%d%%" % pct
progress.value = pct
func _style() -> void:
title_label.add_theme_color_override("font_color", Color(0.7, 0.7, 0.8, 1.0))
label.add_theme_color_override("font_color", Color(0.9, 0.9, 1.0, 1.0))
label.add_theme_font_size_override("font_size", 48)
var fg := StyleBoxFlat.new()
fg.bg_color = Color(0.2, 0.5, 0.8, 1.0)
fg.corner_radius_top_left = 4
fg.corner_radius_top_right = 4
fg.corner_radius_bottom_right = 4
fg.corner_radius_bottom_left = 4
var bg := StyleBoxFlat.new()
bg.bg_color = Color(0.1, 0.1, 0.14, 1.0)
bg.corner_radius_top_left = 4
bg.corner_radius_top_right = 4
bg.corner_radius_bottom_right = 4
bg.corner_radius_bottom_left = 4
progress.add_theme_stylebox_override("fill", fg)
progress.add_theme_stylebox_override("background", bg)