float viewportWidth() const;
//! zoom out far enough to show the full size of the sequence
- int zoomOut();
+ double zoomOut();
//! zoom in to a reasonable sequence view
- int zoomToSequence();
- //! set the current zoom level in (base pairs / pix ) * 100
- /*! a zoomlevel of 1 is .01 base pairs per pixel or a rather exploded
- * 100 pixels per base pair
+ double zoomToSequence();
+ //! set the current zoom level in (base pairs / pix )
+ /*! its a double as zoom levels of [0.01, 1.0] make nice sequence views
*/
- void setZoom(int zoom_level);
+ void setZoom(double zoom_level);
//! returns the current zoom level
- int zoom() const;
+ double zoom() const;
void setColorMapper(AnnotationColors& cm);
AnnotationColors& colorMapper();
/*! depending on the size of our canvas, our zoom level and
* how far we've been offset
*/
- void update_viewport(float center, int new_zoom);
+ void update_viewport(float center, double new_zoom);
//! determine where all the tracks should be placed
void update_layout();
point<int> viewport_size;
//! the center of our current viewport (world coord) (used for scrollbar)
float viewport_center;
- int zoom_level;
+ double zoom_level;
AnnotationColors color_mapper;
//! container of all the GlSequences loaded into our scene
std::vector<GlSequence> track_container;