7ada5bd6ec329c0f5540573f11ae809ad1c33db0
hiram
  Thu Mar 20 14:59:29 2014 -0700
allow selection of gene name to display on ensGene tracks refs #12870
diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c
index cd85e90..c95cca1 100644
--- src/hg/hgTrackUi/hgTrackUi.c
+++ src/hg/hgTrackUi/hgTrackUi.c
@@ -1756,30 +1756,43 @@
 printf("<BR>\n");
 }
 void omimGene2UI(struct trackDb *tdb)
 /* Put up omimGene2-specific controls */
 {
 omimGene2IdConfig(tdb);
 omimGene2Config(tdb);
 }
 
 void omimGeneUI(struct trackDb *tdb)
 /* Put up omimGene-specific controls */
 {
 omimGeneIdConfig(tdb);
 }
 
+void ensGeneIdConfig(struct trackDb *tdb)
+/* Put up gene ID track controls */
+{
+char varName[64];
+char *geneLabel;
+safef(varName, sizeof(varName), "%s.label", tdb->track);
+geneLabel = cartUsualString(cart, varName, "transcript");
+printf("<B>Label:</B> ");
+radioButton(varName, geneLabel, "accession");
+radioButton(varName, geneLabel, "ensembl");
+radioButton(varName, geneLabel, "gene");
+}
+
 void geneIdConfig(struct trackDb *tdb)
 /* Put up gene ID track controls */
 {
 char varName[64];
 char *geneLabel;
 safef(varName, sizeof(varName), "%s.label", tdb->track);
 geneLabel = cartUsualString(cart, varName, "gene");
 printf("<B>Label:</B> ");
 radioButton(varName, geneLabel, "gene");
 radioButton(varName, geneLabel, "accession");
 radioButton(varName, geneLabel, "both");
 radioButton(varName, geneLabel, "none");
 }
 
 static void hideNoncodingOpt(struct trackDb *tdb)
@@ -1847,30 +1860,40 @@
 
 baseColorDrawOptDropDown(cart, tdb);
 indelShowOptions(cart, tdb);
 }
 
 void retroGeneUI(struct trackDb *tdb)
 /* Put up retroGene-specific controls */
 {
 printf("<B>Label:</B> ");
 labelMakeCheckBox(tdb, "gene", "gene", FALSE);
 labelMakeCheckBox(tdb, "acc", "accession", FALSE);
 
 baseColorDrawOptDropDown(cart, tdb);
 }
 
+void ensGeneUI(struct trackDb *tdb)
+/* Put up Ensembl Gene track-specific controls */
+{
+ensGeneIdConfig(tdb);
+printf("<BR>\n");
+
+/* Put up codon coloring stuff. */
+baseColorDrawOptDropDown(cart, tdb);
+}
+
 void vegaGeneUI(struct trackDb *tdb)
 /* Put up Vega Gene track-specific controls */
 {
 geneIdConfig(tdb);
 printf("<BR>\n");
 
 /* Put up codon coloring stuff. */
 baseColorDrawOptDropDown(cart, tdb);
 }
 
 void ensemblNonCodingTypeConfig(struct trackDb *tdb)
 {
 int i = 0;
 
 printf("<BR><B>Non-coding RNA type:</B> ");
@@ -2788,30 +2811,32 @@
 else if (sameString(track, "knownGene"))
     knownGeneUI(tdb);
 else if (sameString(track, "omimLocation"))
     omimLocationUI(tdb);
 else if (sameString(track, "omimGene2"))
     omimGene2UI(tdb);
 else if (sameString(track, "omimGene"))
     omimGeneUI(tdb);
 else if (sameString(track, "hg17Kg"))
     hg17KgUI(tdb);
 else if (startsWith("ucscRetro", track)
      ||  startsWith("retroMrnaInfo", track))
     retroGeneUI(tdb);
 else if (sameString(track, "ensGeneNonCoding"))
     ensemblNonCodingUI(tdb);
+else if (sameString(track, "ensGene"))
+    ensGeneUI(tdb);
 else if (sameString(track, "vegaGeneComposite"))
     vegaGeneUI(tdb);
 else if (sameString(track, "rosetta"))
     rosettaUi(tdb);
 else if (startsWith("pubs", track))
     pubsUi(tdb);
 else if (startsWith("blastDm", track))
     blastFBUi(tdb);
 else if (sameString(track, "blastSacCer1SG"))
     blastSGUi(tdb);
 else if (sameString(track, "blastHg17KG")
      ||  sameString(track, "blastHg16KG")
      ||  sameString(track, "blastCe3WB")
      ||  sameString(track, "blastHg18KG")
      ||  sameString(track, "blatzHg17KG")