Salome HOME
Provide connection of new features in SALOME module
[modules/shaper.git] / src / NewGeom / NewGeom_Module.cpp
index 549276279f14ece914747ce0b52deb231b7a3dce..fc07f5d55bf7f280db540e4aed232fa1fc4e5585 100644 (file)
@@ -6,6 +6,7 @@
 
 #include <XGUI_Workshop.h>
 #include <XGUI_PropertyPanel.h>
+#include <XGUI_ContextMenuMgr.h>
 
 #include <LightApp_Application.h>
 #include <LightApp_SelectionMgr.h>
@@ -16,6 +17,7 @@
 #include <SUIT_Desktop.h>
 #include <SUIT_ViewManager.h>
 
+#include <QtxPopupMgr.h>
 #include <QtxActionMenuMgr.h>
 
 #include <QDockWidget>
@@ -72,7 +74,6 @@ bool NewGeom_Module::activateModule(SUIT_Study* theStudy)
   if (isDone) {
     setMenuShown( true );
     setToolShown( true );
-    myWorkshop->propertyPanel()->hide();
 
     if (!mySelector) {
       ViewManagerList OCCViewManagers;
@@ -81,10 +82,22 @@ bool NewGeom_Module::activateModule(SUIT_Study* theStudy)
         mySelector = createSelector(OCCViewManagers.first());
       }
     }
+    myWorkshop->propertyPanel()->hide();
+    QtxPopupMgr* aMgr = popupMgr(); // Create popup manager
+    action(myEraseAll)->setEnabled(false);
   }
   return isDone;
 }
 
+//******************************************************
+bool NewGeom_Module::deactivateModule(SUIT_Study* theStudy)
+{
+  setMenuShown( false );
+  setToolShown( false );
+  //myWorkshop->contextMenuMgr()->disconnectViewer();
+  return LightApp_Module::deactivateModule(theStudy);
+}
+
 //******************************************************
 void NewGeom_Module::onViewManagerAdded( SUIT_ViewManager* theMgr )
 {
@@ -112,14 +125,6 @@ NewGeom_OCCSelector* NewGeom_Module::createSelector(SUIT_ViewManager* theMgr)
   return 0;
 }
 
-//******************************************************
-bool NewGeom_Module::deactivateModule(SUIT_Study* theStudy)
-{
-  setMenuShown( false );
-  setToolShown( false );
-  return LightApp_Module::deactivateModule(theStudy);
-}
-
 //******************************************************
 CAM_DataModel* NewGeom_Module::createDataModel()
 {
@@ -242,3 +247,10 @@ void NewGeom_Module::selectionChanged()
   LightApp_Module::selectionChanged();
   myWorkshop->salomeViewerSelectionChanged();
 }
+
+//******************************************************
+void NewGeom_Module::contextMenuPopup(const QString& theClient, QMenu* theMenu, QString& theTitle)
+{
+  myWorkshop->contextMenuMgr()->addViewerItems(theMenu);
+  LightApp_Module::contextMenuPopup(theClient, theMenu, theTitle);
+}
\ No newline at end of file