spacr.qt.widgets.metadata_mapper¶
One-dialog recovery for missing metadata columns.
Classes¶
Resolve every missing canonical column in one editable table. |
Functions¶
Resolve a frame interactively; cancellation remains an explicit stop. |
Module Contents¶
- class spacr.qt.widgets.metadata_mapper.MetadataColumnDialog(request: spacr.metadata_resolution.MetadataRequest, parent: PySide6.QtWidgets.QWidget | None = None)[source]¶
Bases:
PySide6.QtWidgets.QDialogResolve every missing canonical column in one editable table.
- Parameters:
request – the canonical columns still unresolved, and the candidates offered for each. Held as
request, so a caller reads the user’s choices back off the same object it passed in.parent – parent widget.
Build the dialog matching a table’s columns onto the ones spaCR needs.
Every missing column is asked for at once, so the run can continue without restarting.
- Parameters:
request – what is missing, and the example values to preview from.
parent – parent widget, or
None.
- decision() spacr.metadata_resolution.MetadataDecision[source]¶
Which source column the user mapped to each metadata field.
- Returns:
the decision.
- spacr.qt.widgets.metadata_mapper.resolve_metadata_with_dialog(frame, required: Iterable[str], *, parent: PySide6.QtWidgets.QWidget | None = None, cache_key: str | None = None) spacr.metadata_resolution.ResolutionResult[source]¶
Resolve a frame interactively; cancellation remains an explicit stop.
- Parameters:
frame – source metadata frame, passed to
spacr.metadata_resolution.resolve_metadata_columns().required – canonical columns that must be present in the result; a dialog asks for the mapping of each one that cannot be resolved, and cancelling it raises
MetadataResolutionRequired.
Nested helpers¶
- resolve_metadata_with_dialog.prompt(request: MetadataRequest) MetadataDecision¶
Ask the user how to map one metadata column.
spacr/qt/widgets/metadata_mapper.py:200