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:
@@ -122,7 +122,7 @@ public:
|
|||||||
|
|
||||||
virtual bool SupportsExtraControl() const { return false; }
|
virtual bool SupportsExtraControl() const { return false; }
|
||||||
|
|
||||||
bool SetExtraControlCreator(ExtraControlCreatorFunction WXUNUSED(c));
|
bool SetExtraControlCreator(ExtraControlCreatorFunction creator);
|
||||||
wxWindow *GetExtraControl() const { return m_extraControl; }
|
wxWindow *GetExtraControl() const { return m_extraControl; }
|
||||||
|
|
||||||
// Utility functions
|
// Utility functions
|
||||||
|
@@ -34,8 +34,8 @@ public:
|
|||||||
virtual void GetFilenames(wxArrayString& files) const;
|
virtual void GetFilenames(wxArrayString& files) const;
|
||||||
#ifndef __WXWINCE__
|
#ifndef __WXWINCE__
|
||||||
virtual bool SupportsExtraControl() const { return true; }
|
virtual bool SupportsExtraControl() const { return true; }
|
||||||
#endif // __WXWINCE__
|
|
||||||
void MSWOnInitDialogHook(WXHWND hwnd);
|
void MSWOnInitDialogHook(WXHWND hwnd);
|
||||||
|
#endif // __WXWINCE__
|
||||||
|
|
||||||
virtual int ShowModal();
|
virtual int ShowModal();
|
||||||
|
|
||||||
|
@@ -11,8 +11,6 @@
|
|||||||
|
|
||||||
This class represents the file chooser dialog.
|
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.
|
The path and filename are distinct elements of a full file pathname.
|
||||||
If path is wxEmptyString, the current directory will be used.
|
If path is wxEmptyString, the current directory will be used.
|
||||||
If filename is wxEmptyString, no default filename will be supplied.
|
If filename is wxEmptyString, no default filename will be supplied.
|
||||||
@@ -55,7 +53,7 @@
|
|||||||
file(s) chosen by the user are.
|
file(s) chosen by the user are.
|
||||||
@style{wxFD_PREVIEW}
|
@style{wxFD_PREVIEW}
|
||||||
Show the preview of the selected files (currently only supported by
|
Show the preview of the selected files (currently only supported by
|
||||||
wxGTK using GTK+ 2.4 or later).
|
wxGTK).
|
||||||
@endStyleTable
|
@endStyleTable
|
||||||
|
|
||||||
@library{wxcore}
|
@library{wxcore}
|
||||||
@@ -113,6 +111,8 @@ public:
|
|||||||
/**
|
/**
|
||||||
If functions SetExtraControlCreator() and ShowModal() were called,
|
If functions SetExtraControlCreator() and ShowModal() were called,
|
||||||
returns the extra window. Otherwise returns @NULL.
|
returns the extra window. Otherwise returns @NULL.
|
||||||
|
|
||||||
|
@since 2.9.0
|
||||||
*/
|
*/
|
||||||
wxWindow* GetExtraControl() const;
|
wxWindow* GetExtraControl() const;
|
||||||
|
|
||||||
@@ -173,6 +173,13 @@ public:
|
|||||||
*/
|
*/
|
||||||
virtual void SetDirectory(const wxString& directory);
|
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
|
Customize file dialog by adding extra window, which is typically placed
|
||||||
below the list of files and above the buttons.
|
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)
|
The @c creator function should take pointer to parent window (file dialog)
|
||||||
and should return a window allocated with operator new.
|
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.
|
Sets the default filename.
|
||||||
|
@@ -151,12 +151,12 @@ wxString wxFileDialogBase::AppendExtension(const wxString &filePath,
|
|||||||
return filePath + ext;
|
return filePath + ext;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool wxFileDialogBase::SetExtraControlCreator(ExtraControlCreatorFunction c)
|
bool wxFileDialogBase::SetExtraControlCreator(ExtraControlCreatorFunction creator)
|
||||||
{
|
{
|
||||||
wxCHECK_MSG( !m_extraControlCreator, false,
|
wxCHECK_MSG( !m_extraControlCreator, false,
|
||||||
"wxFileDialog::SetExtraControl() called second time" );
|
"wxFileDialog::SetExtraControl() called second time" );
|
||||||
|
|
||||||
m_extraControlCreator = c;
|
m_extraControlCreator = creator;
|
||||||
return SupportsExtraControl();
|
return SupportsExtraControl();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -86,6 +86,7 @@ wxFileDialogHookFunction(HWND hDlg,
|
|||||||
{
|
{
|
||||||
switch ( iMsg )
|
switch ( iMsg )
|
||||||
{
|
{
|
||||||
|
#ifndef __WXWINCE__
|
||||||
case WM_INITDIALOG:
|
case WM_INITDIALOG:
|
||||||
{
|
{
|
||||||
OPENFILENAME* ofn = reinterpret_cast<OPENFILENAME *>(lParam);
|
OPENFILENAME* ofn = reinterpret_cast<OPENFILENAME *>(lParam);
|
||||||
@@ -93,6 +94,7 @@ wxFileDialogHookFunction(HWND hDlg,
|
|||||||
->MSWOnInitDialogHook((WXHWND)hDlg);
|
->MSWOnInitDialogHook((WXHWND)hDlg);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
#endif // __WXWINCE__
|
||||||
|
|
||||||
case WM_NOTIFY:
|
case WM_NOTIFY:
|
||||||
{
|
{
|
||||||
@@ -368,6 +370,7 @@ static bool ShowCommFileDialog(OPENFILENAME *of, long style)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef __WXWINCE__
|
||||||
void wxFileDialog::MSWOnInitDialogHook(WXHWND hwnd)
|
void wxFileDialog::MSWOnInitDialogHook(WXHWND hwnd)
|
||||||
{
|
{
|
||||||
SetHWND(hwnd);
|
SetHWND(hwnd);
|
||||||
@@ -376,6 +379,7 @@ void wxFileDialog::MSWOnInitDialogHook(WXHWND hwnd)
|
|||||||
|
|
||||||
SetHWND(NULL);
|
SetHWND(NULL);
|
||||||
}
|
}
|
||||||
|
#endif // __WXWINCE__
|
||||||
|
|
||||||
int wxFileDialog::ShowModal()
|
int wxFileDialog::ShowModal()
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user