Update of /cvsroot/wxlua/wxLua/modules/wxlua/include
In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv6592/wxLua/modules/wxlua/include
Modified Files:
wxlstate.h
Log Message:
fix unicode conversion wx2lua and lua2wx, thanks Steve Kieu
Index: wxlstate.h
===================================================================
RCS file: /cvsroot/wxlua/wxLua/modules/wxlua/include/wxlstate.h,v
retrieving revision 1.48
retrieving revision 1.49
diff -C2 -d -r1.48 -r1.49
*** wxlstate.h 6 Jun 2006 05:14:32 -0000 1.48
--- wxlstate.h 20 Jul 2006 16:16:32 -0000 1.49
***************
*** 62,69 ****
inline WXDLLIMPEXP_WXLUA wxString lua2wx(const char* luastr)
{
! if (luastr == NULL)
! return wxEmptyString;
! return wxConvertMB2WX(luastr); // this fails on NULL
}
--- 62,74 ----
inline WXDLLIMPEXP_WXLUA wxString lua2wx(const char* luastr)
{
! if (luastr == NULL) return wxEmptyString; // check for NULL
! #if wxUSE_UNICODE
! return wxString(luastr, wxConvUTF8);
! #else
! return wxString(wxConvUTF8.cMB2WC(luastr), *wxConvCurrent);
! #endif // wxUSE_UNICODE
!
! //return wxConvertMB2WX(luastr); // old way that mostly works
}
***************
*** 71,75 ****
inline const WXDLLIMPEXP_WXLUA wxCharBuffer wx2lua(const wxString& wxstr)
{
! wxCharBuffer buffer(wxConvertWX2MB(wxstr.c_str()));
return buffer;
}
--- 76,81 ----
inline const WXDLLIMPEXP_WXLUA wxCharBuffer wx2lua(const wxString& wxstr)
{
! //wxCharBuffer buffer(wxConvertWX2MB(wxstr.c_str())); // old way that mostly works
! wxCharBuffer buffer(wxConvUTF8.cWC2MB(wxstr.wc_str(*wxConvCurrent))); // skieu
return buffer;
}
***************
*** 81,86 ****
wxLuaCharBuffer(const wxString &wxstr) : m_buffer((const char *)NULL)
{
! wxCharBuffer charBuffer = wxConvertWX2MB(wxstr.c_str());
! m_buffer = charBuffer;
}
--- 87,92 ----
wxLuaCharBuffer(const wxString &wxstr) : m_buffer((const char *)NULL)
{
! //wxCharBuffer charBuffer = wxConvertWX2MB(wxstr.c_str());
! m_buffer = wxCharBuffer(wxConvUTF8.cWC2MB(wxstr.wc_str(*wxConvCurrent))); // skieu
}
|