]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/filedlg.h
Dramatically optimise inserting many items in wxGenericListCtrl.
[wxWidgets.git] / include / wx / msw / filedlg.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/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 //-------------------------------------------------------------------------
16 // wxFileDialog
17 //-------------------------------------------------------------------------
18
19 class WXDLLIMPEXP_CORE wxFileDialog: public wxFileDialogBase
20 {
21 public:
22 wxFileDialog(wxWindow *parent,
23 const wxString& message = wxFileSelectorPromptStr,
24 const wxString& defaultDir = wxEmptyString,
25 const wxString& defaultFile = wxEmptyString,
26 const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
27 long style = wxFD_DEFAULT_STYLE,
28 const wxPoint& pos = wxDefaultPosition,
29 const wxSize& sz = wxDefaultSize,
30 const wxString& name = wxFileDialogNameStr);
31
32 virtual void GetPaths(wxArrayString& paths) const;
33 virtual void GetFilenames(wxArrayString& files) const;
34 #ifndef __WXWINCE__
35 virtual bool SupportsExtraControl() const { return true; }
36 void MSWOnInitDialogHook(WXHWND hwnd);
37 #endif // __WXWINCE__
38
39 virtual int ShowModal();
40
41 // wxMSW-specific implementation from now on
42 // -----------------------------------------
43
44 // called from the hook procedure on CDN_INITDONE reception
45 virtual void MSWOnInitDone(WXHWND hDlg);
46
47 protected:
48
49 #if !(defined(__SMARTPHONE__) && defined(__WXWINCE__))
50 virtual void DoMoveWindow(int x, int y, int width, int height);
51 virtual void DoCentre(int dir);
52 virtual void DoGetSize( int *width, int *height ) const;
53 virtual void DoGetPosition( int *x, int *y ) const;
54 #endif // !(__SMARTPHONE__ && __WXWINCE__)
55
56 private:
57 wxArrayString m_fileNames;
58
59 // remember if our SetPosition() or Centre() (which requires special
60 // treatment) was called
61 bool m_bMovedWindow;
62 int m_centreDir; // nothing to do if 0
63
64 DECLARE_DYNAMIC_CLASS(wxFileDialog)
65 wxDECLARE_NO_COPY_CLASS(wxFileDialog);
66 };
67
68 #endif // _WX_FILEDLG_H_
69