CMRT 30: Library table CMRT track name column - #41
Open
Swarnadip-Kar wants to merge 10 commits into
Open
Conversation
Coverage Report for CI Build 28698862293Coverage decreased (-0.04%) to 30.251%Details
Uncovered Changes
Coverage Regressions3 previously-covered lines in 2 files lost coverage.
Coverage Stats
💛 - Coveralls |
Swarnadip-Kar
force-pushed
the
cmrt-library-table-column
branch
3 times, most recently
from
July 3, 2026 08:46
c99edeb to
4b7b756
Compare
Swarnadip-Kar
force-pushed
the
cmrt-library-table-column
branch
from
July 3, 2026 21:17
4b7b756 to
4d2b15e
Compare
Swarnadip-Kar
changed the base branch from
cmrt-fixup-threshold-reanalyze-timestamp
to
gsoc-cmrt-phase1.5
July 3, 2026 21:18
Swarnadip-Kar
force-pushed
the
cmrt-library-table-column
branch
from
July 4, 2026 07:13
4d2b15e to
0b08b94
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Introduces a CMRT track name column to the main library table,
showing the canonical track’s “Artist – Title” for any track in a
multi-member CMRT group, along with a color swatch and tooltip.
cmrt_groups/cmrt_members already exist from Phase 1 and are
populated by the grouping pipeline (CMRT 24‑28).
Changes
trackschema.h
cmrt_is_canonical, cmrt_offset) produced by the library_view
self‑join, following the pattern of LIBRARYTABLE_COVERART.
columncache.h / columncache.cpp
two internal‑only entries (CANONICAL, OFFSET) with no display
name and width 0. The visible column uses kDefaultColumnWidth*3
to accommodate the “Artist – Title” text alongside the swatch.
librarytablemodel.cpp
and a self‑join on library AS cmrt_canonical.
cmrt_is_canonical (cg.canonical_track_id = library.id), and a
gated cmrt_offset (NULL unless group_id is present).
library.mixxx_deleted to avoid ambiguity with the self‑join.
same reason.
(isColumnInternal).
most libraries have few multi‑member CMRT groups.
basetracktablemodel.h
(same style as the existing COVERART entry).
basetracktablemodel.cpp
Qt::ToolTipRole (canonical status or offset text) for the CMRT
column, reading sibling values via rawSiblingValue().
trackmodel.h / basesqltablemodel.cpp
the append‑only contract for controller‑script compat).
cmrtdelegate.h / cmrtdelegate.cpp (new)
member) followed by elided canonical‑track text.
lone‑member group).
color is a distinct orange, not an error red.
CMakeLists.txt
Notes for reviewers
(0x32BE44) rather than introducing a new green, for visual
consistency with cue colours elsewhere in Mixxx.
cues for CMRT members” preference) is explicitly out of scope
here—it requires its own design pass.
Depends on: cmrt-fixup-threshold-reanalyze-timestamp (#39)