OpendTect  6.3
uistratlayseqgendesc.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 "uistratmod.h"
14 #include "factory.h"
15 
17 
18 class uiParent;
19 class uiObject;
22 namespace Strat { class LayerSequenceGenDesc; class LayerModelProvider; }
23 
24 
36 { mODTextTranslationClass(uiLayerSequenceGenDesc);
37 public:
38 
39  uiLayerSequenceGenDesc(Strat::LayerSequenceGenDesc&);
40  mDefineFactory2ParamInClass(uiLayerSequenceGenDesc,uiParent*,
43  virtual bool separateDisplay() { return true; }
44 
45  virtual void descHasChanged() = 0;
46  virtual uiObject* outerObj() = 0;
47  virtual uiStratLayerModelDisp* getLayModDisp(uiStratLayModEditTools&,
48  Strat::LayerModelProvider&,int opt=0) = 0;
49 
50  virtual void prepareDesc() {}
51  virtual void setEditDesc() {}
52  virtual void setFromEditDesc() {}
53  Strat::LayerSequenceGenDesc& desc() { return desc_; }
54  bool needSave() const { return needsave_; }
55  void setNeedSave( bool yn ) { needsave_ = yn; }
56  virtual bool selProps();
57  virtual void setDispProp(int propidx) {}
58 
59 protected:
60 
62  bool needsave_;
63  bool isValidSelection(const PropertyRefSelection&) const;
64 
65 };
66 
67 
68 
69 #define mDefuiLayerSequenceGenDescFns(clss,typstr) \
70 public: \
71  static const char* typeStr() { return typstr; } \
72  virtual const char* factoryKeyword() const { return typeStr(); } \
73  static uiLayerSequenceGenDesc* create( uiParent* p, \
74  Strat::LayerSequenceGenDesc& gd ) \
75  { return new clss(p,gd); } \
76  static void initClass() { factory().addCreator(create,typeStr()); }
#define mExpClass(module)
Definition: commondefs.h:157
Strat::LayerSequenceGenDesc & desc_
Definition: uistratlayseqgendesc.h:61
Definition: propertyref.h:174
Collection of LayerGenerator's that can generate a full LayerSequence.
Definition: stratlayseqgendesc.h:37
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
bool needsave_
Definition: uistratlayseqgendesc.h:62
The base class for most UI elements.
Definition: uiobj.h:35
Definition: uiparent.h:24
virtual bool separateDisplay()
Definition: uistratlayseqgendesc.h:43
Definition: stratlayermodel.h:82
virtual void prepareDesc()
Definition: uistratlayseqgendesc.h:50
virtual void setEditDesc()
Definition: uistratlayseqgendesc.h:51
Stratigraphy.
Definition: stratlevel.h:25
virtual void setFromEditDesc()
Definition: uistratlayseqgendesc.h:52
Strat::LayerSequenceGenDesc & desc()
Definition: uistratlayseqgendesc.h:53
Base class for LayerSequenceGenDesc editors - with factory.
Definition: uistratlayseqgendesc.h:35
void setNeedSave(bool yn)
Definition: uistratlayseqgendesc.h:55
bool needSave() const
Definition: uistratlayseqgendesc.h:54
virtual ~uiLayerSequenceGenDesc()
Definition: uistratlayseqgendesc.h:42
Definition: uistratlaymoddisp.h:48
virtual void setDispProp(int propidx)
Definition: uistratlayseqgendesc.h:57
Definition: uistratlaymodtools.h:59
#define mDefineFactory2ParamInClass(T, P0, P1, funcname)
Definition: factory.h:469

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