Version: 9.16.0
TransformationGUI_MultiRotationDlg.h
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, 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, or (at your option) any later version.
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
23// GEOM GEOMGUI : GUI for Geometry component
24// File : TransformationGUI_MultiRotationDlg.h
25// Author : Damien COQUERET, Open CASCADE S.A.S.
26
27#ifndef TRANSFORMATIONGUI_MULTIROTATIONDLG_H
28#define TRANSFORMATIONGUI_MULTIROTATIONDLG_H
29
30#include "GEOMBase_Skeleton.h"
31#include "GEOM_GenericObjPtr.h"
32
33#include <SalomeApp_IntSpinBox.h>
34
35#include <QGridLayout>
36#include <QGroupBox>
37#include <QLabel>
38#include <QPushButton>
39#include <QLineEdit>
40#include <QCheckBox>
41
42//=================================================================================
43// class : TransformationGUI_2Sel4Spin1Check
44// purpose :
45//=================================================================================
47{
48 Q_OBJECT
49
50 public:
53
54 public:
55 QGridLayout *gridLayout;
57 QGridLayout *gridLayout1;
58
59 // 2Sel
60 QLabel *TextLabel1;
61 QLabel *TextLabel2;
62 QPushButton *PushButton1;
63 QPushButton *PushButton2;
64 QLineEdit *LineEdit1;
65 QLineEdit *LineEdit2;
66
67 // 4Spin (double-int-double-int)
68 QCheckBox *CheckAngleStep;
69 QLabel *TextLabel4;
70 QLabel *TextLabel5;
71 QLabel *TextLabel6;
72 SalomeApp_DoubleSpinBox *SpinBox_DX1;
73 SalomeApp_IntSpinBox *SpinBox_DY1;
74 SalomeApp_DoubleSpinBox *SpinBox_DX2;
75 SalomeApp_IntSpinBox *SpinBox_DY2;
76
77 // 1Check
78 QCheckBox *CheckButton1;
79};
80
81//=================================================================================
82// class : TransformationGUI_MultiRotationDlg
83// purpose :
84//=================================================================================
86{
87 Q_OBJECT
88
89public:
91 bool = false, Qt::WindowFlags = 0);
93
94protected:
95 // redefined from GEOMBase_Helper
96 virtual GEOM::GEOM_IOperations_ptr createOperation();
97 virtual bool isValid( QString& );
98 virtual bool execute( ObjectList& );
99 virtual void addSubshapesToStudy();
100 virtual void restoreSubShapes( SALOMEDS::SObject_ptr );
101 virtual QList<GEOM::GeomObjPtr> getSourceObjects();
102
103private:
104 void Init();
105 void enterEvent( QEvent* );
106
107private:
111 Standard_Real myAng;
112 Standard_Real myStep;
113
114 // to initialize the first selection field with a selected object on the dialog creation
116
118
119private slots:
120 void ClickOnOk();
121 bool ClickOnApply();
122 void ActivateThisDialog();
125 void CheckAngleStep (bool);
126 void ReverseAngle();
127 void ValueChangedInSpinBox( double );
128 void ValueChangedInSpinBox( int );
129 void TextValueChangedInSpinBox( const QString& );
130 void ConstructorsClicked( int );
131 void SetDoubleSpinBoxStep( double );
132};
133
134#endif // TRANSFORMATIONGUI_MULTIROTATIONDLG_H
std::list< GEOM::GEOM_Object_ptr > ObjectList
Definition: GEOMBase_Helper.h:46
Definition: GEOMBase_Skeleton.h:53
Definition: GeometryGUI.h:74
Definition: TransformationGUI_MultiRotationDlg.h:47
QPushButton * PushButton1
Definition: TransformationGUI_MultiRotationDlg.h:62
SalomeApp_DoubleSpinBox * SpinBox_DX1
Definition: TransformationGUI_MultiRotationDlg.h:72
QCheckBox * CheckAngleStep
Definition: TransformationGUI_MultiRotationDlg.h:68
QPushButton * PushButton2
Definition: TransformationGUI_MultiRotationDlg.h:63
QCheckBox * CheckButton1
Definition: TransformationGUI_MultiRotationDlg.h:78
QGroupBox * GroupBox1
Definition: TransformationGUI_MultiRotationDlg.h:56
QGridLayout * gridLayout
Definition: TransformationGUI_MultiRotationDlg.h:55
SalomeApp_IntSpinBox * SpinBox_DY2
Definition: TransformationGUI_MultiRotationDlg.h:75
QLabel * TextLabel6
Definition: TransformationGUI_MultiRotationDlg.h:71
QGridLayout * gridLayout1
Definition: TransformationGUI_MultiRotationDlg.h:57
QLabel * TextLabel2
Definition: TransformationGUI_MultiRotationDlg.h:61
QLabel * TextLabel1
Definition: TransformationGUI_MultiRotationDlg.h:60
QLineEdit * LineEdit2
Definition: TransformationGUI_MultiRotationDlg.h:65
SalomeApp_DoubleSpinBox * SpinBox_DX2
Definition: TransformationGUI_MultiRotationDlg.h:74
QLabel * TextLabel4
Definition: TransformationGUI_MultiRotationDlg.h:69
QLineEdit * LineEdit1
Definition: TransformationGUI_MultiRotationDlg.h:64
TransformationGUI_2Sel4Spin1Check(QWidget *parent)
Definition: TransformationGUI_MultiRotationDlg.cxx:588
~TransformationGUI_2Sel4Spin1Check()
Definition: TransformationGUI_MultiRotationDlg.cxx:658
QLabel * TextLabel5
Definition: TransformationGUI_MultiRotationDlg.h:70
SalomeApp_IntSpinBox * SpinBox_DY1
Definition: TransformationGUI_MultiRotationDlg.h:73
Definition: TransformationGUI_MultiRotationDlg.h:86
virtual bool isValid(QString &)
Definition: TransformationGUI_MultiRotationDlg.cxx:459
bool ClickOnApply()
Definition: TransformationGUI_MultiRotationDlg.cxx:241
int myNbTimes2
Definition: TransformationGUI_MultiRotationDlg.h:110
GEOM::GeomObjPtr myVector
Definition: TransformationGUI_MultiRotationDlg.h:108
void enterEvent(QEvent *)
Definition: TransformationGUI_MultiRotationDlg.cxx:368
virtual GEOM::GEOM_IOperations_ptr createOperation()
Definition: TransformationGUI_MultiRotationDlg.cxx:450
GEOM::GeomObjPtr myBase
Definition: TransformationGUI_MultiRotationDlg.h:108
virtual bool execute(ObjectList &)
Definition: TransformationGUI_MultiRotationDlg.cxx:487
void ConstructorsClicked(int)
Definition: TransformationGUI_MultiRotationDlg.cxx:173
void SetEditCurrentArgument()
Definition: TransformationGUI_MultiRotationDlg.cxx:317
Standard_Real myAng
Definition: TransformationGUI_MultiRotationDlg.h:111
int myNbTimes1
Definition: TransformationGUI_MultiRotationDlg.h:109
void SetDoubleSpinBoxStep(double)
Definition: TransformationGUI_MultiRotationDlg.cxx:164
virtual void addSubshapesToStudy()
Definition: TransformationGUI_MultiRotationDlg.cxx:541
bool myInitial
Definition: TransformationGUI_MultiRotationDlg.h:115
void SelectionIntoArgument()
Definition: TransformationGUI_MultiRotationDlg.cxx:256
void ReverseAngle()
Definition: TransformationGUI_MultiRotationDlg.cxx:423
virtual void restoreSubShapes(SALOMEDS::SObject_ptr)
Definition: TransformationGUI_MultiRotationDlg.cxx:568
void ActivateThisDialog()
Definition: TransformationGUI_MultiRotationDlg.cxx:355
~TransformationGUI_MultiRotationDlg()
Definition: TransformationGUI_MultiRotationDlg.cxx:102
void TextValueChangedInSpinBox(const QString &)
Definition: TransformationGUI_MultiRotationDlg.cxx:378
virtual QList< GEOM::GeomObjPtr > getSourceObjects()
Definition: TransformationGUI_MultiRotationDlg.cxx:557
Standard_Real myStep
Definition: TransformationGUI_MultiRotationDlg.h:112
void ClickOnOk()
Definition: TransformationGUI_MultiRotationDlg.cxx:230
TransformationGUI_MultiRotationDlg(GeometryGUI *, QWidget *=0, bool=false, Qt::WindowFlags=0)
Definition: TransformationGUI_MultiRotationDlg.cxx:54
void CheckAngleStep(bool)
Definition: TransformationGUI_MultiRotationDlg.cxx:439
void Init()
Definition: TransformationGUI_MultiRotationDlg.cxx:111
TransformationGUI_2Sel4Spin1Check * GroupArgs
Definition: TransformationGUI_MultiRotationDlg.h:117
void ValueChangedInSpinBox(double)
Definition: TransformationGUI_MultiRotationDlg.cxx:391
GenericObjPtr< GEOM::GEOM_Object > GeomObjPtr
Definition: GEOM_GenericObjPtr.h:218