90aa101ee4f9e47a77b2eac496eca213a787d513
jcasper
  Mon Jul 22 01:53:32 2019 -0700
Adding table browser support for hic tracks, refs #22316

diff --git src/hg/hgTables/schema.c src/hg/hgTables/schema.c
index 47065d3..977565e 100644
--- src/hg/hgTables/schema.c
+++ src/hg/hgTables/schema.c
@@ -635,60 +635,64 @@
 
 static void showSchemaHub(char *db, char *table)
 /* Show schema on a hub track. */
 {
 struct trackDb *tdb = hashMustFindVal(fullTableToTdbHash, table);
 hubConnectAddDescription(db, tdb);
 char *type = cloneFirstWord(tdb->type);
 if (tdbIsBigBed(tdb))
     showSchemaBigBed(table, tdb);
 else if (sameString(type, "longTabix"))
     showSchemaLongTabix(table, tdb);
 else if (sameString(type, "bam"))
     showSchemaBam(table, tdb);
 else if (sameString(type, "vcfTabix"))
     showSchemaVcf(table, tdb, TRUE);
+else if (sameString(type, "hic"))
+    showSchemaHic(table, tdb);
 else
     {
     hPrintf("Binary file of type %s stored at %s<BR>\n",
 	    type, trackDbSetting(tdb, "bigDataUrl"));
     printTrackHtml(tdb);
     }
 }
 
 static void showSchemaWiki(struct trackDb *tdb, char *table)
 /* Show schema for the wikiTrack. */
 {
 hPrintf("<B>User annotations to UCSC genes or genome regions</B><BR>\n");
 showSchemaDb(wikiDbName(), tdb, table);
 printTrackHtml(tdb);
 }
 
 static void showSchema(char *db, struct trackDb *tdb, char *table)
 /* Show schema to open html page. */
 {
 boolean isTabix = FALSE;
 if (isHubTrack(table))
     showSchemaHub(db, table);
 else if (isBigBed(database, table, curTrack, ctLookupName))
     showSchemaBigBed(table, tdb);
 else if (isLongTabixTable(table))
     showSchemaLongTabix(table, tdb);
 else if (isBamTable(table))
     showSchemaBam(table, tdb);
 else if (isVcfTable(table, &isTabix))
     showSchemaVcf(table, tdb, isTabix);
+else if (isHicTable(table))
+    showSchemaHic(table, tdb);
 else if (isCustomTrack(table))
     showSchemaCt(db, table);
 else if (sameWord(table, WIKI_TRACK_TABLE))
     showSchemaWiki(tdb, table);
 else if (isBigWig(database, table, curTrack, ctLookupName) && !hTableExists(db, table))
 	showSchemaBigWigNoTable(db, table, tdb);
 else
     showSchemaDb(db, tdb, table);
 }
 
 void doTableSchema(char *db, char *table, struct sqlConnection *conn)
 /* Show schema around table (which is not described by curTrack). */
 {
 struct trackDb *tdb = NULL;
 char parseBuf[256];