OpendTect  6.3
uiattrdescseted.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: A.H. Bril
8  Date: April 2001
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uiattributesmod.h"
14 #include "uidialog.h"
15 #include "dbkey.h"
16 
17 
18 namespace Attrib
19 {
20  class Desc;
21  class DescID;
22  class DescSet;
23  class DescSetMan;
24 };
25 
26 namespace Pick { class Set; }
27 namespace ZDomain { class Info; }
28 
29 class AttribParamGroup;
30 class BufferStringSet;
31 class CtxtIOObj;
32 class EvalParam;
33 class IOObj;
34 class uiAttrDescEd;
35 class uiAttrTypeSel;
36 class uiGenInput;
37 class uiListBox;
38 class uiPushButton;
39 class uiToolBar;
40 class uiToolButton;
41 
42 
47 mExpClass(uiAttributes) uiAttribDescSetEd : public uiDialog
49 public:
50 
52  const char* prefgrp =0,
53  bool attrsneedupdt =false);
55 
56  void setZDomainInfo(const ZDomain::Info&);
57  const ZDomain::Info* getZDomainInfo() const;
58 
59  void setDescSetMan(Attrib::DescSetMan*);
60  Attrib::DescSet* getSet() { return attrset_; }
61  const DBKey& curSetID() const { return setid_; }
62 
63  uiAttrDescEd* curDescEd();
65  Attrib::Desc* curDesc() const;
67  int curDescNr() const;
69  void updateCurDescEd();
70  bool is2D() const;
71 
72  void setSelAttr(const char* attrnm,bool isnewset);
73  void setSensitive(bool);
74 
75  void loadDefaultAttrSet(const char* attribsetnm);
76 
77  bool getUiAttribParamGrps(
79  BufferStringSet& paramnms,
80  TypeSet<BufferStringSet>& usernms);
82 
88 
89  static const char* sKeyUseAutoAttrSet;
90  static const char* sKeyAuto2DAttrSetID;
91  static const char* sKeyAuto3DAttrSetID;
92 
93 protected:
94 
109 
113 
124 
125  void attrTypSel(CallBacker*);
126  void selChg(CallBacker*);
127  void revPush(CallBacker*);
128  void addPush(CallBacker*);
129  void rmPush(CallBacker*);
130  void moveUpDownCB(CallBacker*);
131  void sortPush(CallBacker*);
132  void helpButPush(CallBacker*);
133 
134  void autoSet(CallBacker*);
135  void newSet(CallBacker*);
136  void openSet(CallBacker*);
137  void openAttribSet(const IOObj*);
138  void savePush(CallBacker*);
139  void saveAsPush(CallBacker*);
140  void changeInput(CallBacker*);
141  void defaultSet(CallBacker*);
142  void getDefaultAttribsets(BufferStringSet&,
144  BufferStringSet&);
145  void importSet(CallBacker*);
146  void importFile(CallBacker*);
147  void importFromSeis(CallBacker*);
148  void job2Set(CallBacker*);
149  void crossPlot(CallBacker*);
150  void directShow(CallBacker*);
151  void procAttribute(CallBacker*);
152  void evalAttribute(CallBacker*);
153  void crossEvalAttrs(CallBacker*);
154  void importFromFile(const char*);
155  void dotPathCB(CallBacker*);
156  void exportToDotCB(CallBacker*);
157  void showMatrix(CallBacker*);
158 
159  void setButStates();
160  bool offerSetSave();
161  bool doSave(bool);
162  void replaceStoredAttr();
163  void replaceStoredAttr(IOPar&);
164  void removeNotUsedAttr();
165  //bool hasInput(const Attrib::Desc&,const Attrib::DescID&);
166 
167  bool acceptOK();
168  bool rejectOK();
169 
170  void newList(int);
171  void updateFields(bool settype=true);
172  bool doCommit(bool prevdesc=false);
173  bool doAcceptInputs();
174  void handleSensitivity();
175  void updateUserRefs();
176  bool validName(const char*) const;
177  bool setUserRef(Attrib::Desc*);
178  void updateAttrName();
179  bool doSetIO(bool);
180  Attrib::Desc* createAttribDesc(bool checkuref=true);
181 
182  void createMenuBar();
183  void createToolBar();
184  void createGroups();
185  void init();
186 
187 public:
188 
189  void updtAllEntries();
190 };
Definition: uitoolbar.h:30
CtxtIOObj & setctio_
Definition: uiattrdescseted.h:103
#define mExpClass(module)
Definition: commondefs.h:157
Notifier< uiAttribDescSetEd > xplotcb
Definition: uiattrdescseted.h:86
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
uiGenInput * attrnmfld_
Definition: uiattrdescseted.h:117
Definition: ioobj.h:57
is the base class for all buttons.
Definition: uibutton.h:80
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
bool is2D(GeomType gt)
Definition: seistype.h:32
Manages attribute description set.
Definition: attribdescsetman.h:26
static const char * sKeyAuto2DAttrSetID
Definition: uiattrdescseted.h:90
DBKey cancelsetid_
Definition: uiattrdescseted.h:104
Attribute description editor.
Definition: uiattrdesced.h:80
Set of attribute descriptions.
Definition: attribdescset.h:29
bool init()
Notifier< uiAttribDescSetEd > evalattrcb
Definition: uiattrdescseted.h:84
Definition: uiparent.h:24
Set of BufferString objects.
Definition: bufstringset.h:25
Holds an IOObjCtxt plus a pointer to an IOObj and/or an IOPar.
Definition: ctxtioobj.h:24
BufferStringSet & userattrnames_
Definition: uiattrdescseted.h:102
Definition: uidialog.h:40
Notifier< uiAttribDescSetEd > crossevalattrcb
Definition: uiattrdescseted.h:85
List Box.
Definition: uilistbox.h:73
Definition: uievaluatedlg.h:39
FixedString Desc()
Definition: keystrs.h:60
bool updating_fields_
Definition: uiattrdescseted.h:105
Attrib::DescSet * attrset_
Definition: uiattrdescseted.h:97
uiToolBar * toolbar_
Definition: uiattrdescseted.h:110
uiToolButton * sortbut_
Definition: uiattrdescseted.h:122
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
uiToolButton * dispbut_
Definition: uiattrdescseted.h:115
ObjectSet< Attrib::Desc > attrdescs_
Definition: uiattrdescseted.h:101
Description of an attribute in an Attrib::DescSet. Each attribute has a name (e.g. "Similarity"), a user reference (e.g. "My similarity"), and at least one output. In addition, it may have parameters and inputs. If it has multiple outputs, only one of the outputs are selected.
Definition: attribdesc.h:87
static const char * sKeyAuto3DAttrSetID
Definition: uiattrdescseted.h:91
General Input Element.
Definition: uigeninput.h:56
Attrib::DescSet * getSet()
Definition: uiattrdescseted.h:60
uiGenInput * attrsetfld_
Definition: uiattrdescseted.h:118
ObjectSet< uiAttrDescEd > desceds_
Definition: uiattrdescseted.h:100
bool attrsneedupdt_
Definition: uiattrdescseted.h:106
uiPushButton * addbut_
Definition: uiattrdescseted.h:114
Notifier< uiAttribDescSetEd > applycb
Definition: uiattrdescseted.h:87
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
Attrib::Desc * prevdesc_
Definition: uiattrdescseted.h:98
uiAttrTypeSel * attrtypefld_
Definition: uiattrdescseted.h:112
uiToolButton * movedownbut_
Definition: uiattrdescseted.h:121
Definition: picklocation.h:19
Selector for attribute type.
Definition: uiattrtypesel.h:25
Definition: uitoolbutton.h:20
Attrib::DescSetMan * inoutadsman_
Definition: uiattrdescseted.h:95
uiToolButton * rmbut_
Definition: uiattrdescseted.h:123
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
static const char * sKeyUseAutoAttrSet
Definition: uiattrdescseted.h:89
static BufferString nmprefgrp_
Definition: uiattrdescseted.h:107
Editor for Attribute sets.
Definition: uiattrdescseted.h:47
Notifier< uiAttribDescSetEd > dirshowcb
Definition: uiattrdescseted.h:83
const DBKey & curSetID() const
Definition: uiattrdescseted.h:61
ZDomain::Info * zdomaininfo_
Definition: uiattrdescseted.h:108
DBKey setid_
Definition: uiattrdescseted.h:99
uiToolButton * moveupbut_
Definition: uiattrdescseted.h:120
uiToolButton * procbut_
Definition: uiattrdescseted.h:116
Information of z-domain.
Definition: zdomain.h:96
Semblance Attribute.
Definition: attribdataholder.h:21
uiListBox * attrlistfld_
Definition: uiattrdescseted.h:111
Definition: zdomain.h:18
Description of attribute parameters to evaluate.
Definition: uiattrdesced.h:36
Attrib::DescSetMan * adsman_
Definition: uiattrdescseted.h:96
uiToolButton * helpbut_
Definition: uiattrdescseted.h:119

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