#pragma hdrstop
#endif
-#include "wx/filepicker.h"
+#if wxUSE_FILEPICKERCTRL || wxUSE_DIRPICKERCTRL
+#include "wx/filepicker.h"
+#ifndef WX_PRECOMP
+ #include "wx/textctrl.h"
+#endif
// ============================================================================
// implementation
// ============================================================================
-#if wxUSE_FILEPICKERCTRL || wxUSE_DIRPICKERCTRL
-
DEFINE_EVENT_TYPE(wxEVT_COMMAND_FILEPICKER_CHANGED)
DEFINE_EVENT_TYPE(wxEVT_COMMAND_DIRPICKER_CHANGED)
IMPLEMENT_DYNAMIC_CLASS(wxFileDirPickerEvent, wxCommandEvent)
long style, const wxValidator& validator,
const wxString &name )
{
- wxASSERT_MSG(path.IsEmpty() || CheckPath(path), wxT("Invalid initial path !"));
+ wxASSERT_MSG(path.empty() || CheckPath(path), wxT("Invalid initial path !"));
if (!wxPickerBase::CreateBase(parent, id, path, pos, size,
style, validator, name))
return false;
+ if (!HasFlag(wxFLP_OPEN) && !HasFlag(wxFLP_SAVE))
+ m_windowStyle |= wxFLP_OPEN; // wxFD_OPEN is the default
+
+ // check that the styles are not contradictory
+ wxASSERT_MSG( !(HasFlag(wxFLP_SAVE) && HasFlag(wxFLP_OPEN)),
+ _T("can't specify both wxFLP_SAVE and wxFLP_OPEN at once") );
+
+ wxASSERT_MSG( !HasFlag(wxFLP_SAVE) || !HasFlag(wxFLP_FILE_MUST_EXIST),
+ _T("wxFLP_FILE_MUST_EXIST can't be used with wxFLP_SAVE" ) );
+
+ wxASSERT_MSG( !HasFlag(wxFLP_OPEN) || !HasFlag(wxFLP_OVERWRITE_PROMPT),
+ _T("wxFLP_OVERWRITE_PROMPT can't be used with wxFLP_OPEN") );
+
// create a wxFilePickerWidget or a wxDirPickerWidget...
if (!CreatePicker(this, path, message, wildcard))
return false;