1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-04-30 07:39:42 +02:00
audacity/libraries/lib-string-utils/CodeConversions.cpp
2021-05-26 12:46:45 +03:00

60 lines
1.2 KiB
C++

/*!********************************************************************
Audacity: A Digital Audio Editor
@file CodeConversions.cpp
@brief Define functions to preform UTF-8 to std::wstring conversions.
Dmitry Vedenko
**********************************************************************/
#include "CodeConversions.h"
#include <locale>
#include <codecvt>
namespace audacity
{
std::string ToUTF8 (const std::wstring& wstr)
{
return std::wstring_convert<std::codecvt_utf8<wchar_t>> ().to_bytes (wstr);
}
std::string ToUTF8 (const wchar_t* wstr)
{
return std::wstring_convert<std::codecvt_utf8<wchar_t>> ().to_bytes (wstr);
}
std::string ToUTF8 (const wxString& wstr)
{
return wstr.ToStdString (wxGet_wxConvUTF8 ());
}
std::wstring ToWString (const std::string& str)
{
return std::wstring_convert<std::codecvt_utf8<wchar_t>> ().from_bytes (str);
}
std::wstring ToWString (const char* str)
{
return std::wstring_convert<std::codecvt_utf8<wchar_t>> ().from_bytes (str);
}
std::wstring ToWString (const wxString& str)
{
return str.ToStdWstring ();
}
wxString ToWXString (const std::string& str)
{
return wxString::FromUTF8 (str);
}
wxString ToWXString (const std::wstring& str)
{
return wxString (str);
}
}