]> git.saurik.com Git - wxWidgets.git/blame - include/wx/motif/filedlg.h
Add tests for XShape extension API in configure,
[wxWidgets.git] / include / wx / motif / filedlg.h
CommitLineData
9b6dbb09
JS
1/////////////////////////////////////////////////////////////////////////////
2// Name: filedlg.h
3// Purpose: wxFileDialog class
4// Author: Julian Smart
5// Modified by:
6// Created: 17/09/98
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/*
83df96d6
JS
22* File selector
23*/
9b6dbb09
JS
24
25WXDLLEXPORT_DATA(extern const char*) wxFileSelectorPromptStr;
26WXDLLEXPORT_DATA(extern const char*) wxFileSelectorDefaultWildcardStr;
27
28class WXDLLEXPORT wxFileDialog: public wxDialog
29{
83df96d6 30 DECLARE_DYNAMIC_CLASS(wxFileDialog)
dfad0599 31public:
9b6dbb09
JS
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;
83df96d6 40
dfad0599
JS
41 // For Motif
42 wxPoint m_pos;
43 static wxString m_fileSelectorAnswer;
44 static bool m_fileSelectorReturned;
83df96d6 45
9b6dbb09
JS
46public:
47 wxFileDialog(wxWindow *parent, const wxString& message = wxFileSelectorPromptStr,
48 const wxString& defaultDir = "", const wxString& defaultFile = "", const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
49 long style = 0, const wxPoint& pos = wxDefaultPosition);
83df96d6 50
9b6dbb09
JS
51 inline void SetMessage(const wxString& message) { m_message = message; }
52 inline void SetPath(const wxString& path) { m_path = path; }
53 inline void SetDirectory(const wxString& dir) { m_dir = dir; }
54 inline void SetFilename(const wxString& name) { m_fileName = name; }
55 inline void SetWildcard(const wxString& wildCard) { m_wildCard = wildCard; }
56 inline void SetStyle(long style) { m_dialogStyle = style; }
57 inline void SetFilterIndex(int filterIndex) { m_filterIndex = filterIndex; }
83df96d6 58
9b6dbb09
JS
59 inline wxString GetMessage() const { return m_message; }
60 inline wxString GetPath() const { return m_path; }
36cc3968 61 inline void GetPaths(wxArrayString& a) { a.Empty(); a.Add(m_path); }
9b6dbb09
JS
62 inline wxString GetDirectory() const { return m_dir; }
63 inline wxString GetFilename() const { return m_fileName; }
36cc3968 64 inline void GetFilenames(wxArrayString& a) { a.Empty();
83df96d6 65 a.Add( m_fileName); }
9b6dbb09
JS
66 inline wxString GetWildcard() const { return m_wildCard; }
67 inline long GetStyle() const { return m_dialogStyle; }
68 inline int GetFilterIndex() const { return m_filterIndex ; }
83df96d6 69
9b6dbb09
JS
70 int ShowModal();
71};
72
73#define wxOPEN 0x0001
74#define wxSAVE 0x0002
75#define wxOVERWRITE_PROMPT 0x0004
76#define wxHIDE_READONLY 0x0008
77#define wxFILE_MUST_EXIST 0x0010
78
79// File selector - backward compatibility
c330a2cf 80WXDLLEXPORT wxString wxFileSelector(const char *message = wxFileSelectorPromptStr, const char *default_path = NULL,
83df96d6
JS
81 const char *default_filename = NULL, const char *default_extension = NULL,
82 const char *wildcard = wxFileSelectorDefaultWildcardStr, int flags = 0,
83 wxWindow *parent = NULL, int x = -1, int y = -1);
9b6dbb09
JS
84
85// An extended version of wxFileSelector
c330a2cf 86WXDLLEXPORT wxString wxFileSelectorEx(const char *message = wxFileSelectorPromptStr, const char *default_path = NULL,
83df96d6
JS
87 const char *default_filename = NULL, int *indexDefaultExtension = NULL,
88 const char *wildcard = wxFileSelectorDefaultWildcardStr, int flags = 0,
89 wxWindow *parent = NULL, int x = -1, int y = -1);
9b6dbb09
JS
90
91// Generic file load dialog
c330a2cf 92WXDLLEXPORT wxString wxLoadFileSelector(const char *what, const char *extension, const char *default_name = NULL, wxWindow *parent = NULL);
9b6dbb09
JS
93
94// Generic file save dialog
c330a2cf 95WXDLLEXPORT wxString wxSaveFileSelector(const char *what, const char *extension, const char *default_name = NULL, wxWindow *parent = NULL);
9b6dbb09
JS
96
97#endif
83df96d6 98// _WX_FILEDLG_H_