X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FStdMeshersGUI%2FStdMeshersGUI_ObjectReferenceParamWdg.h;h=46ac6942c5d6b56235afac12df3120e9c934ccf7;hp=5ffd0bca1a08d60ec3b5aed834b7a129ccaf5cd7;hb=HEAD;hpb=1067ffa6e7e5c394e3a1b17219d8b355a57607cd diff --git a/src/StdMeshersGUI/StdMeshersGUI_ObjectReferenceParamWdg.h b/src/StdMeshersGUI/StdMeshersGUI_ObjectReferenceParamWdg.h index 5ffd0bca1..192ad51d3 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_ObjectReferenceParamWdg.h +++ b/src/StdMeshersGUI/StdMeshersGUI_ObjectReferenceParamWdg.h @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -35,7 +35,7 @@ #include // CORBA includes -#include +#include #include #include CORBA_SERVER_HEADER(SMESH_Mesh) @@ -53,11 +53,11 @@ class STDMESHERSGUI_EXPORT StdMeshersGUI_ObjectReferenceParamWdg : public QWidge { Q_OBJECT -public: - StdMeshersGUI_ObjectReferenceParamWdg( SUIT_SelectionFilter* filter, + public: + StdMeshersGUI_ObjectReferenceParamWdg( SUIT_SelectionFilter* filter, QWidget* parent, - bool multiSelection=false, - bool stretch=true); + bool multiSelection=false + /* ,bool stretch=true*/); StdMeshersGUI_ObjectReferenceParamWdg( SMESH::MeshObjectType objType, QWidget* parent, bool multiSelection=false); @@ -67,66 +67,76 @@ public: void SetObjects(SMESH::string_array_var& objEntries); - template - typename TInterface::_var_type GetObject(unsigned i=0) const { + template + typename TInterface::_var_type GetObject(size_t i=0) const { if ( IsObjectSelected(i) ) return TInterface::_narrow(myObjects[i]); return TInterface::_nil(); } - int NbObjects() const { return myObjects.size(); } + size_t NbObjects() const { return myObjects.size(); } + // Return object entries QString GetValue() const { return myParamValue; } - bool IsObjectSelected(unsigned i=0) const + bool IsObjectSelected(size_t i=0) const { return i < myObjects.size() && !CORBA::is_nil(myObjects[i]); } + /*! + * \brief Get the selection status + * + * Useful to know which Object Reference param widget is activated + * to be able to activate the next one when the content of this + * one has been modified + */ + bool IsSelectionActivated() const { return mySelectionActivated; } + void AvoidSimultaneousSelection( StdMeshersGUI_ObjectReferenceParamWdg* other); - + void SetDefaultText(QString defaultText="", QString styleSheet=""); -public slots: + public slots: /*! * \brief Activates selection (if not yet done), emits selectionActivated() - * - * Useful to deactivate one Object Reference param widget when an other - * one is activated + * + * Useful to deactivate one Object Reference param widget when an other + * one is activated */ void activateSelection(); void deactivateSelection(); -signals: + signals: /*! * \brief Emitted when selection is activated - * - * Useful to deactivate one Object Reference param widget when an other - * one is activated + * + * Useful to deactivate one Object Reference param widget when an other + * one is activated */ void selectionActivated(); void contentModified(); - -private slots: - void onSelectionDone(); -private: + private slots: + void onSelectionDone(); + + private: void init(); - -private: + + private: bool myMultiSelection; std::vector myObjects; - SUIT_SelectionFilter* myFilter; - bool mySelectionActivated; - bool myStretchActivated; + SUIT_SelectionFilter* myFilter; + bool mySelectionActivated; + bool myStretchActivated; - SMESHGUI* mySMESHGUI; - LightApp_SelectionMgr* mySelectionMgr; + SMESHGUI* mySMESHGUI; + LightApp_SelectionMgr* mySelectionMgr; - QLineEdit* myObjNameLineEdit; - QPushButton* mySelButton; - QString myParamValue; - QString myEmptyText; - QString myEmptyStyleSheet; + QLineEdit* myObjNameLineEdit; + QPushButton* mySelButton; + QString myParamValue; + QString myEmptyText; + QString myEmptyStyleSheet; }; #endif // STDMESHERSGUI_OBJECTREFERENCEPARAMWDG_H