Browse code

making sure that the genome is also set for the GRanges objects that make up a RangeTrack

git-svn-id: file:///home/git/hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/Gviz@69407 bc3139a8-67e5-0310-9ffc-ced21a209358

Florian Hahne authored on 13/09/2012 13:20:56
Showing 1 changed files

... ...
@@ -563,6 +563,7 @@ AnnotationTrack <- function(range=NULL, start=NULL, end=NULL, width=NULL, featur
563 563
                         defaults=list(feature="unknown", group=group, id=id, strand=strand, density=1),
564 564
                         chromosome=chromosome)
565 565
     genome <- if(missing(genome)) .getGenomeFromGRange(range, "NA") else genome
566
+    genome(range) <- genome
566 567
     if(missing(chromosome) || is.null(chromosome))
567 568
         chromosome <- if(length(range)>0) .chrName(as.character(seqnames(range)[1])) else "chrNA"
568 569
     ## And finally the object instantiation, we have to distinguis between DetailsAnnotationTracks and normal ones
... ...
@@ -745,6 +746,7 @@ GeneRegionTrack <- function(range=NULL, rstarts=NULL, rends=NULL, rwidths=NULL,
745 746
     if(is.null(end))
746 747
         end <- if(!length(range)) NULL else max(IRanges::end(range))
747 748
     genome <- if(missing(genome)) .getGenomeFromGRange(range, "NA") else genome
749
+    genome(range) <- genome
748 750
     if(missing(chromosome) || is.null(chromosome))
749 751
         chromosome <- if(length(range)>0) .chrName(as.character(seqnames(range)[1])) else "chrNA"
750 752
     new("GeneRegionTrack", start=start, end=end, chromosome=chromosome[1], range=range,
... ...
@@ -849,6 +851,7 @@ setMethod("initialize", "BiomartGeneRegionTrack", function(.Object, start, end,
849 851
                          gene=as.character(ens$gene_id), exon=as.character(ens$exon_id),
850 852
                          transcript=as.character(ens$transcript_id), symbol=as.character(ens$symbol),
851 853
                          rank=as.numeric(ens$rank))
854
+        genome(range) <- list(...)$genome[1]
852 855
     }
853 856
     if(length(range)==0)
854 857
         .Object <- setPar(.Object, "size", 0, interactive=FALSE)