48bc78eb93da839af8f4cae6e4c6954e64022e8f
[mussa.git] / qui / seqbrowser / SequenceBrowserSidebar.hpp
1 #ifndef _SEQUENCE_BROWSER_SIDEBAR_H
2 #define _SEQUENCE_BROWSER_SIDEBAR_H
3
4 #include <vector>
5
6 #include <QVBoxLayout>
7 #include <QWidget>
8 #include "qui/seqbrowser/SequenceBrowser.hpp"
9 #include "qui/seqbrowser/SequenceDescription.hpp"
10 #include "alg/glsequence.hpp"
11
12 //! store a collection of sequence descriptions for the SequenceBrowserWidget
13 class SequenceBrowserSidebar : public QWidget
14 {
15   Q_OBJECT
16
17 public:
18   enum SidebarSide { Left, Right };
19
20   SequenceBrowserSidebar(QWidget *parent = 0);
21
22   //! clear our list of descriptions
23   void clear();
24   void setSequences(std::vector<GlSequence>& );
25
26   std::vector<SequenceDescription *> descriptions;
27 public slots:
28   //! update the reported sequence position for each of our sequences
29   /*! for example when the right side is at position 3000 call 
30    *  iterate over each sequence and get its rightbase pair value
31    */
32   //void updatePositionValues(float left, float right);
33
34 private:
35   QVBoxLayout layout;
36   //! for updating positions we need to know which side we're on
37   //SidebarSide sidebar_side;
38 };
39 #endif