Back to index

salome-smesh  6.5.0
SMESHGUI_DuplicateNodesDlg.h
Go to the documentation of this file.
00001 // Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
00002 //
00003 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
00004 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
00005 //
00006 // This library is free software; you can redistribute it and/or
00007 // modify it under the terms of the GNU Lesser General Public
00008 // License as published by the Free Software Foundation; either
00009 // version 2.1 of the License.
00010 //
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014 // Lesser General Public License for more details.
00015 //
00016 // You should have received a copy of the GNU Lesser General Public
00017 // License along with this library; if not, write to the Free Software
00018 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
00019 //
00020 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00021 //
00022 
00023 // SMESH SMESHGUI : GUI for SMESH component
00024 // File   : SMESHGUI_DuplicateNodesDlg.h
00025 // Author : Michael ZORIN, Open CASCADE S.A.S.
00026 //
00027 #ifndef SMESHGUI_DUPLICATENODESDLG_H
00028 #define SMESHGUI_DUPLICATENODESDLG_H
00029 
00030 // SMESH includes
00031 #include "SMESH_SMESHGUI.hxx"
00032 
00033 // Qt includes
00034 #include <QDialog>
00035 
00036 // IDL includes
00037 #include <SALOMEconfig.h>
00038 #include CORBA_SERVER_HEADER(SMESH_Group)
00039 
00040 class QButtonGroup;
00041 class QGroupBox;
00042 class QLabel;
00043 class QLineEdit;
00044 class QPushButton;
00045 class QCheckBox;
00046 
00047 class LightApp_SelectionMgr;
00048 
00049 class SMESHGUI;
00050 
00055 class SMESHGUI_EXPORT SMESHGUI_DuplicateNodesDlg : public QDialog
00056 { 
00057   Q_OBJECT
00058 
00059 public:
00060   SMESHGUI_DuplicateNodesDlg( SMESHGUI* );
00061   ~SMESHGUI_DuplicateNodesDlg();
00062 
00063 private:
00064   void                    Init();
00065 
00066   bool                    isValid();
00067   
00068   void                    closeEvent( QCloseEvent* );
00069   void                    enterEvent( QEvent* );
00070   void                    keyPressEvent( QKeyEvent* );
00071   
00072 private slots:
00073   void                    onConstructorsClicked( int );
00074  
00075   void                    onOk();
00076   void                    onClose();
00077   bool                    onApply();
00078   void                    onHelp();
00079 
00080   void                    onEditCurrentArgument();
00081   void                    onSelectionChanged();
00082 
00083   void                    onDeactivate();
00084 
00085 private:
00086   QLineEdit*              myCurrentLineEdit;
00087   
00088   QButtonGroup*           myGroupConstructors;
00089   
00090   QGroupBox*              myGroupArguments;
00091   QLabel*                 myTextLabel1;
00092   QLabel*                 myTextLabel2;
00093   QLabel*                 myTextLabel3;
00094   QPushButton*            mySelectButton1;
00095   QPushButton*            mySelectButton2;
00096   QPushButton*            mySelectButton3;
00097   QLineEdit*              myLineEdit1;
00098   QLineEdit*              myLineEdit2;
00099   QLineEdit*              myLineEdit3;
00100   QCheckBox*              myCheckBoxNewElemGroup;
00101   QCheckBox*              myCheckBoxNewNodeGroup;
00102 
00103   QPushButton*            myButtonOk;
00104   QPushButton*            myButtonApply;
00105   QPushButton*            myButtonClose;
00106   QPushButton*            myButtonHelp;
00107 
00108   SMESHGUI*               mySMESHGUI;
00109   LightApp_SelectionMgr*  mySelectionMgr;
00110 
00111   QList<SMESH::SMESH_GroupBase_var> myGroups1;
00112   QList<SMESH::SMESH_GroupBase_var> myGroups2;
00113   QList<SMESH::SMESH_GroupBase_var> myGroups3;
00114 
00115   bool                    myBusy;
00116   
00117   QString                 myHelpFileName;
00118 };
00119 
00120 #endif // SMESHGUI_DUPLICATENODESDLG_H