5dc1d6e658ab009f27314e192340275a6bb70237 max Tue Jun 2 16:20:48 2026 -0700 Add colorFields trackDb setting for bigBed/bigGenePred color scheme switching Adds a new trackDb statement `colorFields` that renders a "Color by:" dropdown in the track controls page, letting users switch among multiple pre-computed color schemes stored as extra bigBed fields containing R,G,B strings. The `default="label"` key renames the standard itemRgb option in the dropdown. Other entries name extra bigBed fields whose R,G,B values override itemRgb when selected. When a non-default scheme is active, a "(Coloring by: label)" suffix appears in the track long label. Changes: - hui.c/hui.h: new colorFieldsCfgUi() rendered inside bedScoreCfgUi() for bigBed - bigBedTrack.c: colorFieldIdx lookup + per-item filterColor override + longLabel suffix - tagTypes.tab: register colorFields for bigBed and bigGenePred - trackDbLibrary.shtml, trackDbDoc.html, trackDbHub.v3.html, changes.html: documentation refs #26253 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> diff --git src/hg/htdocs/goldenPath/help/trackDb/trackDbDoc.html src/hg/htdocs/goldenPath/help/trackDb/trackDbDoc.html index c2773cc5da5..bd6ef65138a 100755 --- src/hg/htdocs/goldenPath/help/trackDb/trackDbDoc.html +++ src/hg/htdocs/goldenPath/help/trackDb/trackDbDoc.html @@ -482,30 +482,37 @@ </div> </TD></TR> <TR VALIGN=TOP><TD class="highlightPriority"><A name="highlightPriority"></A> <A name="highlightPriority.fieldName"></A><IMG class='toggle detail'> <div class="format"> <code>highlightPriority.<fieldName> <number></code><BR> </div> </TD></TR> <TR VALIGN=TOP><TD class="filterBy"><A name="filterBy"></A><IMG class='toggle detail'> <div class="format"><code>filterBy <field1:title=[+]opt1a...> [field2:title=[+]opt2a...]</code></div> </TD></TR> <TR VALIGN=TOP><TD class="itemRgb"><A name="itemRgb"></A><IMG class='toggle detail'> <div class="format"><code>itemRgb on</code></div> </TD></TR> + + <TR VALIGN=TOP><TD class="colorFields"><A name="colorFields"></A><IMG class='toggle detail'> + <div class="format"> + <code>colorFields default="<label>" <fieldName>="<label>" ...</code> + </div> + </TD></TR> + <TR VALIGN=TOP><TD class="maxItems"><A name="maxItems"></A><IMG class='toggle detail'> <div class="format"><code>maxItems <integer></code></div> </TD></TR> <TR VALIGN=TOP><TD class="maxWindowCoverage"> <A name="maxWindowCoverage"></A><IMG class='toggle detail'> <div class="format"><code>maxWindowCoverage <integer></code></div> </TD></TR> <TR VALIGN=TOP><TD class="maxWindowToDraw"> <A name="maxWindowToDraw"></A><IMG class='toggle detail'> <div class="format"><code>maxWindowToDraw <integer></code></div> </TD></TR> <TR VALIGN=TOP><TD class="minGrayLevel"><A name="minGrayLevel"></A><IMG class='toggle detail'> <div class="format"><code>minGrayLevel <1-9></code></div> </TD></TR> <TR VALIGN=TOP><TD class="noScoreFilter"><A name="noScoreFilter"></A><IMG class='toggle detail'>