minor fixes for custom controls support in wxFileDialog: slightly improve documentation, make variable names more clear and add more WinCE checks (closes #10416)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2009-01-24 14:04:25 +00:00
parent 9800347d77
commit d6dae1b443
5 changed files with 22 additions and 9 deletions

View File

@ -122,7 +122,7 @@ public:
virtual bool SupportsExtraControl() const { return false; }
bool SetExtraControlCreator(ExtraControlCreatorFunction WXUNUSED(c));
bool SetExtraControlCreator(ExtraControlCreatorFunction creator);
wxWindow *GetExtraControl() const { return m_extraControl; }
// Utility functions

View File

@ -34,8 +34,8 @@ public:
virtual void GetFilenames(wxArrayString& files) const;
#ifndef __WXWINCE__
virtual bool SupportsExtraControl() const { return true; }
#endif // __WXWINCE__
void MSWOnInitDialogHook(WXHWND hwnd);
#endif // __WXWINCE__
virtual int ShowModal();

View File

@ -11,8 +11,6 @@
This class represents the file chooser dialog.
It pops up a file selector box (native for Windows and GTK2.4+).
The path and filename are distinct elements of a full file pathname.
If path is wxEmptyString, the current directory will be used.
If filename is wxEmptyString, no default filename will be supplied.
@ -55,7 +53,7 @@
file(s) chosen by the user are.
@style{wxFD_PREVIEW}
Show the preview of the selected files (currently only supported by
wxGTK using GTK+ 2.4 or later).
wxGTK).
@endStyleTable
@library{wxcore}
@ -113,6 +111,8 @@ public:
/**
If functions SetExtraControlCreator() and ShowModal() were called,
returns the extra window. Otherwise returns @NULL.
@since 2.9.0
*/
wxWindow* GetExtraControl() const;
@ -173,6 +173,13 @@ public:
*/
virtual void SetDirectory(const wxString& directory);
/**
The type of function used as an argument for SetExtraControlCreator().
@since 2.9.0
*/
typedef wxWindow *(*ExtraControlCreatorFunction)(wxWindow*);
/**
Customize file dialog by adding extra window, which is typically placed
below the list of files and above the buttons.
@ -182,9 +189,11 @@ public:
The @c creator function should take pointer to parent window (file dialog)
and should return a window allocated with operator new.
Supported platforms: wxGTK, wxUniv.
Supported platforms: wxGTK, wxMSW, wxUniv.
@since 2.9.0
*/
bool SetExtraControlCreator(ExtraControlCreatorFunction);
bool SetExtraControlCreator(ExtraControlCreatorFunction creator);
/**
Sets the default filename.

View File

@ -151,12 +151,12 @@ wxString wxFileDialogBase::AppendExtension(const wxString &filePath,
return filePath + ext;
}
bool wxFileDialogBase::SetExtraControlCreator(ExtraControlCreatorFunction c)
bool wxFileDialogBase::SetExtraControlCreator(ExtraControlCreatorFunction creator)
{
wxCHECK_MSG( !m_extraControlCreator, false,
"wxFileDialog::SetExtraControl() called second time" );
m_extraControlCreator = c;
m_extraControlCreator = creator;
return SupportsExtraControl();
}

View File

@ -86,6 +86,7 @@ wxFileDialogHookFunction(HWND hDlg,
{
switch ( iMsg )
{
#ifndef __WXWINCE__
case WM_INITDIALOG:
{
OPENFILENAME* ofn = reinterpret_cast<OPENFILENAME *>(lParam);
@ -93,6 +94,7 @@ wxFileDialogHookFunction(HWND hDlg,
->MSWOnInitDialogHook((WXHWND)hDlg);
}
break;
#endif // __WXWINCE__
case WM_NOTIFY:
{
@ -368,6 +370,7 @@ static bool ShowCommFileDialog(OPENFILENAME *of, long style)
return true;
}
#ifndef __WXWINCE__
void wxFileDialog::MSWOnInitDialogHook(WXHWND hwnd)
{
SetHWND(hwnd);
@ -376,6 +379,7 @@ void wxFileDialog::MSWOnInitDialogHook(WXHWND hwnd)
SetHWND(NULL);
}
#endif // __WXWINCE__
int wxFileDialog::ShowModal()
{