9a7ca8c4b0b6b064ef16f65b866e8314284d608d kate Fri Jan 28 16:53:38 2011 -0800 Merge branch 'master' of kate@hgwdev.cse.ucsc.edu:/data/git/kent diff --git src/hg/lib/hui.c src/hg/lib/hui.c index 44c342d..c75e1f1 100644 --- src/hg/lib/hui.c +++ src/hg/lib/hui.c @@ -3742,31 +3742,32 @@ for (tdbRef = *tdbRefList; tdbRef != NULL; tdbRef = tdbRef->next) { struct trackDb *tdb = tdbRef->val; safef(htmlIdentifier, sizeof(htmlIdentifier), "%s.priority", tdb->track); char *cartHas = cartOptionalString(cart,htmlIdentifier); if(cartHas != NULL) { tdb->priority = atof(cartHas); cartPriorities = TRUE; } } slSort(tdbRefList, trackDbRefCmp); return cartPriorities; } -static void cfgByCfgType(eCfgType cType,char *db, struct cart *cart, struct trackDb *tdb,char *prefix, char *title, boolean boxed) +void cfgByCfgType(eCfgType cType,char *db, struct cart *cart, struct trackDb *tdb,char *prefix, char *title, boolean boxed) +// Methods for putting up type specific cfgs used by composites/subtracks in hui.c and exported for common use { switch(cType) { case cfgBedScore: { char *scoreMax = trackDbSettingClosestToHome(tdb, SCORE_FILTER _MAX); int maxScore = (scoreMax ? sqlUnsigned(scoreMax):1000); scoreCfgUi(db, cart,tdb,prefix,title,maxScore,boxed); } break; case cfgPeak: encodePeakCfgUi(cart,tdb,prefix,title,boxed); break; case cfgWig: wigCfgUi(cart,tdb,prefix,title,boxed); break; @@ -4736,34 +4737,34 @@ } if(min && limitMin && (int)(*min) != NO_VALUE && *min < *limitMin) *min = *limitMin; // defaults within range if(min && limitMax && (int)(*min) != NO_VALUE && *min > *limitMax) *min = *limitMax; if(max && limitMax && (int)(*max) != NO_VALUE && *max > *limitMax) *max = *limitMax; if(max && limitMin && (int)(*max) != NO_VALUE && *max < *limitMin) *max = *limitMin; } void scoreCfgUi(char *db, struct cart *cart, struct trackDb *tdb, char *name, char *title, int maxScore, boolean boxed) /* Put up UI for filtering bed track based on a score */ { char option[256]; boolean compositeLevel = isNameAtCompositeLevel(tdb,name); filterBy_t *filterBySet = filterBySetGet(tdb,cart,name); if(filterBySet != NULL) { - if(!tdbIsComposite(tdb) && !tdbIsCompositeChild(tdb)) + if(!tdbIsComposite(tdb)) jsIncludeFile("hui.js",NULL); - filterBySetCfgUi(tdb,filterBySet); + filterBySetCfgUi(tdb,filterBySet); // Note filterBy boxes don't need to be double "boxed" filterBySetFree(&filterBySet); return; // Cannot have both 'filterBy' score and 'scoreFilter' } boolean scoreFilterOk = (trackDbSettingClosestToHome(tdb, NO_SCORE_FILTER) == NULL); boolean glvlScoreMin = (trackDbSettingClosestToHome(tdb, GRAY_LEVEL_SCORE_MIN) != NULL); if (! (scoreFilterOk || glvlScoreMin)) return; boxed = cfgBeginBoxAndTitle(tdb, boxed, title); if (scoreFilterOk) { int minLimit=0,maxLimit=maxScore,minVal=0,maxVal=maxScore;