OpendTect  6.3
uielasticpropsel.h
Go to the documentation of this file.
1 #pragma once
2 /*+
3 ________________________________________________________________________
4 
5  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
6  Author: Bruno
7  Date: April 2011
8 ________________________________________________________________________
9 
10 -*/
11 
12 #include "uiseismod.h"
13 #include "dbkey.h"
14 #include "elasticpropsel.h"
15 #include "uistring.h"
16 #include "uigroup.h"
17 #include "uidialog.h"
18 
19 class CtxtIOObj;
20 class IOObj;
22 namespace Math { class Expression; }
23 
24 class uiLabeledComboBox;
25 class uiComboBox;
26 class uiGenInput;
27 class uiSeparator;
28 class uiTabStack;
29 
30 
33 public:
35  const BufferStringSet&,
38 
40  { elpropref_ = pr; }
41 
42  void getFromScreen();
43  void putToScreen();
44 
45  const char* quantityName() const;
46  bool isDefinedQuantity() const;
47 
48  void updateRefPropNames();
49 
50 protected:
51 
55 
59 
61 
62  mExpClass(uiSeis) uiSelInpGrp : public uiGroup
64  public:
66 
67  const char* textOfVariable() const;
68  void setVariable(const char*,float val);
69 
70  bool isActive() { return isactive_; }
71  void use(Math::Expression*);
72 
73  void fillList();
74  protected:
75  int idx_;
76  bool isactive_;
79 
83 
84  void selVarCB(CallBacker*);
85  };
88 
91 
92  void getMathExpr();
93  void selFormulaChgCB(CallBacker*);
94  void selComputeFldChgCB(CallBacker*);
95 };
96 
97 
100 public:
102  const PropertyRefSelection&,
105 
106  const ElasticPropSelection& elasticSel() const { return elpropsel_; }
107  const DBKey& storedKey() const { return storedmid_; }
108  bool propSaved() const { return propsaved_; }
109 
110 protected:
111 
114 
118 
123 
124  bool doRead(const DBKey&);
125  bool doStore(const IOObj&);
126 
127  void updateFields();
128  bool openPropSel();
129  void openPropSelCB(CallBacker*) { openPropSel(); }
130  bool savePropSel();
131  void savePropSelCB(CallBacker*) { savePropSel(); }
132  bool acceptOK();
133  bool rejectOK();
134  void elasticPropSelectionChanged(CallBacker*);
135  void screenSelectionChangedCB(CallBacker*);
136  bool screenSelectionChanged();
137 };
Definition: uigroup.h:53
#define mExpClass(module)
Definition: commondefs.h:157
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
Math::Expression * expr_
Definition: uielasticpropsel.h:60
Definition: propertyref.h:174
User parameters to compute values for an elastic layer (den,p/s-waves).
Definition: elasticpropsel.h:23
Definition: ioobj.h:57
int idx_
Definition: uielasticpropsel.h:75
bool isconstant_
Definition: uielasticpropsel.h:77
const DBKey & storedKey() const
Definition: uielasticpropsel.h:107
uiComboBox * inpfld_
Definition: uielasticpropsel.h:80
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
ElasticPropSelection & orgelpropsel_
Definition: uielasticpropsel.h:120
Elastic formula def to generate elastic layers.
Definition: elasticprop.h:23
void openPropSelCB(CallBacker *)
Definition: uielasticpropsel.h:129
uiGenInput * ctefld_
Definition: uielasticpropsel.h:82
Combo box.
Definition: uicombobox.h:30
Definition: uiparent.h:24
Set of BufferString objects.
Definition: bufstringset.h:25
const BufferStringSet & propnms_
Definition: uielasticpropsel.h:78
Holds an IOObjCtxt plus a pointer to an IOObj and/or an IOPar.
Definition: ctxtioobj.h:24
Definition: uidialog.h:40
uiGenInput * storenamefld_
Definition: uielasticpropsel.h:89
Set of pointers to objects.
Definition: commontypes.h:28
CtxtIOObj & ctio_
Definition: uielasticpropsel.h:117
Definition: uielasticpropsel.h:98
ObjectSet< uiElasticPropSelGrp > propflds_
Definition: uielasticpropsel.h:115
BufferStringSet propnms_
Definition: uielasticpropsel.h:113
uiSeparator * storenamesep_
Definition: uielasticpropsel.h:90
void savePropSelCB(CallBacker *)
Definition: uielasticpropsel.h:131
void setPropRef(const ElasticPropertyRef &pr)
Definition: uielasticpropsel.h:39
const TypeSet< ElasticFormula > availableformulas_
Definition: uielasticpropsel.h:58
General Input Element.
Definition: uigeninput.h:56
Definition: uitabstack.h:31
const ElasticPropSelection & elasticSel() const
Definition: uielasticpropsel.h:106
uiLabeledComboBox * singleinpfld_
Definition: uielasticpropsel.h:87
Definition: uielasticpropsel.h:62
bool isactive_
Definition: uielasticpropsel.h:76
uiLabeledComboBox * selmathfld_
Definition: uielasticpropsel.h:53
const BufferStringSet & propnms_
Definition: uielasticpropsel.h:54
Definition: uicombobox.h:137
Definition: uiseparator.h:20
bool propSaved() const
Definition: uielasticpropsel.h:108
DBKey storedmid_
Definition: uielasticpropsel.h:121
Parsed Math expression.
Definition: mathexpression.h:31
bool isActive()
Definition: uielasticpropsel.h:70
uiTabStack * ts_
Definition: uielasticpropsel.h:116
uiGenInput * formfld_
Definition: uielasticpropsel.h:52
Definition: math2.h:27
bool propsaved_
Definition: uielasticpropsel.h:122
ObjectSet< uiSelInpGrp > inpgrps_
Definition: uielasticpropsel.h:86
uiGenInput * varnmfld_
Definition: uielasticpropsel.h:81
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
ElasticPropertyRef & elpropref_
Definition: uielasticpropsel.h:56
ElasticFormula & elformsel_
Definition: uielasticpropsel.h:57
ElasticPropSelection & elpropsel_
Definition: uielasticpropsel.h:119
Elastic property reference data.
Definition: elasticprop.h:106
Definition: uielasticpropsel.h:31
BufferStringSet orgpropnms_
Definition: uielasticpropsel.h:112

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2017