Clean up translator callback.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6842 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
984b0d14d2
commit
a747cb548c
|
@ -25,7 +25,7 @@ bool DefaultMsgHandler(const char* caption, const char* text, bool yes_no, int S
|
|||
static MsgAlertHandler msg_handler = DefaultMsgHandler;
|
||||
static bool AlertEnabled = true;
|
||||
|
||||
const char* DefaultStringTranslator(const char* text);
|
||||
std::string DefaultStringTranslator(const char* text);
|
||||
static StringTranslator str_translator = DefaultStringTranslator;
|
||||
|
||||
/* Select which of these functions that are used for message boxes. If
|
||||
|
@ -62,9 +62,9 @@ bool MsgAlert(bool yes_no, int Style, const char* format, ...)
|
|||
|
||||
if (!info_caption.length())
|
||||
{
|
||||
info_caption = std::string(str_translator(_trans("Information")));
|
||||
ques_caption = std::string(str_translator(_trans("Question")));
|
||||
warn_caption = std::string(str_translator(_trans("Warning")));
|
||||
info_caption = str_translator(_trans("Information"));
|
||||
ques_caption = str_translator(_trans("Question"));
|
||||
warn_caption = str_translator(_trans("Warning"));
|
||||
}
|
||||
|
||||
switch(Style)
|
||||
|
@ -80,11 +80,9 @@ bool MsgAlert(bool yes_no, int Style, const char* format, ...)
|
|||
break;
|
||||
}
|
||||
|
||||
const char *tr_format = str_translator(format);
|
||||
|
||||
va_list args;
|
||||
va_start(args, format);
|
||||
CharArrayFromFormatV(buffer, 2047, tr_format, args);
|
||||
CharArrayFromFormatV(buffer, 2047, str_translator(format).c_str(), args);
|
||||
va_end(args);
|
||||
|
||||
ERROR_LOG(MASTER_LOG, "%s: %s", caption.c_str(), buffer);
|
||||
|
@ -113,7 +111,7 @@ bool DefaultMsgHandler(const char* caption, const char* text, bool yes_no, int S
|
|||
}
|
||||
|
||||
// Default (non) translator
|
||||
const char* DefaultStringTranslator(const char* text)
|
||||
std::string DefaultStringTranslator(const char* text)
|
||||
{
|
||||
return text;
|
||||
}
|
||||
|
|
|
@ -17,6 +17,9 @@
|
|||
|
||||
#ifndef _MSGHANDLER_H_
|
||||
#define _MSGHANDLER_H_
|
||||
|
||||
#include <string>
|
||||
|
||||
// Message alerts
|
||||
enum MSG_TYPE
|
||||
{
|
||||
|
@ -27,7 +30,7 @@ enum MSG_TYPE
|
|||
|
||||
typedef bool (*MsgAlertHandler)(const char* caption, const char* text,
|
||||
bool yes_no, int Style);
|
||||
typedef const char * (*StringTranslator)(const char* text);
|
||||
typedef std::string (*StringTranslator)(const char* text);
|
||||
|
||||
void RegisterMsgAlertHandler(MsgAlertHandler handler);
|
||||
void RegisterStringTranslator(StringTranslator translator);
|
||||
|
|
|
@ -56,7 +56,7 @@ END_EVENT_TABLE()
|
|||
|
||||
#include <wx/stdpaths.h>
|
||||
bool wxMsgAlert(const char*, const char*, bool, int);
|
||||
const char *wxStringTranslator(const char *);
|
||||
std::string wxStringTranslator(const char *);
|
||||
|
||||
CFrame* main_frame = NULL;
|
||||
|
||||
|
@ -471,12 +471,9 @@ bool wxMsgAlert(const char* caption, const char* text, bool yes_no, int /*Style*
|
|||
#endif
|
||||
}
|
||||
|
||||
const char *wxStringTranslator(const char *text)
|
||||
std::string wxStringTranslator(const char *text)
|
||||
{
|
||||
static char buffer[2048];
|
||||
snprintf(buffer, 2048, "%s",
|
||||
(const char *)wxString(wxGetTranslation(wxString::From8BitData(text))).ToUTF8());
|
||||
return buffer;
|
||||
return (const char *)wxString(wxGetTranslation(wxString::From8BitData(text))).ToUTF8();
|
||||
}
|
||||
|
||||
// Accessor for the main window class
|
||||
|
|
Loading…
Reference in New Issue