1 // Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
4 // This library is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU Lesser General Public
6 // License as published by the Free Software Foundation; either
7 // version 2.1 of the License.
9 // This library is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // Lesser General Public License for more details.
14 // You should have received a copy of the GNU Lesser General Public
15 // License along with this library; if not, write to the Free Software
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 // See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
22 // File : SVTK_CubeAxesDlg.h
23 // Author : Sergey LITONIN
27 #ifndef SVTK_CubeAxesDlg_H
28 #define SVTK_CubeAxesDlg_H
30 #include "SVTK_DialogBase.h"
46 class SVTK_CubeAxesActor2D;
48 class SVTK_FontWidget;
49 class SVTK_AxisWidget;
50 class SVTK_MainWindow;
53 * Class : SVTK_CubeAxesDlg
54 * Description : Dialog for specifynig cube axes properties
56 class SVTK_CubeAxesDlg : public SVTK_DialogBase
61 SVTK_CubeAxesDlg(QtxAction* theAction,
62 SVTK_MainWindow* theParent,
64 virtual ~SVTK_CubeAxesDlg();
74 QWidget* createButtonFrame( QWidget* );
75 QWidget* createMainFrame ( QWidget* );
79 SVTK_MainWindow *myMainWindow;
80 SVTK_CubeAxesActor2D* myActor;
83 QCheckBox* myIsVisible;
86 QPushButton* myApplyBtn;
87 QPushButton* myCloseBtn;
88 SVTK_AxisWidget* myAxes[ 3 ];
92 * Class : SVTK_AxisWidget
93 * Description : Tab of dialog
95 class SVTK_AxisWidget : public QFrame
100 SVTK_AxisWidget( QWidget* );
103 void UseName( const bool );
104 void SetName( const QString& );
105 void SetNameFont( const QColor&, const int, const bool, const bool, const bool );
106 bool ReadData( vtkAxisActor2D* );
107 bool Apply( vtkAxisActor2D* );
110 void onNameChecked();
111 void onLabelsChecked();
112 void onTicksChecked();
115 void updateControlState();
116 void setEnabled( QGroupBox*, const bool );
120 QGroupBox* myNameGrp;
121 QCheckBox* myIsNameVisible;
122 QLineEdit* myAxisName;
123 SVTK_FontWidget* myNameFont;
126 QGroupBox* myLabelsGrp;
127 QCheckBox* myIsLabelsVisible;
128 QtxIntSpinBox* myLabelNumber;
129 QtxIntSpinBox* myLabelOffset;
130 SVTK_FontWidget* myLabelsFont;
133 QGroupBox* myTicksGrp;
134 QCheckBox* myIsTicksVisible;
135 QtxIntSpinBox* myTickLength;
137 friend class SVTK_CubeAxesDlg;