Skip to content
Snippets Groups Projects
Commit 118744b3 authored by stefan's avatar stefan
Browse files

New SequenceViewer, not listen to scene if aligment loaded from file browser

git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2300 5a81b35b-ba03-0410-adc8-b2c5c5119f08
parent f65acbb7
No related branches found
No related tags found
No related merge requests found
...@@ -322,7 +322,7 @@ gfx::GfxObjP FileLoader::TryLoadAlignment(const QString& filename, io::SequenceI ...@@ -322,7 +322,7 @@ gfx::GfxObjP FileLoader::TryLoadAlignment(const QString& filename, io::SequenceI
handler->Import(seq_list,filename.toStdString()); handler->Import(seq_list,filename.toStdString());
seq::AlignmentHandle alignment = seq::AlignmentFromSequenceList(seq_list); seq::AlignmentHandle alignment = seq::AlignmentFromSequenceList(seq_list);
gui::MainArea* main_area = gui::GostyApp::Instance()->GetPerspective()->GetMainArea(); gui::MainArea* main_area = gui::GostyApp::Instance()->GetPerspective()->GetMainArea();
SequenceViewerV2* viewer = new SequenceViewerV2(main_area); SequenceViewerV2* viewer = new SequenceViewerV2(false,main_area);
viewer->AddAlignment(alignment); viewer->AddAlignment(alignment);
main_area->AddWidget(filename,viewer); main_area->AddWidget(filename,viewer);
throw io::IOFileAlreadyLoadedException("Loaded in DataViewer"); throw io::IOFileAlreadyLoadedException("Loaded in DataViewer");
......
...@@ -70,9 +70,11 @@ struct GetNodesVisitor: public gfx::GfxNodeVisitor { ...@@ -70,9 +70,11 @@ struct GetNodesVisitor: public gfx::GfxNodeVisitor {
gfx::NodePtrList GetNodes(){return nodes_;} gfx::NodePtrList GetNodes(){return nodes_;}
}; };
SequenceViewerV2::SequenceViewerV2(QWidget* parent): Widget(NULL,parent) SequenceViewerV2::SequenceViewerV2(bool listen_scene, QWidget* parent): Widget(NULL,parent)
{ {
gfx::Scene::Instance().AttachObserver(this); if(listen_scene){
gfx::Scene::Instance().AttachObserver(this);
}
model_ = new SequenceModel(this); model_ = new SequenceModel(this);
QVBoxLayout* layout = new QVBoxLayout(this); QVBoxLayout* layout = new QVBoxLayout(this);
...@@ -102,12 +104,14 @@ SequenceViewerV2::SequenceViewerV2(QWidget* parent): Widget(NULL,parent) ...@@ -102,12 +104,14 @@ SequenceViewerV2::SequenceViewerV2(QWidget* parent): Widget(NULL,parent)
connect(seq_table_view_,SIGNAL(CopyEvent(QKeyEvent*)),this,SLOT(CopyEvent(QKeyEvent*))); connect(seq_table_view_,SIGNAL(CopyEvent(QKeyEvent*)),this,SLOT(CopyEvent(QKeyEvent*)));
connect(seq_table_view_,SIGNAL(MouseWheelEvent(QWheelEvent*)),this,SLOT(MouseWheelEvent(QWheelEvent*))); connect(seq_table_view_,SIGNAL(MouseWheelEvent(QWheelEvent*)),this,SLOT(MouseWheelEvent(QWheelEvent*)));
gfx::GfxNodeP root_node = gfx::Scene::Instance().GetRootNode(); if(listen_scene){
GetNodesVisitor gnv; gfx::GfxNodeP root_node = gfx::Scene::Instance().GetRootNode();
gfx::Scene::Instance().Apply(gnv); GetNodesVisitor gnv;
gfx::NodePtrList list = gnv.GetNodes(); gfx::Scene::Instance().Apply(gnv);
for(unsigned int i=0; i<list.size();i++){ gfx::NodePtrList list = gnv.GetNodes();
this->NodeAdded(list[i]); for(unsigned int i=0; i<list.size();i++){
this->NodeAdded(list[i]);
}
} }
} }
......
...@@ -44,7 +44,7 @@ namespace ost { namespace gui { ...@@ -44,7 +44,7 @@ namespace ost { namespace gui {
class DLLEXPORT_OST_GUI SequenceViewerV2 : public Widget, public gfx::SceneObserver { class DLLEXPORT_OST_GUI SequenceViewerV2 : public Widget, public gfx::SceneObserver {
Q_OBJECT Q_OBJECT
public: public:
SequenceViewerV2(QWidget* parent=NULL); SequenceViewerV2(bool listen_scene=true, QWidget* parent=NULL);
~SequenceViewerV2(); ~SequenceViewerV2();
virtual void NodeAdded(const gfx::GfxNodeP& node); virtual void NodeAdded(const gfx::GfxNodeP& node);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment