From 660d46e1ae2ae6a87c5a530619a93742759e9e3a Mon Sep 17 00:00:00 2001 From: MikalaiR Date: Sat, 4 Jun 2016 18:11:35 +0000 Subject: C++ classes moved to m_system_cpp.h git-svn-id: http://svn.miranda-ng.org/main/trunk@16915 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- include/m_core.h | 35 ----------------------------------- include/m_system_cpp.h | 25 ++++++++++++++++++++++++- 2 files changed, 24 insertions(+), 36 deletions(-) (limited to 'include') diff --git a/include/m_core.h b/include/m_core.h index 634a864708..04bbacc2af 100644 --- a/include/m_core.h +++ b/include/m_core.h @@ -529,31 +529,6 @@ MIR_CORE_DLL(wchar_t*) mir_a2u(const char* src); MIR_CORE_DLL(char*) mir_u2a_cp(const wchar_t* src, int codepage); MIR_CORE_DLL(char*) mir_u2a(const wchar_t* src); -#ifdef __cplusplus - -#ifndef M_SYSTEM_CPP_H__ -extern "C++" -{ -#include -} -#endif - -class _A2T : public ptrT -{ -public: - __inline _A2T(const char* s) : ptrT(mir_a2t(s)) {} - __inline _A2T(const char* s, int cp) : ptrT(mir_a2t_cp(s, cp)) {} -}; - -class _T2A : public ptrA -{ -public: - __forceinline _T2A(const TCHAR* s) : ptrA(mir_t2a(s)) {} - __forceinline _T2A(const TCHAR* s, int cp) : ptrA(mir_t2a_cp(s, cp)) {} -}; - -#endif - /////////////////////////////////////////////////////////////////////////////// // threads @@ -626,16 +601,6 @@ __forceinline char* mir_utf8decodeA(const char* src) #define mir_utf8encodeT mir_utf8encode #endif -class T2Utf : public ptrA -{ -public: - __forceinline T2Utf(const TCHAR *str) : ptrA(mir_utf8encodeT(str)) {} - __forceinline operator BYTE* () const { return (BYTE*)data; } - #ifdef _XSTRING_ - std::string str() const { return std::string(data); } - #endif -}; - /////////////////////////////////////////////////////////////////////////////// // Window subclassing diff --git a/include/m_system_cpp.h b/include/m_system_cpp.h index 32c26db65c..95d9c35e50 100644 --- a/include/m_system_cpp.h +++ b/include/m_system_cpp.h @@ -21,7 +21,6 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - #ifndef M_SYSTEM_CPP_H__ #define M_SYSTEM_CPP_H__ 1 @@ -273,6 +272,30 @@ template struct OBJLIST : public LIST __inline T& operator[](int idx) const { return *this->items[idx]; } }; +class _A2T : public ptrT +{ +public: + __inline _A2T(const char* s) : ptrT(mir_a2t(s)) {} + __inline _A2T(const char* s, int cp) : ptrT(mir_a2t_cp(s, cp)) {} +}; + +class _T2A : public ptrA +{ +public: + __forceinline _T2A(const TCHAR* s) : ptrA(mir_t2a(s)) {} + __forceinline _T2A(const TCHAR* s, int cp) : ptrA(mir_t2a_cp(s, cp)) {} +}; + +class T2Utf : public ptrA +{ +public: + __forceinline T2Utf(const TCHAR *str) : ptrA(mir_utf8encodeT(str)) {} + __forceinline operator BYTE* () const { return (BYTE*)data; } + #ifdef _XSTRING_ + std::string str() const { return std::string(data); } + #endif +}; + #endif #endif // M_SYSTEM_CPP_H -- cgit v1.2.3