-// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,\r
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS \r
-// \r
-// This library is free software; you can redistribute it and/or \r
-// modify it under the terms of the GNU Lesser General Public \r
-// License as published by the Free Software Foundation; either \r
-// version 2.1 of the License. \r
-// \r
-// This library is distributed in the hope that it will be useful, \r
-// but WITHOUT ANY WARRANTY; without even the implied warranty of \r
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU \r
-// Lesser General Public License for more details. \r
-// \r
-// You should have received a copy of the GNU Lesser General Public \r
-// License along with this library; if not, write to the Free Software \r
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA \r
-// \r
-// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org \r
-//\r
-//\r
-//\r
-// File : SMESHGUI_CreatePatternDlg.h\r
-// Author : Sergey LITONIN\r
-// Module : SMESH\r
-\r
-\r
-#ifndef SMESHGUI_CreatePatternDlg_H\r
-#define SMESHGUI_CreatePatternDlg_H\r
-\r
-#include <qdialog.h>\r
-\r
-// IDL Headers\r
-#include <SALOMEconfig.h>\r
-#include CORBA_SERVER_HEADER(GEOM_Gen)\r
-#include CORBA_SERVER_HEADER(SMESH_Mesh)\r
-#include CORBA_SERVER_HEADER(SMESH_Pattern)\r
-\r
-class SMESHGUI_PatternWidget;\r
-class QCloseEvent;\r
-class QFrame;\r
-class QLineEdit;\r
-class SMESHGUI_SpinBox;\r
-class QPushButton;\r
-class SALOME_Selection;\r
-class QRadioButton;\r
-class QCheckBox;\r
-class QButtonGroup;\r
-class QLabel;\r
-\r
-/*\r
- Class : SMESHGUI_CreatePatternDlg\r
- Description : Dialog to specify filters for VTK viewer\r
-*/\r
-\r
-class SMESHGUI_CreatePatternDlg : public QDialog\r
-{\r
- Q_OBJECT\r
-\r
-public:\r
- \r
- enum { Type_2d, Type_3d };\r
-\r
-public:\r
- SMESHGUI_CreatePatternDlg( QWidget*,\r
- SALOME_Selection*,\r
- const int,\r
- const char* = 0 );\r
- virtual ~SMESHGUI_CreatePatternDlg();\r
-\r
- void Init( SALOME_Selection*, const int );\r
- QString GetPatternName() const;\r
- SMESH::SMESH_Pattern_ptr GetPattern();\r
- void SetMesh( SMESH::SMESH_Mesh_ptr );\r
- \r
-signals:\r
-\r
- void NewPattern();\r
- void Close();\r
- \r
-private:\r
-\r
- void closeEvent( QCloseEvent* e ) ;\r
- void enterEvent ( QEvent * ) ; \r
- \r
-private slots:\r
-\r
- void onOk();\r
- void onSave();\r
- void onClose();\r
-\r
- void onDeactivate();\r
-\r
- void onSelectionDone();\r
- void onTypeChanged( int );\r
- void onProject( bool );\r
- void onSelBtnClicked();\r
-\r
-private:\r
-\r
- QFrame* createButtonFrame( QWidget* );\r
- QFrame* createMainFrame ( QWidget* );\r
- void displayPreview();\r
- void erasePreview();\r
- void activateSelection();\r
- QString autoExtension( const QString& theFileName ) const;\r
- bool isValid();\r
- bool loadFromObject( const bool = true );\r
- QString getDefaultName() const;\r
- GEOM::GEOM_Object_ptr getGeom( SALOMEDS::SObject_ptr );\r
-\r
-private:\r
-\r
- QPushButton* myOkBtn;\r
- QPushButton* mySaveBtn;\r
- QPushButton* myCloseBtn;\r
-\r
- QButtonGroup* myTypeGrp;\r
- QRadioButton* mySwitch2d;\r
- QRadioButton* mySwitch3d;\r
- QRadioButton* mySwitchSMESH_Pattern3d;\r
-\r
- QLineEdit* myMeshEdit;\r
- QLineEdit* myName;\r
-\r
- SMESHGUI_PatternWidget* myPicture2d;\r
- \r
- QCheckBox* myProjectChk;\r
- \r
- SALOME_Selection* mySelection;\r
- int myNbPoints;\r
- int myType;\r
-\r
- SMESH::SMESH_Mesh_var myMesh;\r
- SMESH::SMESH_subMesh_var mySubMesh;\r
- GEOM::GEOM_Object_var myGeomObj;\r
-\r
- SMESH::SMESH_Pattern_var myPattern;\r
- bool myIsLoaded;\r
-};\r
-\r
-#endif\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
+// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
+//
+// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+// File : SMESHGUI_CreatePatternDlg.h
+// Author : Sergey LITONIN, Open CASCADE S.A.S.
+//
+#ifndef SMESHGUI_CREATEPATTERNDLG_H
+#define SMESHGUI_CREATEPATTERNDLG_H
+
+// SMESH includes
+#include "SMESH_SMESHGUI.hxx"
+
+// Qt includes
+#include <QDialog>
+
+// IDL includes
+#include <SALOMEconfig.h>
+#include CORBA_SERVER_HEADER(SMESH_Mesh)
+#include CORBA_SERVER_HEADER(SMESH_Pattern)
+
+class SMESHGUI_PatternWidget;
+class SALOMEDSClient_SObject;
+
+class QLineEdit;
+class QRadioButton;
+class QCheckBox;
+class QButtonGroup;
+class SVTK_Selector;
+class LightApp_SelectionMgr;
+class SMESHGUI;
+
+/*!
+ * Class : SMESHGUI_CreatePatternDlg
+ * Description : Dialog to specify filters for VTK viewer
+ */
+
+class SMESHGUI_EXPORT SMESHGUI_CreatePatternDlg : public QDialog
+{
+ Q_OBJECT
+
+public:
+ enum { Type_2d, Type_3d };
+
+public:
+ SMESHGUI_CreatePatternDlg( SMESHGUI*, const int );
+ virtual ~SMESHGUI_CreatePatternDlg();
+
+ void Init( const int );
+ QString GetPatternName() const;
+ SMESH::SMESH_Pattern_ptr GetPattern();
+ void SetMesh( SMESH::SMESH_Mesh_ptr );
+
+signals:
+ void NewPattern();
+ void Close();
+
+private:
+ void closeEvent( QCloseEvent* );
+ void enterEvent( QEvent* );
+ void keyPressEvent( QKeyEvent* );
+
+private slots:
+ void onOk();
+ void onSave();
+ void onClose();
+ void onHelp();
+
+ void onDeactivate();
+
+ void onSelectionDone();
+ void onTypeChanged( int );
+ void onProject( bool );
+ void onSelBtnClicked();
+
+private:
+ QWidget* createButtonFrame( QWidget* );
+ QWidget* createMainFrame( QWidget* );
+ void displayPreview();
+ void erasePreview();
+ void activateSelection();
+ QString autoExtension( const QString& ) const;
+ bool isValid();
+ bool loadFromObject( const bool = true );
+ QString getDefaultName() const;
+ GEOM::GEOM_Object_ptr getGeom( SALOMEDSClient_SObject* ) const;
+
+private:
+ QButtonGroup* myTypeGrp;
+ QRadioButton* mySwitch2d;
+ QRadioButton* mySwitch3d;
+
+ QLineEdit* myMeshEdit;
+ QLineEdit* myName;
+
+ SMESHGUI_PatternWidget* myPicture2d;
+
+ QCheckBox* myProjectChk;
+
+ SMESHGUI* mySMESHGUI;
+ SVTK_Selector* mySelector;
+ LightApp_SelectionMgr* mySelectionMgr;
+ int myType;
+
+ SMESH::SMESH_Mesh_var myMesh;
+ SMESH::SMESH_subMesh_var mySubMesh;
+ GEOM::GEOM_Object_var myGeomObj;
+
+ SMESH::SMESH_Pattern_var myPattern;
+ bool myIsLoaded;
+
+ QString myHelpFileName;
+};
+
+#endif // SMESHGUI_CREATEPATTERNDLG_H