832926811b278d5c656957e1565acdde48522def kate Mon Apr 27 17:59:12 2020 -0700 Update GTEx gene track click handler and track settings to handle V8 (add Kidney Medulla tissue, support TPM and RPKM). refs #25130 diff --git src/hg/hgGtexTrackSettings/hgGtexTrackSettings.c src/hg/hgGtexTrackSettings/hgGtexTrackSettings.c index f09df09..6a79f6c 100644 --- src/hg/hgGtexTrackSettings/hgGtexTrackSettings.c +++ src/hg/hgGtexTrackSettings/hgGtexTrackSettings.c @@ -226,31 +226,31 @@ } static void printTissueTable(struct trackDb *tdb) /* Output HTML with tissue labels and colors, in 2 columns, to fit next to body map */ { char *version = gtexVersion(tdb->track); struct gtexTissue *tis, *tissues = gtexGetTissues(version); char var[512]; safef(var, sizeof var, "%s.%s", tdb->track, GTEX_TISSUE_SELECT); struct hash *selectedHash = cartHashList(cart, var); struct gtexTissue **tisTable = NULL; int count = slCount(tissues); AllocArray(tisTable, count); int i=0, col=0; int cols = 2; -int last = count/2 + 1; +int last = count/2 + count%2; puts( " \n" "
\n" "
Tissues\n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" "
\n" "
\n" " Click below or in Body Map to change tissues\n" @@ -427,37 +427,42 @@ parentTdb = trackDbLoadWhere(conn, TRACKDB, where); if (parentTdb) tdb->parent = parentTdb; } sqlDisconnect(&conn); return tdb; } static void doMiddle(struct cart *theCart) /* Send HTML with javascript to display the user interface. */ { cart = theCart; char *db = NULL, *genome = NULL, *clade = NULL; getDbGenomeClade(cart, &db, &genome, &clade, oldVars); database = db; +char *track = cartUsualString(cart, "g", "gtexGene"); +char *version = gtexVersion(track); // Start web page with new-style header -webStartGbNoBanner(cart, db, "Genome Browser GTEx Track Settings"); + +char pageTitle[200]; +safef(pageTitle, sizeof pageTitle, "Genome Browser GTEx Gene %s Track Settings", version); +webStartGbNoBanner(cart, db, pageTitle); + puts(""); // NOTE: This will likely go to web.c puts(""); -char *track = cartUsualString(cart, "g", "gtexGene"); struct trackDb *tdb = getTrackDb(db, track); if (!tdb) errAbort("No GTEx track %s found in database %s\n", track, db); // Container for bootstrap grid layout puts( "
\n"); // Print form with configuration HTML, and track description printf( "
\n\n", hgTracksName(), cartUsualString(cart, "formMethod", "POST")); printTrackHeader(db, tdb); printTrackConfig(tdb); puts(