0513e85cc01843ecc411b86dfce9180a8d1acf37
max
  Thu Mar 22 17:40:16 2012 -0700
make individual sequences for publications track clickable, show alignments, correct mouseOvers // Also changs text that is shown for PDF Output in hgTracks (see email with Ann/Donna/Brian)
diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c
index fde2c5a..269b6e0 100644
--- src/hg/hgTracks/hgTracks.c
+++ src/hg/hgTracks/hgTracks.c
@@ -3601,31 +3601,31 @@
 if (!psOutput)
     {
     /* disable Convert function for CGB servers for the time being */
     if (!hIsCgbServer())
     if (liftOverChainForDb(database) != NULL)
         {
         hPrintf("<TD ALIGN=CENTER>&nbsp;&nbsp;<A HREF=\"../cgi-bin/hgConvert?%s&db=%s",
 		uiVars->string, database);
         hPrintf("\" class=\"topbar\">Convert</A>&nbsp;&nbsp;</TD>");
         }
     }
 
 if (!psOutput)
     {
     hPrintf("<TD ALIGN=CENTER>&nbsp;&nbsp;<A HREF=\"../cgi-bin/hgTracks?%s=%u&hgt.psOutput=on\" id='pdfLink' class=\"topbar\">%s</A>&nbsp;&nbsp;</TD>",cartSessionVarName(),
-        cartSessionId(cart), "PDF/PS");
+        cartSessionId(cart), "PDF");
     }
 
 if (!psOutput)
     {
     if (wikiLinkEnabled())
         {
         printf("<TD ALIGN=CENTER>&nbsp;&nbsp;<A HREF=\"../cgi-bin/hgSession?%s=%u"
         "&hgS_doMainPage=1\" class=\"topbar\">Session</A>&nbsp;&nbsp;</TD>",
         cartSessionVarName(), cartSessionId(cart));
         }
     }
 
 char ensVersionString[256];
 char ensDateReference[256];
 ensGeneTrackVersion(database, ensVersionString, ensDateReference,
@@ -4168,32 +4168,32 @@
     }
 }
 
 struct track *getTrackList( struct group **pGroupList, int vis)
 /* Return list of all tracks, organizing by groups.
  * If vis is -1, restore default groups to tracks.
  * Shared by hgTracks and configure page. */
 {
 struct track *track, *trackList = NULL;
 registerTrackHandlers();
 /* Load regular tracks, blatted tracks, and custom tracks.
  * Best to load custom last. */
 loadFromTrackDb(&trackList);
 if (pcrResultParseCart(database, cart, NULL, NULL, NULL))
     slSafeAddHead(&trackList, pcrResultTg());
-if (userSeqString != NULL) slSafeAddHead(&trackList, userPslTg());
-slSafeAddHead(&trackList, oligoMatchTg());
+if (userSeqString != NULL) 
+    slSafeAddHead(&trackList, userPslTg());
 if (restrictionEnzymesOk())
     {
     slSafeAddHead(&trackList, cuttersTg());
     }
 if (wikiTrackEnabled(database, NULL))
     {
     addWikiTrack(&trackList);
     struct sqlConnection *conn = wikiConnect();
     if (sqlTableExists(conn, "variome"))
         addVariomeWikiTrack(&trackList);
     wikiDisconnect(&conn);
     }
 
 if (cartOptionalString(cart, "hgt.trackNameFilter") == NULL)
     { // If a single track was asked for and it is from a hub, then it is already in trackList
@@ -5482,61 +5482,59 @@
 
 return (ret == 0) ? 1 : ret;
 }
 
 void handlePostscript()
 /* Deal with Postscript output. */
 {
 struct tempName psTn, ideoPsTn;
 char *pdfFile = NULL, *ideoPdfFile = NULL;
 ZeroVar(&ideoPsTn);
 trashDirFile(&psTn, "hgt", "hgt", ".eps");
 
 if(!trackImgOnly)
     {
     hotLinks();
-    printf("<H1>PostScript/PDF Output</H1>\n");
-    printf("PostScript images can be printed at high resolution "
+    printf("<H1>PDF Output</H1>\n");
+    printf("PDF images can be printed with Acrobat Reader "
            "and edited by many drawing programs such as Adobe "
-           "Illustrator.");
+           "Illustrator or Inkscape.<BR> To save a file to disk, right-click "
+           "on one of the following links and select \"Save As...\".");
     }
 doTrackForm(psTn.forCgi, &ideoPsTn);
 
-// postscript
-printf("<UL>\n");
-printf("<LI><A HREF=\"%s\">Click here</A> "
-       "to download the current browser graphic in PostScript.\n", psTn.forCgi);
-if (strlen(ideoPsTn.forCgi))
-    printf("<LI><A HREF=\"%s\">Click here</A> "
-           "to download the current chromosome ideogram in PostScript.\n", ideoPsTn.forCgi);
-printf("</UL>\n");
-
 pdfFile = convertEpsToPdf(psTn.forCgi);
 if (strlen(ideoPsTn.forCgi))
     ideoPdfFile = convertEpsToPdf(ideoPsTn.forCgi);
 if(pdfFile != NULL)
     {
-    printf("<BR>PDF can be viewed with Adobe Acrobat Reader.\n");
     printf("<UL>\n");
-    printf("<LI><A TARGET=_blank HREF=\"%s\">Click here</A> "
-       "to download the current browser graphic in PDF.\n", pdfFile);
+    printf("<LI><A TARGET=_blank HREF=\"%s\">"
+       "Download the current browser graphic</A> in PDF.\n", pdfFile);
     if (ideoPdfFile != NULL)
-        printf("<LI><A TARGET=_blank HREF=\"%s\">Click here</A> "
-               "to download the current chromosome ideogram in PDF.\n", ideoPdfFile);
+        printf("<LI><A TARGET=_blank HREF=\"%s\">"
+               "Download the current chromosome ideogram</A> in PDF.\n", ideoPdfFile);
     printf("</UL>\n");
     freez(&pdfFile);
     freez(&ideoPdfFile);
+    // postscript
+    printf("<P><SMALL>\n");
+    printf("We still provide postscript files: <A HREF=\"%s\">browser graphic</A> ", psTn.forCgi);
+    if (strlen(ideoPsTn.forCgi))
+        printf("and <A HREF=\"%s\">ideogram</A>", ideoPsTn.forCgi);
+    printf("</SMALL></P>\n");
+
     }
 else
     printf("<BR><BR>PDF format not available");
 
     printf("<a href='../cgi-bin/hgTracks'><input type='button' VALUE='Return to Browser'></a>\n");
 }
 
 boolean isGenome(char *pos)
 /* Return TRUE if pos is genome. */
 {
 pos = trimSpaces(pos);
 return(sameWord(pos, "genome") || sameWord(pos, "hgBatch"));
 }
 
 void setRulerMode()