jdxi_editor.ui.widgets.envelope.base

Base Envelope Widget

Attributes

TOOLTIPS

Classes

EnvelopeWidgetBase

Base class for envelope widgets in the JD-Xi editor

Module Contents

jdxi_editor.ui.widgets.envelope.base.TOOLTIPS[source]
class jdxi_editor.ui.widgets.envelope.base.EnvelopeWidgetBase(parameters: list[picomidi.sysex.parameter.address.AddressParameter], envelope_keys: list[str], create_parameter_slider: Callable, midi_helper: jdxi_editor.midi.io.helper.MidiIOHelper | None = None, address: jdxi_editor.midi.data.address.address.JDXiSysExAddress | None = None, controls: dict[picomidi.sysex.parameter.address.AddressParameter, jdxi_editor.ui.widgets.slider.Slider] | None = None, parent: PySide6.QtWidgets.QWidget | None = None)[source]

Bases: PySide6.QtWidgets.QWidget

Base class for envelope widgets in the JD-Xi editor

envelope_changed[source]
plot = None[source]
address = None[source]
midi_helper = None[source]
controls = None[source]
envelope[source]
_create_parameter_slider[source]
_params[source]
_keys[source]
_control_widgets = [][source]
setEnabled(enabled: bool)[source]
update()[source]

Update the envelope values and plot

_create_control_layout(slider_specs: list[jdxi_editor.ui.widgets.envelope.slider_spec.EnvControlSpec]) PySide6.QtWidgets.QGridLayout[source]

Create Control Layout

set_values(envelope: dict) None[source]

Update envelope values and trigger address redraw

Parameters:

envelope – dict

Returns:

None

emit_envelope_changed() None[source]

Emit the envelope changed signal

Returns:

None

on_control_changed(change: dict) None[source]

Control Change callback

Parameters:

change – dict envelope

Returns:

None

Emits:

dict pitch envelope parameters

on_plot_envelope_changed(envelope: dict)[source]
update_envelope_from_controls() None[source]

Update envelope values from slider controls.

Returns:

update_controls_from_envelope() None[source]

Update slider controls from envelope values.

Returns:

None

showEvent(event: PySide6.QtGui.QShowEvent) None[source]

When widget is shown, sync plot from current control values (e.g. after startup load).

apply_envelope(envelope: dict, source: str)[source]

Central state synchronizer. source: “controls” | “plot” | “sysex”

block_control_signals(state: bool)[source]
abstract refresh_plot_from_controls()[source]