1888f6dd81f220f2ccd0e49c9b8a9a817ae0618c kate Thu Nov 10 15:59:18 2016 -0800 Cleanup C code. refs #17369 diff --git src/hg/lib/gtexUi.c src/hg/lib/gtexUi.c index fba09a2..8833fa3 100644 --- src/hg/lib/gtexUi.c +++ src/hg/lib/gtexUi.c @@ -272,88 +272,132 @@ slReverse(&allTissues); makeGroupCheckboxes(name, NULL, allTissues); puts(""); char buf[512]; safef(buf, sizeof(buf), "%s%s", cgiMultListShadowPrefix(), name); cgiMakeHiddenVar(buf, "0"); } void gtexPortalLink(char *geneId) /* print URL to GTEX portal gene expression page using Ensembl Gene Id*/ { printf("" "View at GTEx portal\n", geneId); } -void gtexGeneUi(struct cart *cart, struct trackDb *tdb, char *track, char *title, boolean boxed) -/* GTEx (Genotype Tissue Expression) per gene data */ -{ -if (cartVarExists(cart, "ajax")) - isPopup = TRUE; - -boxed = cfgBeginBoxAndTitle(tdb, boxed, title); -printf("\n
",
- isPopup ? 75 : 100, boxed ?" width='100%'":"");
+/* Convenience functions shared by hgTrackUi and hgGtexTrackSettings. hgTrackUi is for now still
+ * available from right-click */
+void gtexGeneUiGeneLabel(struct cart *cart, char *track, struct trackDb *tdb)
+/* Radio buttons to select format of gene label */
+{
char cartVar[1024];
-char buf[512];
-
-/* Gene labels */
-printf(" ");
char *geneLabel = cartUsualStringClosestToHome(cart, tdb, isNameAtParentLevel(tdb, track),
GTEX_LABEL, GTEX_LABEL_DEFAULT);
printf("Label: ");
safef(cartVar, sizeof(cartVar), "%s.%s", track, GTEX_LABEL);
cgiMakeRadioButton(cartVar, GTEX_LABEL_SYMBOL , sameString(GTEX_LABEL_SYMBOL, geneLabel));
printf("%s ", "gene symbol");
cgiMakeRadioButton(cartVar, GTEX_LABEL_ACCESSION, sameString(GTEX_LABEL_ACCESSION, geneLabel));
printf("%s ", "accession");
cgiMakeRadioButton(cartVar, GTEX_LABEL_BOTH, sameString(GTEX_LABEL_BOTH, geneLabel));
printf("%s ", "both");
-printf(" \n");
+}
-/* Filter on coding genes */
-printf("");
-printf("Limit to protein coding genes:\n");
+void gtexGeneUiCodingFilter(struct cart *cart, char *track, struct trackDb *tdb)
+/* Checkbox to restrict display to protein coding genes */
+{
+char cartVar[1024];
+puts("Limit to protein coding genes:\n");
safef(cartVar, sizeof(cartVar), "%s.%s", track, GTEX_CODING_GENE_FILTER);
boolean isCodingOnly = cartCgiUsualBoolean(cart, cartVar, GTEX_CODING_GENE_FILTER_DEFAULT);
cgiMakeCheckBox(cartVar, isCodingOnly);
+}
-/* Show exons in gene model */
-printf(" Show GTEx gene model\n");
+void gtexGeneUiGeneModel(struct cart *cart, char *track, struct trackDb *tdb)
+/* Checkbox to enable display of GTEx gene model */
+{
+char cartVar[1024];
+puts(" Show GTEx gene model\n");
safef(cartVar, sizeof(cartVar), "%s.%s", track, GTEX_SHOW_EXONS);
boolean showExons = cartCgiUsualBoolean(cart, cartVar, GTEX_SHOW_EXONS_DEFAULT);
cgiMakeCheckBox(cartVar, showExons);
-printf(" ");
+}
-/* Data transform. When selected, the next control (view limits max) is disabled */
-printf("Log10 transform:\n");
+void gtexGeneUiLogTransform(struct cart *cart, char *track, struct trackDb *tdb)
+/* Checkbox to select log-transformed RPKM values */
+{
+char cartVar[1024];
+char buf[512];
+puts("Log10 transform:\n");
safef(cartVar, sizeof(cartVar), "%s.%s", track, GTEX_LOG_TRANSFORM);
boolean isLogTransform = cartCgiUsualBoolean(cart, cartVar, GTEX_LOG_TRANSFORM_DEFAULT);
safef(buf, sizeof buf, "onchange='gtexTransformChanged(\"%s\")'", track);
cgiMakeCheckBoxJS(cartVar, isLogTransform, buf);
+}
-/* Viewing limits max. This control is disabled if log transform is selected */
-// construct class so JS can toggle
+void gtexGeneUiViewLimits(struct cart *cart, char *track, struct trackDb *tdb)
+/* Set viewing limits if log transform not checked */
+{
+char cartVar[1024];
+char buf[512];
+boolean isLogTransform = cartCgiUsualBoolean(cart, cartVar, GTEX_LOG_TRANSFORM_DEFAULT);
safef(buf, sizeof buf, "%sViewLimitsMaxLabel %s", track, isLogTransform ? "disabled" : "");
-printf(" View limits maximum:\n", buf);
+printf("View limits maximum:\n", buf);
safef(cartVar, sizeof(cartVar), "%s.%s", track, GTEX_MAX_LIMIT);
int viewMax = cartCgiUsualInt(cart, cartVar, GTEX_MAX_LIMIT_DEFAULT);
cgiMakeIntVarWithExtra(cartVar, viewMax, 4, isLogTransform ? "disabled" : "");
char *version = gtexVersion(tdb->table);
printf(" RPKM (range 0-%d)\n", buf, round(gtexMaxMedianScore(version)));
-printf(" ");
+}
+
+void gtexGeneUi(struct cart *cart, struct trackDb *tdb, char *track, char *title, boolean boxed)
+/* GTEx (Genotype Tissue Expression) per gene data */
+{
+if (cartVarExists(cart, "ajax"))
+ isPopup = TRUE;
+
+boxed = cfgBeginBoxAndTitle(tdb, boxed, title);
+printf("\n
|