11049a7e4e1de1b3218ec8184cdf5e9df8658681 braney Mon Jul 20 10:05:02 2026 -0700 quickLift: highlight the clicked difference on the hgc details page hgTracks/quickLift.c now encodes the specific difference in each mapbox item name as chainId.type.chromStart.chromEnd (the "identical" region boxes keep the bare chain id). hgc.c parses that item name back into a chain id plus the clicked region, bolds the matching row in the Deletions/Insertions/Doubles/ Mismatches tables, and prints a note telling the user which row they clicked. Also adds bigQuickLiftChain to the set of types that suppress the details-page header item. diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c index a99485e8b78..bdc8a98ff62 100644 --- src/hg/hgc/hgc.c +++ src/hg/hgc/hgc.c @@ -4801,30 +4801,50 @@ printf("
| %s Position | %s Position | Bases | Alignment |
| %s | %s | %.*s | ", ourPos, otherPos, hr->otherBaseCount, hr->otherBases); + char *hilite = (clickStart >= 0 && hr->chromStart == clickStart && hr->chromEnd == clickEnd) ? " style='font-weight:bold'" : ""; + printf(" |
| %s | %s | %.*s | ", hilite, ourPos, otherPos, hr->otherBaseCount, hr->otherBases); hgcAnchorSomewhereExt("htcChainAli", item, tdb->track, chain->tName, hr->chromStart - 10, hr->chromEnd + 10, tdb->track); printf("alignment |
| %s Position | %s Position | Bases | Alignment |
| %s | %s | %.*s | ", ourPos, otherPos, hr->baseCount, hr->bases); + char *hilite = (clickStart >= 0 && hr->chromStart == clickStart && hr->chromEnd == clickEnd) ? " style='font-weight:bold'" : ""; + printf(" |
| %s | %s | %.*s | ", hilite, ourPos, otherPos, hr->baseCount, hr->bases); hgcAnchorSomewhereExt("htcChainAli", item, tdb->track, chain->tName, hr->chromStart - 10, hr->chromEnd + 10, tdb->track); printf("alignment |
| %s Position | %s Position | # Bases in %s | #Bases in %s | Alignment |
| %s | %s | %d | %d | ", ourPos, otherPos, hr->baseCount, hr->otherBaseCount); + char *hilite = (clickStart >= 0 && hr->chromStart == clickStart && hr->chromEnd == clickEnd) ? " style='font-weight:bold'" : ""; + printf(" |
| %s | %s | %d | %d | ", hilite, ourPos, otherPos, hr->baseCount, hr->otherBaseCount); hgcAnchorSomewhereExt("htcChainAli", item, tdb->track, chain->tName, hr->chromStart - 10, hr->chromEnd + 10, tdb->track); printf("alignment |
| %s Position | %s Position | Change | Alignment |
| %s | %s | %.*s -> %.*s | ", ourPos, otherPos, hr->otherBaseCount, hr->otherBases, hr->baseCount, hr->bases); + char *hilite = (clickStart >= 0 && hr->chromStart == clickStart && hr->chromEnd == clickEnd) ? " style='font-weight:bold'" : ""; + printf(" |
| %s | %s | %.*s -> %.*s | ", hilite, ourPos, otherPos, hr->otherBaseCount, hr->otherBases, hr->baseCount, hr->bases); hgcAnchorSomewhereExt("htcChainAli", item, tdb->track, chain->tName, hr->chromStart - 10, hr->chromEnd + 10, tdb->track); printf("alignment |