X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_MeshInfo.h;h=85edb6001be0c7e56d9119479a77cd0bf3790247;hp=c8f8108f42a64e03a9d8f5434096513ab4f6705f;hb=88141f757b048eaa5aae0be49faaf274448bbcaf;hpb=a17b36970bc61da1d664453c615754997c925b18 diff --git a/src/SMESHGUI/SMESHGUI_MeshInfo.h b/src/SMESHGUI/SMESHGUI_MeshInfo.h index c8f8108f4..85edb6001 100644 --- a/src/SMESHGUI/SMESHGUI_MeshInfo.h +++ b/src/SMESHGUI/SMESHGUI_MeshInfo.h @@ -52,17 +52,19 @@ class QAbstractButton; class QButtonGroup; +class QCheckBox; class QContextMenuEvent; +class QGridLayout; class QLabel; class QLineEdit; class QPushButton; class QTabWidget; class QTextBrowser; -class QGridLayout; -class SMESH_Actor; -class SMDS_MeshNode; class SMDS_MeshElement; +class SMDS_MeshNode; +class SMESHGUI_IdPreview; class SMESHGUI_SpinBox; +class SMESH_Actor; class ExtraWidget; @@ -151,12 +153,14 @@ public: SMESHGUI_ElemInfo( QWidget* = 0 ); ~SMESHGUI_ElemInfo(); - void setSource( SMESH_Actor* ); + void setSource( SMESH_Actor*, SMESH::SMESH_IDSource_var ); void showInfo( long, bool ); void showInfo( QSet, bool ); void clear(); virtual void saveInfo( QTextStream &out ) = 0; + gp_XYZ getGravityCenter( const SMDS_MeshElement* e ) { return gravityCenter(e); } + protected: struct XYZ { @@ -168,12 +172,14 @@ protected: double x() const { return myX; } double y() const { return myY; } double z() const { return myZ; } + operator gp_XYZ() const { return gp_XYZ( myX, myY, myZ ); } }; typedef QMap< int, QList > Connectivity; QWidget* frame() const; SMESH_Actor* actor() const; bool isElements() const; + bool hasShapeToMesh() const { return myMeshHasShape; } virtual void information( const QList& ) = 0; virtual void clearInternal(); @@ -199,6 +205,7 @@ private: QWidget* myFrame; ExtraWidget* myExtra; int myIndex; + bool myMeshHasShape; }; class SMESHGUI_EXPORT SMESHGUI_SimpleElemInfo : public SMESHGUI_ElemInfo @@ -237,9 +244,11 @@ protected: private slots: void itemDoubleClicked( QTreeWidgetItem*, int ); + void saveExpanded( QTreeWidgetItem* ); private: QTreeWidgetItem* createItem( QTreeWidgetItem* = 0, int = 0 ); + QString expandedResource( QTreeWidgetItem* ); private: QTreeWidget* myInfo; @@ -324,6 +333,7 @@ private slots: void computeAspectRatio(); void computeAspectRatio3D(); void computeFreeNodesInfo(); + void computeNodesNbConnInfo(); void computeDoubleNodesInfo(); void computeDoubleEdgesInfo(); void computeDoubleFacesInfo(); @@ -345,7 +355,7 @@ private: QwtPlot* myPlot3D; QList myButtons; QList myPredicates; - TNumFunctor myAspectRatio, myAspectRatio3D; + TNumFunctor myAspectRatio, myAspectRatio3D, myNodeConnFunctor; }; class SMESHGUI_EXPORT SMESHGUI_MeshInfoDlg : public QDialog @@ -381,19 +391,23 @@ private slots: void deactivate(); void modeChanged(); void idChanged(); + void idPreviewChange(bool); void showItemInfo( int ); void showItemInfo( const QString& ); void dump(); private: - QTabWidget* myTabWidget; - SMESHGUI_MeshInfo* myBaseInfo; - QButtonGroup* myMode; - QLineEdit* myID; - SMESHGUI_ElemInfo* myElemInfo; - SMESHGUI_AddInfo* myAddInfo; - SMESHGUI_CtrlInfo* myCtrlInfo; - SMESH_Actor* myActor; + QTabWidget* myTabWidget; + SMESHGUI_MeshInfo* myBaseInfo; + QButtonGroup* myMode; + QLineEdit* myID; + QCheckBox* myIDPreviewCheck; + SMESHGUI_IdPreview* myIDPreview; + SMESHGUI_ElemInfo* myElemInfo; + SMESHGUI_AddInfo* myAddInfo; + SMESHGUI_CtrlInfo* myCtrlInfo; + SMESH_Actor* myActor; + Handle(SALOME_InteractiveObject) myIO; }; class SMESHGUI_EXPORT SMESHGUI_CtrlInfoDlg : public QDialog