X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_MeshInfo.h;h=bc8c406834fe98678d1d3c8c9c099ca4ef09d2ae;hb=4e198a53df539beec44b2cc082ac1606dd260af7;hp=f66a59000a28c11eeffcc178be8f6bf4fe72a8ef;hpb=14570f80e3fa5f4abce93a814405f3b3f930c2d3;p=modules%2Fsmesh.git diff --git a/src/SMESHGUI/SMESHGUI_MeshInfo.h b/src/SMESHGUI/SMESHGUI_MeshInfo.h index f66a59000..bc8c40683 100644 --- a/src/SMESHGUI/SMESHGUI_MeshInfo.h +++ b/src/SMESHGUI/SMESHGUI_MeshInfo.h @@ -26,7 +26,6 @@ #define SMESHGUI_MESHINFO_H #include "SMESH_SMESHGUI.hxx" -#include #include "SMESH_ControlsDef.hxx" #include @@ -42,7 +41,12 @@ #include #include CORBA_SERVER_HEADER(SMESH_Mesh) #include CORBA_SERVER_HEADER(SMESH_Group) +#include CORBA_SERVER_HEADER(SMESH_Filter) + +#include +#include +class QAbstractButton; class QButtonGroup; class QContextMenuEvent; class QLabel; @@ -50,9 +54,11 @@ class QLineEdit; class QPushButton; class QTabWidget; class QTextBrowser; +class QGridLayout; class SMESH_Actor; class SMDS_MeshNode; class SMDS_MeshElement; +class SMESHGUI_SpinBox; class ExtraWidget; @@ -291,27 +297,44 @@ public: SMESHGUI_CtrlInfo( QWidget* = 0 ); ~SMESHGUI_CtrlInfo(); - void showInfo( SMESH::SMESH_IDSource_ptr ); - void saveInfo( QTextStream &out ); + void showInfo( SMESH::SMESH_IDSource_ptr ); + void saveInfo( QTextStream &out ); private: - QLabel* createField(); - QwtPlot* createPlot( QWidget* ); - void setFontAttributes( QWidget* ); - void clearInternal(); - int nbElemsControl( SMESH::long_array_var&, SMESH::Controls::FunctorPtr ); - Plot2d_Histogram* getHistogram( SMESH::long_array_var&, SMESH::Controls::NumericalFunctorPtr ); + enum ObjectType { Mesh, SubMesh, Group }; + QLabel* createField(); + QwtPlot* createPlot( QWidget* ); + void setFontAttributes( QWidget* ); + void clearInternal(); + Plot2d_Histogram* getHistogram( SMESH::NumericalFunctor_ptr functor ); + void computeNb( int ft, int iBut, int iWdg ); private slots: - void computeFaceInfo(); - void computeVolumeInfo(); + void computeAspectRatio(); + void computeAspectRatio3D(); + void computeFreeNodesInfo(); + void computeDoubleNodesInfo(); + void computeDoubleEdgesInfo(); + void computeDoubleFacesInfo(); + void computeOverConstrainedFacesInfo(); + void computeDoubleVolumesInfo(); + void computeOverConstrainedVolumesInfo(); + void setTolerance( const double theTolerance ); + private: - QList myWidgets; - QwtPlot* myPlot; - QwtPlot* myPlot3D; - QPushButton* myComputeFaceBtn; - QPushButton* myComputeVolumeBtn; + typedef SALOME::GenericObj_wrap< SMESH::Predicate > TPredicate; + typedef SALOME::GenericObj_wrap< SMESH::NumericalFunctor > TNumFunctor; + SMESH::SMESH_IDSource_var myObject; + ObjectType myObjectType; + SMESHGUI_SpinBox* myToleranceWidget; + QList myWidgets; + QGridLayout* myMainLayout; + QwtPlot* myPlot; + QwtPlot* myPlot3D; + QList myButtons; + QList myPredicates; + TNumFunctor myAspectRatio, myAspectRatio3D; }; class SMESHGUI_EXPORT SMESHGUI_MeshInfoDlg : public QDialog @@ -378,6 +401,8 @@ private slots: void activate(); void deactivate(); void updateSelection(); + void help(); + void dump(); private: SMESHGUI_CtrlInfo* myCtrlInfo;