Salome HOME
Fix a bug from the additional comment from Ilya MATVEYEV 2008-04-28 14:32 for bug...
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_MeshDlg.cxx
index 3f4f40afe420206cb15d0f29eec866ab8fa6910d..bedaa5ef5ac16a6874559e030d14509c9e43edee 100644 (file)
@@ -268,7 +268,7 @@ void SMESHGUI_MeshTab::onCreateHyp()
   QMenu aPopup( this );
   
   QStringList aHypNames = isMainHyp ? 
-    myAvailableHyps[ MainHyp ] : aHypNames = myAvailableHyps[ AddHyp ];
+    myAvailableHyps[ MainHyp ] : myAvailableHyps[ AddHyp ];
 
   QList<QAction*> actions;
   for ( int i = 0, n = aHypNames.count(); i < n; i++ )
@@ -536,15 +536,21 @@ void SMESHGUI_MeshDlg::setGeomPopupEnabled( const bool enable )
 {
   if ( QToolButton* selBtn = qobject_cast<QToolButton*>( objectWg( Geom, Btn )))
   {
-    disconnect( selBtn, SIGNAL( toggled(bool) ), this, SLOT( onGeomSelectionButton(bool) ));
     if ( enable ) {
       if ( ! myGeomPopup ) {
         myGeomPopup = new QMenu();
         myGeomPopup->addAction( tr("DIRECT_GEOM_SELECTION") )->setData( DIRECT_GEOM_INDEX );
         myGeomPopup->addAction( tr("GEOM_BY_MESH_ELEM_SELECTION") )->setData( GEOM_BY_MESH_INDEX );
         connect( myGeomPopup, SIGNAL( triggered( QAction* ) ), SLOT( onGeomPopup( QAction* ) ) );
+       connect( selBtn, SIGNAL( toggled(bool) ), this, SLOT( onGeomSelectionButton(bool) ));
+      }
+    }
+    else {
+      disconnect( selBtn, SIGNAL( toggled(bool) ), this, SLOT( onGeomSelectionButton(bool) ));
+      if ( myGeomPopup ) {
+       delete myGeomPopup;
+       myGeomPopup = 0;
       }
-      connect( selBtn, SIGNAL( toggled(bool) ), this, SLOT( onGeomSelectionButton(bool) ));
     }
   }
 }