Salome HOME
IPAL9285,9292,9314
[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 #include "SALOMEconfig.h"
22 #include CORBA_CLIENT_HEADER(VISU_Gen)
23
24 class SalomeApp_Module;
25 class QtxDblSpinBox;
26 class SALOMEDSClient_SObject;
27
28 namespace VISU{
29   class StreamLines_i;
30 }
31
32 class VisuGUI_StreamLinesDlg: public QDialog
33 {
34     Q_OBJECT
35 public:
36     VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule);
37     ~VisuGUI_StreamLinesDlg() {};
38
39     void initFromPrsObject(VISU::StreamLines_i* thePrs);
40     int storeToPrsObject(VISU::StreamLines_i* thePrs);
41     void setColor( QColor color );
42     void enableMagnColor( bool enable );
43
44 protected slots:
45   void accept();
46
47 private slots:
48   void onSelectionActive(bool theActive);
49   void StepLengthChanged(double theValue);
50   void IntegrationStepChanged(double theValue);
51   void PropagationTimeChanged(double theValue);
52   void onSourceTypeChange(int theIndex);
53
54 private:
55   VISU::Mesh_ptr createMesh(VISU::VISUType theType, QString theName);
56
57     QtxDblSpinBox* myStepLen;
58     QtxDblSpinBox* myIntegStepLen;
59     QtxDblSpinBox* myPropTime;
60     QComboBox* myDirCombo;
61     QCheckBox* myUseScalar;
62     QPushButton*    SelColor;
63     QColor          myColor;
64     //QCheckBox* myUseSrcChk;
65     QComboBox* myUseSrcCombo;
66     QtxDblSpinBox* myPntPercent;
67     QComboBox* mySrcCombo;
68
69     VisuGUI_ScalarBarPane* myScalarPane;
70
71     QValueList<VISU::Prs3d_var> myPrsList;
72     QValueList<VISU::Prs3d_var> myEntityList;
73     QValueList<VISU::Prs3d_var> myFamilyList;
74     QValueList<VISU::Prs3d_var> myGroupList;
75     QStringList myEntitiesLst;
76     QStringList myFamilisLst;
77     QStringList myGroupsLst;
78     QStringList myPrsLst;
79
80     _PTR(SObject) mySelectionObj;
81     VISU::StreamLines_i* myPrs;
82     SalomeApp_Module* myVisuGUI;
83
84 private slots:
85   void setVColor();
86   void enableSetColor();
87 };
88
89 #endif  //VISUGUI_STREAMLINESDLG_H