Salome HOME
IMP 0020089: Take into account 0D elements (MED_POINT1)
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_ComputeDlg.h
index 9a84f8a1c26b919fbf8160449528def81f33af30..d88731203630a5c9274192fc5fab7b21a7b4ec78 100644 (file)
@@ -51,6 +51,7 @@ class QLabel;
 class QtxComboBox;
 class SMESHGUI_ComputeDlg;
 class SMESHGUI_PrecomputeDlg;
+//class SMESHGUI_EvaluateDlg;
 class SMESHGUI_MeshEditPreview;
 
 class SMESH::compute_error_array;
@@ -82,6 +83,15 @@ protected:
                                                    SMESH::compute_error_array_var&,
                                                    const bool,
                                                    const QString& );
+  //SMESHGUI_EvaluateDlg*          evaluateDlg() const;
+  SMESHGUI_ComputeDlg*           evaluateDlg() const;
+  void                           evaluateMesh();
+  void                           showEvaluateResult(std::vector<int> theVec,
+                                                   const bool,
+                                                   const bool,
+                                                   SMESH::compute_error_array_var&,
+                                                   const bool,
+                                                   const QString&);
     
 protected slots:
   virtual bool                   onApply();
@@ -95,6 +105,7 @@ private:
 
 private:
   QPointer<SMESHGUI_ComputeDlg>  myCompDlg;
+  //QPointer<SMESHGUI_EvaluateDlg> myEvalDlg;
 
 protected:
   SMESH::SMESH_Mesh_var            myMesh;
@@ -136,6 +147,12 @@ public:
 
   virtual LightApp_Dialog*       dlg() const;
 
+  /**
+   * \brief returns map of assigned algorithms modes
+   */
+  static void                    getAssignedAlgos(_PTR(SObject) theMesh,
+                                                  QMap<int,int>& theModeMap);
+
 protected:
   virtual void                   startOperation();
   virtual void                   stopOperation();
@@ -157,6 +174,25 @@ private:
   SMESHGUI_MeshEditPreview*      myPreviewDisplayer;
 };
 
+/*!
+ * \brief Operation to evaluate a mesh and show result
+ */
+class SMESHGUI_EXPORT SMESHGUI_EvaluateOp: public SMESHGUI_BaseComputeOp
+{
+  Q_OBJECT
+
+public:
+  SMESHGUI_EvaluateOp();
+  virtual ~SMESHGUI_EvaluateOp();
+
+  virtual LightApp_Dialog*       dlg() const;
+
+protected:
+  virtual void                   startOperation();
+
+protected slots:
+};
+
 /*!
  * \brief Box showing mesh info
  */
@@ -170,6 +206,8 @@ public:
 
   void    SetInfoByMesh( SMESH::SMESH_Mesh_var );
 
+  void    SetInfoByEval( std::vector<int> theVec );
+
 private:
   bool    myFull;
   QLabel* myNbNode;
@@ -213,11 +251,11 @@ class SMESHGUI_EXPORT SMESHGUI_ComputeDlg : public SMESHGUI_Dialog
   Q_OBJECT
 
 public:
-  SMESHGUI_ComputeDlg( QWidget* );
+  SMESHGUI_ComputeDlg( QWidget*, bool );
   virtual ~SMESHGUI_ComputeDlg();
 
 protected:
-  QFrame*                      createMainFrame( QWidget* );
+  QFrame*                      createMainFrame( QWidget*, bool );
 
   QLabel*                      myMeshName;
   QGroupBox*                   myMemoryLackGroup;
@@ -260,4 +298,36 @@ private:
 };
 
 
+/*!
+ * \brief Dialog to evaluate a mesh and show result
+ */
+/*
+class SMESHGUI_EXPORT SMESHGUI_EvaluateDlg : public SMESHGUI_Dialog
+{
+  Q_OBJECT
+
+public:
+  SMESHGUI_EvaluateDlg( QWidget* );
+  virtual ~SMESHGUI_EvaluateDlg();
+
+protected:
+  QFrame*                      createMainFrame( QWidget* );
+
+  QLabel*                      myMeshName;
+  QGroupBox*                   myMemoryLackGroup;
+  QGroupBox*                   myCompErrorGroup;
+  QGroupBox*                   myHypErrorGroup;
+  QLabel*                      myHypErrorLabel;
+  QTableWidget*                myTable;
+  QPushButton*                 myShowBtn;
+  QPushButton*                 myPublishBtn;
+  QPushButton*                 myBadMeshBtn;
+
+  SMESHGUI_MeshInfosBox*       myBriefInfo;
+  SMESHGUI_MeshInfosBox*       myFullInfo;
+
+  friend class SMESHGUI_BaseComputeOp;
+};
+*/
+
 #endif // SMESHGUI_COMPUTEDLG_H