Salome HOME
Fix for IPAL9140: 3.0.0 (09 Jun): "Supervision" module has to be renamed into "Superv...
[modules/gui.git] / src / SalomeApp / SalomeApp_Application.cxx
index c620afb41e620c2a8e0f73d29a48b034787afd30..ffd325319d94928327607c654d29b20ef5045d08 100644 (file)
@@ -17,6 +17,7 @@
 
 #include "SalomeApp_AboutDlg.h"
 #include "SalomeApp_ModuleDlg.h"
+#include "SalomeApp_PreferencesDlg.h"
 
 #include "SalomeApp_GLSelector.h"
 #include "SalomeApp_OBSelector.h"
@@ -30,6 +31,7 @@
 #include <GLViewer_ViewManager.h>
 
 #include <Plot2d_ViewManager.h>
+#include <SPlot2d_ViewModel.h>
 
 #include <OCCViewer_ViewManager.h>
 #include <SOCC_ViewModel.h>
@@ -108,7 +110,8 @@ extern "C" SALOMEAPP_EXPORT SUIT_Application* createApplication()
 */
 
 SalomeApp_Application::SalomeApp_Application()
-: CAM_Application( false )
+: CAM_Application( false ),
+myPrefDlg( 0 )
 {
   STD_TabDesktop* desk = new STD_TabDesktop();
 
@@ -671,6 +674,31 @@ PythonConsole* SalomeApp_Application::pythonConsole()
   return console;
 }
 
+QtxResourceEdit* SalomeApp_Application::resourceEdit() const
+{
+  return 0;
+  /*
+  QtxResourceEdit* edit = 0;
+  if ( !myPrefDlg )
+  {
+    SalomeApp_Application* that = (SalomeApp_Application*)this;
+    that->myPrefDlg = new SalomeApp_PreferencesDlg( that->desktop() );
+
+    edit = myPrefDlg->resourceEdit();
+
+    QStringList modList;
+    modules( modList, false );
+    for ( QStringList::const_iterator it = modList.begin(); it != modList.end(); ++it )
+    {
+      int id = edit->addItem( *it );
+      edit->setProperty( id, "info", tr( "PREFERENCES_NOT_LOADED" ).arg( *it ) );
+    }
+  }
+  else
+    edit = myPrefDlg->resourceEdit();
+  */
+}
+
 SUIT_ViewManager* SalomeApp_Application::getViewManager( const QString& vmType, const bool create )
 {
   SUIT_ViewManager* aVM = viewManager( vmType );
@@ -696,7 +724,10 @@ SUIT_ViewManager* SalomeApp_Application::createViewManager( const QString& vmTyp
     new SalomeApp_GLSelector( (GLViewer_Viewer2d*)viewMgr->getViewModel(), mySelMgr );
   }
   else if ( vmType == Plot2d_Viewer::Type() )
+  {
     viewMgr = new Plot2d_ViewManager( activeStudy(), desktop() );
+    viewMgr->setViewModel( new SPlot2d_Viewer() );// custom view model, which extends SALOME_View interface
+  }
   else if ( vmType == OCCViewer_Viewer::Type() )
   {
     viewMgr = new OCCViewer_ViewManager( activeStudy(), desktop() );
@@ -741,6 +772,8 @@ void SalomeApp_Application::onStudyCreated( SUIT_Study* theStudy )
     objectBrowser()->setRootObject( aRoot );
 
   activateModule( defaultModule() );
+
+  activateWindows();
 }
 
 void SalomeApp_Application::onStudyOpened( SUIT_Study* theStudy )
@@ -755,10 +788,10 @@ void SalomeApp_Application::onStudyOpened( SUIT_Study* theStudy )
     objectBrowser()->setRootObject( aRoot );
   }
 
-  activateWindows();
-
   activateModule( defaultModule() );
 
+  activateWindows();
+
   emit studyOpened();
 }