jdxi_editor.midi.program.helper

This module defines the PresetHandler class, which extends PresetLoader to manage preset selection and navigation for a MIDI-enabled synthesizer.

Classes:

  • PresetHandler: Handles preset loading, switching, and signaling for UI updates.

Dependencies:

  • PySide6.QtCore (Signal, QObject) for event-driven UI interaction.

  • jdxi_manager.midi.data.presets.type.PresetType for managing preset types.

  • jdxi_manager.midi.preset.loader.PresetLoader as the base class for preset loading.

Functionality:

  • Loads presets via MIDI.

  • Emits signals when a preset changes (preset_changed).

  • Supports navigation through available presets (next_tone, previous_tone).

  • Retrieves current preset details (get_current_preset).

Usage:

This class is typically used within a larger MIDI control application to handle preset changes and communicate them to the UI and MIDI engine.

Classes

JDXiProgramHelper

Preset Loading Class

Module Contents

class jdxi_editor.midi.program.helper.JDXiProgramHelper(midi_helper: jdxi_editor.midi.io.helper.MidiIOHelper | None, channel: int)[source]

Bases: PySide6.QtCore.QObject

Preset Loading Class

program_changed[source]
_instance = None[source]
next_program()[source]

Increase the tone index and load the new program

previous_program()[source]

Decrease the tone index and load the new program.

get_current_program() tuple[str, int][source]

Get current program bank and number

Returns:

tuple[str, int]

load_program(bank_letter: str, program_number: int) None[source]

Load Program

Parameters:
  • bank_letter – str

  • program_number – int

Returns:

None

data_request() None[source]

Request the current value of the NRPN parameter from the device.