add prototype wrapping of the qt sequence browser
[mussa.git] / py / sequencebrowserwidget.cpp
1 #include <boost/python.hpp>
2 namespace py = boost::python;
3 #include <vector>
4
5 #include "alg/Sequence.hpp"
6 #include "alg/glsequence.cpp"
7 #include "alg/glseqbrowser.cpp"
8 #include "qui/seqbrowser/SequenceBrowserWidget.hpp"
9
10 #include "stl_container_adapter.hpp"
11
12 void export_sequencebrowserwidget()
13 {
14
15   void (SequenceBrowserWidget::*setSequences_g)(
16       std::vector<boost::shared_ptr<GlSequence> > &) = &SequenceBrowserWidget::setSequences;
17
18   py::class_<SequenceBrowserWidget>("SequenceBrowserWidget", 
19                                     py::init<>())
20     // SIGNALS
21     .def("copySelectedSequenceAsFasta", 
22          &SequenceBrowserWidget::copySelectedSequenceAsFasta)
23     .def("setZoom", &SequenceBrowserWidget::setZoom)
24     .def("zoomOut", &SequenceBrowserWidget::zoomOut)
25     .def("zoomToSequence", &SequenceBrowserWidget::zoomToSequence)
26     .def("updatePosition", &SequenceBrowserWidget::updatePosition)
27     .def("promptSaveBrowserPixmap", 
28          &SequenceBrowserWidget::promptSaveBrowserPixmap)
29     .def("update", &SequenceBrowserWidget::update)
30     // Member functions
31     //.def("browser", &SequenceBrowserWidget::browser)
32     //.def("getPopupMenu", &SequenceBrowserWidget::getPopupMenu)
33     //.def("getCopySelectedSequenceAsFastaAction", 
34     //     &SequenceBrowserWidget::getCopySelectedSequenceAsFastaAction)
35     //.def("getCopySelectedSequenceAsStringAction", 
36     //     &SequenceBrowserWidget::getCopySelectedSequenceAsStringAction)
37     //.def("getEditSequencePropertiesAction", 
38     //     &SequenceBrowserWidget::getEditSequencePropertiesAction)
39     //.def("copySelectedTracksAsSeqLocation", 
40     //     &SequenceBrowserWidget::copySelectedTracksAsSeqLocation)
41     .def("zoom", &SequenceBrowserWidget::zoom)
42     .def("clear", &SequenceBrowserWidget::clear)
43     .def("setSequences", setSequences_g)
44     //.def("sequences", &SequenceBrowserWidget::sequences)
45     .def("clear_links", &SequenceBrowserWidget::clear_links)
46     .def("link", &SequenceBrowserWidget::link)
47     .def("selectedPaths", &SequenceBrowserWidget::selectedPaths)
48     .def("centerOnPath", &SequenceBrowserWidget::centerOnPath)
49
50     .def("show", &SequenceBrowserWidget::show)   
51   ;
52 }