X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvMainWindow.cxx;h=30ef801a6460e5d7f399964ae00d4c706734f155;hb=202a56000808bb2a915e5918bfbf69ec325aba30;hp=303efebbaf8aafe2e41f76201f5eab18972c50cb;hpb=db9d3e7eb7bcb35f127e10af368cce7c3c9f2820;p=clitk.git diff --git a/vv/vvMainWindow.cxx b/vv/vvMainWindow.cxx index 303efeb..30ef801 100644 --- a/vv/vvMainWindow.cxx +++ b/vv/vvMainWindow.cxx @@ -1241,36 +1241,38 @@ void vvMainWindow::ShowHelpDialog() //------------------------------------------------------------------------------ void vvMainWindow::ChangeViewMode() { - QListIterator it(splitter_3->sizes()); - int max_size = 0; - while (it.hasNext()) { - max_size += it.next(); - } - QList size0; - QList size1; + QList size; if (viewMode == 1) { viewMode = 0; - size0.push_back(max_size); - size0.push_back(0); - size1.push_back(max_size + 1); - size1.push_back(0); - splitter_3->setSizes(size0); - OSplitter->setSizes(size1); + size.push_back(1); + size.push_back(0); + splitter_3->setSizes(size); + OSplitter->setSizes(size); DataTree->setColumnHidden(2,1); DataTree->setColumnHidden(3,1); DataTree->setColumnHidden(4,1); } else { viewMode = 1; - size0.push_back(max_size / 2); - size0.push_back(max_size / 2); - size1.push_back((max_size + 1) / 2); - size1.push_back((max_size + 1) / 2); - splitter_3->setSizes(size0); - OSplitter->setSizes(size1); + size.push_back(1); + size.push_back(1); + splitter_3->setSizes(size); + OSplitter->setSizes(size); DataTree->setColumnHidden(2,0); DataTree->setColumnHidden(3,0); DataTree->setColumnHidden(4,0); } + UpdateRenderWindows(); + /* + ** I don't know why but for both resized QVTKWidget we also need to render + ** the associated Slicer to redraw crosses. + */ + for (unsigned int i = 0; i < mSlicerManagers.size(); i++) + { + if (DataTree->topLevelItem(i)->data(COLUMN_UL_VIEW,Qt::CheckStateRole).toInt() > 1) + mSlicerManagers[i]->GetSlicer(0)->Render(); + if (DataTree->topLevelItem(i)->data(COLUMN_DL_VIEW,Qt::CheckStateRole).toInt() > 1) + mSlicerManagers[i]->GetSlicer(2)->Render(); + } } //------------------------------------------------------------------------------