step 3: add widget shell and renderer foundation
This commit is contained in:
@@ -2,27 +2,14 @@
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from contextlib import nullcontext
|
||||
from typing import Any, cast
|
||||
from typing import Any
|
||||
|
||||
from .gauges import (
|
||||
AnalogGaugeConfig,
|
||||
BarGaugeConfig,
|
||||
BatteryGaugeConfig,
|
||||
CompassGaugeConfig,
|
||||
DigitalGaugeConfig,
|
||||
GaugeConfig,
|
||||
LevelGaugeConfig,
|
||||
MultiValueGaugeConfig,
|
||||
SegmentedGaugeConfig,
|
||||
StatusLightConfig,
|
||||
ThermometerGaugeConfig,
|
||||
)
|
||||
from . import widget as _widget
|
||||
from .gauges import GaugeConfig
|
||||
from .state import (
|
||||
configure_gauges,
|
||||
delete_runtime_gauge,
|
||||
get_runtime_value,
|
||||
register_gauge,
|
||||
set_runtime_markers,
|
||||
set_runtime_show,
|
||||
set_runtime_thresholds,
|
||||
@@ -36,62 +23,18 @@ def configure(**config: Any) -> None:
|
||||
configure_gauges(**config)
|
||||
|
||||
|
||||
def analog_gauge(**config: Any) -> nullcontext[AnalogGaugeConfig]:
|
||||
state = register_gauge("analog", AnalogGaugeConfig(**config))
|
||||
return nullcontext(cast(AnalogGaugeConfig, state.config))
|
||||
|
||||
|
||||
def digital_gauge(**config: Any) -> nullcontext[DigitalGaugeConfig]:
|
||||
state = register_gauge("digital", DigitalGaugeConfig(**config))
|
||||
return nullcontext(cast(DigitalGaugeConfig, state.config))
|
||||
|
||||
|
||||
def bar_gauge(**config: Any) -> nullcontext[BarGaugeConfig]:
|
||||
state = register_gauge("bar", BarGaugeConfig(**config))
|
||||
return nullcontext(cast(BarGaugeConfig, state.config))
|
||||
|
||||
|
||||
def level_gauge(**config: Any) -> nullcontext[LevelGaugeConfig]:
|
||||
state = register_gauge("level", LevelGaugeConfig(**config))
|
||||
return nullcontext(cast(LevelGaugeConfig, state.config))
|
||||
|
||||
|
||||
def status_light(**config: Any) -> nullcontext[StatusLightConfig]:
|
||||
state = register_gauge("status_light", StatusLightConfig(**config))
|
||||
return nullcontext(cast(StatusLightConfig, state.config))
|
||||
|
||||
|
||||
def segmented_gauge(**config: Any) -> nullcontext[SegmentedGaugeConfig]:
|
||||
state = register_gauge("segmented", SegmentedGaugeConfig(**config))
|
||||
return nullcontext(cast(SegmentedGaugeConfig, state.config))
|
||||
|
||||
|
||||
def compass_gauge(**config: Any) -> nullcontext[CompassGaugeConfig]:
|
||||
state = register_gauge("compass", CompassGaugeConfig(**config))
|
||||
return nullcontext(cast(CompassGaugeConfig, state.config))
|
||||
|
||||
|
||||
def thermometer_gauge(**config: Any) -> nullcontext[ThermometerGaugeConfig]:
|
||||
state = register_gauge("thermometer", ThermometerGaugeConfig(**config))
|
||||
return nullcontext(cast(ThermometerGaugeConfig, state.config))
|
||||
|
||||
|
||||
def battery_gauge(**config: Any) -> nullcontext[BatteryGaugeConfig]:
|
||||
state = register_gauge("battery", BatteryGaugeConfig(**config))
|
||||
return nullcontext(cast(BatteryGaugeConfig, state.config))
|
||||
|
||||
|
||||
def multi_value_gauge(**config: Any) -> nullcontext[MultiValueGaugeConfig]:
|
||||
state = register_gauge("multi_value", MultiValueGaugeConfig(**config))
|
||||
return nullcontext(cast(MultiValueGaugeConfig, state.config))
|
||||
|
||||
|
||||
def gauge_panel(**_config: Any) -> nullcontext[None]:
|
||||
return nullcontext(None)
|
||||
|
||||
|
||||
def gauge_grid(**_config: Any) -> nullcontext[None]:
|
||||
return nullcontext(None)
|
||||
analog_gauge = _widget.analog_gauge
|
||||
digital_gauge = _widget.digital_gauge
|
||||
bar_gauge = _widget.bar_gauge
|
||||
level_gauge = _widget.level_gauge
|
||||
status_light = _widget.status_light
|
||||
segmented_gauge = _widget.segmented_gauge
|
||||
compass_gauge = _widget.compass_gauge
|
||||
thermometer_gauge = _widget.thermometer_gauge
|
||||
battery_gauge = _widget.battery_gauge
|
||||
multi_value_gauge = _widget.multi_value_gauge
|
||||
gauge_panel = _widget.gauge_panel
|
||||
gauge_grid = _widget.gauge_grid
|
||||
|
||||
|
||||
def set_value(tag: Tag, value: GaugeValue) -> None:
|
||||
|
||||
Reference in New Issue
Block a user