Skip to content

Right Panel

app.ui.qt.sections.right_panel

View source code

Module for right panel; implements the Qt presentation components.

See Also

Layer: Presentation. Context: Implements the qt presentation components at this architectural boundary.

RightControlPanel

Bases: QScrollArea

Scrollable panel containing Detection, Tracking, Preview, and Render controls.

Controls emit state changes and execution requests.

PARAMETER DESCRIPTION
parent

Optional owner widget.

TYPE: QWidget | None DEFAULT: None

Note

Preview controls affect the editor viewport only; Render controls define final export behavior and gate the optional live preview blur.

Example
panel = RightControlPanel()
Sample Preview

Sample preview of the right panel, some components are not shown.

Layer: Presentation. Context: Supports user interaction and delegates application work through presentation contracts.

box_safety_padding_pct_changed = Signal(float) class-attribute instance-attribute

chosen_labels_changed = Signal(str) class-attribute instance-attribute

model_changed = Signal(str) class-attribute instance-attribute

post_detection_padding_sec_changed = Signal(float) class-attribute instance-attribute

pre_detection_padding_sec_changed = Signal(float) class-attribute instance-attribute

privacy_features_enabled_changed = Signal(bool) class-attribute instance-attribute

reid_embedding_dim_changed = Signal(int) class-attribute instance-attribute

resist_box_shrinking_changed = Signal(bool) class-attribute instance-attribute

shrink_resistance_changed = Signal(float) class-attribute instance-attribute

start_tracking_requested = Signal(str, str) class-attribute instance-attribute

tracking_source_changed = Signal(str) class-attribute instance-attribute

tracking_strategy_changed = Signal(str) class-attribute instance-attribute

__init__(parent: QWidget | None = None) -> None

connect_signals_to_export_handler(export_handler: ExportHandler) -> None

Connect preview/render and export actions to the export handler.

PARAMETER DESCRIPTION
export_handler

Handler updating session settings and starting exports.

TYPE: ExportHandler

Note

Preview-only changes re-render the editor but do not affect export pixels.

Example

panel.connect_signals_to_export_handler(handler)

restore_session_settings(vm: SessionSettingsViewModel) -> None

Restore widgets from a session snapshot without emitting edits.

PARAMETER DESCRIPTION
vm

Settings view model for the active session.

TYPE: SessionSettingsViewModel

Note

Signal blockers prevent session writes while restoring; dependent controls are enabled explicitly after values have been assigned.

Example
panel.restore_session_settings(session.settings.as_view_model())

set_blur_strength_visible(visible: bool) -> None

Show or hide the blur-strength label and spin box.

PARAMETER DESCRIPTION
visible

Whether the controls should be visible.

TYPE: bool

set_detection_loading_state(is_loading: bool) -> None

Disable detection controls and show the model-loading spinner while loading.

PARAMETER DESCRIPTION
is_loading

Whether a detection model is currently loading.

TYPE: bool

set_detection_model_boxes(boxes: list[ModelSelectionViewModel]) -> None

Replace the available detection models and refresh the provider-filtered list.

PARAMETER DESCRIPTION
boxes

Model choices to make available in the detection model selector.

TYPE: list[ModelSelectionViewModel]

set_detection_progress(current: int, total: int, label: str = 'Detection', eta_msecs: float | None = None) -> None

Display detection completion percentage and optional elapsed-time estimate.

PARAMETER DESCRIPTION
current

Number of items completed.

TYPE: int

total

Total number of items; values below one use a denominator of one.

TYPE: int

label

Prefix shown in the progress-bar text.

TYPE: str DEFAULT: 'Detection'

eta_msecs

Optional remaining-time estimate in milliseconds.

TYPE: float | None DEFAULT: None

set_detection_progress_busy(is_busy: bool) -> None

Show or hide detection progress and reset it when work starts.

PARAMETER DESCRIPTION
is_busy

Whether detection work is active.

TYPE: bool

set_iou_widgets_visible(visible: bool) -> None

Show or hide the minimum-IoU label and spin box.

PARAMETER DESCRIPTION
visible

Whether the controls should be visible.

TYPE: bool

set_preview_blur_enabled(enabled: bool) -> None

Gate live preview blur on the Render panel's master blur setting.

PARAMETER DESCRIPTION
enabled

Whether export blur is enabled.

TYPE: bool

Note

Disabling the master does not alter preview_blur_enabled; it only disables the control and preview rendering.

Example

panel.set_preview_blur_enabled(False)

set_privacy_controls_enabled(privacy_enabled: bool, resist_shrinking: bool) -> None

Enable privacy options according to the master and anti-shrink toggles.

PARAMETER DESCRIPTION
privacy_enabled

Whether the Privacy Shield is active.

TYPE: bool

resist_shrinking

Whether anti-shrink behavior is selected.

TYPE: bool

Note

The master checkbox remains interactive. Shrink resistance requires both toggles, while temporal padding and safety margin require only the master toggle.

Example

panel.set_privacy_controls_enabled(True, True)

set_selected_detection_model(model_id: str) -> None

Select the model's provider and model entry without emitting a model-change signal.

PARAMETER DESCRIPTION
model_id

Model identifier, or "None" to select the all-providers entry.

TYPE: str

set_stitching_controls_enabled(enabled: bool) -> None

Enable gap-bridging parameters only while offline stitching is active.

PARAMETER DESCRIPTION
enabled

Whether the stitching checkbox is checked.

TYPE: bool

Note

The checkbox remains enabled so users can turn stitching back on.

Example

panel.set_stitching_controls_enabled(True)

set_tracking_config_warning_visible(visible: bool) -> None

Show or hide the tracking configuration warning.

PARAMETER DESCRIPTION
visible

Whether the warning label should be visible.

TYPE: bool

set_tracking_loading_state(is_loading: bool) -> None

Disable tracking controls while the tracking worker is running.

PARAMETER DESCRIPTION
is_loading

Whether tracking is currently loading or running.

TYPE: bool

set_tracking_progress(current: int, total: int, label: str = 'Tracking') -> None

Display the completed/total tracking count and corresponding percentage.

PARAMETER DESCRIPTION
current

Number of items completed.

TYPE: int

total

Total number of items; values below one use a denominator of one.

TYPE: int

label

Prefix shown in the progress-bar text.

TYPE: str DEFAULT: 'Tracking'

set_tracking_progress_busy(is_busy: bool, indeterminate: bool = False) -> None

Show tracking progress, selecting indeterminate or initial determinate mode.

PARAMETER DESCRIPTION
is_busy

Whether tracking work is active.

TYPE: bool

indeterminate

Whether to use Qt's continuously animated busy indicator.

TYPE: bool DEFAULT: False

Enable or disable the video-dependent controls as a group.

PARAMETER DESCRIPTION
is_enabled

Whether those controls should be enabled.

TYPE: bool DEFAULT: False