677dcea9305f7851a04cc8d7204479ffa8e0554c max Fri May 16 08:46:02 2025 -0700 fixing right-click exon options for gene pred tracks, refs #35756 diff --git src/hg/hgTracks/simpleTracks.c src/hg/hgTracks/simpleTracks.c index be2d0a613e3..d6e023879ed 100644 --- src/hg/hgTracks/simpleTracks.c +++ src/hg/hgTracks/simpleTracks.c @@ -3060,48 +3060,50 @@ int w = codonex - codonsx; if (w > 0) { // temporarily remove the mouseOver from the lf, since linkedFeatureMapItem will always // prefer a lf->mouseOver over the itemName char *oldMouseOver = lf->mouseOver; lf->mouseOver = NULL; dyStringClear(codonDy); // if you change this text, make sure you also change hgTracks.js:mouseOverToLabel if (!isEmpty(existingText)) dyStringPrintf(codonDy, "Transcript: %s
", existingText); int codonHgvsIx = (codon->codonIndex - 1) * 3; if (codonHgvsIx >= 0) dyStringPrintf(codonDy, "cDNA: c.%d-%d
", codonHgvsIx + 1, codonHgvsIx + 3); + // if you change the text below, also change hgTracks:mouseOverToExon dyStringPrintf(codonDy, "Strand: %c
Exon: %s %d of %d
%s", strandChar, exonIntronText, exonIntronNumber, numExonIntrons, phaseText); tg->mapItem(tg, hvg, item, codonDy->string, tg->mapItemName(tg, item), sItem, eItem, codonsx, y, w, heightPer); // and restore the mouseOver lf->mouseOver = oldMouseOver; } } } } } else // either an intron, or else an exon zoomed out too far for codons (or no codons) { char *sep = ""; if (!isEmpty(existingText)) sep = "
"; // if you change this text, make sure you also change hgTracks.js:mouseOverToLabel + // if you change the text below, also change hgTracks:mouseOverToExon safef(mouseOverText, sizeof(mouseOverText), "Transcript: %s%sStrand: %c
Exon: %s %d of %d
%s", existingText, sep, strandChar, exonIntronText, exonIntronNumber, numExonIntrons, phaseText); // temporarily remove the mouseOver from the lf, since linkedFeatureMapItem will always // prefer a lf->mouseOver over the itemName char *oldMouseOver = lf->mouseOver; lf->mouseOver = NULL; tg->mapItem(tg, hvg, item, mouseOverText, tg->mapItemName(tg, item), sItem, eItem, sx, y, w, heightPer); // and restore the old mouseOver lf->mouseOver = oldMouseOver; picStart = ex; // prevent pileups. is this right? add 1? does it work? // JC: Why do we care about pileups? First mapbox drawn wins. }