X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FStdMeshersGUI%2FStdMeshersGUI_SubShapeSelectorWdg.cxx;h=d58a631c61efa44eb8e43c6e1356732cf74e94b8;hp=a3a54de51ca3f9f3547652475d91fc2725c69520;hb=HEAD;hpb=264eeb2edd6977ccf2d2bd88cbb210353f63f7c9 diff --git a/src/StdMeshersGUI/StdMeshersGUI_SubShapeSelectorWdg.cxx b/src/StdMeshersGUI/StdMeshersGUI_SubShapeSelectorWdg.cxx index a3a54de51..5033645c5 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_SubShapeSelectorWdg.cxx +++ b/src/StdMeshersGUI/StdMeshersGUI_SubShapeSelectorWdg.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -74,7 +74,8 @@ StdMeshersGUI_SubShapeSelectorWdg ::StdMeshersGUI_SubShapeSelectorWdg( QWidget * parent, TopAbs_ShapeEnum subShType, const bool toShowList, - const bool toShowActivateBtn ): + const bool toShowActivateBtn, + const int minListWidth ): QWidget( parent ), myMaxSize( -1 ), myPreviewActor( 0 ) @@ -93,8 +94,8 @@ StdMeshersGUI_SubShapeSelectorWdg myAddButton = new QPushButton( tr( "SMESH_BUT_ADD" ), this ); myRemoveButton = new QPushButton( tr( "SMESH_BUT_REMOVE" ), this ); myListWidget->setSelectionMode( QListWidget::ExtendedSelection ); - myListWidget->setMinimumWidth(300); - myListWidget->setWrapping(true); + myListWidget->setMinimumWidth( minListWidth ); + myListWidget->setWrapping( true ); myActivateButton->setCheckable( true ); } else @@ -254,6 +255,20 @@ void StdMeshersGUI_SubShapeSelectorWdg::ShowPreview( bool visible) } } +//================================================================================ +/*! + * \brief Connect selection slots + * \param other - another StdMeshersGUI_ObjectReferenceParamWdg + */ +//================================================================================ + +void StdMeshersGUI_SubShapeSelectorWdg:: +AvoidSimultaneousSelection ( StdMeshersGUI_SubShapeSelectorWdg* other) +{ + connect(other, SIGNAL(selectionActivated()), this, SLOT(deactivateSelection())); + connect(this, SIGNAL(selectionActivated()), other, SLOT(deactivateSelection())); +} + //================================================================================ /*! * \brief Connect/disconnect to change of selection @@ -275,7 +290,7 @@ void StdMeshersGUI_SubShapeSelectorWdg::ActivateSelection( bool toActivate ) if ( toActivate ) { - connect( mySelectionMgr, SIGNAL(currentSelectionChanged()), this, SLOT(selectionIntoArgument())); + connect( mySelectionMgr, SIGNAL(currentSelectionChanged()), SLOT(selectionIntoArgument())); } else { @@ -284,6 +299,9 @@ void StdMeshersGUI_SubShapeSelectorWdg::ActivateSelection( bool toActivate ) if ( sender() == myActivateButton ) ShowPreview( toActivate ); + + if ( toActivate ) + emit selectionActivated(); } //================================================================================ @@ -578,7 +596,7 @@ void StdMeshersGUI_SubShapeSelectorWdg::updateState() GEOM::GEOM_Object_var StdMeshersGUI_SubShapeSelectorWdg::GetGeomObjectByEntry( const QString& theEntry ) { GEOM::GEOM_Object_var aGeomObj; - SALOMEDS::SObject_var aSObj = SMESH_Gen_i::getStudyServant()->FindObjectID( theEntry.toLatin1().data() ); + SALOMEDS::SObject_var aSObj = SMESH_Gen_i::GetSMESHGen()->getStudyServant()->FindObjectID( theEntry.toUtf8().data() ); if (!aSObj->_is_nil() ) { CORBA::Object_var obj = aSObj->GetObject();