waveform_editor.gui.selector.selector.WaveformSelector

class waveform_editor.gui.selector.selector.WaveformSelector(main_gui)

Bases: Viewer

Panel containing a dynamic waveform selection UI from YAML data.

__init__(main_gui)

Methods

__init__(main_gui)

on_select(event)

Handles the selection and deselection of waveforms in the check button groups.

refresh()

Discard the current UI state and re-build from self.config.

remove_group(path)

Remove the UI element for the group at the specified path.

servable([title, location, area, target])

Serves the object or adds it to the configured pn.state.template if in a panel serve context, writes to the DOM if in a pyodide context and returns the Panel object to allow it to display itself in a notebook context.

set_selection(new_selection)

Update the active selection.

show([title, port, address, ...])

Starts a Bokeh server and displays the Viewable in a new tab.

Attributes

multiselect

name

param

selection

visible

on_select(event)

Handles the selection and deselection of waveforms in the check button groups.

Parameters:
event

list containing the new selection.

refresh()

Discard the current UI state and re-build from self.config.

Should be called after loading a new configuration.

remove_group(path: list[str])

Remove the UI element for the group at the specified path.

servable(title: str | None = None, location: bool | Location = True, area: str = 'main', target: str | None = None) Viewable

Serves the object or adds it to the configured pn.state.template if in a panel serve context, writes to the DOM if in a pyodide context and returns the Panel object to allow it to display itself in a notebook context.

Parameters

titlestr

A string title to give the Document (if served as an app)

locationboolean or panel.io.location.Location

Whether to create a Location component to observe and set the URL location.

area: str (deprecated)

The area of a template to add the component too. Only has an effect if pn.config.template has been set.

target: str

Target area to write to. If a template has been configured on pn.config.template this refers to the target area in the template while in pyodide this refers to the ID of the DOM node to write to.

Returns

The Panel object itself

set_selection(new_selection: list[str])

Update the active selection.

show(title: str | None = None, port: int = 0, address: str | None = None, websocket_origin: str | None = None, threaded: bool = False, verbose: bool = True, open: bool = True, location: bool | Location = True, **kwargs) threading.Thread | Server

Starts a Bokeh server and displays the Viewable in a new tab.

Parameters

titlestr | None

A string title to give the Document (if served as an app)

port: int (optional, default=0)

Allows specifying a specific port

addressstr

The address the server should listen on for HTTP requests.

websocket_origin: str or list(str) (optional)

A list of hosts that can connect to the websocket. This is typically required when embedding a server app in an external web site. If None, "localhost" is used.

threaded: boolean (optional, default=False)

Whether to launch the Server on a separate thread, allowing interactive use.

verbose: boolean (optional, default=True)

Whether to print the address and port

openboolean (optional, default=True)

Whether to open the server in a new browser tab

locationboolean or panel.io.location.Location

Whether to create a Location component to observe and set the URL location.

Returns

server: bokeh.server.Server or panel.io.server.StoppableThread

Returns the Bokeh server instance or the thread the server was launched on (if threaded=True)


Last update: 2026-05-21