b3660684338a45c565fb79c89a72479941b7b2bd braney Thu Jun 2 14:31:26 2016 -0700 some tweaks to longRange support #15232 diff --git src/hg/hgTracks/longRangeTrack.c src/hg/hgTracks/longRangeTrack.c index d2adfc2..8a7597e 100644 --- src/hg/hgTracks/longRangeTrack.c +++ src/hg/hgTracks/longRangeTrack.c @@ -47,30 +47,34 @@ if (!sOnScreen) continue; int height = tg->height/2; if (tg->visibility == tvDense) height = tg->height; unsigned yPos = yOff + height; hvGfxLine(hvg, sx, yOff, sx, yPos, MG_BLUE); if (tg->visibility == tvFull) { mapBoxHgcOrHgGene(hvg, longRange->s, longRange->s, sx - 2, yOff, 4, tg->height/2, tg->track, itemBuf, statusBuf, NULL, TRUE, NULL); safef(buffer, sizeof buffer, "%s:%d", longRange->eChrom, longRange->e); hvGfxTextCentered(hvg, sx, yPos + 2, 4, 4, MG_BLUE, font, buffer); + int width = vgGetFontStringWidth(hvg->vg, font, buffer); + int height = vgGetFontPixelHeight(hvg->vg, font); + mapBoxHgcOrHgGene(hvg, longRange->s, longRange->s, sx - width/2, yPos, width, height, + tg->track, itemBuf, statusBuf, NULL, TRUE, NULL); } } else { boolean eOnScreen = (longRange->e >= seqStart) && (longRange->e < seqEnd); if (!(sOnScreen || eOnScreen)) continue; if (eOnScreen) ex = (longRange->e - seqStart) * scale + xOff; double longRangeWidth = longRange->e - longRange->s; int peak = (tg->height - 15) * ((double)longRangeWidth / maxWidth) + yOff + 10; if (tg->visibility == tvDense) peak = yOff + tg->height;