1f1b38c1c05c0e0011260a38a9eb926cd6038afd max Tue Mar 12 14:00:43 2013 -0700 new pubsBlat format allows to specify mouseover text and labels as part of primary table, without join. Also allows to define classes of papers and color them via a second table diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c index 139ce9b..1508575 100644 --- src/hg/hgTrackUi/hgTrackUi.c +++ src/hg/hgTrackUi/hgTrackUi.c @@ -1985,38 +1985,40 @@ puts(" Show reverse complements of motifs also"); puts("
Options for slides and presentations:"); puts("
Title: "); cgiMakeTextVar(titleVar, title, 30); puts("
Display: "); cgiMakeCheckBox(BASE_SHOWASM, showAsm); puts(" assembly "); cgiMakeCheckBox(BASE_SHOWPOS, showPos); puts(" position"); } void pubsUi(struct trackDb *tdb) /* UI for pubs match track */ { -#define NUM_YEARS 30 // similar to google scholar, which goes back to 20 years +#define NUM_YEARS 15 // similar to google scholar, which goes back to 20 years #define PUBS_KEYWORDS_TAG "pubsKeywords" #define PUBS_YEAR_TAG "pubsYear" +#define PUBS_COLORBY_TAG "pubsColorBy" // get current set filters from cart char *keywords = cartUsualStringClosestToHome(cart, tdb, FALSE, PUBS_KEYWORDS_TAG, ""); char *yearFilter = cartUsualStringClosestToHome(cart, tdb, FALSE, PUBS_YEAR_TAG, "anytime"); +char *colorBy = cartUsualStringClosestToHome(cart, tdb, FALSE, PUBS_COLORBY_TAG, "topic"); // print keyword input box puts("
Filter articles by keywords in abstract, title or authors:");
char cgiVar[128];
safef(cgiVar,sizeof(cgiVar),"%s.%s",tdb->track,PUBS_KEYWORDS_TAG);
cgiMakeTextVar(cgiVar, keywords, 45);
// generate strings like "since
\n");
printf("Show articles published ");
safef(cgiVar,sizeof(cgiVar),"%s.%s",tdb->track,PUBS_YEAR_TAG);
cgiDropDownWithTextValsAndExtra(cgiVar, text, values, NUM_YEARS + 1, yearFilter, NULL);
+
+// print dropdown box with "since
\n"); +printf("Color sequence matches by "); +char *colorText[3] = {"topic", "impact of journal", "year"}; +char *colorVals[3] = {"topic", "impact", "year"}; +safef(cgiVar,sizeof(cgiVar),"%s.%s",tdb->track,PUBS_COLORBY_TAG); +cgiDropDownWithTextValsAndExtra(cgiVar, colorText, colorVals, 3, colorBy, NULL); puts("
\n"); } void oligoMatchUi(struct trackDb *tdb) /* UI for oligo match track */ { char *oligo = cartUsualString(cart, oligoMatchVar, oligoMatchDefault); puts("Short (2-30 base) sequence:"); cgiMakeTextVar(oligoMatchVar, oligo, 45); } void cutterUi(struct trackDb *tdb) /* UI for restriction enzyme track */ {