OpendTect  6.3
uislicesel.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: N. Hemstra
7  Date: April 2002
8 ________________________________________________________________________
9 
10 -*/
11 
12 #include "uitoolsmod.h"
13 
14 #include "uidialog.h"
15 #include "uigroup.h"
16 #include "trckeyzsampling.h"
17 #include "ranges.h"
18 #include "threadlock.h"
19 #include "zdomain.h"
20 
21 class uiGenInput;
22 class uiLabeledSpinBox;
23 class uiScrollDialog;
24 class uiSliceScroll;
25 class uiSpinBox;
26 
27 mExpClass(uiTools) uiSliceSel : public uiGroup
29 public:
30 
31  enum Type { Inl, Crl, Tsl, Vol, TwoD };
32 
34  bool dogeomcheck=true);
35  ~uiSliceSel();
36 
37  void setApplyCB(const CallBack&);
38 
40  return tkzs_;
41  }
42  virtual void setTrcKeyZSampling(const TrcKeyZSampling&);
43  void setMaxTrcKeyZSampling(const TrcKeyZSampling&);
44  void enableApplyButton(bool);
45  void enableScrollButton(bool);
46  void fillPar(IOPar&);
47  void usePar(const IOPar&);
48 
49  bool acceptOK();
50  static uiString sButTxtAdvance();
51  static uiString sButTxtPause();
52 
53 protected:
54 
55  friend class uiSliceScroll;
56 
57  void createInlFld();
58  void createCrlFld();
59  void createZFld();
60 
61  void fullPush(CallBacker*);
62  void scrollPush(CallBacker*);
63  void applyPush(CallBacker*);
64  void readInput();
65  void updateUI();
66  void setBoxValues(uiSpinBox*,
67  const StepInterval<int>&,int);
68 
75  uiButton* applybut_;
76  uiButton* scrollbut_;
77 
78  uiSliceScroll* scrolldlg_;
79 
83  bool isinl_, iscrl_, istsl_, isvol_, is2d_,
84  dogeomcheck_;
86 
88 };
89 
90 
91 mExpClass(uiTools) uiSliceSelDlg : public uiDialog
93 public:
95  const TrcKeyZSampling& csin,
96  const TrcKeyZSampling& maxcs,
97  const CallBack& applycb,
99  const ZDomain::Info&);
100 
102  { return slicesel_->getTrcKeyZSampling(); }
104  { slicesel_->setTrcKeyZSampling( cs ); }
105 
106  uiSliceSel* grp() { return slicesel_; }
107 
108 protected:
109 
111 
112  bool acceptOK();
113 };
114 
115 
118 public:
121  ~uiLinePosSelDlg();
122 
123  const TrcKeyZSampling& getTrcKeyZSampling() const;
124  const char* getLineName() const;
125  void setPrefCS(TrcKeyZSampling* prefcs) {
126  prefcs_ = prefcs;
127  }
128 
129 protected:
130  bool acceptOK();
131  bool selectPos2D();
132  bool selectPos3D();
133 
139  bool is2d_;
141 };
Definition: uigroup.h:53
#define mExpClass(module)
Definition: commondefs.h:157
uiButton * applybut_
Definition: uislicesel.h:75
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
A lock of a type that (hopefully) suits your needs. To use it, you need the Locker class...
Definition: threadlock.h:51
Definition: uislicesel.h:27
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
uiGenInput * linesfld_
Definition: uislicesel.h:135
uiGenInput * inlcrlfld_
Definition: uislicesel.h:134
CallBack * applycb_
Definition: uislicesel.h:82
void setTrcKeyZSampling(const TrcKeyZSampling &cs)
Definition: uislicesel.h:103
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:200
TrcKeyZSampling * prefcs_
Definition: uislicesel.h:137
const TrcKeyZSampling & getTrcKeyZSampling() const
Definition: uislicesel.h:39
Definition: uislicesel.h:91
IOPar prevpar_
Definition: uislicesel.h:140
Definition: uistring.h:88
Definition: uiparent.h:24
FixedString TwoD()
Definition: keystrs.h:136
Definition: uidialog.h:40
uiSliceScroll * scrolldlg_
Definition: uislicesel.h:78
void setPrefCS(TrcKeyZSampling *prefcs)
Definition: uislicesel.h:125
uiLabeledSpinBox * inl0fld_
Definition: uislicesel.h:69
uiLabeledSpinBox * z0fld_
Definition: uislicesel.h:71
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
uiSliceSelDlg * posdlg_
Definition: uislicesel.h:138
Definition: uispinbox.h:123
uiSpinBox * inl1fld_
Definition: uislicesel.h:72
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:32
uiSliceSel * slicesel_
Definition: uislicesel.h:110
General Input Element.
Definition: uigeninput.h:56
TrcKeyZSampling maxcs_
Definition: uislicesel.h:80
uiSliceSel * grp()
Definition: uislicesel.h:106
Threads::Lock updatelock_
Definition: uislicesel.h:87
Definition: uispinbox.h:22
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
bool isvol_
Definition: uislicesel.h:83
uiSpinBox * crl1fld_
Definition: uislicesel.h:73
ZDomain::Info zdominfo_
Definition: uislicesel.h:85
Type
Definition: uislicesel.h:31
Definition: uislicesel.h:116
bool is2d_
Definition: uislicesel.h:139
Definition: uislicesel.h:31
TrcKeyZSampling tkzs_
Definition: uislicesel.h:136
uiSpinBox * z1fld_
Definition: uislicesel.h:74
uiButton * scrollbut_
Definition: uislicesel.h:76
uiLabeledSpinBox * crl0fld_
Definition: uislicesel.h:70
CallBacks object-oriented (object + method).
Definition: callback.h:62
TrcKeyZSampling tkzs_
Definition: uislicesel.h:81
Information of z-domain.
Definition: zdomain.h:96
const TrcKeyZSampling & getTrcKeyZSampling() const
Definition: uislicesel.h:101

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