From 3b55a62fdcb1f8222de3c2c8fbed530792c419a0 Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Fri, 12 Oct 2012 14:53:57 +0000 Subject: GTalkExt, ICQ, IRC, Jabber: folders restructurization git-svn-id: http://svn.miranda-ng.org/main/trunk@1890 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/IcqOscarJ/src/i18n.h | 70 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 protocols/IcqOscarJ/src/i18n.h (limited to 'protocols/IcqOscarJ/src/i18n.h') diff --git a/protocols/IcqOscarJ/src/i18n.h b/protocols/IcqOscarJ/src/i18n.h new file mode 100644 index 0000000000..eaeaad54f3 --- /dev/null +++ b/protocols/IcqOscarJ/src/i18n.h @@ -0,0 +1,70 @@ +// ---------------------------------------------------------------------------80 +// ICQ plugin for Miranda Instant Messenger +// ________________________________________ +// +// Copyright © 2000-2001 Richard Hughes, Roland Rabien, Tristan Van de Vreede +// Copyright © 2001-2002 Jon Keating, Richard Hughes +// Copyright © 2002-2004 Martin Öberg, Sam Kothari, Robert Rainwater +// Copyright © 2004-2010 Joe Kucera +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +// +// ----------------------------------------------------------------------------- +// DESCRIPTION: +// +// Helper functions to convert text messages between different character sets. +// +// ----------------------------------------------------------------------------- + +#ifndef __I18N_H +#define __I18N_H + + +BOOL __stdcall IsUSASCII(const char *pBuffer, int nSize); +BOOL __stdcall IsUnicodeAscii(const WCHAR *pBuffer, int nSize); +int __stdcall UTF8_IsValid(const char *pszInput); + +int __stdcall get_utf8_size(const WCHAR *unicode); + +char* __stdcall detect_decode_utf8(const char *from); + +WCHAR* __stdcall make_unicode_string(const char *utf8); +WCHAR* __stdcall make_unicode_string_static(const char *utf8, WCHAR *unicode, size_t unicode_size); + +char* __stdcall make_utf8_string(const WCHAR *unicode); +char* __stdcall make_utf8_string_static(const WCHAR *unicode, char *utf8, size_t utf_size); + +char* __stdcall ansi_to_utf8(const char *ansi); +char* __stdcall ansi_to_utf8_codepage(const char *ansi, WORD wCp); + +WCHAR* __stdcall ansi_to_unicode(const char *ansi); +char* __stdcall unicode_to_ansi(const WCHAR *unicode); +char* __stdcall unicode_to_ansi_static(const WCHAR *unicode, char *ansi, int ansi_size); + +int __stdcall utf8_encode(const char *from, char **to); +int __stdcall utf8_decode(const char *from, char **to); +int __stdcall utf8_decode_codepage(const char *from, char **to, WORD wCp); +int __stdcall utf8_decode_static(const char *from, char *to, int to_size); + +#define tchar_to_utf8 make_utf8_string +#define utf8_to_tchar_static make_unicode_string_static +#define utf8_to_tchar make_unicode_string +#define ansi_to_tchar ansi_to_unicode +#define tchar_to_ansi unicode_to_ansi + +void InitI18N(void); + + +#endif /* __I18N_H */ -- cgit v1.2.3