1 // Copyright (C) 2007-2008 CEA/DEN, EDF R&D
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 // File : BLSURFPluginGUI_HypothesisCreator.h
21 // Authors : Francis KLOSS (OCC) & Patrick LAUG (INRIA) & Lioka RAZAFINDRAZAKA (CEA)
22 // & Aurelien ALLEAUME (DISTENE)
25 #ifndef BLSURFPLUGINGUI_HypothesisCreator_H
26 #define BLSURFPLUGINGUI_HypothesisCreator_H
29 #ifdef BLSURFPLUGIN_GUI_EXPORTS
30 #define BLSURFPLUGIN_GUI_EXPORT __declspec( dllexport )
32 #define BLSURFPLUGIN_GUI_EXPORT __declspec( dllimport )
35 #define BLSURFPLUGIN_GUI_EXPORT
38 #include <SMESHGUI_Hypotheses.h>
39 #include <SALOMEconfig.h>
40 #include CORBA_SERVER_HEADER(BLSURFPlugin_Algorithm)
43 class QtxDoubleSpinBox;
54 int myTopology, myVerbosity;
55 int myPhysicalMesh, myGeometricMesh;
56 double myAngleMeshS, myAngleMeshC, myGradation;
57 QString myPhySize, myGeoMin, myGeoMax, myPhyMin, myPhyMax;
58 bool myAllowQuadrangles, myDecimesh;
61 } BlsurfHypothesisData;
64 * \brief Class for creation of BLSURF hypotheses
66 class BLSURFPLUGIN_GUI_EXPORT BLSURFPluginGUI_HypothesisCreator : public SMESHGUI_GenericHypothesisCreator
71 BLSURFPluginGUI_HypothesisCreator( const QString& );
72 virtual ~BLSURFPluginGUI_HypothesisCreator();
74 virtual bool checkParams() const;
75 virtual QString helpPage() const;
78 virtual QFrame* buildFrame ();
79 virtual void retrieveParams() const;
80 virtual QString storeParams () const;
82 virtual QString caption() const;
83 virtual QPixmap icon() const;
84 virtual QString type() const;
87 void onPhysicalMeshChanged();
88 void onGeometricMeshChanged();
90 void onDeleteOption();
91 void onOptionChosenInPopup( QAction* );
94 bool readParamsFromHypo( BlsurfHypothesisData& ) const;
95 QString readParamsFromWidgets( BlsurfHypothesisData& ) const;
96 bool storeParamsToHypo( const BlsurfHypothesisData& ) const;
101 QComboBox* myPhysicalMesh;
102 QLineEdit* myPhySize;
105 QComboBox* myGeometricMesh;
106 QtxDoubleSpinBox* myAngleMeshS;
107 QtxDoubleSpinBox* myAngleMeshC;
110 QtxDoubleSpinBox* myGradation;
111 QCheckBox* myAllowQuadrangles;
112 QCheckBox* myDecimesh;
115 QComboBox* myTopology;
116 QSpinBox* myVerbosity;
117 QTableWidget* myOptionTable;
119 BLSURFPlugin::string_array_var myOptions;
122 #endif // BLSURFPLUGINGUI_HypothesisCreator_H