From cee7e2d9f61848c4381599d3b2a5e44e0fc920a5 Mon Sep 17 00:00:00 2001
From: stefan <stefan@5a81b35b-ba03-0410-adc8-b2c5c5119f08>
Date: Thu, 3 Jun 2010 15:32:47 +0000
Subject: [PATCH] New SequenceViewer, fix doubleclick on titlerow

git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2329 5a81b35b-ba03-0410-adc8-b2c5c5119f08
---
 modules/gui/src/sequence/sequence_model.cc | 6 +++---
 modules/gui/src/sequence/title_row.cc      | 9 +++++----
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/modules/gui/src/sequence/sequence_model.cc b/modules/gui/src/sequence/sequence_model.cc
index f4c8c65e1..923a24c0f 100644
--- a/modules/gui/src/sequence/sequence_model.cc
+++ b/modules/gui/src/sequence/sequence_model.cc
@@ -40,10 +40,10 @@ SequenceModel::SequenceModel(QObject *parent)
 {
   this->beginInsertRows(QModelIndex(),this->rowCount(),this->rowCount());
   BaseViewObject* title = new BaseViewObject(this);
-  TitleRow* title_row = new TitleRow(this);
-  Painter* p = new BackgroundPainter(this);
+  TitleRow* title_row = new TitleRow(title);
+  Painter* p = new BackgroundPainter(title_row);
   title_row->InsertPainter(p);
-  p = new TickPainter(this);
+  p = new TickPainter(title_row);
   title_row->InsertPainter(p);
   title->InsertRow(0,title_row);
   objects_.append(title);
diff --git a/modules/gui/src/sequence/title_row.cc b/modules/gui/src/sequence/title_row.cc
index 39013b3d7..727aa0239 100644
--- a/modules/gui/src/sequence/title_row.cc
+++ b/modules/gui/src/sequence/title_row.cc
@@ -77,10 +77,11 @@ Qt::ItemFlags TitleRow::Flags(int column) const
 void TitleRow::DoubleClicked(int column)
 {
  if(this->parent()){
-   SequenceModel* model = qobject_cast<SequenceModel*>(this->parent()->parent());
-   int rows = model->rowCount()-1;
-   QItemSelection add = QItemSelection(model->index(1,column),model->index(rows,column));
-   model->SelectionChanged(add,QItemSelection());
+   if(SequenceModel* model = qobject_cast<SequenceModel*>(this->parent()->parent())){
+     int rows = model->rowCount()-1;
+     QItemSelection add = QItemSelection(model->index(1,column),model->index(rows,column));
+     model->SelectionChanged(add,QItemSelection());
+   }
  }
 }
 
-- 
GitLab