Salome HOME
Merge from BR_hydro 30/10/2013
[modules/geom.git] / src / CurveCreator / CurveCreator_NewSectionDlg.h
1 // Copyright (C) 2013  CEA/DEN, EDF R&D, OPEN CASCADE
2 //
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.
7 //
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.
12 //
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
16 //
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19
20 #ifndef CURVECREATOR_NEWSECTION_H
21 #define CURVECREATOR_NEWSECTION_H
22
23 #include "CurveCreator.hxx"
24
25 #include <QDockWidget>
26
27 class CurveCreator_Curve;
28
29 class QLineEdit;
30 class QComboBox;
31 class QCheckBox;
32 class QPushButton;
33 class QAbstractButton;
34 class QDialogButtonBox;
35 class QFrame;
36
37 class CurveCreator_NewSectionDlg : public QWidget
38 {
39   Q_OBJECT
40 public:
41   explicit CurveCreator_NewSectionDlg(QWidget *parent = 0);
42
43   QString getName() const;
44   bool    isClosed() const;
45   CurveCreator::Type getSectionType() const;
46
47   void    setSectionParameters( const QString& theName, bool isClosed, CurveCreator::Type theType );
48   void    setSectionName(const QString& theName );
49   void    clear();
50   void    setEditMode( bool isEdit );
51
52 signals:
53   void    addSection();
54   void    modifySection();
55   void    cancelSection();
56 public slots:
57 protected slots:
58 protected:
59   void    updateTitle();
60 private:
61   QFrame*             myBtnFrame;
62   QLineEdit*          myName;
63   QComboBox*          myLineType;
64   QCheckBox*          myIsClosed;
65   bool                myIsEdit;
66   QPushButton*        myAddBtn;
67   QPushButton*        myCancelBtn;
68 };
69
70 #endif // CURVECREATOR_NEWSECTION_H