61bf0da1531fd8929076014156906fa695081446
braney
  Mon Jun 9 09:11:12 2014 -0700
add negateValues trackDb variable
diff --git src/hg/lib/wiggleCart.c src/hg/lib/wiggleCart.c
index 06886e6..714158e 100644
--- src/hg/lib/wiggleCart.c
+++ src/hg/lib/wiggleCart.c
@@ -394,36 +394,40 @@
 	    if ((hel = hashLookup(tdb->settingsHash, secondTdbString)) != NULL)
 		{
 		if (differentWord(Default,(char *)hel->val))
 		    ret = notDefault;
 		}
 	    }
 	}
     }
 return(cloneString(ret));
 }
 
 boolean wigFetchDoNegativeWithCart(struct cart *theCart, struct trackDb *tdb, char *name,char **optString)
 /*	doNegative - false by default **********************************/
 {
 boolean parentLevel = isNameAtParentLevel(tdb,name);
+char *doNegativeDefault = trackDbSettingClosestToHome(tdb, DONEGATIVEMODE);
 char *doNegative = cloneString(cartOptionalStringClosestToHome(theCart, tdb, parentLevel, DONEGATIVEMODE));
 
+if ((doNegative == NULL) && (doNegativeDefault != NULL))
+    doNegative = cloneString(doNegativeDefault);
+
 if (doNegative == NULL)
     return FALSE;
 
-return sameString(doNegative, "1");
+return sameString(doNegative, "1") || sameString(doNegative, "on");
 }
 
 enum wiggleGridOptEnum wigFetchTransformFuncWithCart(struct cart *theCart,
     struct trackDb *tdb, char *name,char **optString)
 /*	transformFunc - none by default **********************************/
 {
 boolean parentLevel = isNameAtParentLevel(tdb,name);
 char *transformFunc;
 enum wiggleTransformFuncEnum ret = wiggleTransformFuncNone;
 char * tdbDefault = trackDbSettingClosestToHome(tdb, TRANSFORMFUNC);
 
 transformFunc = cloneString(cartOptionalStringClosestToHome(theCart, tdb, parentLevel, 
                                                             TRANSFORMFUNC));
 
 if ((transformFunc == NULL) && (tdbDefault != NULL))