store default colors
[mussa.git] / alg / glsequence.hpp
index b772cd2fa75e77510e1c2128fd2f5af5db4f06d9..af1e14c569e3b9dc0359005bfc2d3c8b6e5370e3 100644 (file)
@@ -37,6 +37,14 @@ public:
   
   //! search through sequence and add an annotation highlighting all the non AGCT characters
   void add_annotations_for_defined_sequence(Drawable::draw_func_ptr draw=0);
+  /**!search through our annotations and set the draw function for a particular "type"
+   * this is really a temporary solution to configuring annotation display styles
+   */
+  void update_annotation_draw_function(
+         std::string type, 
+         Drawable::draw_func_ptr draw, 
+         ColorRef color
+       );
   //! set our starting x (horizontal) coordinate
   void setX(float x);
   //! get our starting x (horizontal) coordinate
@@ -56,6 +64,11 @@ public:
   const ColorRef color() const;
   //! return our draw color
   ColorRef color();
+  //! return default gene color
+  static ColorRef default_gene_color();
+  //! return default track color
+  static ColorRef default_track_color();
+  
   //! return our annotation color mapper
   AnnotationColorsRef colorMapper() { return color_mapper; }
 
@@ -116,10 +129,12 @@ protected:
   const GLfloat char_pix_per_world_unit;
 
   //! initalize a SeqSpanRef covering start, count
-  SeqSpanRef make_undefined_sequence_annotation(
+  SeqSpanRef make_drawable_annotation(
     Drawable::draw_func_ptr draw,
+    std::string name,
     size_type start,
-    size_type count);
+    size_type count,
+    ColorRef color);
 
   //! draw sequence as a bar
   void draw_track(GLfloat, GLfloat) const;