implemented SetWildcard()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -903,13 +903,6 @@ wxGenericFileDialog::wxGenericFileDialog(wxWindow *parent,
|
||||
m_path += defaultFile;
|
||||
m_filterExtension = wxEmptyString;
|
||||
|
||||
// interpret wildcards
|
||||
wxArrayString wildDescriptions, wildFilters;
|
||||
if ( !wxParseCommonDialogsFilter(m_wildCard, wildDescriptions, wildFilters) )
|
||||
{
|
||||
wxFAIL_MSG( wxT("Wrong file type description") );
|
||||
}
|
||||
|
||||
// layout
|
||||
|
||||
bool is_pda = (wxSystemSettings::GetScreenType() <= wxSYS_SCREEN_PDA);
|
||||
@@ -978,7 +971,7 @@ wxGenericFileDialog::wxGenericFileDialog(wxWindow *parent,
|
||||
style2 |= wxLC_SINGLE_SEL;
|
||||
|
||||
m_list = new wxFileCtrl( this, ID_LIST_CTRL,
|
||||
wildFilters[0], ms_lastShowHidden,
|
||||
_T(""), ms_lastShowHidden,
|
||||
wxDefaultPosition, wxSize(540,200),
|
||||
style2);
|
||||
|
||||
@@ -1021,11 +1014,7 @@ wxGenericFileDialog::wxGenericFileDialog(wxWindow *parent,
|
||||
mainsizer->Add( choicesizer, 0, wxEXPAND );
|
||||
}
|
||||
|
||||
for (size_t n=0; n<wildFilters.GetCount(); n++)
|
||||
{
|
||||
m_choice->Append( wildDescriptions[n], (void*) new wxString( wildFilters[n] ) );
|
||||
}
|
||||
SetFilterIndex( 0 );
|
||||
SetWildcard(wildCard);
|
||||
|
||||
SetAutoLayout( true );
|
||||
SetSizer( mainsizer );
|
||||
@@ -1093,6 +1082,25 @@ void wxGenericFileDialog::DoSetFilterIndex(int filterindex)
|
||||
}
|
||||
}
|
||||
|
||||
void wxGenericFileDialog::SetWildcard(const wxString& wildCard)
|
||||
{
|
||||
wxFileDialogBase::SetWildcard(wildCard);
|
||||
|
||||
wxArrayString wildDescriptions, wildFilters;
|
||||
const size_t count = wxParseCommonDialogsFilter(m_wildCard,
|
||||
wildDescriptions,
|
||||
wildFilters);
|
||||
wxCHECK_RET( count, wxT("wxFileDialog: bad wildcard string") );
|
||||
|
||||
m_choice->Clear();
|
||||
for ( size_t n = 0; n < count; n++ )
|
||||
{
|
||||
m_choice->Append( wildDescriptions[n], new wxString( wildFilters[n] ) );
|
||||
}
|
||||
|
||||
SetFilterIndex( 0 );
|
||||
}
|
||||
|
||||
void wxGenericFileDialog::SetFilterIndex( int filterindex )
|
||||
{
|
||||
m_choice->SetSelection( filterindex );
|
||||
|
Reference in New Issue
Block a user