4b8ba2cfec3666d658121a82d297c1e07fcf629b
braney
  Tue Jan 23 15:11:36 2018 -0800
ongoing work on hgCollection

diff --git src/hg/hgTracks/simpleTracks.c src/hg/hgTracks/simpleTracks.c
index 64a5f5b..f12040e 100644
--- src/hg/hgTracks/simpleTracks.c
+++ src/hg/hgTracks/simpleTracks.c
@@ -14181,45 +14181,45 @@
 return track->height;
 }
 
 int trackPriCmp(const void *va, const void *vb)
 /* Compare for sort based on priority */
 {
 const struct track *a = *((struct track **)va);
 const struct track *b = *((struct track **)vb);
 
 return (a->priority - b->priority);
 }
 
 void buildMathWig(struct trackDb *tdb)
 /* Turn a mathWig composite into a mathWig track. */
 {
-char *viewFunc = cartOrTdbString(cart, tdb, "viewFunc" , FALSE);
+char *aggregateFunc = cartOrTdbString(cart, tdb, "aggregate" , FALSE);
 
-if ((viewFunc == NULL) || sameString("showAll", viewFunc))
+if ((aggregateFunc == NULL) || !(sameString("add", aggregateFunc) || sameString("subtract", aggregateFunc)))
     return;
 
 struct trackDb *subTracks = tdb->subtracks;
 
 tdb->subtracks = NULL;
 tdb->type = "mathWig";
 
 struct dyString *dy = newDyString(1024);
 
-if (sameString("addAll", viewFunc))
+if (sameString("add", aggregateFunc))
     dyStringPrintf(dy, "+ ");
-else
+else // subtract
     dyStringPrintf(dy, "- ");
 struct trackDb *subTdb;
 for (subTdb=subTracks; subTdb; subTdb = subTdb->next)
     {
     char *bigDataUrl = trackDbSetting(subTdb, "bigDataUrl");
     if (bigDataUrl != NULL)
         dyStringPrintf(dy, "%s ",bigDataUrl);
     else // native tracks are prepended with '$'
         dyStringPrintf(dy, "$%s ",trackDbSetting(subTdb, "table"));
     }
 
 hashAdd(tdb->settingsHash, "mathDataUrl", dy->string);
 }
 
 #ifdef NOTNOW   /// for the moment, mathWigs are made at the composite level.  Since we may go back to having them at the view level I'm leaving this in