//-----------------------------------------------------------------------------
#ifndef wxAbstractionH
#define wxAbstractionH wxAbstractionH
//-----------------------------------------------------------------------------

#include <string>
#include <wx/string.h>

// helper class
struct ConvertedString : wxString
{
#if wxUSE_UNICODE
	ConvertedString( const char* s ) :
		wxString( s, wxConvUTF8 ) {};
	ConvertedString( const std::string& s ) :
		wxString( s.c_str(), wxConvUTF8 ) {};
	ConvertedString( const wxString& s ) :
# if wxCHECK_VERSION(2,9,0)
		wxString( s.mb_str(), wxConvUTF8 ) {};
# else
		wxString( s.c_str(), wxConvUTF8 ) {};
# endif
#else
	ConvertedString( const char* s ) :
		wxString( s ) {};
	ConvertedString( const std::string& s ) :
		wxString( s.c_str() ) {};
	ConvertedString( const wxString& s ) :
# if wxCHECK_VERSION(2,9,0)
		wxString( s.mb_str() ) {};
# else
		wxString( s.c_str() ) {};
# endif
#endif
};

#if ( wxMINOR_VERSION > 6 ) && ( wxMAJOR_VERSION < 3 ) && !WXWIN_COMPATIBILITY_2_6
#include <wx/filedlg.h>
enum {
    wxOPEN              = wxFD_OPEN,
    wxSAVE              = wxFD_SAVE,
    wxOVERWRITE_PROMPT  = wxFD_OVERWRITE_PROMPT,
    wxFILE_MUST_EXIST   = wxFD_FILE_MUST_EXIST,
    wxMULTIPLE          = wxFD_MULTIPLE,
    wxCHANGE_DIR        = wxFD_CHANGE_DIR
};
#endif

#endif // wxAbstractionH
