+/*!
+ * \brief Base operation to compute a mesh and show computation errors
+ */
+class SMESHGUI_EXPORT SMESHGUI_BaseComputeOp: public SMESHGUI_Operation
+{
+ Q_OBJECT
+
+public:
+ SMESHGUI_BaseComputeOp();
+ virtual ~SMESHGUI_BaseComputeOp();
+
+protected:
+ virtual void startOperation();
+ virtual void stopOperation();
+
+ SMESHGUI_ComputeDlg* computeDlg() const;
+ void computeMesh();
+ void showComputeResult( const bool,
+ const bool,
+ 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();
+ void onPreviewShape();
+ void onPublishShape();
+ void onShowBadMesh();
+ void currentCellChanged();
+
+private:
+ QTableWidget* table();
+
+private:
+ QPointer<SMESHGUI_ComputeDlg> myCompDlg;
+ //QPointer<SMESHGUI_EvaluateDlg> myEvalDlg;
+
+protected:
+ SMESH::SMESH_Mesh_var myMesh;
+ GEOM::GEOM_Object_var myMainShape;
+ SMESH::TShapeDisplayer* myTShapeDisplayer;
+ SMESHGUI_MeshEditPreview* myBadMeshDisplayer;
+ Handle(SALOME_InteractiveObject) myIObject;
+};
+