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.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 // File : VisuGUI_CutLinesDlg.h
24 #ifndef VISUGUI_CUTLINESDLG_H
25 #define VISUGUI_CUTLINESDLG_H
27 #include "VisuGUI_CutPlanesDlg.h"
29 #include <qhbuttongroup.h>
30 #include <qvalidator.h>
32 class SUIT_ViewManager;
33 class SalomeApp_Module;
39 class VisuGUI_CutLinesDlg: public QDialog
44 VisuGUI_CutLinesDlg (SalomeApp_Module* theModule);
45 ~VisuGUI_CutLinesDlg();
47 void initFromPrsObject (VISU::CutLines_i* thePrs);
48 int storeToPrsObject (VISU::CutLines_i* thePrs);
50 bool isGenerateTable() { return myCreateTable->isChecked(); }
51 bool isGenerateCurves() { return myCreateTable->isChecked() && myCurvesCheck->isChecked(); }
58 void onPlaneSelect (int theId);
59 void onCutSelect (int theId, bool theUpdate = true);
60 void setBaseDefault (bool theUpdate = true);
61 void setDefault (int all = -1);
63 void onValueChanged (int theRow, int theCol);
64 void onPreviewCheck (bool thePreview);
65 void onAllCurvesInvertedCheck(bool theInvert);
66 void onRotation (double theValue);
67 void onPlanePos (const QString& theValue);
69 //jfa tmp:void onWindowActivated (SUIT_ViewWindow*);
74 void updateGlyphs(bool update);
76 QHButtonGroup* mySelPlane;
77 QtxDblSpinBox* myRotXSpn;
78 QtxDblSpinBox* myRotYSpn;
81 QtxDblSpinBox* myPosSpn;
82 QLineEdit* myBasePlanePos;
83 QCheckBox* myCBSetDef;
84 QCheckBox* myCreateTable;
85 QCheckBox* myCurvesCheck;
87 QHButtonGroup* mySelPlane2;
88 QtxDblSpinBox* myNbSpn;
89 QtxDblSpinBox* myRotXSpn2;
90 QtxDblSpinBox* myRotYSpn2;
93 QtxDblSpinBox* myPosSpn2;
97 QDoubleValidator *mydvalidator;
98 VISU::CutLines_i* myCutLines;
100 VisuGUI_ScalarBarPane* myScalarPane;
102 VISU::CutPlanes::Orientation getOrientaion (bool IsBasePlane = true);
103 void setOrientation (const VISU::CutPlanes::Orientation orient);
104 void setOrientation2 (const VISU::CutPlanes::Orientation orient);
106 SALOME_Actor* myPreviewActor;
107 SALOME_Actor* myPreviewActorGlyphs;
108 QCheckBox* myPreviewCheck;
109 QCheckBox* myAllCurvesInvertedCheck;
111 VISU::CutLines_i* myPrs;
113 //jfa tmp:SUIT_ViewManager *myMgr;
114 //jfa tmp:SUIT_ViewWindow *myStudyWnd;
116 static bool MYGenerateTable;
117 static bool MYGenerateCurve;
120 #endif // VISUGUI_CUTLINESDLG_H