96a5f2b02386cf2ce9330afa1df0599ce6361b20
braney
  Fri Dec 17 18:27:25 2010 -0800
BAM tracks that have too many items to map now draw one big map box with a message telling the user to zoom in if they want to click on an item. #1279
diff --git src/hg/hgTracks/cds.c src/hg/hgTracks/cds.c
index 54aedce..ae7bd33 100644
--- src/hg/hgTracks/cds.c
+++ src/hg/hgTracks/cds.c
@@ -1715,31 +1715,32 @@
 	}
     }
 }
 
 void baseColorInitTrack(struct hvGfx *hvg, struct track *tg)
 /* Set up base coloring state (e.g. cache genomic sequence) for tg.
  * This must be called by tg->drawItems if baseColorDrawSetup is used 
  * in tg->drawItemAt.  Uses tg->drawItems method to determine whether
  * tg is linkedFeatures or linkedFeaturesSeries (currently the only
  * two supported track types -- bed, psl etc. are subclasses of these). */
 {
 if (initedTrack == NULL || differentString(tg->track, initedTrack))
     {
     int overallStart, overallEnd;
     boolean isSeries = FALSE;
-    if (tg->drawItems == linkedFeaturesSeriesDraw)
+    if ((tg->drawItems == linkedFeaturesSeriesDraw)
+        || (tg->drawItems == bamLinkedFeaturesSeriesDraw))
 	isSeries = TRUE;
     else if (!baseColorCanDraw(tg))
 	errAbort("baseColorInitTrack: track %s has a type not recognized by baseColorCanDraw.",
 		 tg->track);
     getLinkedFeaturesSpan((struct linkedFeatures *)tg->items, &overallStart, &overallEnd,
 			  isSeries);
     if (overallStart < cachedGenoStart || overallEnd > cachedGenoEnd)
 	{
 	// leak mem to save time (don't bother freeing old cached dna)
 	cachedGenoStart = overallStart;
 	cachedGenoEnd = overallEnd;
 	cachedGenoDna = hDnaFromSeq(database, chromName, cachedGenoStart, cachedGenoEnd, dnaUpper);
 	}
     initedTrack = cloneString(tg->track);
     }