]> SALOME platform Git repositories - modules/geom.git/blobdiff - src/GEOMBase/GEOMBase_Helper.cxx
Salome HOME
0021672: [CEA 565] Dump Study from script
[modules/geom.git] / src / GEOMBase / GEOMBase_Helper.cxx
index 151f6227730e7c03ac88c7b36acdbe06c27c1477..8fea8899a1412835239205a225a7c55a3a3b4c19 100755 (executable)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2011  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -89,7 +89,8 @@ GEOM::GEOM_Gen_ptr GEOMBase_Helper::getGeomEngine()
 //================================================================
 GEOMBase_Helper::GEOMBase_Helper( SUIT_Desktop* desktop )
   : myDesktop( desktop ), myViewWindow( 0 ), myDisplayer( 0 ), myCommand( 0 ), isPreview( false ),
-    myIsApplyAndClose( false ), myIsOptimizedBrowsing( false ), myIsWaitCursorEnabled( true )
+    myIsApplyAndClose( false ), myIsOptimizedBrowsing( false ), myIsWaitCursorEnabled( true ),
+    myIsDisableBrowsing(false)
 {
 }
 
@@ -812,7 +813,7 @@ bool GEOMBase_Helper::checkViewWindow()
 //            It perfroms user input validation, then it
 //            performs a proper operation and manages transactions, etc.
 //================================================================
-bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction )
+bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction, bool erasePreviewFlag )
 {
   SalomeApp_Study* appStudy = dynamic_cast<SalomeApp_Study*>( SUIT_Session::session()->activeApplication()->activeStudy() );
   if ( !appStudy ) 
@@ -837,8 +838,9 @@ bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction )
     showError( msg );
     return false;
   }
-
-  erasePreview( false );
+  
+  if(erasePreviewFlag)
+    erasePreview( false );
 
   bool result = false;
 
@@ -899,7 +901,8 @@ bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction )
           commitCommand();
           updateObjBrowser();
           if( SUIT_Application* anApp = SUIT_Session::session()->activeApplication() ) {
-            if( LightApp_Application* aLightApp = dynamic_cast<LightApp_Application*>( anApp ) )
+            LightApp_Application* aLightApp = dynamic_cast<LightApp_Application*>( anApp );
+            if(aLightApp && !isDisableBrowsing() )
               aLightApp->browseObjects( anEntryList, isApplyAndClose(), isOptimizedBrowsing() );
             anApp->putInfo( QObject::tr("GEOM_PRP_DONE") );
           }