Salome HOME
Fix for Bug IPAL8945
[modules/visu.git] / src / VISUGUI / VisuGUI_StreamLinesDlg.h
1 //  VISU VISUGUI : GUI of VISU component
2 //
3 //  Copyright (C) 2003  CEA/DEN, EDF R&D
4 //
5 //
6 //
7 //  File   : VisuGUI_StreamLinesDlg.h
8 //  Author : Vitaly SMETANNIKOV
9 //  Module : VISU
10
11 #ifndef VISUGUI_STREAMLINESDLG_H
12 #define VISUGUI_STREAMLINESDLG_H
13
14 #include "VisuGUI_ScalarBarDlg.h"
15
16 #include <qdialog.h>
17 #include <qcombobox.h>
18 #include <qcheckbox.h>
19 #include <qstringlist.h>
20
21 class SalomeApp_Module;
22 class QtxDblSpinBox;
23
24 namespace VISU{
25   class StreamLines_i;
26 }
27
28 class VisuGUI_StreamLinesDlg: public QDialog
29 {
30     Q_OBJECT
31 public:
32     VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule);
33     ~VisuGUI_StreamLinesDlg() {};
34
35     void initFromPrsObject(VISU::StreamLines_i* thePrs);
36     int storeToPrsObject(VISU::StreamLines_i* thePrs);
37     void setColor( QColor color );
38     void enableMagnColor( bool enable );
39
40 protected slots:
41   void accept();
42   void reject();
43
44 private slots:
45   void onSelectionActive(bool theActive);
46   void StepLengthChanged(double theValue);
47   void IntegrationStepChanged(double theValue);
48   void PropagationTimeChanged(double theValue);
49   void onSourceTypeChange(int theIndex);
50
51 private:
52   VISU::Mesh_ptr createMesh(VISU::VISUType theType, QString theName);
53
54     QtxDblSpinBox* myStepLen;
55     QtxDblSpinBox* myIntegStepLen;
56     QtxDblSpinBox* myPropTime;
57     QComboBox* myDirCombo;
58     QCheckBox* myUseScalar;
59     QPushButton*    SelColor;
60     QColor          myColor;
61     //QCheckBox* myUseSrcChk;
62     QComboBox* myUseSrcCombo;
63     QtxDblSpinBox* myPntPercent;
64     QComboBox* mySrcCombo;
65
66     VisuGUI_ScalarBarPane* myScalarPane;
67
68     QValueList<VISU::Prs3d_var> myPrsList;
69     QValueList<VISU::Prs3d_var> myEntityList;
70     QValueList<VISU::Prs3d_var> myFamilyList;
71     QValueList<VISU::Prs3d_var> myGroupList;
72     QStringList myEntitiesLst;
73     QStringList myFamilisLst;
74     QStringList myGroupsLst;
75     QStringList myPrsLst;
76
77     _PTR(SObject) mySelectionObj;
78     VISU::StreamLines_i* myPrs;
79     SalomeApp_Module* myVisuGUI;
80
81 private slots:
82   void setVColor();
83   void enableSetColor();
84 };
85
86 #endif  //VISUGUI_STREAMLINESDLG_H