#include <SVTK_ViewWindow.h>
#include <SVTK_ViewModel.h>
+#include <VTKViewer_ViewManager.h>
+
#include "SMESHGUI_Utils.h"
#include "SMESHGUI_GEOMGenUtils.h"
#include "SMESHGUI_MeshUtils.h"
mgr->setValue( "SMESH", "SettingsElementsSelectTol", aTolItems );
// update current study settings
- SMESH::UpdateSelectionProp();
+ SMESH::UpdateSelectionProp( this );
if( vtkwnd ) {
// update VTK viewer properties
//=============================================================================
bool SMESHGUI::SetSettings(SUIT_Desktop* parent)
{
- MESSAGE("SMESHGUI::SetSettings.");
SMESHGUI::GetSMESHGUI();
SUIT_ResourceMgr* mgr = resourceMgr();
action( 10001 )->setOn( false );
action( 10003 )->setOn( true );
}
+
action( 10003 )->setOn( Shrink );
// Automatic Update
action( 10071 )->setOn( false );
// Selection
- SMESH::UpdateSelectionProp();
+ SMESH::UpdateSelectionProp( this );
// menus disable
- //action( 111 )->setEnabled( false ); // IMPORT DAT
+ action( 111 )->setEnabled( false ); // IMPORT DAT
+
+ //action( 112 )->setEnabled( false );
//parent->menuBar()->setItemEnabled(112, false); // IMPORT UNV
return true;
popupMgr()->setRule( action( 302 ), aRule + "&&" + isNotEmpty, true );
popupMgr()->insert( separator(), -1, -1 );
+
+ connect( application(), SIGNAL( viewManagerAdded( SUIT_ViewManager* ) ),
+ this, SLOT( onViewManagerAdded( SUIT_ViewManager* ) ) );
}
bool SMESHGUI::activateModule( SUIT_Study* study )
setMenuShown( true );
setToolShown( true );
+ SetSettings( desktop() );
return res;
- //SetSettings( desktop() );
}
bool SMESHGUI::deactivateModule( SUIT_Study* study )
{
list.append( SVTK_Viewer::Type() );
}
+
+void SMESHGUI::onViewManagerAdded( SUIT_ViewManager* mgr )
+{
+ if( dynamic_cast<VTKViewer_ViewManager*>( mgr ) )
+ SMESH::UpdateSelectionProp( this );
+}
}
- void UpdateSelectionProp() {
- SUIT_Study* aStudy = GetActiveStudy();
- SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( aStudy->application() );
+ void UpdateSelectionProp( SMESHGUI* theModule ) {
+ if( !theModule )
+ return;
+
+ SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( theModule->application() );
+ if( !app )
+ {
+ MESSAGE( "UpdateSelectionProp: Application is null" );
+ return;
+ }
+
SUIT_ViewManager* vm = app->activeViewManager();
+ if( !vm )
+ {
+ MESSAGE( "UpdateSelectionProp: View manager is null" );
+ return;
+ }
+
QPtrVector<SUIT_ViewWindow> views = vm->getViews();
- SUIT_ResourceMgr* mgr = SMESHGUI::resourceMgr();
+ SUIT_ResourceMgr* mgr = SMESH::GetResourceMgr( theModule );
+ if( !mgr )
+ {
+ MESSAGE( "UpdateSelectionProp: Resource manager is null" );
+ return;
+ }
QColor aHiColor = mgr->colorValue( "SMESH", "SettingsSelectColor", Qt::white ),
aSelColor = mgr->colorValue( "SMESH", "SettingsItemSelectColor", Qt::yellow ),