OpendTect  6.3
uifiledlg.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. Lammertink
8  Date: 21/09/2000
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uibasemod.h"
14 #include "bufstringset.h"
15 #include "uistring.h"
16 
17 class uiParent;
18 class FileMultiString;
19 
24 { mODTextTranslationClass(uiFileDialog);
25 public:
27  enum Mode
28  {
31  Directory,
33  DirectoryOnly,
35  ExistingFiles
36  };
37 
38 
39  uiFileDialog(uiParent*,bool forread,
40  const char* fname=0,
41  const char* filter=0,
42  const uiString& caption=uiString::emptyString());
43 
44  uiFileDialog(uiParent*,Mode mode=AnyFile,
45  const char* fname=0,
46  const char* filter=0,
47  const uiString& caption=uiString::emptyString());
48  enum Type { Gen, Img, Txt, Html };
49  uiFileDialog(uiParent*,Type,
50  const char* fname=0,
51  const uiString& caption=uiString::emptyString());
53 
54  const char* fileName() const { return fn; }
55  void getFileNames(BufferStringSet&) const;
56 
57  void setMode( Mode m) { mode_=m; }
58  Mode mode() const { return mode_; }
59 
60  void setSelectedFilter(const char* fltr)
61  { selectedfilter_ = fltr; }
62  const char* selectedFilter() const { return selectedfilter_; }
63 
64  void setDirectory( const char* dir )
65  { currentdir_ = dir; }
66 
67  void setAllowAllExts( bool yn ) { addallexts_ = yn; }
69  void setConfirmOverwrite( bool yn )
70  { confirmoverwrite_ = yn; }
71 
72  void setDefaultExtension(const char*);
73  const char* getDefaultExtension() const;
74 
75  int go();
76 
77  static const char* filesep_;
78 
79  static void list2String(const BufferStringSet&,
80  BufferString&);
81  static void string2List(const BufferString&,
83 
84  // To be used by cmddriver to select filename(s)
85  // while closing the QFileDialog
86  int processExternalFilenames(const char* dir=0,
87  const char* filters=0);
88  static void setExternalFilenames(const FileMultiString&);
89  static const char* getExternalFilenamesErrMsg();
90  // Warning starts with '!'-symbol
91 
92 protected:
93 
104  bool forread_;
107 
110 
111 private:
112  void setDefaultCaption();
113  int beginCmdRecEvent( const char* wintitle );
114  void endCmdRecEvent(int refnr, bool ok);
115 };
#define mExpClass(module)
Definition: commondefs.h:157
BufferString defaultextension_
Definition: uifiledlg.h:106
static BufferString extfilenameserrmsg_
Definition: uifiledlg.h:109
BufferString currentdir_
Definition: uifiledlg.h:102
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
BufferStringSet filenames_
Definition: uifiledlg.h:100
void setDirectory(const char *dir)
Definition: uifiledlg.h:64
static const uiString & emptyString()
Definition: uistring.h:107
Definition: uistring.h:88
BufferString filter_
Definition: uifiledlg.h:97
Definition: uiparent.h:24
Set of BufferString objects.
Definition: bufstringset.h:25
const char * fileName() const
Definition: uifiledlg.h:54
Type
Definition: uifiledlg.h:48
uiParent * parnt_
Definition: uifiledlg.h:99
Mode mode() const
Definition: uifiledlg.h:58
SeparString with backquotes as separators, use in most ascii files.
Definition: separstr.h:131
BufferString fn
Definition: uifiledlg.h:94
void setSelectedFilter(const char *fltr)
Definition: uifiledlg.h:60
BufferString fname_
Definition: uifiledlg.h:96
const char * selectedFilter() const
Definition: uifiledlg.h:62
bool forread_
Definition: uifiledlg.h:104
uiString caption_
Definition: uifiledlg.h:98
Definition: uifiledlg.h:29
Mode mode_
Definition: uifiledlg.h:95
bool confirmoverwrite_
Definition: uifiledlg.h:105
Dialog to get a file or directory name from user.
Definition: uifiledlg.h:23
void setConfirmOverwrite(bool yn)
Definition: uifiledlg.h:69
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
static FileMultiString * externalfilenames_
Definition: uifiledlg.h:108
Definition: uifiledlg.h:30
bool addallexts_
Definition: uifiledlg.h:103
void setAllowAllExts(bool yn)
default true for read, false for write
Definition: uifiledlg.h:67
Mode
File selection mode.
Definition: uifiledlg.h:27
static const char * filesep_
Definition: uifiledlg.h:77
BufferString selectedfilter_
Definition: uifiledlg.h:101
void setMode(Mode m)
Definition: uifiledlg.h:57

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