diff --git a/.gitignore b/.gitignore index 1fe47b70..6feed97f 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ *.out *.app .vs +.idea/ build/ out/ @@ -29,6 +30,7 @@ bin/Cemu.exe.backup bin/mlc01/* bin/settings.xml bin/title_list_cache.xml +bin/debugger/* !bin/shaderCache/info.txt bin/shaderCache/* diff --git a/dist/linux/info.cemu.Cemu.desktop b/dist/linux/info.cemu.Cemu.desktop index cddb8393..cb508afc 100644 --- a/dist/linux/info.cemu.Cemu.desktop +++ b/dist/linux/info.cemu.Cemu.desktop @@ -9,6 +9,7 @@ GenericName[fi]=Wii U -emulaattori GenericName[el]=Πρόγραμμα προσομοίωσης Wii U GenericName[es]=Emulador de Wii U GenericName[pt_BR]=Emulador de Wii U +GenericName[it]=Emulatore Wii U Comment=Software to emulate Wii U games and applications on PC Comment[fi]=Ohjelmisto Wii U -pelien ja sovellusten emulointiin PC:lla Comment[de]=Software zum emulieren von Wii U Spielen und Anwendungen auf dem PC @@ -18,7 +19,7 @@ Comment[nl]=Applicatie om Wii U spellen en applicaties te emuleren op PC Comment[el]=Πρόγραμμα προσομοίωσης παιχνιδιών και εφαρμογών Wii U στον υπολογιστή Comment[es]=Software para emular juegos y aplicaciones de Wii U en PC Comment[pt_BR]=Software para emular jogos e aplicativos de Wii U no PC -Comment[it]=Software per emulare giochi ed applicazioni del Wii U su PC +Comment[it]=Software per emulare giochi e applicazioni per Wii U su PC Categories=Game;Emulator; Keywords=Nintendo; MimeType=application/x-wii-u-rom; diff --git a/dist/linux/info.cemu.Cemu.metainfo.xml b/dist/linux/info.cemu.Cemu.metainfo.xml index 670e5dca..4fff800a 100644 --- a/dist/linux/info.cemu.Cemu.metainfo.xml +++ b/dist/linux/info.cemu.Cemu.metainfo.xml @@ -10,7 +10,7 @@ Πρόγραμμα προσομοίωσης παιχνιδιών και εφαρμογών Wii U στον υπολογιστή Software para emular juegos y aplicaciones de Wii U en PC Software para emular jogos e aplicativos de Wii U no PC - Software per emulare giochi ed applicazioni del Wii U su PC + Software per emulare giochi e applicazioni per Wii U su PC Ojelmisto Wii U -pelien ja -sovellusten emulointiin PC:llä Cemu Project info.cemu.Cemu.desktop @@ -24,7 +24,7 @@

Το Cemu είναι ένας προσομοιωτής της κονσόλας Nintendo Wii U που υποστηρίζει τεπίσημα παιχνίδια, καθώς και μη επίσημα προγράμματα ("homebrew"), για το Wii U. Δημιουργήθηκε από τον Exzap σε C/C++.

Cemu es un emulador de Nintendo Wii U que es capaz de ejecutar la mayoría de los juegos de Wii U y homebrew en un estado jugable. Creado por Exzap, y escrito en C y C++.

Cemu é um emulador de Nintendo Wii U que é capaz de executar a maioría dos jogos de Wii U e homebrew em um estado jogavel. Criado por Exzap, e escrito em C e C++.

-

Cemu è un emulatore del Nintendo Wii U capace di riprodurre la maggior parte dei giochi ed homebrew Wii U in stato giocabile. Creato da Exzap, e scritto in C/C++.

+

Cemu è un emulatore del Nintendo Wii U in grado di eseguire in stato giocabile la maggior parte dei giochi e homebrew per Wii U. Creato da Exzap, e scritto in C/C++.

Cemu on Wii U -emulaattori, joka pystyy toistamaan useimpia Wii U -pelejä ja homebrew'ta pelikelvollisesti. Luonut Exzap, kirjoitettu C:llä/C++:lla.

This emulator aims at providing both high-accuracy and performance, and is actively being developed with new features and fixes to increase compatibility, convenience and usability.

Dieser Emulator zielt darauf ab, sowohl hohe Genauigkeit als auch Leistung zu bieten, und wird aktiv mit neuen Funktionen und Korrekturen weiterentwickelt, um Kompatibilität, Komfort und Benutzerfreundlichkeit zu verbessern.

@@ -33,7 +33,7 @@

Ο προσομοιωτής αυτός στοχεύει τόσο στην ακρίβεια, όσο και στην ταχύτητα. Βελτιώνεται συνεχώς με νέες δυνατότητες και διορθώσεις που τον καθιστούν πιο βολικό, εύκολο στην χρήση και συμβατό με περισσότερα παιχνίδια.

Este emulador tiene como objetivo proporcionar tanto alta precisión como rendimiento y se desarrolla activamente con nuevas características y correcciones para mejorar la compatibilidad, la comodidad y la usabilidad.

Esse emulador visa proporcionar tanto alta precisão como rendimento e está sendo ativamente desenvolvido com novas características e correções para melhorar a compatibilidade, a comodidade e a usabilidade.

-

Questo emulatore ha l'obiettivo di fornire sia alta precisione che alte prestazioni, ed è in continuo sviluppo con nuove funzionalità e correzioni per aumentare la compatibilità, la comodità e la fuibilità.

+

Questo emulatore ha l'obiettivo di fornire sia alta precisione che alte prestazioni, ed è in continuo sviluppo con nuove funzionalità e correzioni per aumentare la compatibilità, la comodità e l'usabilità.

Tämä emulaattori pyrkii tarjoamaan korkeaa tarkkuutta sekä suorituskykyä, ja sitä kehitetään aktiivisesti uusilla ominaisuuksilla ja korjauksilla, jotka parantavat yhteensopivuutta, mukavuutta ja käytettävyyttä..

It was written from scratch and development on the project began roughly early 2015.

Er wird seit Anfang 2015 entwickelt.

@@ -42,7 +42,7 @@

Το Cemu βρίσκεται υπό ανάπτυξη από το 2015.

Fue escrito desde cero y el desarrollo del proyecto comenzó aproximadamente a principios de 2015.

Foi escrito do zero e o desenvolvimento do projeto começou aproximadamente a princípio de 2015.

-

È stato scritto da zero e lo sviluppo del progetto è iniziato circa all'inizio del 2015.

+

È stato scritto da zero e lo sviluppo del progetto è cominciato intorno all'inizio del 2015.

Se kirjoitettiin tyhjästä ja sen kehitys alkoi suunnilleen vuoden 2015 alussa.

diff --git a/src/audio/audioDebuggerWindow.cpp b/src/audio/audioDebuggerWindow.cpp index 9cdb78d8..41107820 100644 --- a/src/audio/audioDebuggerWindow.cpp +++ b/src/audio/audioDebuggerWindow.cpp @@ -22,7 +22,7 @@ EVT_CLOSE(AudioDebuggerWindow::OnClose) wxEND_EVENT_TABLE() AudioDebuggerWindow::AudioDebuggerWindow(wxFrame& parent) - : wxFrame(&parent, wxID_ANY, wxT("AX voice viewer"), wxDefaultPosition, wxSize(1126, 580), wxCLOSE_BOX | wxCLIP_CHILDREN | wxCAPTION | wxRESIZE_BORDER) + : wxFrame(&parent, wxID_ANY, _("AX voice viewer"), wxDefaultPosition, wxSize(1126, 580), wxCLOSE_BOX | wxCLIP_CHILDREN | wxCAPTION | wxRESIZE_BORDER) { wxPanel* mainPane = new wxPanel(this); diff --git a/src/gui/ChecksumTool.cpp b/src/gui/ChecksumTool.cpp index 1c1e30a2..74422c9b 100644 --- a/src/gui/ChecksumTool.cpp +++ b/src/gui/ChecksumTool.cpp @@ -141,13 +141,13 @@ ChecksumTool::ChecksumTool(wxWindow* parent, wxTitleManagerList::TitleEntry& ent box_sizer->Add(m_verify_online, 0, wxALL | wxEXPAND, 5); m_verify_local = new wxButton(box, wxID_ANY, _("Verify with local file")); - m_verify_online->SetToolTip(_("Verifies the checksum with a local json file you can select")); + m_verify_online->SetToolTip(_("Verifies the checksum with a local JSON file you can select")); m_verify_local->Disable(); m_verify_local->Bind(wxEVT_BUTTON, &ChecksumTool::OnVerifyLocal, this); box_sizer->Add(m_verify_local, 0, wxALL | wxEXPAND, 5); m_export_button = new wxButton(box, wxID_ANY, _("Export")); - m_verify_online->SetToolTip(_("Export the title checksum data to a local json file")); + m_verify_online->SetToolTip(_("Export the title checksum data to a local JSON file")); m_export_button->Disable(); m_export_button->Bind(wxEVT_BUTTON, &ChecksumTool::OnExportChecksums, this); box_sizer->Add(m_export_button, 0, wxALL | wxEXPAND, 5); @@ -477,7 +477,7 @@ void ChecksumTool::VerifyJsonEntry(const rapidjson::Document& doc) { if (test_entry.wud_hash.empty()) { - wxMessageBox(_("The verification data doesn't include a wud hash!"), _("Error"), wxOK | wxCENTRE | wxICON_WARNING, this); + wxMessageBox(_("The verification data doesn't include a WUD hash!"), _("Error"), wxOK | wxCENTRE | wxICON_WARNING, this); return; } if(!boost::iequals(test_entry.wud_hash, m_json_entry.wud_hash)) @@ -708,7 +708,7 @@ void ChecksumTool::DoWork() EVP_DigestUpdate(sha256, buffer.data(), read); - wxQueueEvent(this, new wxSetGaugeValue((int)((offset * 90) / wud_size), m_progress, m_status, wxStringFormat2(_("Reading game image: {}/{}kb"), offset / 1024, wud_size / 1024))); + wxQueueEvent(this, new wxSetGaugeValue((int)((offset * 90) / wud_size), m_progress, m_status, wxStringFormat2(_("Reading game image: {0}/{1} kB"), offset / 1024, wud_size / 1024))); } while (read != 0 && size > 0); wud_close(wud); diff --git a/src/gui/GameProfileWindow.cpp b/src/gui/GameProfileWindow.cpp index d3cd28d4..f710988f 100644 --- a/src/gui/GameProfileWindow.cpp +++ b/src/gui/GameProfileWindow.cpp @@ -116,7 +116,7 @@ GameProfileWindow::GameProfileWindow(wxWindow* parent, uint64_t title_id) m_graphic_api = new wxChoice(panel, wxID_ANY, wxDefaultPosition, wxDefaultSize, (int)std::size(gapi_values), gapi_values); first_row->Add(m_graphic_api, 0, wxALL, 5); - first_row->Add(new wxStaticText(panel, wxID_ANY, _("Shader mul accuracy")), 0, wxALIGN_CENTER_VERTICAL | wxALL, 5); + first_row->Add(new wxStaticText(panel, wxID_ANY, _("Shader multiplication accuracy")), 0, wxALIGN_CENTER_VERTICAL | wxALL, 5); wxString mul_values[] = { _("false"), _("true"), _("minimal") }; m_shader_mul_accuracy = new wxChoice(panel, wxID_ANY, wxDefaultPosition, wxDefaultSize, (int)std::size(mul_values), mul_values); diff --git a/src/gui/GameUpdateWindow.cpp b/src/gui/GameUpdateWindow.cpp index f8d9bf61..a42d4087 100644 --- a/src/gui/GameUpdateWindow.cpp +++ b/src/gui/GameUpdateWindow.cpp @@ -166,13 +166,13 @@ GameUpdateWindow::GameUpdateWindow(wxWindow& parent, const fs::path& filePath) TitleIdParser tip(GetTitleId()); if (tip.GetType() == TitleIdParser::TITLE_TYPE::AOC) - SetTitle(_("Installing DLC ...")); + SetTitle(_("Installing DLC...")); else if (tip.GetType() == TitleIdParser::TITLE_TYPE::BASE_TITLE_UPDATE) - SetTitle(_("Installing update ...")); + SetTitle(_("Installing update...")); else if (tip.IsSystemTitle()) - SetTitle(_("Installing system title ...")); + SetTitle(_("Installing system title...")); else - SetTitle(_("Installing title ...")); + SetTitle(_("Installing title...")); m_processBar = new wxGauge(this, wxID_ANY, 100, wxDefaultPosition, wxSize(500, 20), wxGA_HORIZONTAL); m_processBar->SetValue(0); diff --git a/src/gui/MainWindow.cpp b/src/gui/MainWindow.cpp index e26b31e3..ff5be4f2 100644 --- a/src/gui/MainWindow.cpp +++ b/src/gui/MainWindow.cpp @@ -587,10 +587,10 @@ void MainWindow::OnFileMenu(wxCommandEvent& event) "|{}|*.wua" "|{}|*.rpx;*.elf" "|{}|*", - _("All Wii U files (wud, wux, wua, iso, rpx, elf)"), - _("Wii U image (wud, wux, iso, wad)"), - _("Wii U archive (wua)"), - _("Wii U executable (rpx, elf)"), + _("All Wii U files (*.wud, *.wux, *.wua, *.iso, *.rpx, *.elf)"), + _("Wii U image (*.wud, *.wux, *.iso, *.wad)"), + _("Wii U archive (*.wua)"), + _("Wii U executable (*.rpx, *.elf)"), _("All files (*.*)") ); @@ -1770,7 +1770,7 @@ class CemuAboutDialog : public wxDialog { public: CemuAboutDialog(wxWindow* parent = NULL) - : wxDialog(NULL, wxID_ANY, "About Cemu", wxDefaultPosition, wxSize(500, 700)) + : wxDialog(NULL, wxID_ANY, _("About Cemu"), wxDefaultPosition, wxSize(500, 700)) { Create(parent); } @@ -1804,8 +1804,7 @@ public: void AddHeaderInfo(wxWindow* parent, wxSizer* sizer) { - char versionString[512]; - sprintf(versionString, "Cemu\nVersion %s\nCompiled " BUILD_DATE "\nOriginal authors: Exzap, Petergov", BUILD_VERSION_STRING); + auto versionString = fmt::format(_("Cemu\nVersion {0}\nCompiled on {1}\nOriginal authors: {2}").ToStdString(), BUILD_VERSION_STRING, BUILD_DATE, "Exzap, Petergov"); sizer->Add(new wxStaticText(parent, wxID_ANY, versionString), wxSizerFlags().Border(wxALL, 3).Border(wxTOP, 10)); sizer->Add(new wxHyperlinkCtrl(parent, -1, "https://cemu.info", "https://cemu.info"), wxSizerFlags().Expand().Border(wxTOP | wxBOTTOM, 3)); @@ -1814,7 +1813,7 @@ public: sizer->Add(new wxStaticLine(parent), wxSizerFlags().Expand().Border(wxRIGHT, 4)); sizer->AddSpacer(5); - wxString extraInfo("" EMULATOR_NAME " is a Wii U emulator.\n\nWii and Wii U are trademarks of Nintendo.\n" EMULATOR_NAME " is not affiliated with Nintendo."); + wxString extraInfo(_("Cemu is a Wii U emulator.\n\nWii and Wii U are trademarks of Nintendo.\nCemu is not affiliated with Nintendo.")); sizer->Add(new wxStaticText(parent, wxID_ANY, extraInfo), wxSizerFlags()); } @@ -1824,7 +1823,7 @@ public: sizer->Add(new wxStaticLine(parent), wxSizerFlags().Expand().Border(wxRIGHT, 4)); sizer->AddSpacer(3); - sizer->Add(new wxStaticText(parent, wxID_ANY, "Used libraries and utilities:"), wxSizerFlags().Expand().Border(wxTOP | wxBOTTOM, 2)); + sizer->Add(new wxStaticText(parent, wxID_ANY, _("Used libraries and utilities:")), wxSizerFlags().Expand().Border(wxTOP | wxBOTTOM, 2)); // zLib { wxSizer* lineSizer = new wxBoxSizer(wxHORIZONTAL); @@ -1965,7 +1964,7 @@ public: sizer->AddSpacer(2); - sizer->Add(new wxStaticText(parent, wxID_ANY, "Thanks to our Patreon supporters:"), wxSizerFlags().Expand().Border(wxTOP | wxBOTTOM, 2)); + sizer->Add(new wxStaticText(parent, wxID_ANY, _("Thanks to our Patreon supporters:")), wxSizerFlags().Expand().Border(wxTOP | wxBOTTOM, 2)); std::vector patreonSupporterNames{ "Maufeat", "lvlv", "F34R", "John Godgames", "Jameel Lewis", "skooks", "Cheesy", "Barrowsx", "Mored1984", "madmat007" , "Kuhnnl", "Owen M", "lucianobugalu", "KimoMaka", "nick palma aka renaissance18", "TheGiantBros", "SpiGAndromeda" @@ -1995,7 +1994,7 @@ public: sizer->Add(gridSizer, 1, wxEXPAND); sizer->AddSpacer(2); - sizer->Add(new wxStaticText(parent, wxID_ANY, "Special thanks:"), wxSizerFlags().Expand().Border(wxTOP, 2)); + sizer->Add(new wxStaticText(parent, wxID_ANY, _("Special thanks:")), wxSizerFlags().Expand().Border(wxTOP, 2)); sizer->Add(new wxStaticText(parent, wxID_ANY, "espes - Also try XQEMU!\nWaltzz92"), wxSizerFlags().Expand().Border(wxTOP, 1)); } @@ -2038,8 +2037,8 @@ void MainWindow::RecreateMenu() if (!m_game_launched) { - m_loadMenuItem = m_fileMenu->Append(MAINFRAME_MENU_ID_FILE_LOAD, _("&Load")); - m_installUpdateMenuItem = m_fileMenu->Append(MAINFRAME_MENU_ID_FILE_INSTALL_UPDATE, _("&Install game title, update or DLC")); + m_loadMenuItem = m_fileMenu->Append(MAINFRAME_MENU_ID_FILE_LOAD, _("&Load...")); + m_installUpdateMenuItem = m_fileMenu->Append(MAINFRAME_MENU_ID_FILE_INSTALL_UPDATE, _("&Install game title, update or DLC...")); sint32 recentFileIndex = 0; m_fileMenuSeparator0 = nullptr; diff --git a/src/gui/MemorySearcherTool.cpp b/src/gui/MemorySearcherTool.cpp index f86bf462..c7c6c734 100644 --- a/src/gui/MemorySearcherTool.cpp +++ b/src/gui/MemorySearcherTool.cpp @@ -84,12 +84,12 @@ MemorySearcherTool::MemorySearcherTool(wxFrame* parent) { wxListItem col0; col0.SetId(0); - col0.SetText(_("address")); + col0.SetText(_("Address")); col0.SetWidth(100); m_listResults->InsertColumn(0, col0); wxListItem col1; col1.SetId(1); - col1.SetText(_("value")); + col1.SetText(_("Value")); col1.SetWidth(250); m_listResults->InsertColumn(1, col1); } @@ -99,11 +99,11 @@ MemorySearcherTool::MemorySearcherTool(wxFrame* parent) m_listEntryTable->Bind(wxEVT_DATAVIEW_ITEM_CONTEXT_MENU, &MemorySearcherTool::OnEntryListRightClick, this); m_listEntryTable->Bind(wxEVT_COMMAND_DATAVIEW_ITEM_EDITING_DONE, &MemorySearcherTool::OnItemEdited, this); { - m_listEntryTable->AppendTextColumn(_("description"), wxDATAVIEW_CELL_EDITABLE, 150, wxALIGN_LEFT, wxDATAVIEW_COL_SORTABLE); - m_listEntryTable->AppendTextColumn(_("address"), wxDATAVIEW_CELL_INERT, 100, wxALIGN_LEFT, wxDATAVIEW_COL_SORTABLE); - m_listEntryTable->AppendTextColumn(_("type")); - m_listEntryTable->AppendTextColumn(_("value"), wxDATAVIEW_CELL_EDITABLE); - m_listEntryTable->AppendToggleColumn(_("freeze"), wxDATAVIEW_CELL_ACTIVATABLE, 50, wxALIGN_LEFT, 0); + m_listEntryTable->AppendTextColumn(_("Description"), wxDATAVIEW_CELL_EDITABLE, 150, wxALIGN_LEFT, wxDATAVIEW_COL_SORTABLE); + m_listEntryTable->AppendTextColumn(_("Address"), wxDATAVIEW_CELL_INERT, 100, wxALIGN_LEFT, wxDATAVIEW_COL_SORTABLE); + m_listEntryTable->AppendTextColumn(_("Type")); + m_listEntryTable->AppendTextColumn(_("Value"), wxDATAVIEW_CELL_EDITABLE); + m_listEntryTable->AppendToggleColumn(_("Freeze"), wxDATAVIEW_CELL_ACTIVATABLE, 50, wxALIGN_LEFT, 0); } row2->AddGrowableRow(3); diff --git a/src/gui/PadViewFrame.cpp b/src/gui/PadViewFrame.cpp index 89a85297..ba020b5f 100644 --- a/src/gui/PadViewFrame.cpp +++ b/src/gui/PadViewFrame.cpp @@ -21,7 +21,7 @@ extern WindowInfo g_window_info; PadViewFrame::PadViewFrame(wxFrame* parent) - : wxFrame(nullptr, wxID_ANY, "GamePad View", wxDefaultPosition, wxSize(854, 480), wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxCLOSE_BOX | wxWANTS_CHARS) + : wxFrame(nullptr, wxID_ANY, _("GamePad View"), wxDefaultPosition, wxSize(854, 480), wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxCLOSE_BOX | wxWANTS_CHARS) { gui_initHandleContextFromWxWidgetsWindow(g_window_info.window_pad, this); diff --git a/src/gui/TitleManager.cpp b/src/gui/TitleManager.cpp index 47d7a6dd..370786b6 100644 --- a/src/gui/TitleManager.cpp +++ b/src/gui/TitleManager.cpp @@ -121,7 +121,7 @@ wxPanel* TitleManager::CreateTitleManagerPage() auto* save_delete = new wxButton(m_save_panel, wxID_ANY, _("Delete")); save_delete->Bind(wxEVT_BUTTON, &TitleManager::OnSaveDelete, this); - save_delete->SetToolTip(_("Irrevocable delete the save entry ")); + save_delete->SetToolTip(_("Permanently delete the save entry")); save_delete->Disable(); save_sizer->Add(save_delete, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5); @@ -328,7 +328,7 @@ void TitleManager::OnTitleSearchComplete(wxCommandEvent& event) } // update status bar text m_title_list->SortEntries(-1); - m_status_bar->SetStatusText(wxStringFormat2(_("Found {} titles, {} updates, {} DLCs and {} save entries"), + m_status_bar->SetStatusText(wxStringFormat2(_("Found {0} games, {1} updates, {2} DLCs and {3} save entries"), m_title_list->GetCountByType(wxTitleManagerList::EntryType::Base) + m_title_list->GetCountByType(wxTitleManagerList::EntryType::System), m_title_list->GetCountByType(wxTitleManagerList::EntryType::Update), m_title_list->GetCountByType(wxTitleManagerList::EntryType::Dlc), @@ -680,7 +680,7 @@ void TitleManager::OnSaveExport(wxCommandEvent& event) auto* metabuff = zip_source_buffer(zip, metacontent.data(), metacontent.size(), 0); if(zip_file_add(zip, "cemu_meta", metabuff, ZIP_FL_ENC_UTF_8) < 0) { - const auto error_msg = wxStringFormat2(_("Error when trying to add a cemu_meta to the zip:\n{}"), zip_strerror(zip)); + const auto error_msg = wxStringFormat2(_("Error when trying to add cemu_meta file to the zip:\n{}"), zip_strerror(zip)); wxMessageBox(error_msg, _("Error"), wxOK | wxCENTRE | wxICON_ERROR, this); zip_source_free(metabuff); diff --git a/src/gui/components/wxDownloadManagerList.cpp b/src/gui/components/wxDownloadManagerList.cpp index a002352a..29e2c262 100644 --- a/src/gui/components/wxDownloadManagerList.cpp +++ b/src/gui/components/wxDownloadManagerList.cpp @@ -91,7 +91,7 @@ void wxDownloadManagerList::AddColumns() { wxListItem col0; col0.SetId(ColumnTitleId); - col0.SetText(_("Title id")); + col0.SetText(_("Title ID")); col0.SetWidth(120); InsertColumn(ColumnTitleId, col0); diff --git a/src/gui/components/wxTitleManagerList.cpp b/src/gui/components/wxTitleManagerList.cpp index 883472d1..9ac31bce 100644 --- a/src/gui/components/wxTitleManagerList.cpp +++ b/src/gui/components/wxTitleManagerList.cpp @@ -123,7 +123,7 @@ void wxTitleManagerList::AddColumns() { wxListItem col0; col0.SetId(ColumnTitleId); - col0.SetText(_("Title id")); + col0.SetText(_("Title ID")); col0.SetWidth(120); InsertColumn(ColumnTitleId, col0); diff --git a/src/gui/debugger/BreakpointWindow.cpp b/src/gui/debugger/BreakpointWindow.cpp index ef4eec9a..ecb77428 100644 --- a/src/gui/debugger/BreakpointWindow.cpp +++ b/src/gui/debugger/BreakpointWindow.cpp @@ -25,7 +25,7 @@ enum ItemColumns }; BreakpointWindow::BreakpointWindow(DebuggerWindow2& parent, const wxPoint& main_position, const wxSize& main_size) - : wxFrame(&parent, wxID_ANY, "Breakpoints", wxDefaultPosition, wxSize(420, 250), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT) + : wxFrame(&parent, wxID_ANY, _("Breakpoints"), wxDefaultPosition, wxSize(420, 250), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT) { this->SetSizeHints(wxDefaultSize, wxDefaultSize); diff --git a/src/gui/debugger/DebuggerWindow2.cpp b/src/gui/debugger/DebuggerWindow2.cpp index 7465c712..cca9bfb8 100644 --- a/src/gui/debugger/DebuggerWindow2.cpp +++ b/src/gui/debugger/DebuggerWindow2.cpp @@ -267,7 +267,7 @@ void DebuggerWindow2::LoadModuleStorage(const RPLModule* module) } DebuggerWindow2::DebuggerWindow2(wxFrame& parent, const wxRect& display_size) - : wxFrame(&parent, wxID_ANY, wxT("PPC Debugger"), wxDefaultPosition, wxSize(1280, 300), wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxSYSTEM_MENU | wxCAPTION | wxCLOSE_BOX | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT), + : wxFrame(&parent, wxID_ANY, _("PPC Debugger"), wxDefaultPosition, wxSize(1280, 300), wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxSYSTEM_MENU | wxCAPTION | wxCLOSE_BOX | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT), m_module_address(0) { this->wxWindowBase::SetBackgroundColour(*wxWHITE); diff --git a/src/gui/debugger/DumpWindow.cpp b/src/gui/debugger/DumpWindow.cpp index 06dba7df..35c9d2c8 100644 --- a/src/gui/debugger/DumpWindow.cpp +++ b/src/gui/debugger/DumpWindow.cpp @@ -15,7 +15,7 @@ enum }; DumpWindow::DumpWindow(DebuggerWindow2& parent, const wxPoint& main_position, const wxSize& main_size) - : wxFrame(&parent, wxID_ANY, wxT("Memory Dump"), wxDefaultPosition, wxSize(600, 250), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT) + : wxFrame(&parent, wxID_ANY, _("Memory Dump"), wxDefaultPosition, wxSize(600, 250), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT) { this->wxWindowBase::SetBackgroundColour(*wxWHITE); diff --git a/src/gui/debugger/ModuleWindow.cpp b/src/gui/debugger/ModuleWindow.cpp index 6e24c41f..c24517bd 100644 --- a/src/gui/debugger/ModuleWindow.cpp +++ b/src/gui/debugger/ModuleWindow.cpp @@ -20,7 +20,7 @@ enum ItemColumns }; ModuleWindow::ModuleWindow(DebuggerWindow2& parent, const wxPoint& main_position, const wxSize& main_size) - : wxFrame(&parent, wxID_ANY, "Modules", wxDefaultPosition, wxSize(420, 250), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT) + : wxFrame(&parent, wxID_ANY, _("Modules"), wxDefaultPosition, wxSize(420, 250), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT) { this->SetSizeHints(wxDefaultSize, wxDefaultSize); diff --git a/src/gui/debugger/RegisterWindow.cpp b/src/gui/debugger/RegisterWindow.cpp index b01e2040..986640a4 100644 --- a/src/gui/debugger/RegisterWindow.cpp +++ b/src/gui/debugger/RegisterWindow.cpp @@ -28,7 +28,7 @@ enum }; RegisterWindow::RegisterWindow(DebuggerWindow2& parent, const wxPoint& main_position, const wxSize& main_size) - : wxFrame(&parent, wxID_ANY, "Register View", wxDefaultPosition, wxSize(400, 975), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT), + : wxFrame(&parent, wxID_ANY, _("Register View"), wxDefaultPosition, wxSize(400, 975), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT), m_prev_snapshot({}), m_show_double_values(true), m_context_ctrl(nullptr) { SetSizeHints(wxDefaultSize, wxDefaultSize); @@ -75,7 +75,7 @@ RegisterWindow::RegisterWindow(DebuggerWindow2& parent, const wxPoint& main_posi sizer->Add(gpr_sizer, 1, wxEXPAND); - auto button = new wxButton(scrolled_win, wxID_ANY, "FP view mode"); + auto button = new wxButton(scrolled_win, wxID_ANY, _("FP view mode")); button->Bind(wxEVT_BUTTON, &RegisterWindow::OnFPViewModePress, this); sizer->Add(button, 0, wxALL, 5); diff --git a/src/gui/debugger/SymbolWindow.cpp b/src/gui/debugger/SymbolWindow.cpp index 7ef0c100..7327d7f4 100644 --- a/src/gui/debugger/SymbolWindow.cpp +++ b/src/gui/debugger/SymbolWindow.cpp @@ -13,7 +13,7 @@ enum ItemColumns }; SymbolWindow::SymbolWindow(DebuggerWindow2& parent, const wxPoint& main_position, const wxSize& main_size) - : wxFrame(&parent, wxID_ANY, wxT("Symbol Window"), wxDefaultPosition, wxSize(600, 250), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT) + : wxFrame(&parent, wxID_ANY, _("Symbol Window"), wxDefaultPosition, wxSize(600, 250), wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER | wxFRAME_FLOAT_ON_PARENT) { this->wxWindowBase::SetBackgroundColour(*wxWHITE); diff --git a/src/gui/dialogs/SaveImport/SaveImportWindow.cpp b/src/gui/dialogs/SaveImport/SaveImportWindow.cpp index 188d618d..bfdb00b4 100644 --- a/src/gui/dialogs/SaveImport/SaveImportWindow.cpp +++ b/src/gui/dialogs/SaveImport/SaveImportWindow.cpp @@ -31,7 +31,7 @@ SaveImportWindow::SaveImportWindow(wxWindow* parent, uint64 title_id) row1->Add(new wxStaticText(this, wxID_ANY, _("Source")), 0, wxALIGN_CENTER_VERTICAL | wxALL, 5); m_source_selection = new wxFilePickerCtrl(this, wxID_ANY, wxEmptyString, _("Select a zipped save file"), - wxStringFormat2(_("Import save entry {}"), "(*.zip)|*.zip")); + wxStringFormat2("{}|*.zip", _("Save entry (*.zip)"))); m_source_selection->SetMinSize({ 270, -1 }); row1->Add(m_source_selection, 1, wxALL | wxEXPAND, 5); diff --git a/src/gui/input/InputSettings2.cpp b/src/gui/input/InputSettings2.cpp index 62a7045a..5793cbd2 100644 --- a/src/gui/input/InputSettings2.cpp +++ b/src/gui/input/InputSettings2.cpp @@ -35,9 +35,6 @@ bool g_inputConfigWindowHasFocus = false; -// _("") -const wxString kDefaultProfileName = ""; - using wxTypeData = wxCustomData; using wxControllerData = wxCustomData; @@ -149,7 +146,7 @@ wxWindow* InputSettings2::initialize_page(size_t index) { // profile sizer->Add(new wxStaticText(page, wxID_ANY, _("Profile"), wxDefaultPosition, wxDefaultSize, 0), wxGBPosition(0, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxALL, 5); - auto* profiles = new wxComboBox(page, wxID_ANY, _(kDefaultProfileName)); + auto* profiles = new wxComboBox(page, wxID_ANY, kDefaultProfileName); sizer->Add(profiles, wxGBPosition(0, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxALL | wxEXPAND, 5); if (emulated_controller && emulated_controller->has_profile_name()) @@ -678,7 +675,7 @@ void InputSettings2::on_profile_delete(wxCommandEvent& event) const fs::path path = ActiveSettings::GetPath(fmt::format("controllerProfiles/{}.xml", selection)); fs::remove(path); - profile_names->ChangeValue(_(kDefaultProfileName)); + profile_names->ChangeValue(kDefaultProfileName); text->SetLabelText(_("profile deleted")); text->SetForegroundColour(wxTheColourDatabase->Find("SUCCESS")); diff --git a/src/gui/input/InputSettings2.h b/src/gui/input/InputSettings2.h index f6305ff4..01313653 100644 --- a/src/gui/input/InputSettings2.h +++ b/src/gui/input/InputSettings2.h @@ -18,6 +18,8 @@ public: ~InputSettings2(); private: + const wxString kDefaultProfileName = _(""); + wxNotebook* m_notebook; wxTimer* m_timer; diff --git a/src/gui/windows/PPCThreadsViewer/DebugPPCThreadsWindow.cpp b/src/gui/windows/PPCThreadsViewer/DebugPPCThreadsWindow.cpp index 26390a6c..0c10f325 100644 --- a/src/gui/windows/PPCThreadsViewer/DebugPPCThreadsWindow.cpp +++ b/src/gui/windows/PPCThreadsViewer/DebugPPCThreadsWindow.cpp @@ -45,67 +45,67 @@ DebugPPCThreadsWindow::DebugPPCThreadsWindow(wxFrame& parent) // add columns wxListItem col0; col0.SetId(0); - col0.SetText(_("Address")); + col0.SetText("Address"); col0.SetWidth(75); m_thread_list->InsertColumn(0, col0); wxListItem col1; col1.SetId(1); - col1.SetText(_("Entry")); + col1.SetText("Entry"); col1.SetWidth(75); m_thread_list->InsertColumn(1, col1); wxListItem col2; col2.SetId(2); - col2.SetText(_("Stack")); + col2.SetText("Stack"); col2.SetWidth(145); m_thread_list->InsertColumn(2, col2); wxListItem col3; col3.SetId(3); - col3.SetText(_("PC")); + col3.SetText("PC"); col3.SetWidth(120); m_thread_list->InsertColumn(3, col3); wxListItem colLR; colLR.SetId(4); - colLR.SetText(_("LR")); + colLR.SetText("LR"); colLR.SetWidth(75); m_thread_list->InsertColumn(4, colLR); wxListItem col4; col4.SetId(5); - col4.SetText(_("State")); + col4.SetText("State"); col4.SetWidth(90); m_thread_list->InsertColumn(5, col4); wxListItem col5; col5.SetId(6); - col5.SetText(_("Affinity")); + col5.SetText("Affinity"); col5.SetWidth(70); m_thread_list->InsertColumn(6, col5); wxListItem colPriority; colPriority.SetId(7); - colPriority.SetText(_("Priority")); + colPriority.SetText("Priority"); colPriority.SetWidth(80); m_thread_list->InsertColumn(7, colPriority); wxListItem col6; col6.SetId(8); - col6.SetText(_("SliceStart")); + col6.SetText("SliceStart"); col6.SetWidth(110); m_thread_list->InsertColumn(8, col6); wxListItem col7; col7.SetId(9); - col7.SetText(_("SumWakeTime")); + col7.SetText("SumWakeTime"); col7.SetWidth(110); m_thread_list->InsertColumn(9, col7); wxListItem col8; col8.SetId(10); - col8.SetText(_("ThreadName")); + col8.SetText("ThreadName"); col8.SetWidth(180); m_thread_list->InsertColumn(10, col8); wxListItem col9; col9.SetId(11); - col9.SetText(_("GPR")); + col9.SetText("GPR"); col9.SetWidth(180); m_thread_list->InsertColumn(11, col9); wxListItem col10; col10.SetId(12); - col10.SetText(_("Extra info")); + col10.SetText("Extra info"); col10.SetWidth(180); m_thread_list->InsertColumn(12, col10); diff --git a/src/gui/windows/TextureRelationViewer/TextureRelationWindow.cpp b/src/gui/windows/TextureRelationViewer/TextureRelationWindow.cpp index 5a42691e..718bca3a 100644 --- a/src/gui/windows/TextureRelationViewer/TextureRelationWindow.cpp +++ b/src/gui/windows/TextureRelationViewer/TextureRelationWindow.cpp @@ -51,57 +51,57 @@ TextureRelationViewerWindow::TextureRelationViewerWindow(wxFrame& parent) wxListItem col0; sint32 columnIndex = 0; col0.SetId(columnIndex); columnIndex++; - col0.SetText(_("Type")); + col0.SetText("Type"); col0.SetWidth(85); textureRelationListA->InsertColumn(columnIndex-1, col0); wxListItem col1; col1.SetId(columnIndex); columnIndex++; - col1.SetText(_("PhysAddr")); + col1.SetText("PhysAddr"); col1.SetWidth(80); textureRelationListA->InsertColumn(columnIndex-1, col1); wxListItem col2; col2.SetId(columnIndex); columnIndex++; - col2.SetText(_("Dim")); + col2.SetText("Dim"); col2.SetWidth(80); textureRelationListA->InsertColumn(columnIndex-1, col2); wxListItem col3; col3.SetId(columnIndex); columnIndex++; - col3.SetText(_("Resolution")); + col3.SetText("Resolution"); col3.SetWidth(110); textureRelationListA->InsertColumn(columnIndex-1, col3); wxListItem col5; col5.SetId(columnIndex); columnIndex++; - col5.SetText(_("Format")); + col5.SetText("Format"); col5.SetWidth(70); textureRelationListA->InsertColumn(columnIndex-1, col5); wxListItem colPriority; colPriority.SetId(columnIndex); columnIndex++; - colPriority.SetText(_("Pitch")); + colPriority.SetText("Pitch"); colPriority.SetWidth(80); textureRelationListA->InsertColumn(columnIndex-1, colPriority); wxListItem col6; col6.SetId(columnIndex); columnIndex++; - col6.SetText(_("Tilemode")); + col6.SetText("Tilemode"); col6.SetWidth(80); textureRelationListA->InsertColumn(columnIndex-1, col6); wxListItem col7; col7.SetId(columnIndex); columnIndex++; - col7.SetText(_("SliceRange")); + col7.SetText("SliceRange"); col7.SetWidth(90); textureRelationListA->InsertColumn(columnIndex-1, col7); wxListItem col8; col8.SetId(columnIndex); columnIndex++; - col8.SetText(_("MipRange")); + col8.SetText("MipRange"); col8.SetWidth(90); textureRelationListA->InsertColumn(columnIndex-1, col8); wxListItem colAge; colAge.SetId(columnIndex); columnIndex++; - colAge.SetText(_("Last access")); + colAge.SetText("Last access"); colAge.SetWidth(90); textureRelationListA->InsertColumn(columnIndex - 1, colAge); wxListItem colOverwriteRes; colOverwriteRes.SetId(columnIndex); columnIndex++; - colOverwriteRes.SetText(_("OverwriteRes")); + colOverwriteRes.SetText("OverwriteRes"); colOverwriteRes.SetWidth(110); textureRelationListA->InsertColumn(columnIndex - 1, colOverwriteRes);