7fd59977 |
1 | #ifndef SHAPEDLG_H |
2 | #define SHAPEDLG_H |
3 | |
4 | #include <qdialog.h> |
5 | |
6 | #include <Aspect_TypeOfDegenerateModel.hxx> |
7 | #include <V3d_View.hxx> |
8 | #include <AIS_InteractiveContext.hxx> |
9 | //#include <GUIA_Sphere.hxx> |
10 | #include <Sphere_Sphere.hxx> |
11 | |
12 | class QLabel; |
13 | class QComboBox; |
14 | class QSpinBox; |
15 | class QDoubleSpinBox; |
16 | class QCheckBox; |
17 | class ShapeDlg : public QDialog |
18 | { |
19 | Q_OBJECT |
20 | |
21 | enum { SolidEdgeId, DashEdgeId, DotEdgeId, DotDashEdgeId }; |
22 | |
23 | enum { NoDegId, TinyDegId, WireDegId, MarkerDegId, BBoxDegId }; |
24 | |
25 | public: |
26 | ShapeDlg( QWidget* parent, Handle(V3d_View)&, Handle(AIS_InteractiveContext)& ); |
27 | virtual ~ShapeDlg(); |
28 | |
29 | private slots: |
30 | void onOk(); |
31 | void onCancel(); |
32 | void onHelp(); |
33 | void onRadiusChanged( double ); |
34 | void onItemsChanged( int ); |
35 | void onPanesChanged( int ); |
36 | void onDeflectionChanged( double ); |
37 | void onText(); |
38 | void onPositionChanged(); |
39 | protected: |
40 | void closeEvent ( QCloseEvent* ); |
41 | void showEvent ( QShowEvent* ); |
42 | |
43 | private: |
44 | void updateSphere(); |
45 | |
46 | private: |
47 | /* ----- common section ----- */ |
48 | Handle_V3d_View myView; |
49 | Handle_AIS_InteractiveContext myContext; |
50 | Handle_Sphere_Sphere myShape; |
51 | double myRadius; |
52 | double myDeflection; |
53 | int myNbPanes; |
54 | int myNbItems; |
55 | QDoubleSpinBox* myDefSpin; |
56 | QSpinBox* myPanesSpin; |
57 | QSpinBox* myItemsSpin; |
58 | QDoubleSpinBox* myXSpin; |
59 | QDoubleSpinBox* myYSpin; |
60 | QDoubleSpinBox* myZSpin; |
61 | QCheckBox* myVNormal; |
62 | QCheckBox* myVColor; |
63 | QCheckBox* myVTexel; |
64 | QCheckBox* myText; |
65 | }; |
66 | |
67 | #endif |