OpendTect-6_4  6.4
uistratlayseqgendesc.h
Go to the documentation of this file.
1 #ifndef uistratlayseqgendesc_h
2 #define uistratlayseqgendesc_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Bert
9  Date: Oct 2010
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "uistratmod.h"
16 #include "factory.h"
17 
19 
20 class uiParent;
21 class uiObject;
24 namespace Strat { class LayerSequenceGenDesc; class LayerModelProvider; }
25 
26 
38 { mODTextTranslationClass(uiLayerSequenceGenDesc);
39 public:
40 
41  uiLayerSequenceGenDesc(Strat::LayerSequenceGenDesc&);
42  mDefineFactory2ParamInClass(uiLayerSequenceGenDesc,uiParent*,
45  virtual bool separateDisplay() { return true; }
46 
47  virtual void descHasChanged() = 0;
48  virtual uiObject* outerObj() = 0;
49  virtual uiStratLayerModelDisp* getLayModDisp(uiStratLayModEditTools&,
50  Strat::LayerModelProvider&,int opt=0) = 0;
51 
52  virtual void prepareDesc() {}
53  virtual void setEditDesc() {}
54  virtual void setFromEditDesc() {}
55  Strat::LayerSequenceGenDesc& desc() { return desc_; }
56  bool needSave() const { return needsave_; }
57  void setNeedSave( bool yn ) { needsave_ = yn; }
58  virtual bool selProps();
59  virtual void setDispProp(int propidx) {}
60 
61 protected:
62 
64  bool needsave_;
65  bool isValidSelection(const PropertyRefSelection&) const;
66 
67 public:
68  const Strat::LayerSequenceGenDesc& currentDesc() const;
69 
70 };
71 
72 
73 
74 #define mDefuiLayerSequenceGenDescFns(clss,typstr) \
75 public: \
76  static const char* typeStr() { return typstr; } \
77  virtual const char* factoryKeyword() const { return typeStr(); } \
78  static uiLayerSequenceGenDesc* create( uiParent* p, \
79  Strat::LayerSequenceGenDesc& gd ) \
80  { return new clss(p,gd); } \
81  static void initClass() { factory().addCreator(create,typeStr()); }
82 
83 
84 #endif
#define mExpClass(module)
Definition: commondefs.h:160
Strat::LayerSequenceGenDesc & desc_
Definition: uistratlayseqgendesc.h:63
Definition: propertyref.h:176
Collection of LayerGenerator's that can generate a full LayerSequence.
Definition: stratlayseqgendesc.h:39
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
bool needsave_
Definition: uistratlayseqgendesc.h:64
The base class for most UI elements.
Definition: uiobj.h:38
Definition: uiparent.h:26
virtual bool separateDisplay()
Definition: uistratlayseqgendesc.h:45
Definition: stratlayermodel.h:84
virtual void prepareDesc()
Definition: uistratlayseqgendesc.h:52
virtual void setEditDesc()
Definition: uistratlayseqgendesc.h:53
Stratigraphy.
Definition: stratlevel.h:26
virtual void setFromEditDesc()
Definition: uistratlayseqgendesc.h:54
Strat::LayerSequenceGenDesc & desc()
Definition: uistratlayseqgendesc.h:55
Base class for LayerSequenceGenDesc editors - with factory.
Definition: uistratlayseqgendesc.h:37
void setNeedSave(bool yn)
Definition: uistratlayseqgendesc.h:57
bool needSave() const
Definition: uistratlayseqgendesc.h:56
virtual ~uiLayerSequenceGenDesc()
Definition: uistratlayseqgendesc.h:44
Definition: uistratlaymoddisp.h:47
virtual void setDispProp(int propidx)
Definition: uistratlayseqgendesc.h:59
Definition: uistratlaymodtools.h:63
#define mDefineFactory2ParamInClass(T, P0, P1, funcname)
Definition: factory.h:471

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