jdxi_editor.ui.widgets.controls.registry
Control Registry
Dict-like registry of parameter -> widget, owned by SynthBase (or one per partial). Supports get(param) with optional name fallback so param identity matches across partials. Use register(param, widget) or registry[param] = widget; lookup via registry.get(param) or registry[param].
Classes
Base class for protocol classes. |
|
Registry of parameter -> control widget. Dict-like; singleton instance shared across all partials. |
Module Contents
- class jdxi_editor.ui.widgets.controls.registry.ControlResolver[source]
Bases:
ProtocolBase class for protocol classes.
Protocol classes are defined as:
class Proto(Protocol): def meth(self) -> int: ...
Such classes are primarily used with static type checkers that recognize structural subtyping (static duck-typing), for example:
class C: def meth(self) -> int: return 0 def func(x: Proto) -> int: return x.meth() func(C()) # Passes static type check
See PEP 544 for details. Protocol classes decorated with @typing.runtime_checkable act as simple-minded runtime protocols that check only the presence of given attributes, ignoring their type signatures. Protocol classes can be generic, they are defined as:
class GenProto(Protocol[T]): def meth(self) -> T: ...
- class jdxi_editor.ui.widgets.controls.registry.ControlRegistry[source]
Registry of parameter -> control widget. Dict-like; singleton instance shared across all partials.
- _instance: ControlRegistry | None = None[source]
- get(param: Any, default: PySide6.QtWidgets.QWidget | None = None) PySide6.QtWidgets.QWidget | None[source]