]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Bug when ObjBrowser and Python console were NOT closed after closing of study is... OCC_development_for_3_2_0a2
authorasv <asv@opencascade.com>
Mon, 13 Mar 2006 09:52:25 +0000 (09:52 +0000)
committerasv <asv@opencascade.com>
Mon, 13 Mar 2006 09:52:25 +0000 (09:52 +0000)
src/LightApp/LightApp_Application.cxx

index ad9682a94d81fdba35944df52632bb9cc4fa34f4..051b1c314cd741433f6e6d7c171c1c6a7e2af588 100644 (file)
@@ -1905,17 +1905,18 @@ void LightApp_Application::currentViewManagers( QStringList& lst ) const
 /*!Update windows.*/
 void LightApp_Application::updateWindows()
 {
-  if ( !activeStudy() )
-    return;
-
   QMap<int, int> winMap;
   currentWindows( winMap );
 
-  for ( QMap<int, int>::ConstIterator it = winMap.begin(); it != winMap.end(); ++it )
-    getWindow( it.key() );
+  if ( activeStudy() ) {
+    for ( QMap<int, int>::ConstIterator it = winMap.begin(); it != winMap.end(); ++it )
+      getWindow( it.key() );
 
-  loadWindowsGeometry();
+    loadWindowsGeometry();
+  }
 
+  // setWindowShown should be done even if no study is active (open). in this case all open windows
+  // will be hidden, which is neccessary in this case.
   for ( WindowMap::ConstIterator itr = myWindows.begin(); itr != myWindows.end(); ++itr )
     setWindowShown( itr.key(), !itr.data()->isEmpty() && winMap.contains( itr.key() ) );
 }