Remove support for translation of console messages.
In recent discussions on -devel it turned out, that this feature is rather superfluous and instead we should rather implement a proper error reporting in our GUI. I also removed the dependency on iconv along with this. svn-id: r50335
This commit is contained in:
parent
9a0e2e9c46
commit
58fcda82f3
13 changed files with 1706 additions and 1982 deletions
|
@ -30,10 +30,6 @@ DECLARE_SINGLETON(Common::TranslationManager)
|
|||
#include <locale.h>
|
||||
#endif
|
||||
|
||||
#ifdef USE_TERMCONV
|
||||
#include <langinfo.h>
|
||||
#endif
|
||||
|
||||
#ifdef USE_TRANSLATION
|
||||
#include "messages.cpp"
|
||||
#endif
|
||||
|
@ -45,7 +41,6 @@ namespace Common {
|
|||
|
||||
// Translation enabled
|
||||
|
||||
|
||||
TranslationManager::TranslationManager() {
|
||||
#ifdef USE_DETECTLANG
|
||||
// Activating current locale settings
|
||||
|
@ -78,20 +73,11 @@ TranslationManager::TranslationManager() {
|
|||
_syslang = "C";
|
||||
#endif // USE_DETECTLANG
|
||||
|
||||
#ifdef USE_TERMCONV
|
||||
_convmsg = NULL;
|
||||
_conversion = NULL;
|
||||
#endif // USE_TERMCONV
|
||||
|
||||
// Set the default language
|
||||
setLanguage("");
|
||||
}
|
||||
|
||||
TranslationManager::~TranslationManager() {
|
||||
#ifdef USE_TERMCONV
|
||||
iconv_close(_conversion);
|
||||
delete[] _convmsg;
|
||||
#endif // USE_TERMCONV
|
||||
}
|
||||
|
||||
void TranslationManager::setLanguage(const char *lang) {
|
||||
|
@ -99,21 +85,6 @@ void TranslationManager::setLanguage(const char *lang) {
|
|||
po2c_setlang(_syslang.c_str());
|
||||
else
|
||||
po2c_setlang(lang);
|
||||
|
||||
#ifdef USE_TERMCONV
|
||||
// Get the locale character set (for terminal output)
|
||||
const char *charset_term = nl_langinfo(CODESET);
|
||||
|
||||
// Get the messages character set
|
||||
const char *charset_po = po2c_getcharset();
|
||||
|
||||
// Delete previous conversion
|
||||
if (_conversion)
|
||||
iconv_close(_conversion);
|
||||
|
||||
// Initialize the conversion
|
||||
_conversion = iconv_open(charset_term, charset_po);
|
||||
#endif // USE_TERMCONV
|
||||
}
|
||||
|
||||
const char *TranslationManager::getTranslation(const char *message) {
|
||||
|
@ -124,63 +95,6 @@ String TranslationManager::getTranslation(const String &message) {
|
|||
return po2c_gettext(message.c_str());
|
||||
}
|
||||
|
||||
#ifdef USE_TERMCONV
|
||||
bool TranslationManager::convert(const char *message) {
|
||||
// Preparing conversion origin
|
||||
size_t len = strlen(message) + 1;
|
||||
#ifdef ICONV_USES_CONST
|
||||
const char **pmsg = &message;
|
||||
#else
|
||||
char *msgcpy = new char[len];
|
||||
strcpy(msgcpy, message);
|
||||
char *msg = msgcpy;
|
||||
char **pmsg = &msg;
|
||||
#endif
|
||||
|
||||
// Preparing conversion destination
|
||||
size_t len2 = _sizeconv;
|
||||
char *conv = _convmsg;
|
||||
|
||||
// Clean previous conversions
|
||||
iconv(_conversion, NULL, NULL, &conv, &len2);
|
||||
|
||||
// Do the real conversion
|
||||
size_t result = iconv(_conversion, pmsg, &len, &conv, &len2);
|
||||
|
||||
#ifndef ICONV_USES_CONST
|
||||
delete[] msgcpy;
|
||||
#endif
|
||||
|
||||
return result != ((size_t)-1);
|
||||
}
|
||||
#endif // USE_TERMCONV
|
||||
|
||||
const char *TranslationManager::convertTerm(const char *message) {
|
||||
#ifdef USE_TERMCONV
|
||||
size_t len = strlen(message) + 1;
|
||||
if (!_convmsg) {
|
||||
_sizeconv = len * 2;
|
||||
_convmsg = new char[_sizeconv];
|
||||
}
|
||||
|
||||
if (!convert(message)) {
|
||||
// Resizing the buffer
|
||||
delete[] _convmsg;
|
||||
_sizeconv = len * 2;
|
||||
_convmsg = new char[_sizeconv];
|
||||
|
||||
if (!convert(message)) {
|
||||
printf("Error while converting character sets\n");
|
||||
return "Error while converting character sets";
|
||||
}
|
||||
}
|
||||
|
||||
return _convmsg;
|
||||
#else // USE_TERMCONV
|
||||
return message;
|
||||
#endif // USE_TERMCONV
|
||||
}
|
||||
|
||||
const TLangArray TranslationManager::getSupportedLanguages() const {
|
||||
TLangArray languages;
|
||||
|
||||
|
@ -251,10 +165,6 @@ String TranslationManager::getTranslation(const String &message) {
|
|||
return message;
|
||||
}
|
||||
|
||||
const char *TranslationManager::convertTerm(const char *message) {
|
||||
return message;
|
||||
}
|
||||
|
||||
const TLangArray TranslationManager::getSupportedLanguages() const {
|
||||
return TLangArray();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue