OpendTect  6.3
uiwelldlgs.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: Nanne Hemstra
8  Date: October 2003
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uiwellmod.h"
14 #include "uiselsimple.h"
15 #include "dbkey.h"
16 #include "ranges.h"
17 #include "position.h"
18 #include "uistring.h"
19 
20 class uiButtonGroup;
21 class uiCheckBox;
22 class uiD2TModelGroup;
23 class uiFileInput;
24 class uiGenInput;
25 class uiLabel;
26 class uiMultiWellSel;
27 class uiPushButton;
28 class uiTable;
29 class uiTableImpDataSel;
30 class uiUnitSel;
31 class uiWellSel;
32 class BufferStringSet;
33 
34 namespace Table { class FormatDesc; }
35 namespace Well { class Data; class Track; class D2TModel; class Log;
36  class LogSet;}
37 
38 
39 
44 public:
46  ~uiWellTrackDlg();
47 
48  static const uiString sCkShotData();
49  static const uiString sTimeDepthModel();
50 
51 protected:
52 
56  bool writable_;
57 
64 
66  float origgl_;
67 
68  void fillTableCB(CallBacker*);
69  bool fillTable();
70  void fillSetFields(CallBacker* cb=0);
71  void updNowCB(CallBacker*);
72  bool updNow();
73  void readNew(CallBacker*);
74  bool rejectOK();
75  bool acceptOK();
76  void exportCB(CallBacker*);
77  void updateXpos(CallBacker*);
78  void updateYpos(CallBacker*);
79  void updateKbElev(CallBacker*);
80 
81  double getX(int row) const;
82  double getY(int row) const;
83  double getZ(int row) const;
84  float getMD(int row) const;
85  void setX(int row,double);
86  void setY(int row,double);
87  void setZ(int row,double);
88  void setMD(int row,float);
89 
90  void updatePos(bool isx);
91  bool rowIsIncomplete(int) const;
92  bool rowIsNotSet(int) const;
93 };
94 
95 
99 public:
100  uiD2TModelDlg(uiParent*,Well::Data&,bool chksh);
101  ~uiD2TModelDlg();
102 
103 protected:
104 
106  bool cksh_;
107  bool writable_;
108  Well::D2TModel* orgd2t_; // Must be declared *below* others
110 
115 
116  void fillTable(CallBacker*);
117  void fillReplVel(CallBacker*);
118  bool getFromScreen();
119  void updNow(CallBacker*);
120  void updReplVelNow(CallBacker*);
121  void dtpointChangedCB(CallBacker*);
122  void dtpointRemovedCB(CallBacker*);
123  bool updateDtpointDepth(int row);
124  bool updateDtpointTime(int row);
125  bool updateDtpoint(int row,float oldval);
126  void readNew(CallBacker*);
127  bool rejectOK();
128  bool acceptOK();
129  void expData(CallBacker*);
130  void getModel(Well::D2TModel&);
131  void correctD2TModelIfInvalid();
132 
133  void getColLabels(BufferStringSet&) const;
134  int getTVDGLCol() const;
135  int getTVDSDCol() const;
136  int getTVDSSCol() const;
137  int getTimeCol() const;
138  int getVintCol() const;
139  bool rowIsIncomplete(int row) const;
140  int getPreviousCompleteRowIdx(int row) const;
141  int getNextCompleteRowIdx(int row) const;
142  void setDepthValue(int irow,int icol,float);
143  float getDepthValue(int irow,int icol) const;
144  void setTimeValue(int irow,float);
145  float getTimeValue(int irow) const;
146 };
147 
148 
151 class uiColorInput;
152 
155 public:
157  ~uiNewWellDlg();
158 
159  const Color& getWellColor();
160  const char* getWellName() const { return wellname_; }
161 
162 protected:
163 
167 
168  virtual bool acceptOK();
169  const BufferStringSet& mkWellNms();
170 };
171 
172 
173 /* brief Dialog for editing the logs's unit of measure */
174 
177 public:
179  const BufferStringSet wellnms,
180  const BufferStringSet lognms);
181 
182 protected:
183 
187 
188  bool acceptOK();
189 
190  void fillTable(ObjectSet<Well::LogSet> wls,
191  const BufferStringSet& wellnms,
192  const BufferStringSet& lognms);
193  bool setUoMValues();
194 };
195 
196 
197 
198 /* brief Dialog to set Depth-to-Time model to selected wells */
199 
202 public:
205 
206  void setSelected(const DBKeySet&);
207 
208 protected:
209 
210  bool acceptOK();
211 
214 };
uiColorInput * colsel_
Definition: uiwelldlgs.h:164
#define mExpClass(module)
Definition: commondefs.h:157
Well::Track * orgtrack_
Definition: uiwelldlgs.h:55
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
ObjectSet< uiUnitSel > unflds_
Definition: uiwelldlgs.h:185
Definition: uiwelldlgs.h:200
Depth to time model.
Definition: welld2tmodel.h:25
Definition: uiwelldlgs.h:175
is the base class for all buttons.
Definition: uibutton.h:80
Table::FormatDesc & fd_
Definition: uiwelldlgs.h:58
Selector for UnitOfMeasure&#39;s.
Definition: uiunitsel.h:36
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
uiGenInput * replvelfld_
Definition: uiwelldlgs.h:114
uiTable * uominfotbl_
Definition: uiwelldlgs.h:186
bool writable_
Definition: uiwelldlgs.h:56
uiGenInput * wellheadxfld_
Definition: uiwelldlgs.h:61
A file-name input.
Definition: uifileinput.h:32
Definition: dbkey.h:98
Definition: uitable.h:29
Definition: file.h:109
float origreplvel_
Definition: uiwelldlgs.h:109
Definition: uiwellsel.h:38
uiGenInput * kbelevfld_
Definition: uiwelldlgs.h:63
description of input our output data content
Definition: tabledef.h:215
Dialog for Well track editing.
Definition: uiwelldlgs.h:42
Coord3 origpos_
Definition: uiwelldlgs.h:65
Get a name from user, whilst displaying names that already exist.
Definition: uiselsimple.h:79
Definition: uistring.h:88
Definition: uiparent.h:24
Set of BufferString objects.
Definition: bufstringset.h:25
uiGenInput * wellheadyfld_
Definition: uiwelldlgs.h:62
Definition: uidialog.h:40
bool writable_
Definition: uiwelldlgs.h:107
Set of pointers to objects.
Definition: commontypes.h:28
3D point or vector
Definition: commontypes.h:57
Definition: geom2dascio.h:18
Well::Data & wd_
Definition: uiwelldlgs.h:53
BufferString wellname_
Definition: uiwelldlgs.h:165
Definition: wellcommon.h:16
Well track.
Definition: welltrack.h:22
General Input Element.
Definition: uigeninput.h:56
uiTable * tbl_
Definition: uiwelldlgs.h:111
Definition: uibuttongroup.h:28
Definition: repos.h:23
uiCheckBox * timefld_
Definition: uiwelldlgs.h:113
uiCheckBox * zinftfld_
Definition: uiwelldlgs.h:112
Definition: uiwelldlgs.h:153
ObjectSet< Well::Log > logs_
Definition: uiwelldlgs.h:184
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
uiMultiWellSel * wellfld_
Definition: uiwelldlgs.h:213
small element for color selection. Has no text label.
Definition: uicolor.h:42
Well::Data & wd_
Definition: uiwelldlgs.h:105
Definition: uilabel.h:22
const char * getWellName() const
Definition: uiwelldlgs.h:160
uiWellSel * inpwellfld_
Definition: uiwelldlgs.h:212
uiCheckBox * zinftfld_
Definition: uiwelldlgs.h:60
float origgl_
Definition: uiwelldlgs.h:66
Definition: uid2tmodelgrp.h:23
Table-based data import selection.
Definition: uitblimpexpdatasel.h:36
Color is an RGB color object, with a transparancy. The storage is in a 4-byte integer, similar to Qt.
Definition: color.h:24
bool cksh_
Definition: uiwelldlgs.h:106
Definition: uiwellsel.h:21
The holder of all data concerning a certain well.
Definition: welldata.h:36
Dialog for D2T Model editing.
Definition: uiwelldlgs.h:97
Well::Track & track_
Definition: uiwelldlgs.h:54
Definition: uibutton.h:130
BufferStringSet * nms_
Definition: uiwelldlgs.h:166
Well::D2TModel * orgd2t_
Definition: uiwelldlgs.h:108
uiTable * tbl_
Definition: uiwelldlgs.h:59

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