// wxGenericFileButton
// ----------------------------------------------------------------------------
+static wxString s_message, s_wildcard;
+
bool wxGenericFileDirButton::Create( wxWindow *parent, wxWindowID id,
const wxString &label, const wxString &path,
const wxString &message, const wxString &wildcard,
// create the dialog associated with this button
m_path = path;
- return CreateDialog(message, wildcard);
+ s_message = message;
+ s_wildcard = wildcard;
+
+ m_dialog = NULL;
+ return true;
}
void wxGenericFileDirButton::OnButtonClick(wxCommandEvent& WXUNUSED(ev))
{
+ CreateDialog(s_message, s_wildcard);
+
if (m_dialog->ShowModal() == wxID_OK)
{
// save the path
wxFileDirPickerEvent event(GetEventType(), this, GetId(), m_path);
GetEventHandler()->ProcessEvent(event);
}
+
+ wxDELETE(m_dialog);
}
#endif // wxUSE_FILEPICKERCTRL || wxUSE_DIRPICKERCTRL