OpendTect  6.6
uiseissel.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: A.H. Bril
7  Date: July 2001
8  RCS: $Id$
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uiseismod.h"
14 #include "uiioobjsel.h"
15 #include "uiioobjseldlg.h"
16 #include "uicompoundparsel.h"
17 #include "seistype.h"
18 #include "ctxtioobj.h"
19 
20 class uiSeisIOObjInfo;
21 class uiLabeledComboBox;
22 class uiListBox;
23 class uiCheckBox;
24 
25 mExpClass(uiSeis) uiSeisSel : public uiIOObjSel
27 public:
28 
29  struct Setup : public uiIOObjSel::Setup
30  {
31  enum SteerPol { NoSteering=0, OnlySteering=1, InclSteer=2 };
32 
34  : geom_(gt)
35  , allowsetdefault_(true)
36  , steerpol_(NoSteering)
37  , enabotherdomain_(false)
38  , survdefsubsel_( 0 )
39  , allowsetsurvdefault_(false)
40  , explprepost_(false)
41  , selectcomp_(false) {}
42  Setup( bool is2d, bool isps )
43  : geom_(Seis::geomTypeOf(is2d,isps))
44  , allowsetdefault_(true)
45  , steerpol_(NoSteering)
46  , enabotherdomain_(false)
47  , survdefsubsel_( 0 )
48  , allowsetsurvdefault_(false)
49  , explprepost_(false)
50  , selectcomp_(false) {}
51 
53  mDefSetupMemb(bool,allowsetdefault)
54  mDefSetupMemb(bool,enabotherdomain)
55  mDefSetupMemb(SteerPol,steerpol)
57  mDefSetupMemb(const char*,survdefsubsel)
58  mDefSetupMemb(bool,allowsetsurvdefault)
59  mDefSetupMemb(bool,explprepost)
60  mDefSetupMemb(bool,selectcomp)
61 
62  Setup& wantSteering( bool yn=true )
63  {
64  steerpol_ = yn ? OnlySteering : NoSteering;
65  return *this;
66  }
67  };
68 
71  const BufferStringSet& trnotallowed);
73 
74  virtual bool fillPar(IOPar&) const;
75  virtual void usePar(const IOPar&);
76 
77  inline Seis::GeomType geomType() const { return seissetup_.geom_; }
78  inline bool is2D() const { return Seis::is2D(seissetup_.geom_); }
79  inline bool isPS() const { return Seis::isPS(seissetup_.geom_); }
80 
81  void setCompNr(int);
82  int compNr() const { return compnr_; }
83  virtual void processInput();
84  virtual bool existingTyped() const;
85  virtual void updateInput();
86 
87  static IOObjContext ioContext(Seis::GeomType,bool forread);
88 
89 protected:
90 
92  int compnr_;
96 
97  Setup mkSetup(const Setup&,bool forread);
98  virtual void fillDefault();
99  virtual void newSelection(uiIOObjRetDlg*);
100  virtual void commitSucceeded();
101  virtual const char* userNameFromKey(const char*) const;
102  virtual const char* compNameFromKey(const char*) const;
103  virtual uiIOObjRetDlg* mkDlg();
104  void mkOthDomBox();
105 
106  virtual const char* getDefaultKey(Seis::GeomType) const;
107 
108 };
109 
110 
113 public:
114 
116  const uiSeisSel::Setup&);
117 
118  virtual void fillPar(IOPar&) const;
119  virtual void usePar(const IOPar&);
120 
121 protected:
122 
127 
129  const char* getDataType();
131 private:
132  static uiString gtSelTxt(const uiSeisSel::Setup& setup,bool forread);
133  friend class uiSeisSel;
134 };
135 
136 
139 public:
140 
141  uiSteerCubeSel(uiParent*,bool is2d,
142  bool forread=true,
143  const uiString& txt=
144  toUiString("%1 %2")
145  .arg(uiStrings::sSteering())
146  .arg(uiStrings::sData()));
147 
148 protected:
149 
150  virtual const char* getDefaultKey(Seis::GeomType gt) const;
151 
152 };
153 
154 
uiSeisSel::fillPar
virtual bool fillPar(IOPar &) const
uiSeisSel::Setup::mDefSetupMemb
mDefSetupMemb(Seis::GeomType, geom) mDefSetupMemb(bool
uiSteerCubeSel
Definition: uiseissel.h:138
uiSeisSelDlg::gtSelTxt
static uiString gtSelTxt(const uiSeisSel::Setup &setup, bool forread)
Seis::isPS
bool isPS(GeomType gt)
Definition: seistype.h:37
uiSeisSel::curusrnm_
BufferString curusrnm_
Definition: uiseissel.h:93
uiSteerCubeSel::getDefaultKey
virtual const char * getDefaultKey(Seis::GeomType gt) const
uiSeisSel::processInput
virtual void processInput()
uiSeisSel::compnr_
int compnr_
Definition: uiseissel.h:92
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
uiSeisSelDlg::steerpol_
int steerpol_
Definition: uiseissel.h:124
File::toUiString
Export_Basic uiString toUiString(ViewStyle)
Seis
Summary for a Seismic object.
Definition: segydirectdef.h:22
uiSeisSel::Setup::Setup
Setup(Seis::GeomType gt)
Definition: uiseissel.h:33
CtxtIOObj
Holds an IOObjCtxt plus a pointer to an IOObj and/or an IOPar.
Definition: ctxtioobj.h:146
uiIOObjRetDlg
Dialog letting the user select an object. It returns an IOObj* after successful go().
Definition: uiioobjseldlg.h:22
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
uiSeisSel::othdombox_
uiCheckBox * othdombox_
Definition: uiseissel.h:95
uiCheckBox
Definition: uibutton.h:167
uiSeisIOObjInfo
Definition: uiseisioobjinfo.h:18
Setup::mDefSetupMemb
mDefSetupMemb(int, method)
uiStrings::sSteering
static uiString sSteering()
Definition: uistrings.h:584
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
uiSeisSelDlg
Definition: uiseissel.h:112
uiSeisSel::Setup::SteerPol
SteerPol
Definition: uiseissel.h:31
uiSeisSel::newSelection
virtual void newSelection(uiIOObjRetDlg *)
uiioobjseldlg.h
mODTextTranslationClass
#define mODTextTranslationClass(clss)
Definition: uistring.h:40
uiSeisSel::fillDefault
virtual void fillDefault()
uiSeisSel::userNameFromKey
virtual const char * userNameFromKey(const char *) const
uiSeisSel::uiSeisSel
uiSeisSel(uiParent *, const IOObjContext &, const Setup &, const BufferStringSet &trnotallowed)
uiIOObjSelDlg
Definition: uiioobjseldlg.h:35
uiSeisSelDlg::getDataType
const char * getDataType()
uiLabeledComboBox
Definition: uicombobox.h:145
uiSeisSel::~uiSeisSel
~uiSeisSel()
uiSeisSel::setCompNr
void setCompNr(int)
uiSeisSelDlg::getComponentNames
void getComponentNames(BufferStringSet &) const
IOObjContext
Holds the context for selecting and/or creating IOObjs.
Definition: ctxtioobj.h:62
Seis::geomTypeOf
GeomType geomTypeOf(const char *)
uiListBox
List Box.
Definition: uilistbox.h:75
uiSeisSel::compNameFromKey
virtual const char * compNameFromKey(const char *) const
uiSeisSel::uiSeisSel
uiSeisSel(uiParent *, const IOObjContext &, const Setup &)
uiStrings::sData
static uiString sData()
uiSeisSel::compNr
int compNr() const
Definition: uiseissel.h:82
uiIOObjSel::Setup
Definition: uiioobjsel.h:42
uiSeisSel::dlgiopar_
IOPar dlgiopar_
Definition: uiseissel.h:94
uiSeisSelDlg::notalloweddatatype_
BufferString notalloweddatatype_
Definition: uiseissel.h:125
uiSeisSelDlg::uiSeisSelDlg
uiSeisSelDlg(uiParent *, const CtxtIOObj &, const uiSeisSel::Setup &)
uiSeisSel::ioContext
static IOObjContext ioContext(Seis::GeomType, bool forread)
uicompoundparsel.h
uiSeisSel
Definition: uiseissel.h:26
uiSeisSelDlg::fillPar
virtual void fillPar(IOPar &) const
uiSeisSel::existingTyped
virtual bool existingTyped() const
uiSeisSel::mODTextTranslationClass
mODTextTranslationClass(uiSeisSel)
uiSeisSel::usePar
virtual void usePar(const IOPar &)
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
ctxtioobj.h
uiSeisSel::getDefaultKey
virtual const char * getDefaultKey(Seis::GeomType) const
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
uiSeisSel::commitSucceeded
virtual void commitSucceeded()
uiSeisSelDlg::mODTextTranslationClass
mODTextTranslationClass(uiSeisSelDlg)
uiSeisSelDlg::usePar
virtual void usePar(const IOPar &)
uiSeisSel::seissetup_
Setup seissetup_
Definition: uiseissel.h:91
uiIOObjSel
User Interface (UI) element for selection of IOObjs.
Definition: uiioobjsel.h:38
uiSeisSelDlg::compfld_
uiLabeledComboBox * compfld_
Definition: uiseissel.h:123
uiSeisSelDlg::zdomainkey_
BufferString zdomainkey_
Definition: uiseissel.h:126
uiSeisSel::is2D
bool is2D() const
Definition: uiseissel.h:78
seistype.h
uiSeisSelDlg::entrySel
void entrySel(CallBacker *)
uiParent
Definition: uiparent.h:26
uiSeisSel::geomType
Seis::GeomType geomType() const
Definition: uiseissel.h:77
uiSeisSel::mkDlg
virtual uiIOObjRetDlg * mkDlg()
uiSeisSel::mkSetup
Setup mkSetup(const Setup &, bool forread)
Seis::GeomType
GeomType
Definition: seistype.h:32
uiSeisSel::Setup
Definition: uiseissel.h:30
uiioobjsel.h
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
uiSeisSel::Setup::Setup
Setup(bool is2d, bool isps)
Definition: uiseissel.h:42
uiSeisSel::isPS
bool isPS() const
Definition: uiseissel.h:79
Seis::is2D
bool is2D(GeomType gt)
Definition: seistype.h:33
uiSeisSel::updateInput
virtual void updateInput()
a.o. updates from CtxtIOObj
uiSeisSel::mkOthDomBox
void mkOthDomBox()

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