defined wxFILE_MUST_EXIST flag
[wxWidgets.git] / include / wx / msw / filedlg.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: filedlg.h
3 // Purpose: wxFileDialog class
4 // Author: Julian Smart
5 // Modified by:
6 // Created: 01/02/97
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart and Markus Holzem
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef __FILEDLGH__
13 #define __FILEDLGH__
14
15 #ifdef __GNUG__
16 #pragma interface "filedlg.h"
17 #endif
18
19 #include "wx/dialog.h"
20
21 /*
22 * File selector
23 */
24
25 WXDLLEXPORT_DATA(extern const char*) wxFileSelectorPromptStr;
26 WXDLLEXPORT_DATA(extern const char*) wxFileSelectorDefaultWildcardStr;
27
28 class WXDLLEXPORT wxFileDialog: public wxDialog
29 {
30 DECLARE_DYNAMIC_CLASS(wxFileDialog)
31 protected:
32 wxString m_message;
33 long m_dialogStyle;
34 wxWindow * m_parent;
35 wxString m_dir;
36 wxString m_path; // Full path
37 wxString m_fileName;
38 wxString m_wildCard;
39 int m_filterIndex;
40 public:
41 wxFileDialog(wxWindow *parent, const wxString& message = wxFileSelectorPromptStr,
42 const wxString& defaultDir = "", const wxString& defaultFile = "", const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
43 long style = 0, const wxPoint& pos = wxDefaultPosition);
44
45 inline void SetMessage(const wxString& message) { m_message = message; }
46 inline void SetPath(const wxString& path) { m_path = path; }
47 inline void SetDirectory(const wxString& dir) { m_dir = dir; }
48 inline void SetFilename(const wxString& name) { m_fileName = name; }
49 inline void SetWildcard(const wxString& wildCard) { m_wildCard = wildCard; }
50 inline void SetStyle(long style) { m_dialogStyle = style; }
51 inline void SetFilterIndex(int filterIndex) { m_filterIndex = filterIndex; }
52
53 inline wxString GetMessage(void) const { return m_message; }
54 inline wxString GetPath(void) const { return m_path; }
55 inline wxString GetDirectory(void) const { return m_dir; }
56 inline wxString GetFilename(void) const { return m_fileName; }
57 inline wxString GetWildcard(void) const { return m_wildCard; }
58 inline long GetStyle(void) const { return m_dialogStyle; }
59 inline int GetFilterIndex(void) const { return m_filterIndex ; }
60
61 int ShowModal(void);
62 };
63
64 #define wxOPEN 0x0001
65 #define wxSAVE 0x0002
66 #define wxOVERWRITE_PROMPT 0x0004
67 #define wxHIDE_READONLY 0x0008
68 #define wxFILE_MUST_EXIST 0x0010
69
70 // File selector - backward compatibility
71 char* WXDLLEXPORT wxFileSelector(const char *message = wxFileSelectorPromptStr, const char *default_path = NULL,
72 const char *default_filename = NULL, const char *default_extension = NULL,
73 const char *wildcard = wxFileSelectorDefaultWildcardStr, int flags = 0,
74 wxWindow *parent = NULL, int x = -1, int y = -1);
75
76 // An extended version of wxFileSelector
77 char* WXDLLEXPORT wxFileSelectorEx(const char *message = wxFileSelectorPromptStr, const char *default_path = NULL,
78 const char *default_filename = NULL, int *indexDefaultExtension = NULL,
79 const char *wildcard = wxFileSelectorDefaultWildcardStr, int flags = 0,
80 wxWindow *parent = NULL, int x = -1, int y = -1);
81
82 // Generic file load dialog
83 char* WXDLLEXPORT wxLoadFileSelector(const char *what, const char *extension, const char *default_name = NULL, wxWindow *parent = NULL);
84
85 // Generic file save dialog
86 char* WXDLLEXPORT wxSaveFileSelector(const char *what, const char *extension, const char *default_name = NULL, wxWindow *parent = NULL);
87
88 #endif
89 // __FILEDLGH__