OpendTect  6.3
uifileinput.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: 21/9/2000
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uitoolsmod.h"
14 #include "uigeninput.h"
15 #include "uifiledlg.h"
16 #include "file.h"
17 
18 class uiButton;
19 class BufferStringSet;
20 
32 mExpClass(uiTools) uiFileInput : public uiGenInput
34 public:
35 
36  mExpClass(uiTools) Setup
37  {
38  public:
39  Setup(const char* filenm=0);
40  Setup(uiFileDialog::Type t,const char* filenm=0);
41 
43 
45  mDefSetupMemb(BufferString,defseldir)
46  mDefSetupMemb(bool,forread)
47  mDefSetupMemb(bool,withexamine)
48  mDefSetupMemb(File::ViewStyle,examstyle)
49  mDefSetupMemb(bool,exameditable)
50  mDefSetupMemb(bool,displaylocalpath)
51 
52  mDefSetupMemb(bool,directories)
53  mDefSetupMemb(bool,allowallextensions)
54  mDefSetupMemb(bool,confirmoverwrite)
55  mDefSetupMemb(uiFileDialog::Type,filedlgtype)
56  mDefSetupMemb(uiString,objtype)
57  };
58 
59  uiFileInput(uiParent*,const uiString& seltxt,
60  const char* fnm=0);
61  uiFileInput(uiParent*,const uiString& seltxt,
62  const Setup&);
63  ~uiFileInput();
64 
65  void setFileName(const char*);
66  void setDefaultSelectionDir(const char*);
67  const char* defaultSelectionDir() const { return defseldir_;}
68  void setFilter( const char* fltr ) { filter_ = fltr; }
69  const char* selectedFilter() const { return selfltr_; }
70  void setSelectedFilter( const char* f ) { selfltr_ = f; }
71  void setObjType( const uiString& s ) { objtype_ = s; }
72  void setExamine( const CallBack& cb ) { excb_ = cb; }
74 
75  const char* fileName() const;
76  void getFileNames(BufferStringSet&) const;
77 
78  uiFileDialog::Mode selectMode() const;
79  void setSelectMode(uiFileDialog::Mode);
80  bool inDirectorySelectMode() const;
81 
82  void setSensitive(bool yn) { setChildrenSensitive(yn); }
83  void enableExamine(bool);
85  void setDefaultExtension(const char* ext);
86  // only when forread is false
87 
88  void selectFile( CallBacker* cb ) { doSelect(cb); }
89 
90 protected:
91 
92  bool forread_;
104 
108 
109  uiButton* examinebut_;
110 
111  virtual void doSelect(CallBacker*);
112  void inputChg(CallBacker*);
113  void examineFile(CallBacker*);
114  void isFinalised(CallBacker*);
115  void fnmEntered(CallBacker*);
116 };
#define mExpClass(module)
Definition: commondefs.h:157
Interface for several file and directory related services.
Definition: file.h:29
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
void selectFile(CallBacker *cb)
Definition: uifileinput.h:88
FixedString Setup()
Definition: keystrs.h:113
uiFileDialog::Type filedlgtype_
Definition: uifileinput.h:107
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
BufferString defaultext_
Definition: uifileinput.h:102
CallBack excb_
Definition: uifileinput.h:101
bool displaylocalpath_
Definition: uifileinput.h:95
void setSelectedFilter(const char *f)
Definition: uifileinput.h:70
A file-name input.
Definition: uifileinput.h:32
Definition: uistring.h:88
Definition: uiparent.h:24
bool addallexts_
Definition: uifileinput.h:97
Set of BufferString objects.
Definition: bufstringset.h:25
BufferString filter_
Definition: uifileinput.h:93
Type
Definition: uifiledlg.h:48
void setObjType(const uiString &s)
Definition: uifileinput.h:71
ViewStyle
Definition: file.h:109
uiFileDialog::Mode selmode_
Definition: uifileinput.h:106
BufferString defseldir_
Definition: uifileinput.h:94
void setFilter(const char *fltr)
Definition: uifileinput.h:68
BufferString selfltr_
Definition: uifileinput.h:96
General Input Element.
Definition: uigeninput.h:56
void setSensitive(bool yn)
Definition: uifileinput.h:82
#define mDefSetupMemb(typ, memb)
Definition: commondefs.h:129
uiButton * examinebut_
Definition: uifileinput.h:109
Definition: uifileinput.h:36
Type
Definition: angles.h:25
Dialog to get a file or directory name from user.
Definition: uifiledlg.h:23
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
const char * selectedFilter() const
Definition: uifileinput.h:69
bool selmodset_
Definition: uifileinput.h:105
bool confirmoverwrite_
Definition: uifileinput.h:100
bool forread_
Definition: uifileinput.h:92
BufferString fnm
Definition: uifileinput.h:42
File::ViewStyle examstyle_
Definition: uifileinput.h:98
uiString objtype_
Definition: uifileinput.h:103
CallBacks object-oriented (object + method).
Definition: callback.h:62
Mode
File selection mode.
Definition: uifiledlg.h:27
bool exameditable_
Definition: uifileinput.h:99
void setExamine(const CallBack &cb)
Overrules the simple stand-alone file browser.
Definition: uifileinput.h:72

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