incorporate drawable and annotations
authorDiane Trout <diane@caltech.edu>
Fri, 30 Mar 2007 18:36:28 +0000 (18:36 +0000)
committerDiane Trout <diane@caltech.edu>
Fri, 30 Mar 2007 18:36:28 +0000 (18:36 +0000)
commitf3e6762bedaf3775619a36f4103c8cf35d2ca887
treeb64c6cef242340bebfd5cae5d9c5832e4ba2a8b6
parenta5fdb434dd0e6d18fe98e9ee57cb5169ce4c5842
incorporate drawable and annotations
this removes most of the contents of GlSequence in favor of drawable,
and adds shared_ptrs to both drawable and annotations into SeqSpan.

One problem is getting the code to do coping instead of sharing a
reference at the right time.

What I've got right now is I added some constructors that take ThingRefs
(aka boost::shared_ptr<thing>) and those will create copies, while
the more standard reference or pointer initializers just copy the
shared_ptr.

This was a bit problematic in the case of GlSeqBrowser, which really
needs to make sure that its glsequences have their own drawable component.
15 files changed:
alg/CMakeLists.txt
alg/annotation_colors.hpp
alg/color.cpp
alg/color.hpp
alg/glseqbrowser.cpp
alg/glsequence.cpp
alg/glsequence.hpp
alg/seq_span.cpp
alg/seq_span.hpp
alg/sequence.cpp
alg/sequence.hpp
alg/test/test_glsequence.cpp
alg/test/test_seq_span.cpp
alg/test/test_sequence.cpp
mussa_exceptions.hpp