6e57bd7dddafb83f609a22cba99c47c97fb506d9 tdreszer Thu Sep 9 09:09:18 2010 -0700 hgTrackUi can now use ajax to update composite/view settings, which enables keeping subtrack level v. composite/view level settings properly influencing each other. That is, timing is important in ensuring that composite/view level changes overrides subtrack level settings. The triggers for this code in hui.c are all ifdef'd on SUBTRACK_CFG_POPUP. diff --git src/hg/cartDump/cartDump.c src/hg/cartDump/cartDump.c index 7597a3f..d273e90 100644 --- src/hg/cartDump/cartDump.c +++ src/hg/cartDump/cartDump.c @@ -4,12 +4,14 @@ #include "hash.h" #include "cheapcgi.h" #include "cart.h" +#include "hdb.h" #include "jsHelper.h" #include "hui.h" static char const rcsid[] = "$Id: cartDump.c,v 1.14 2008/12/09 00:41:20 angie Exp $"; #define CART_DUMP_REMOVE_VAR "n/a" +struct hash *oldVars = NULL; void doMiddle(struct cart *cart) /* cartDump - Dump contents of cart. */ @@ -39,6 +41,15 @@ } if (cgiVarExists("noDisplay")) { + char *trackName = cgiOptionalString("g"); + if(trackName != NULL && hashNumEntries(oldVars) > 0) + { + char *db = cartString(cart, "db"); + struct trackDb *tdb = hTrackDbForTrack(db, trackName); + if(tdb != NULL && tdbIsComposite(tdb)) + cartTdbTreeCleanupOverrides(tdb,cart,oldVars); + } + return; } if (asTable) @@ -97,6 +108,7 @@ /* Process command line. */ { cgiSpoof(&argc, argv); -cartHtmlShell("Cart Dump", doMiddle, hUserCookie(), excludeVars, NULL); +oldVars = hashNew(10); +cartHtmlShell("Cart Dump", doMiddle, hUserCookie(), excludeVars, oldVars); return 0; }