src/hg/hgc/peakClusters.c 1.6
1.6 2010/05/20 03:22:12 kent
Writing out table of cell types and single letter abbreviations on factorSource details page. Removing some debugging.
Index: src/hg/hgc/peakClusters.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/hgc/peakClusters.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -b -B -U 4 -r1.5 -r1.6
--- src/hg/hgc/peakClusters.c 18 May 2010 22:39:08 -0000 1.5
+++ src/hg/hgc/peakClusters.c 20 May 2010 03:22:12 -0000 1.6
@@ -68,9 +68,8 @@
{
webPrintLabelCell(displayGroup->name);
}
webPrintLabelCell("description");
-printf("</TR><TR>\n");
}
static void printOutOfClusterTableHeader(struct slName *displayGroupList)
/* Print out header fields for table of tracks not in cluster */
@@ -81,9 +80,8 @@
{
webPrintLabelCell(displayGroup->name);
}
webPrintLabelCell("description");
-printf("</TR><TR>\n");
}
static void printTableInfo(struct trackDb *tdb, struct trackDb *clusterTdb,
struct slName *displayGroupList)
@@ -95,17 +93,21 @@
char *label = findGroupLabel(tdb, displayGroup->name);
char *linkedLabel = compositeLabelWithVocabLink(database, tdb, tdb, displayGroup->name, label);
webPrintLinkCell(linkedLabel);
}
-webPrintLinkCell(tdb->longLabel);
+webPrintLinkCellStart();
+printf("%s ", tdb->longLabel);
+compositeMetadataToggle(database, tdb, "...", TRUE, FALSE);
+webPrintLinkCellEnd();
}
static void showOnePeakOrMiss(struct trackDb *tdb, struct trackDb *clusterTdb,
struct encodePeak *peakList, struct slName *displayGroupList, int *pIx)
/* Show info on track and peak. Peak may be NULL in which case fewer columns will be printed. */
{
struct encodePeak *peak;
*pIx += 1;
+printf("</TR><TR>\n");
webPrintIntCell(*pIx);
if (peakList)
{
webPrintLinkCellRightStart();
@@ -114,9 +116,8 @@
printf(",%g", peak->signalValue);
webPrintLinkCellEnd();
}
printTableInfo(tdb, clusterTdb, displayGroupList);
-printf("</TR><TR>\n");
}
static boolean showMatchingTrack(char *track, struct bed *cluster, struct sqlConnection *conn,
struct trackDb *clusterTdb, struct slName *displayGroupList, boolean invert, int *pRowIx)
@@ -244,10 +245,10 @@
}
printf("<A HREF=\"%s&g=htcListItemsAssayed&table=%s\" TARGET_blank>", hgcPathAndSettings(),
tdb->track);
printf("List all items assayed");
-webNewSection("Track Description");
printf("</A><BR>\n");
+webNewSection("Track Description");
printTrackHtml(tdb);
cartWebEnd();
hFreeConn(&conn);
}
@@ -290,35 +291,28 @@
printf("<B>Factor:</B> %s<BR>\n", cluster->name);
printf("<B>Cluster Score (out of 1000):</B> %d<BR>\n", cluster->score);
printPos(cluster->chrom, cluster->chromStart, cluster->chromEnd, NULL, TRUE, NULL);
- char *sourceTable = trackDbRequiredSetting(tdb, "sourceTable");
- uglyf("<B>sourceTable:</B> %s<BR>\n", sourceTable);
-
/* Get list of tracks we'll look through for input. */
char *inputTracks = trackDbRequiredSetting(tdb, "inputTracks");
struct slName *inTrackList = stringToSlNames(inputTracks);
- uglyf("<B>inputTracks:</B> %s (%d)<BR>\n", inputTracks, slCount(inTrackList));
/* Get list of subgroups to select on */
char *inputTracksSubgroupSelect = trackDbRequiredSetting(tdb, "inputTracksSubgroupSelect");
struct slPair *selGroupList = slPairFromString(inputTracksSubgroupSelect);
- uglyf("<B>inputTracksSubgroupSelect:</B> %s (%d)<BR>\n", inputTracksSubgroupSelect, slCount(selGroupList));
/* Get list of subgroups to display */
char *inputTracksSubgroupDisplay = trackDbRequiredSetting(tdb, "inputTracksSubgroupDisplay");
struct slName *displayGroupList = stringToSlNames(inputTracksSubgroupDisplay);
/* Figure out factor ID and add it as selection criteria*/
char *factorId = findFactorId(inTrackList, cluster->name);
- uglyf("<B>cluster->id:</B> %s <B>factorId:</B> %s<BR>\n", cluster->name, factorId);
struct slPair *factorSel = slPairNew("factor", cloneString(factorId));
slAddHead(&selGroupList, factorSel);
/* Get list of tracks that match criteria. */
struct slName *matchTrackList = encodeFindMatchingSubtracks(inTrackList, selGroupList);
struct slName *matchTrack;
- uglyf("<B>matchTrackList:</B> %d elements<BR>\n", slCount(matchTrackList));
/* In a new section put up list of hits. */
webNewSection("List of %s Items in Cluster", cluster->name);
webPrintLinkTableStart();
@@ -343,7 +337,27 @@
}
webPrintLinkTableEnd();
webNewSection("Track Description");
+
+ /* Print out table of abbreviations. */
+ char *sourceTable = trackDbRequiredSetting(tdb, "sourceTable");
+ printf("<B>Table of abbreviations for cells</B><BR>\n");
+ safef(query, sizeof(query), "select name,description from %s order by name", sourceTable);
+ struct sqlResult *sr = sqlGetResult(conn, query);
+ webPrintLinkTableStart();
+ webPrintLabelCell("Symbol");
+ webPrintLabelCell("Cell Type");
+ while ((row = sqlNextRow(sr)) != NULL)
+ {
+ printf("</TR><TR>\n");
+ char *name = row[0];
+ char *description = row[1];
+ webPrintLinkCell(name);
+ webPrintLinkCell(description);
+ }
+ sqlFreeResult(&sr);
+ webPrintLinkTableEnd();
+
}
}