Customize the table columns independently in the cluster and similarity views
@rossant is already working on this.
Since Oct 7, 2019.
- Dominant language
- Python
- Stars
- 430
- Forks
- 187
- Avg merge
- 2h 31m
- Merged PRs (30d)
- 2
Description
Problem
Cluster View and Similarity View currently derive their columns from one shared
Supervisor.columns list. A plugin can replace that shared list, but users
cannot arrange the tables independently in the GUI. This makes it difficult to
keep the metrics most relevant to the current curation task visible without
changing both views together.
This issue covers presentation of existing columns. It does not change how
metrics are computed or which fields are exported.
Phase 1: movable, persistent layouts
- Allow users to drag metric headers left and right in Cluster View, Similarity
View, and Merge View. - Keep each view's column order and widths independent.
- Persist layouts across table refreshes and application restarts.
- Store layouts by semantic column name rather than numeric section index, so
plugin-provided, newly added, and missing columns are handled safely. - Keep
idpinned as the first column. - Keep
similarityavailable in Similarity View. - Provide a reset-to-default layout action for each view.
- Treat ordering as visual state only: sorting, filtering, selection, metric
availability, and export behavior must continue to use the logical model.
When restoring a saved layout, ignore names that are no longer available and
append newly available columns in their default order.
Phase 2: optional visibility controls
- Add per-view show/hide controls for optional columns.
- Keep required identity/ranking columns visible.
- Define whether a hidden column may remain the active sort and how that state
is communicated. - Keep hidden metrics available to filtering and export unless explicitly
configured otherwise outside this issue.
Acceptance criteria for Phase 1
- Reordering one view does not reorder another view.
- A dragged header does not accidentally change the active sort.
- Sort indicators continue to identify the correct logical column.
- Order and widths survive model resets, Similarity refreshes, Merge View
reopening, and application restart. - Saved layouts recover gracefully when plugins or datasets add or remove
columns. - Reset restores the current default order and widths.
- Focused Qt regression tests cover independent state, persistence, schema
reconciliation, and sorting after a drag.
This expands the earlier request from #868 for customizable Cluster View
columns into a native, per-view workflow.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.