Fixed issue #40.

This commit is contained in:
WrinklyNinja
2013-08-09 22:50:26 +01:00
parent e06a8923ab
commit 2118886da2
2 changed files with 16 additions and 21 deletions
+4 -3
View File
@@ -225,8 +225,9 @@ bool BossGUI::OnInit() {
//Set the locale to get encoding and language conversions working correctly.
BOOST_LOG_TRIVIAL(debug) << "Initialising language settings.";
if (_settings["Language"]) {
string localeId = "";
wxLanguage lang;
//Defaults in case language string is empty.
string localeId = "en.UTF-8";
wxLanguage lang = wxLANGUAGE_ENGLISH;
if (_settings["Language"].as<string>() == "eng") {
localeId = "en.UTF-8";
lang = wxLANGUAGE_ENGLISH;
@@ -235,7 +236,7 @@ bool BossGUI::OnInit() {
localeId = "es.UTF-8";
lang = wxLANGUAGE_SPANISH;
BOOST_LOG_TRIVIAL(debug) << "Setting language to Spanish.";
} else if (_settings["Language"].as<string>() == "spa") {
} else if (_settings["Language"].as<string>() == "rus") {
localeId = "ru.UTF-8";
lang = wxLANGUAGE_RUSSIAN;
BOOST_LOG_TRIVIAL(debug) << "Setting language to Russian.";
+12 -18
View File
@@ -44,19 +44,13 @@ SettingsFrame::SettingsFrame(wxWindow *parent, const wxString& title, YAML::Node
Games.Add(FromUTF8(_games[i].Name()));
}
wxString Language[] = {
wxT("English"),
wxString::FromUTF8("Español"),
wxString::FromUTF8("Русский"),
};
//Initialise controls.
GameChoice = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, Games);
LanguageChoice = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 4, Language);
DebugVerbosityChoice = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 4, DebugVerbosity);
gamesList = new wxListView(this, LIST_Games, wxDefaultPosition, wxDefaultSize, wxLC_REPORT|wxLC_SINGLE_SEL);
addBtn = new wxButton(this, BUTTON_AddGame, translate("Add Game"));
editBtn = new wxButton(this, BUTTON_EditGame, translate("Edit Game"));
removeBtn = new wxButton(this, BUTTON_RemoveGame, translate("Remove Game"));
@@ -97,15 +91,15 @@ SettingsFrame::SettingsFrame(wxWindow *parent, const wxString& title, YAML::Node
GridSizer->Add(new wxStaticText(this, wxID_ANY, translate("Default Game:")), leftItem);
GridSizer->Add(GameChoice, rightItem);
GridSizer->Add(new wxStaticText(this, wxID_ANY, translate("Language:")), leftItem);
GridSizer->Add(LanguageChoice, rightItem);
GridSizer->Add(new wxStaticText(this, wxID_ANY, translate("Debug Verbosity:")), leftItem);
GridSizer->Add(DebugVerbosityChoice, rightItem);
bigBox->Add(GridSizer, 0, wxEXPAND|wxALL, 10);
bigBox->Add(gamesList, wholeItem);
wxBoxSizer * hbox2 = new wxBoxSizer(wxHORIZONTAL);
@@ -113,16 +107,16 @@ SettingsFrame::SettingsFrame(wxWindow *parent, const wxString& title, YAML::Node
hbox2->Add(editBtn, 0, wxLEFT|wxRIGHT, 5);
hbox2->Add(removeBtn, 0, wxLEFT, 5);
bigBox->Add(hbox2, 0, wxALIGN_RIGHT|wxBOTTOM|wxRIGHT, 10);
bigBox->Add(UpdateMasterlistBox, wholeItem);
bigBox->Add(reportViewBox, wholeItem);
bigBox->AddSpacer(10);
bigBox->AddStretchSpacer(1);
bigBox->Add(new wxStaticText(this, wxID_ANY, translate("Language and game changes will be applied after BOSS is restarted.")), wholeItem);
//Need to add 'OK' and 'Cancel' buttons.
wxSizer * sizer = CreateSeparatedButtonSizer(wxOK|wxCANCEL);
@@ -186,7 +180,7 @@ void SettingsFrame::SetDefaultValues() {
gamesList->SetItem(i, 5, FromUTF8(_games[i].GamePath().string()));
gamesList->SetItem(i, 6, FromUTF8(_games[i].RegistryKey()));
}
addBtn->Enable(true);
editBtn->Enable(false);
removeBtn->Enable(false);
@@ -213,7 +207,7 @@ void SettingsFrame::OnQuit(wxCommandEvent& event) {
for (size_t i=0,max=gamesList->GetItemCount(); i < max; ++i) {
string name, folder, master, url, path, registry;
unsigned int id;
name = gamesList->GetItemText(i, 0).ToUTF8();
folder = gamesList->GetItemText(i, 2).ToUTF8();
master = gamesList->GetItemText(i, 3).ToUTF8();
@@ -293,7 +287,7 @@ void SettingsFrame::OnAddGame(wxCommandEvent& event) {
return;
}
}
long i = gamesList->GetItemCount();
gamesList->InsertItem(i, rowDialog->GetName());
gamesList->SetItem(i, 1, FromUTF8(boss::Game(string(rowDialog->GetType().ToUTF8())).FolderName()));
@@ -341,7 +335,7 @@ void SettingsFrame::OnEditGame(wxCommandEvent& event) {
this);
return;
}
gamesList->SetItem(i, 0, rowDialog->GetName());
gamesList->SetItem(i, 1, FromUTF8(boss::Game(string(rowDialog->GetType().ToUTF8())).FolderName()));
gamesList->SetItem(i, 2, rowDialog->GetFolderName());