Salome HOME
e481d0b49466280b0024dab8e2827e6c9ce724d2
[modules/gui.git] / src / SVTK / SVTK_CubeAxesDlg.h
1 //  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
2 //
3 //  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 //
6 //  This library is free software; you can redistribute it and/or
7 //  modify it under the terms of the GNU Lesser General Public
8 //  License as published by the Free Software Foundation; either
9 //  version 2.1 of the License.
10 //
11 //  This library is distributed in the hope that it will be useful,
12 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 //  Lesser General Public License for more details.
15 //
16 //  You should have received a copy of the GNU Lesser General Public
17 //  License along with this library; if not, write to the Free Software
18 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 //
20 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 //
22 //  File   : SVTK_CubeAxesDlg.h
23 //  Author : Sergey LITONIN
24 //  Module : VISU
25 //
26 #ifndef SVTK_CubeAxesDlg_H
27 #define SVTK_CubeAxesDlg_H
28
29 #include "SVTK_DialogBase.h"
30
31 class QWidget;
32 class QPushButton;
33 class QTabWidget;
34 class QCheckBox;
35
36 class QtxAction;
37 class SVTK_CubeAxesActor2D;
38
39 class SVTK_FontWidget;
40 class SVTK_AxisWidget;
41 class SVTK_ViewWindow;
42
43 /*!
44  * Class       : SVTK_CubeAxesDlg
45  * Description : Dialog for specifynig cube axes properties
46  */
47 class SVTK_CubeAxesDlg : public SVTK_DialogBase
48 {
49   Q_OBJECT
50
51   class AxisWidget;
52
53 public:
54                   SVTK_CubeAxesDlg(QtxAction* theAction,
55                                    SVTK_ViewWindow* theParent,
56                                    const char* theName);
57   virtual         ~SVTK_CubeAxesDlg();
58
59   void            Update();
60
61 private slots:
62   void            onOk();
63   bool            onApply();
64   void            onClose();
65
66 private:
67   QWidget*        createButtonFrame( QWidget* );
68   QWidget*        createMainFrame  ( QWidget* );
69   bool            isValid() const;
70
71 private:
72   SVTK_ViewWindow *myMainWindow;
73   SVTK_CubeAxesActor2D* myActor;
74
75   QTabWidget*     myTabWg;
76   QCheckBox*      myIsVisible;
77
78   QPushButton*    myOkBtn;
79   QPushButton*    myApplyBtn;
80   QPushButton*    myCloseBtn;
81   AxisWidget*     myAxes[ 3 ];
82 };
83
84 #endif