Allow changing the name for a sequence in the sequence browser.
[mussa.git] / alg / glseqbrowser.hpp
index b5be3a6743d9dbd4af377aef9435e7c0ee0a2673..ba33704bb481f492b116385841889b01c20ffdf8 100644 (file)
@@ -75,8 +75,10 @@ public:
   void push_sequence(boost::shared_ptr<Sequence> s);
   //! add a glsequence to the back of our track container
   void push_sequence(GlSequence s);
+  //! add a glsequence to the back of our track container
+  void push_sequence(boost::shared_ptr<GlSequence> gs);
   //! return our track container
-  const std::vector<GlSequence>& sequences() const;
+  const std::vector<boost::shared_ptr<GlSequence> >& sequences() const;
 
   //! clear all the line segments between all the sequences
   void clear_links();
@@ -96,7 +98,9 @@ public:
   //! copy sequence from selected track using formating function
   template<class Item>
   void copySelectedTracks(std::list<Item>& result, 
-             Item (*format_track)(const Sequence& s, int left, int right));
+             Item (*format_track)(boost::shared_ptr<Sequence> s,
+                                  int left, 
+                                  int right));
   //! copy sequence from selected tracks as FASTA sequences
   void copySelectedTracksAsFasta(std::string& copy_buffer);
   //! copy sequence from selected tracks as a list of sequences
@@ -193,7 +197,7 @@ private:
   double zoom_level;
   boost::shared_ptr<AnnotationColors> color_mapper;
   //! container of all the GlSequences loaded into our scene
-  std::vector<GlSequence> track_container;
+  std::vector<boost::shared_ptr<GlSequence> > track_container;
   //! counter for each path added to us via connect
   int pathid;