OpendTect  6.3
uistratlaymoddisp.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: Bert
8  Date: Oct 2010
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "flatview.h"
14 #include "uistratmod.h"
15 #include "uigroup.h"
16 #include "uistring.h"
17 #include "coltabmappersetup.h"
18 
19 class PropertyRef;
20 class uiGraphicsScene;
22 class uiTextItem;
23 class uiFlatViewer;
24 namespace Strat { class LayerModel; class LayerModelProvider; class Layer; }
25 
32 mStruct(uiStrat) LMPropSpecificDispPars
33 {
34  LMPropSpecificDispPars( const char* nm=0 )
35  : propnm_(nm)
36  , mappersetup_(new ColTab::MapperSetup) {}
37  bool operator==( const LMPropSpecificDispPars& oth ) const
38  { return propnm_ == oth.propnm_; }
39 
40  RefMan<ColTab::MapperSetup> mappersetup_;
41  BufferString colseqname_;
42  float overlap_;
43  BufferString propnm_;
44 
45 };
46 
47 
50 public:
53 
57 
58  virtual void modelChanged() = 0;
59  virtual void reSetView() = 0;
60  virtual uiWorldRect zoomBox() const = 0;
61  virtual void setZoomBox(const uiWorldRect&) = 0;
62  virtual float getDisplayZSkip() const = 0;
64  { return Interval<float>::udf(); }
65  virtual void reSetRelDepthZoneOfInterest() {}
66  virtual bool canSetDisplayProperties() const { return false; }
67 
68  const Strat::LayerModel& layerModel() const;
69  const LVLZVals& flattenLevelDepths() const;
70  int selectedSequence() const { return selseqidx_; }
71  void selectSequence(int seqidx);
72 
73  uiFlatViewer* getViewer() { return &vwr_; }
74  bool isFlattened() const { return flattened_; }
75  void setFlattened(bool yn,bool trigger=true);
76  bool isFluidReplOn() const { return fluidreplon_; }
77  void setFluidReplOn(bool yn) { fluidreplon_= yn; }
78  bool isBrineFilled() const {return isbrinefilled_;}
79  void setBrineFilled(bool yn) { isbrinefilled_= yn; }
80 
81 
82  float getLayerPropValue(const Strat::Layer&,
83  const PropertyRef*,int) const;
84  bool setPropDispPars(const LMPropSpecificDispPars&);
85  bool getCurPropDispPars(LMPropSpecificDispPars&) const;
86  int getFlattenLevelIdx() const;
87  const LVLZValsSet& getLevelDepths() { return lvldpths_; }
88  void clearDispPars() { lmdisppars_.erase(); }
89 
96 
97 protected:
98 
108  LVLZValsSet lvldpths_;
111 
112  bool haveAnyZoom() const;
113  uiGraphicsScene& scene() const;
114  void displayFRText();
115  virtual void drawSelectedSequence() = 0;
116 
117  int getClickedModelNr() const;
118  void mouseMoved(CallBacker*);
119  void doubleClicked(CallBacker*);
120  void usrClicked(CallBacker*);
121  virtual void selPropChgCB(CallBacker*) = 0;
122  virtual void dispLithChgCB(CallBacker*) = 0;
123  virtual void selContentChgCB(CallBacker*) = 0;
124  virtual void selLevelChgCB(CallBacker*) = 0;
125  virtual void dispEachChgCB(CallBacker*) = 0;
126  virtual void dispZoomedChgCB(CallBacker*) = 0;
127  bool doLayerModelIO(bool);
128  virtual void doLevelChg() = 0;
129  virtual void handleClick(bool dble) = 0;
131 
132 };
Definition: uigroup.h:53
#define mExpClass(module)
Definition: commondefs.h:157
CNotifier< uiStratLayerModelDisp, IOPar > infoChanged
Definition: uistratlaymoddisp.h:94
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
Notifier< uiStratLayerModelDisp > dispPropChanged
Definition: uistratlaymoddisp.h:95
bool operator==(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:51
bool fluidreplon_
Definition: uistratlaymoddisp.h:106
TypeSet< LMPropSpecificDispPars > lmdisppars_
Definition: uistratlaymoddisp.h:109
#define mStruct(module)
Definition: commondefs.h:162
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
bool isbrinefilled_
Definition: uistratlaymoddisp.h:107
virtual Interval< float > relDepthZoneOfInterest() const
Definition: uistratlaymoddisp.h:63
Ref Data for a (usually petrophysical) property.
Definition: propertyref.h:40
data for a layer.
Definition: stratlayer.h:39
bool isFluidReplOn() const
Definition: uistratlaymoddisp.h:76
LVLZValsSet lvldpths_
Definition: uistratlaymoddisp.h:108
static Interval< T > udf()
Definition: ranges.h:125
TypeSet< float > LVLZVals
Definition: uistratlaymoddisp.h:51
uiFlatViewer & vwr_
Definition: uistratlaymoddisp.h:99
uiStratLayModEditTools & tools_
Definition: uistratlaymoddisp.h:101
bool isFlattened() const
Definition: uistratlaymoddisp.h:74
TypeSet< LVLZVals > LVLZValsSet
Definition: uistratlaymoddisp.h:52
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
Interval< float > zrg_
Definition: uistratlaymoddisp.h:104
IOPar dumppars_
Definition: uistratlaymoddisp.h:110
virtual bool canSetDisplayProperties() const
Definition: uistratlaymoddisp.h:66
void setFluidReplOn(bool yn)
Definition: uistratlaymoddisp.h:77
uiFlatViewer * getViewer()
Definition: uistratlaymoddisp.h:73
Definition: stratlayermodel.h:82
Parameters for the colortable Mapper.
Definition: coltabmappersetup.h:27
const LVLZValsSet & getLevelDepths()
Definition: uistratlaymoddisp.h:87
Notifier< uiStratLayerModelDisp > modelEdited
Definition: uistratlaymoddisp.h:93
Notifier< uiStratLayerModelDisp > rangeChanged
Definition: uistratlaymoddisp.h:92
Stratigraphy.
Definition: stratlevel.h:25
Notifier< uiStratLayerModelDisp > genNewModelNeeded
Definition: uistratlaymoddisp.h:91
void setBrineFilled(bool yn)
Definition: uistratlaymoddisp.h:79
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
bool flattened_
Definition: uistratlaymoddisp.h:105
const Strat::LayerModelProvider & lmp_
Definition: uistratlaymoddisp.h:100
int selseqidx_
Definition: uistratlaymoddisp.h:103
Definition: uigraphicsitemimpl.h:277
uiTextItem * frtxtitm_
Definition: uistratlaymoddisp.h:102
Notifier< uiStratLayerModelDisp > sequenceSelected
Definition: uistratlaymoddisp.h:90
A model consisting of layer sequences.
Definition: stratlayermodel.h:34
void clearDispPars()
Definition: uistratlaymoddisp.h:88
Definition: uistratlaymoddisp.h:48
Fulfills the FlatView::Viewer specifications using &#39;ui&#39; classes.
Definition: uiflatviewer.h:31
int selectedSequence() const
Definition: uistratlaymoddisp.h:70
Definition: uistratlaymodtools.h:59
virtual void reSetRelDepthZoneOfInterest()
Definition: uistratlaymoddisp.h:65
bool isBrineFilled() const
Definition: uistratlaymoddisp.h:78
Definition: uigraphicsscene.h:35

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