More wxChar conversion
[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
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_FILEDLG_H_
13 #define _WX_FILEDLG_H_
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 wxChar*) wxFileSelectorPromptStr;
26 WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorDefaultWildcardStr;
27
28 class WXDLLEXPORT wxFileDialog: public wxDialog
29 {
30 DECLARE_DYNAMIC_CLASS(wxFileDialog)
31
32 public:
33 wxFileDialog(wxWindow *parent, const wxString& message = wxFileSelectorPromptStr,
34 const wxString& defaultDir = wxEmptyString, const wxString& defaultFile = wxEmptyString, const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
35 long style = 0, const wxPoint& pos = wxDefaultPosition);
36
37 inline void SetMessage(const wxString& message) { m_message = message; }
38 inline void SetPath(const wxString& path) { m_path = path; }
39 inline void SetDirectory(const wxString& dir) { m_dir = dir; }
40 inline void SetFilename(const wxString& name) { m_fileName = name; }
41 inline void SetWildcard(const wxString& wildCard) { m_wildCard = wildCard; }
42 inline void SetStyle(long style) { m_dialogStyle = style; }
43 inline void SetFilterIndex(int filterIndex) { m_filterIndex = filterIndex; }
44
45 inline wxString GetMessage(void) const { return m_message; }
46 inline wxString GetPath(void) const { return m_path; }
47 inline wxString GetDirectory(void) const { return m_dir; }
48 inline wxString GetFilename(void) const { return m_fileName; }
49 inline wxString GetWildcard(void) const { return m_wildCard; }
50 inline long GetStyle(void) const { return m_dialogStyle; }
51 inline int GetFilterIndex(void) const { return m_filterIndex ; }
52
53 int ShowModal(void);
54
55 protected:
56 wxString m_message;
57 long m_dialogStyle;
58 wxWindow * m_parent;
59 wxString m_dir;
60 wxString m_path; // Full path
61 wxString m_fileName;
62 wxString m_wildCard;
63 int m_filterIndex;
64 };
65
66 #define wxOPEN 0x0001
67 #define wxSAVE 0x0002
68 #define wxOVERWRITE_PROMPT 0x0004
69 #define wxHIDE_READONLY 0x0008
70 #define wxFILE_MUST_EXIST 0x0010
71
72 // File selector - backward compatibility
73 WXDLLEXPORT wxString
74 wxFileSelector(const wxChar *message = wxFileSelectorPromptStr,
75 const wxChar *default_path = NULL,
76 const wxChar *default_filename = NULL,
77 const wxChar *default_extension = NULL,
78 const wxChar *wildcard = wxFileSelectorDefaultWildcardStr,
79 int flags = 0,
80 wxWindow *parent = NULL,
81 int x = -1, int y = -1);
82
83 // An extended version of wxFileSelector
84 WXDLLEXPORT wxString
85 wxFileSelectorEx(const wxChar *message = wxFileSelectorPromptStr,
86 const wxChar *default_path = NULL,
87 const wxChar *default_filename = NULL,
88 int *indexDefaultExtension = NULL,
89 const wxChar *wildcard = wxFileSelectorDefaultWildcardStr,
90 int flags = 0,
91 wxWindow *parent = NULL,
92 int x = -1, int y = -1);
93
94 // Ask for filename to load
95 WXDLLEXPORT wxString
96 wxLoadFileSelector(const wxChar *what,
97 const wxChar *extension,
98 const wxChar *default_name = (const wxChar *)NULL,
99 wxWindow *parent = (wxWindow *) NULL);
100
101 // Ask for filename to save
102 WXDLLEXPORT wxString
103 wxSaveFileSelector(const wxChar *what,
104 const wxChar *extension,
105 const wxChar *default_name = (const wxChar *) NULL,
106 wxWindow *parent = (wxWindow *) NULL);
107
108 #endif
109 // _WX_FILEDLG_H_