dd8801fc68f0f93f889aa15436b63dbbfc13aa04 max Mon Apr 22 17:06:03 2024 -0700 add 'in new tab' link to hgBlat output, user asked me after seven years at my poster why we never fixed this. What a life. refs #19668 diff --git src/hg/hgBlat/hgBlat.c src/hg/hgBlat/hgBlat.c index 309b275..818f494 100644 --- src/hg/hgBlat/hgBlat.c +++ src/hg/hgBlat/hgBlat.c @@ -657,47 +657,61 @@ int tLen = strlen(psl->tName); maxTChromNameSize = max(maxTChromNameSize,tLen); } maxQChromNameSize = max(maxQChromNameSize,5); maxTChromNameSize = max(maxTChromNameSize,5); printf(" ACTIONS QUERY "); spaceOut(stdout, maxQChromNameSize - 5); printf("SCORE START END QSIZE IDENTITY CHROM "); spaceOut(stdout, maxTChromNameSize - 5); printf(" STRAND START END SPAN\n"); - printf("---------------------------------------------------------------------------------------------"); + printf("----------------------------------------------------------------------------------------------------------"); repeatCharOut(stdout, '-', maxQChromNameSize - 5); repeatCharOut(stdout, '-', maxTChromNameSize - 5); printf("\n"); for (psl = pslList; psl != NULL; psl = psl->next) { + char *browserHelp = "Open a Genome Browser showing this match"; + char *helpText = "Open a Genome Browser with the BLAT results, but in a new internet browser tab"; + // XX putting SVG into C code like this is ugly. define somewhere? maybe have globals for these? + char *icon = ""; + if (customText) - printf("", - browserUrl, psl->tName, psl->tStart + 1, psl->tEnd, database, + { + printf("browser ", + browserHelp, browserUrl, psl->tName, psl->tStart + 1, psl->tEnd, database, customText, uiState, unhideTrack); + printf("new tab%s ", + helpText, browserUrl, psl->tName, psl->tStart + 1, psl->tEnd, database, + customText, unhideTrack, icon); + } else - printf("", - browserUrl, psl->tName, psl->tStart + 1, psl->tEnd, database, + { + printf("browser ", + browserHelp, browserUrl, psl->tName, psl->tStart + 1, psl->tEnd, database, pslName, faName, uiState, unhideTrack); - printf("browser "); + printf("new tab%s ", + helpText, browserUrl, psl->tName, psl->tStart + 1, psl->tEnd, database, + pslName, faName, unhideTrack, icon); + } printf("", hgcUrl, psl->tStart, pslName, cgiEncode(faName), psl->qName, psl->tName, psl->tStart, psl->tEnd, database, uiState); printf("details "); printf("%s",psl->qName); spaceOut(stdout, maxQChromNameSize - strlen(psl->qName)); printf(" %5d %5d %5d %5d %5.1f%% ", pslScore(psl), psl->qStart+1, psl->qEnd, psl->qSize, 100.0 - pslCalcMilliBad(psl, TRUE) * 0.1); printf("%s",psl->tName); spaceOut(stdout, maxTChromNameSize - strlen(psl->tName)); printf(" %-2s %9d %9d %6d", psl->strand, psl->tStart+1, psl->tEnd, psl->tEnd - psl->tStart);