60c5496c1df3ae97de10b263e01b7698afbfc743
tdreszer
  Fri Oct 28 14:28:10 2011 -0700
Eliminated a couple more vars from cart and FINALY got rid of funky comp.view.vis cart name.  All vis is not standardized to trackName since view is a track.
diff --git src/hg/lib/cart.c src/hg/lib/cart.c
index 55ceadd..af57c01 100644
--- src/hg/lib/cart.c
+++ src/hg/lib/cart.c
@@ -2122,33 +2122,35 @@
         cartSetString(cart,child->track,"hide");
         }
 // and finally show the parent
 cartSetString(cart,tdb->parent->track,"show");
 WARN("Set %s to 'show'",tdb->parent->track);
 return TRUE;
 }
 
 
 static int cartTdbParentShapeVis(struct cart *cart,struct trackDb *parent,char *view,struct hash *subVisHash,boolean reshapeFully)
 // This shapes one level of vis (view or container) based upon subtrack specific visibility.  Returns count of tracks affected
 {
 ASSERT(view || (tdbIsContainer(parent) && tdbIsContainerChild(parent->subtracks)));
 struct trackDb *subtrack = NULL;
 char setting[512];
+#ifndef SUBTRACK_CFG
 if (view != NULL)
     safef(setting,sizeof(setting),"%s.%s.vis",parent->parent->track,view);
 else
+#endif///def SUBTRACK_CFG
     safef(setting,sizeof(setting),"%s",parent->track);
 
 enum trackVisibility visMax  = tvHide;
 enum trackVisibility visOrig = tdbVisLimitedByAncestry(cart, parent, FALSE);
 
 // Should walk through children to get max new vis for this parent
 for(subtrack = parent->subtracks;subtrack != NULL;subtrack = subtrack->next)
     {
     char *foundVis = hashFindVal(subVisHash, subtrack->track); // if the subtrack doesn't have individual vis AND...
     if (foundVis != NULL)
         {
         enum trackVisibility visSub = hTvFromString(foundVis);
         if (tvCompare(visMax, visSub) >= 0)
             visMax = visSub;
         }
@@ -2393,33 +2395,38 @@
                 slAddHead(&leftOvers,oneName);
                 continue;
                 }
 
             if (sameString(suffix,"vis"))
                 {
                 viewVisChanged = TRUE;
                 }
             else if (cartRemoveOldFromTdbTree(newCart,oldVars,tdbView,suffix,oneName->val,TRUE) > 0)
                     clensed++;
 
             }
         if (viewVisChanged)
             {
             // If just created and if vis is the same as tdb default then vis has not changed
+        #ifdef SUBTRACK_CFG
+            char *cartVis = cartOptionalString(newCart,tdbView->track);
+            char *oldValue = hashFindVal(oldVars,tdbView->track);
+        #else///ifndef SUBTRACK_CFG
             safef(setting,sizeof(setting),"%s.%s.vis",tdb->track,view);
             char *cartVis = cartOptionalString(newCart,setting);
             char *oldValue = hashFindVal(oldVars,setting);
+        #endif///ndef SUBTRACK_CFG
             if (cartVis && oldValue == NULL && hTvFromString(cartVis) != tdbView->visibility)
                 viewVisChanged = FALSE;
             }
 
         if  (containerVisChanged || viewVisChanged)
             { // vis is a special additive case!
             WARN("Removing subtrack vis for %s.%s",tdb->track,view);
             char *viewVis = hStringFromTv(tdbVisLimitedByAncestry(newCart, tdbView, FALSE));
             if (cartRemoveOldFromTdbTree(newCart,oldVars,tdbView,NULL,viewVis,TRUE) > 0)
                 clensed++;
             }
         changedSettings = leftOvers;
         }
     }