Merge pull request #5817 from JosJuice/qt-strings-match-wx
Make DolphinQt2 strings more like DolphinWX strings
This commit is contained in:
commit
5c29ea54c5
|
@ -43,8 +43,11 @@ Turntable::Turntable(ExtensionReg& reg) : Attachment(_trans("Turntable"), reg)
|
||||||
m_buttons->controls.emplace_back(new ControllerEmu::Input(turntable_button_name));
|
m_buttons->controls.emplace_back(new ControllerEmu::Input(turntable_button_name));
|
||||||
|
|
||||||
// turntables
|
// turntables
|
||||||
groups.emplace_back(m_left_table = new ControllerEmu::Slider(_trans("Table Left")));
|
// i18n: "Table" refers to a turntable
|
||||||
groups.emplace_back(m_right_table = new ControllerEmu::Slider(_trans("Table Right")));
|
groups.emplace_back(m_left_table = new ControllerEmu::Slider("Table Left", _trans("Left Table")));
|
||||||
|
groups.emplace_back(m_right_table =
|
||||||
|
// i18n: "Table" refers to a turntable
|
||||||
|
new ControllerEmu::Slider("Table Right", _trans("Right Table")));
|
||||||
|
|
||||||
// stick
|
// stick
|
||||||
groups.emplace_back(
|
groups.emplace_back(
|
||||||
|
|
|
@ -242,23 +242,23 @@ void Shutdown()
|
||||||
const std::array<HotkeyGroupInfo, NUM_HOTKEY_GROUPS> groups_info = {
|
const std::array<HotkeyGroupInfo, NUM_HOTKEY_GROUPS> groups_info = {
|
||||||
{{_trans("General"), HK_OPEN, HK_EXIT},
|
{{_trans("General"), HK_OPEN, HK_EXIT},
|
||||||
{_trans("Volume"), HK_VOLUME_DOWN, HK_VOLUME_TOGGLE_MUTE},
|
{_trans("Volume"), HK_VOLUME_DOWN, HK_VOLUME_TOGGLE_MUTE},
|
||||||
{_trans("Emulation speed"), HK_DECREASE_EMULATION_SPEED, HK_TOGGLE_THROTTLE},
|
{_trans("Emulation Speed"), HK_DECREASE_EMULATION_SPEED, HK_TOGGLE_THROTTLE},
|
||||||
{_trans("Frame advance"), HK_FRAME_ADVANCE, HK_FRAME_ADVANCE_RESET_SPEED},
|
{_trans("Frame Advance"), HK_FRAME_ADVANCE, HK_FRAME_ADVANCE_RESET_SPEED},
|
||||||
{_trans("Movie"), HK_START_RECORDING, HK_READ_ONLY_MODE},
|
{_trans("Movie"), HK_START_RECORDING, HK_READ_ONLY_MODE},
|
||||||
{_trans("Stepping"), HK_STEP, HK_SKIP},
|
{_trans("Stepping"), HK_STEP, HK_SKIP},
|
||||||
{_trans("Program Counter"), HK_SHOW_PC, HK_SET_PC},
|
{_trans("Program Counter"), HK_SHOW_PC, HK_SET_PC},
|
||||||
{_trans("Breakpoint"), HK_BP_TOGGLE, HK_MBP_ADD},
|
{_trans("Breakpoint"), HK_BP_TOGGLE, HK_MBP_ADD},
|
||||||
{_trans("Wii"), HK_TRIGGER_SYNC_BUTTON, HK_BALANCEBOARD_CONNECT},
|
{_trans("Wii"), HK_TRIGGER_SYNC_BUTTON, HK_BALANCEBOARD_CONNECT},
|
||||||
{_trans("Graphics toggles"), HK_TOGGLE_CROP, HK_TOGGLE_TEXTURES},
|
{_trans("Graphics Toggles"), HK_TOGGLE_CROP, HK_TOGGLE_TEXTURES},
|
||||||
{_trans("Internal Resolution"), HK_INCREASE_IR, HK_DECREASE_IR},
|
{_trans("Internal Resolution"), HK_INCREASE_IR, HK_DECREASE_IR},
|
||||||
{_trans("Freelook"), HK_FREELOOK_DECREASE_SPEED, HK_FREELOOK_RESET},
|
{_trans("Freelook"), HK_FREELOOK_DECREASE_SPEED, HK_FREELOOK_RESET},
|
||||||
{_trans("3D"), HK_TOGGLE_STEREO_SBS, HK_TOGGLE_STEREO_3DVISION},
|
{_trans("3D"), HK_TOGGLE_STEREO_SBS, HK_TOGGLE_STEREO_3DVISION},
|
||||||
{_trans("3D depth"), HK_DECREASE_DEPTH, HK_INCREASE_CONVERGENCE},
|
{_trans("3D Depth"), HK_DECREASE_DEPTH, HK_INCREASE_CONVERGENCE},
|
||||||
{_trans("Load state"), HK_LOAD_STATE_SLOT_1, HK_LOAD_STATE_SLOT_SELECTED},
|
{_trans("Load State"), HK_LOAD_STATE_SLOT_1, HK_LOAD_STATE_SLOT_SELECTED},
|
||||||
{_trans("Save state"), HK_SAVE_STATE_SLOT_1, HK_SAVE_STATE_SLOT_SELECTED},
|
{_trans("Save State"), HK_SAVE_STATE_SLOT_1, HK_SAVE_STATE_SLOT_SELECTED},
|
||||||
{_trans("Select state"), HK_SELECT_STATE_SLOT_1, HK_SELECT_STATE_SLOT_10},
|
{_trans("Select State"), HK_SELECT_STATE_SLOT_1, HK_SELECT_STATE_SLOT_10},
|
||||||
{_trans("Load last state"), HK_LOAD_LAST_STATE_1, HK_LOAD_LAST_STATE_10},
|
{_trans("Load Last State"), HK_LOAD_LAST_STATE_1, HK_LOAD_LAST_STATE_10},
|
||||||
{_trans("Other state hotkeys"), HK_SAVE_FIRST_STATE, HK_LOAD_STATE_FILE}}};
|
{_trans("Other State Hotkeys"), HK_SAVE_FIRST_STATE, HK_LOAD_STATE_FILE}}};
|
||||||
|
|
||||||
HotkeyManager::HotkeyManager()
|
HotkeyManager::HotkeyManager()
|
||||||
{
|
{
|
||||||
|
|
|
@ -34,6 +34,10 @@ AboutDialog::AboutDialog(QWidget* parent) : QDialog(parent)
|
||||||
text.append(medium + tr("Check for updates: ") +
|
text.append(medium + tr("Check for updates: ") +
|
||||||
QStringLiteral(
|
QStringLiteral(
|
||||||
"<a href='https://dolphin-emu.org/download'>dolphin-emu.org/download</a></p>"));
|
"<a href='https://dolphin-emu.org/download'>dolphin-emu.org/download</a></p>"));
|
||||||
|
// i18n: The word "free" in the standard phrase "free and open source"
|
||||||
|
// is "free" as in "freedom" - it refers to certain properties of the
|
||||||
|
// software's license, not the software's price. (It is true that Dolphin
|
||||||
|
// can be downloaded at no cost, but that's not what this message says.)
|
||||||
text.append(medium + tr("Dolphin is a free and open-source GameCube and Wii emulator.") +
|
text.append(medium + tr("Dolphin is a free and open-source GameCube and Wii emulator.") +
|
||||||
QStringLiteral("</p>"));
|
QStringLiteral("</p>"));
|
||||||
text.append(medium +
|
text.append(medium +
|
||||||
|
@ -45,7 +49,7 @@ AboutDialog::AboutDialog(QWidget* parent) : QDialog(parent)
|
||||||
"<a href='https://github.com/dolphin-emu/dolphin/blob/master/license.txt'>%1</a> | "
|
"<a href='https://github.com/dolphin-emu/dolphin/blob/master/license.txt'>%1</a> | "
|
||||||
"<a href='https://github.com/dolphin-emu/dolphin/graphs/contributors'>%2</a> | "
|
"<a href='https://github.com/dolphin-emu/dolphin/graphs/contributors'>%2</a> | "
|
||||||
"<a href='https://forums.dolphin-emu.org/'>%3</a></p>")
|
"<a href='https://forums.dolphin-emu.org/'>%3</a></p>")
|
||||||
.arg(tr("Licence"))
|
.arg(tr("License"))
|
||||||
.arg(tr("Authors"))
|
.arg(tr("Authors"))
|
||||||
.arg(tr("Support")));
|
.arg(tr("Support")));
|
||||||
|
|
||||||
|
@ -54,6 +58,10 @@ AboutDialog::AboutDialog(QWidget* parent) : QDialog(parent)
|
||||||
text_label->setOpenExternalLinks(true);
|
text_label->setOpenExternalLinks(true);
|
||||||
|
|
||||||
QLabel* copyright =
|
QLabel* copyright =
|
||||||
|
// i18n: This message uses curly quotes in English. If you want to use curly quotes
|
||||||
|
// in your translation, please use the type of curly quotes that's appropriate for
|
||||||
|
// your language. If you aren't sure which type is appropriate, see
|
||||||
|
// https://en.wikipedia.org/wiki/Quotation_mark#Specific_language_features
|
||||||
new QLabel(tr("\u00A9 2003-%1 Dolphin Team. \u201cGameCube\u201d and \u201cWii\u201d are "
|
new QLabel(tr("\u00A9 2003-%1 Dolphin Team. \u201cGameCube\u201d and \u201cWii\u201d are "
|
||||||
"trademarks of Nintendo. Dolphin is not affiliated with Nintendo in any way.")
|
"trademarks of Nintendo. Dolphin is not affiliated with Nintendo in any way.")
|
||||||
.arg(QStringLiteral(__DATE__).right(4)));
|
.arg(QStringLiteral(__DATE__).right(4)));
|
||||||
|
|
|
@ -94,7 +94,7 @@ void ControllersWindow::CreateGamecubeLayout()
|
||||||
|
|
||||||
for (size_t i = 0; i < m_gc_groups.size(); i++)
|
for (size_t i = 0; i < m_gc_groups.size(); i++)
|
||||||
{
|
{
|
||||||
auto* gc_label = new QLabel(tr("Controller %1").arg(i + 1));
|
auto* gc_label = new QLabel(tr("Port %1").arg(i + 1));
|
||||||
auto* gc_box = m_gc_controller_boxes[i] = new QComboBox();
|
auto* gc_box = m_gc_controller_boxes[i] = new QComboBox();
|
||||||
auto* gc_button = m_gc_buttons[i] = new QPushButton(tr("Configure"));
|
auto* gc_button = m_gc_buttons[i] = new QPushButton(tr("Configure"));
|
||||||
|
|
||||||
|
@ -156,13 +156,13 @@ void ControllersWindow::CreateWiimoteLayout()
|
||||||
m_wiimote_box = new QGroupBox(tr("Wii Remotes"));
|
m_wiimote_box = new QGroupBox(tr("Wii Remotes"));
|
||||||
m_wiimote_box->setLayout(m_wiimote_layout);
|
m_wiimote_box->setLayout(m_wiimote_layout);
|
||||||
|
|
||||||
m_wiimote_passthrough = new QRadioButton(tr("Use Bluetooth Passthrough"));
|
m_wiimote_passthrough = new QRadioButton(tr("Passthrough a Bluetooth adapter"));
|
||||||
m_wiimote_sync = new QPushButton(tr("Sync"));
|
m_wiimote_sync = new QPushButton(tr("Sync"));
|
||||||
m_wiimote_reset = new QPushButton(tr("Reset"));
|
m_wiimote_reset = new QPushButton(tr("Reset"));
|
||||||
m_wiimote_refresh = new QPushButton(tr("Refresh"));
|
m_wiimote_refresh = new QPushButton(tr("Refresh"));
|
||||||
m_wiimote_pt_labels[0] = new QLabel(tr("Sync real Wii Remotes and pair them"));
|
m_wiimote_pt_labels[0] = new QLabel(tr("Sync real Wii Remotes and pair them"));
|
||||||
m_wiimote_pt_labels[1] = new QLabel(tr("Reset all saved Wii Remote pairings"));
|
m_wiimote_pt_labels[1] = new QLabel(tr("Reset all saved Wii Remote pairings"));
|
||||||
m_wiimote_emu = new QRadioButton(tr("Emulate the Wii Bluetooth Adapter"));
|
m_wiimote_emu = new QRadioButton(tr("Emulate the Wii's Bluetooth Adapter"));
|
||||||
m_wiimote_continuous_scanning = new QCheckBox(tr("Continuous Scanning"));
|
m_wiimote_continuous_scanning = new QCheckBox(tr("Continuous Scanning"));
|
||||||
m_wiimote_real_balance_board = new QCheckBox(tr("Real Balance Board"));
|
m_wiimote_real_balance_board = new QCheckBox(tr("Real Balance Board"));
|
||||||
m_wiimote_speaker_data = new QCheckBox(tr("Enable Speaker Data"));
|
m_wiimote_speaker_data = new QCheckBox(tr("Enable Speaker Data"));
|
||||||
|
@ -358,7 +358,7 @@ void ControllersWindow::OnBluetoothPassthroughSyncPressed()
|
||||||
{
|
{
|
||||||
QMessageBox error(this);
|
QMessageBox error(this);
|
||||||
error.setIcon(QMessageBox::Warning);
|
error.setIcon(QMessageBox::Warning);
|
||||||
error.setText(tr("A sync can only be triggered when a Wii game is running"));
|
error.setText(tr("A sync can only be triggered when a Wii game is running."));
|
||||||
error.exec();
|
error.exec();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -77,7 +77,7 @@ void AdvancedWidget::CreateWidgets()
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Misc.
|
// Misc.
|
||||||
auto* misc_box = new QGroupBox(tr("Misc."));
|
auto* misc_box = new QGroupBox(tr("Misc"));
|
||||||
auto* misc_layout = new QGridLayout();
|
auto* misc_layout = new QGridLayout();
|
||||||
misc_box->setLayout(misc_layout);
|
misc_box->setLayout(misc_layout);
|
||||||
|
|
||||||
|
|
|
@ -77,9 +77,9 @@ void EnhancementsWidget::CreateWidgets()
|
||||||
|
|
||||||
enhancements_layout->addWidget(new QLabel(tr("Internal Resolution:")), 0, 0);
|
enhancements_layout->addWidget(new QLabel(tr("Internal Resolution:")), 0, 0);
|
||||||
enhancements_layout->addWidget(m_ir_combo, 0, 1, 1, -1);
|
enhancements_layout->addWidget(m_ir_combo, 0, 1, 1, -1);
|
||||||
enhancements_layout->addWidget(new QLabel(tr("Anti-Aliasing")), 1, 0);
|
enhancements_layout->addWidget(new QLabel(tr("Anti-Aliasing:")), 1, 0);
|
||||||
enhancements_layout->addWidget(m_aa_combo, 1, 1, 1, -1);
|
enhancements_layout->addWidget(m_aa_combo, 1, 1, 1, -1);
|
||||||
enhancements_layout->addWidget(new QLabel(tr("Antisotrophic Filtering:")), 2, 0);
|
enhancements_layout->addWidget(new QLabel(tr("Anisotropic Filtering:")), 2, 0);
|
||||||
enhancements_layout->addWidget(m_af_combo, 2, 1, 1, -1);
|
enhancements_layout->addWidget(m_af_combo, 2, 1, 1, -1);
|
||||||
enhancements_layout->addWidget(new QLabel(tr("Post-Processing Effect:")), 3, 0);
|
enhancements_layout->addWidget(new QLabel(tr("Post-Processing Effect:")), 3, 0);
|
||||||
enhancements_layout->addWidget(m_pp_effect, 3, 1);
|
enhancements_layout->addWidget(m_pp_effect, 3, 1);
|
||||||
|
@ -233,7 +233,7 @@ void EnhancementsWidget::AddDescriptions()
|
||||||
"geometry anti-aliasing and also applies anti-aliasing to lighting, shader "
|
"geometry anti-aliasing and also applies anti-aliasing to lighting, shader "
|
||||||
"effects, and textures.\n\nIf unsure, select None.");
|
"effects, and textures.\n\nIf unsure, select None.");
|
||||||
|
|
||||||
static const char* TR_ANTISTROPIC_FILTERING_DESCRIPTION = QT_TR_NOOP(
|
static const char* TR_ANISOTROPIC_FILTERING_DESCRIPTION = QT_TR_NOOP(
|
||||||
"Enable anisotropic filtering.\nEnhances visual quality of textures that are at oblique "
|
"Enable anisotropic filtering.\nEnhances visual quality of textures that are at oblique "
|
||||||
"viewing angles.\nMight cause issues in a small number of games.\n\nIf unsure, select 1x.");
|
"viewing angles.\nMight cause issues in a small number of games.\n\nIf unsure, select 1x.");
|
||||||
|
|
||||||
|
@ -263,8 +263,9 @@ void EnhancementsWidget::AddDescriptions()
|
||||||
static const char* TR_3D_MODE_DESCRIPTION = QT_TR_NOOP(
|
static const char* TR_3D_MODE_DESCRIPTION = QT_TR_NOOP(
|
||||||
"Selects the stereoscopic 3D mode. Stereoscopy allows you to get a better feeling "
|
"Selects the stereoscopic 3D mode. Stereoscopy allows you to get a better feeling "
|
||||||
"of depth if you have the necessary hardware.\nSide-by-Side and Top-and-Bottom are "
|
"of depth if you have the necessary hardware.\nSide-by-Side and Top-and-Bottom are "
|
||||||
"used by most 3D TVs.\nAnaglyph is used for Red-Cyan colored glasses.\nHeavily "
|
"used by most 3D TVs.\nAnaglyph is used for Red-Cyan colored glasses.\nHDMI 3D is "
|
||||||
"decreases emulation speed and sometimes causes issues.\n\nIf unsure, select Off.");
|
"used when your monitor supports 3D display resolutions.\nHeavily decreases "
|
||||||
|
"emulation speed and sometimes causes issues.\n\nIf unsure, select Off.");
|
||||||
static const char* TR_3D_DEPTH_DESCRIPTION =
|
static const char* TR_3D_DEPTH_DESCRIPTION =
|
||||||
QT_TR_NOOP("Controls the separation distance between the virtual cameras.\nA higher value "
|
QT_TR_NOOP("Controls the separation distance between the virtual cameras.\nA higher value "
|
||||||
"creates a stronger feeling of depth while a lower value is more comfortable.");
|
"creates a stronger feeling of depth while a lower value is more comfortable.");
|
||||||
|
@ -286,7 +287,7 @@ void EnhancementsWidget::AddDescriptions()
|
||||||
|
|
||||||
AddDescription(m_ir_combo, TR_INTERNAL_RESOLUTION_DESCRIPTION);
|
AddDescription(m_ir_combo, TR_INTERNAL_RESOLUTION_DESCRIPTION);
|
||||||
AddDescription(m_aa_combo, TR_ANTIALIAS_DESCRIPTION);
|
AddDescription(m_aa_combo, TR_ANTIALIAS_DESCRIPTION);
|
||||||
AddDescription(m_af_combo, TR_ANTISTROPIC_FILTERING_DESCRIPTION);
|
AddDescription(m_af_combo, TR_ANISOTROPIC_FILTERING_DESCRIPTION);
|
||||||
AddDescription(m_pp_effect, TR_POSTPROCESSING_DESCRIPTION);
|
AddDescription(m_pp_effect, TR_POSTPROCESSING_DESCRIPTION);
|
||||||
AddDescription(m_scaled_efb_copy, TR_SCALED_EFB_COPY_DESCRIPTION);
|
AddDescription(m_scaled_efb_copy, TR_SCALED_EFB_COPY_DESCRIPTION);
|
||||||
AddDescription(m_per_pixel_lighting, TR_PER_PIXEL_LIGHTING_DESCRIPTION);
|
AddDescription(m_per_pixel_lighting, TR_PER_PIXEL_LIGHTING_DESCRIPTION);
|
||||||
|
|
|
@ -40,8 +40,8 @@ void GeneralWidget::CreateWidgets()
|
||||||
{
|
{
|
||||||
auto* main_layout = new QVBoxLayout;
|
auto* main_layout = new QVBoxLayout;
|
||||||
|
|
||||||
// Video Section
|
// Basic Section
|
||||||
auto* m_video_box = new QGroupBox(tr("Video"));
|
auto* m_video_box = new QGroupBox(tr("Basic"));
|
||||||
m_video_layout = new QGridLayout();
|
m_video_layout = new QGridLayout();
|
||||||
|
|
||||||
m_backend_combo = new QComboBox();
|
m_backend_combo = new QComboBox();
|
||||||
|
@ -83,14 +83,15 @@ void GeneralWidget::CreateWidgets()
|
||||||
m_video_layout->addWidget(m_enable_vsync, 4, 0);
|
m_video_layout->addWidget(m_enable_vsync, 4, 0);
|
||||||
m_video_layout->addWidget(m_enable_fullscreen, 4, 1);
|
m_video_layout->addWidget(m_enable_fullscreen, 4, 1);
|
||||||
|
|
||||||
// Options
|
// Other
|
||||||
auto* m_options_box = new QGroupBox(tr("Options"));
|
auto* m_options_box = new QGroupBox(tr("Other"));
|
||||||
auto* m_options_layout = new QGridLayout();
|
auto* m_options_layout = new QGridLayout();
|
||||||
|
|
||||||
m_show_fps = new GraphicsBool(tr("Show FPS"), Config::GFX_SHOW_FPS);
|
m_show_fps = new GraphicsBool(tr("Show FPS"), Config::GFX_SHOW_FPS);
|
||||||
m_show_ping = new GraphicsBool(tr("Show NetPlay Ping"), Config::GFX_SHOW_NETPLAY_PING);
|
m_show_ping = new GraphicsBool(tr("Show NetPlay Ping"), Config::GFX_SHOW_NETPLAY_PING);
|
||||||
m_log_render_time = new GraphicsBool(tr("Log Rendertime"), Config::GFX_LOG_RENDER_TIME_TO_FILE);
|
m_log_render_time =
|
||||||
m_autoadjust_window_size = new QCheckBox(tr("Auto-adjust Window size"));
|
new GraphicsBool(tr("Log Render Time to File"), Config::GFX_LOG_RENDER_TIME_TO_FILE);
|
||||||
|
m_autoadjust_window_size = new QCheckBox(tr("Auto-Adjust Window Size"));
|
||||||
m_show_messages =
|
m_show_messages =
|
||||||
new GraphicsBool(tr("Show NetPlay Messages"), Config::GFX_SHOW_NETPLAY_MESSAGES);
|
new GraphicsBool(tr("Show NetPlay Messages"), Config::GFX_SHOW_NETPLAY_MESSAGES);
|
||||||
m_keep_window_top = new QCheckBox(tr("Keep Window on Top"));
|
m_keep_window_top = new QCheckBox(tr("Keep Window on Top"));
|
||||||
|
|
|
@ -38,12 +38,12 @@ void SoftwareRendererWidget::CreateWidgets()
|
||||||
auto* rendering_box = new QGroupBox(tr("Rendering"));
|
auto* rendering_box = new QGroupBox(tr("Rendering"));
|
||||||
auto* rendering_layout = new QGridLayout();
|
auto* rendering_layout = new QGridLayout();
|
||||||
m_backend_combo = new QComboBox();
|
m_backend_combo = new QComboBox();
|
||||||
m_disable_xfb = new GraphicsBool(tr("Disable XFB"), Config::GFX_USE_XFB, true);
|
m_bypass_xfb = new GraphicsBool(tr("Bypass XFB"), Config::GFX_USE_XFB, true);
|
||||||
|
|
||||||
rendering_box->setLayout(rendering_layout);
|
rendering_box->setLayout(rendering_layout);
|
||||||
rendering_layout->addWidget(new QLabel(tr("Backend:")), 1, 1);
|
rendering_layout->addWidget(new QLabel(tr("Backend:")), 1, 1);
|
||||||
rendering_layout->addWidget(m_backend_combo, 1, 2);
|
rendering_layout->addWidget(m_backend_combo, 1, 2);
|
||||||
rendering_layout->addWidget(m_disable_xfb, 2, 1);
|
rendering_layout->addWidget(m_bypass_xfb, 2, 1);
|
||||||
|
|
||||||
for (const auto& backend : g_available_video_backends)
|
for (const auto& backend : g_available_video_backends)
|
||||||
m_backend_combo->addItem(tr(backend->GetDisplayName().c_str()));
|
m_backend_combo->addItem(tr(backend->GetDisplayName().c_str()));
|
||||||
|
@ -66,7 +66,7 @@ void SoftwareRendererWidget::CreateWidgets()
|
||||||
|
|
||||||
auto* debug_box = new QGroupBox(tr("Debug Only"));
|
auto* debug_box = new QGroupBox(tr("Debug Only"));
|
||||||
auto* debug_layout = new QGridLayout();
|
auto* debug_layout = new QGridLayout();
|
||||||
m_dump_tev_stages = new GraphicsBool(tr("Dump TEV stages"), Config::GFX_SW_DUMP_TEV_STAGES);
|
m_dump_tev_stages = new GraphicsBool(tr("Dump TEV Stages"), Config::GFX_SW_DUMP_TEV_STAGES);
|
||||||
m_dump_tev_fetches =
|
m_dump_tev_fetches =
|
||||||
new GraphicsBool(tr("Dump Texture Fetches"), Config::GFX_SW_DUMP_TEV_TEX_FETCHES);
|
new GraphicsBool(tr("Dump Texture Fetches"), Config::GFX_SW_DUMP_TEV_TEX_FETCHES);
|
||||||
|
|
||||||
|
@ -155,7 +155,7 @@ void SoftwareRendererWidget::AddDescriptions()
|
||||||
"backend, so for the best emulation experience it's recommended to try both and "
|
"backend, so for the best emulation experience it's recommended to try both and "
|
||||||
"choose the one that's less problematic.\n\nIf unsure, select OpenGL.");
|
"choose the one that's less problematic.\n\nIf unsure, select OpenGL.");
|
||||||
|
|
||||||
static const char* TR_DISABLE_XFB_DESCRIPTION = QT_TR_NOOP(
|
static const char* TR_BYPASS_XFB_DESCRIPTION = QT_TR_NOOP(
|
||||||
"Disable any XFB emulation.\nSpeeds up emulation a lot but causes heavy glitches in many "
|
"Disable any XFB emulation.\nSpeeds up emulation a lot but causes heavy glitches in many "
|
||||||
"games "
|
"games "
|
||||||
"which rely on them (especially homebrew applications).\n\nIf unsure, leave this checked.");
|
"which rely on them (especially homebrew applications).\n\nIf unsure, leave this checked.");
|
||||||
|
@ -168,7 +168,7 @@ void SoftwareRendererWidget::AddDescriptions()
|
||||||
"this unchecked.");
|
"this unchecked.");
|
||||||
|
|
||||||
AddDescription(m_backend_combo, TR_BACKEND_DESCRIPTION);
|
AddDescription(m_backend_combo, TR_BACKEND_DESCRIPTION);
|
||||||
AddDescription(m_disable_xfb, TR_DISABLE_XFB_DESCRIPTION);
|
AddDescription(m_bypass_xfb, TR_BYPASS_XFB_DESCRIPTION);
|
||||||
AddDescription(m_enable_statistics, TR_SHOW_STATISTICS_DESCRIPTION);
|
AddDescription(m_enable_statistics, TR_SHOW_STATISTICS_DESCRIPTION);
|
||||||
AddDescription(m_dump_textures, TR_DUMP_TEXTURES_DESCRIPTION);
|
AddDescription(m_dump_textures, TR_DUMP_TEXTURES_DESCRIPTION);
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,7 +29,7 @@ private:
|
||||||
void AddDescriptions();
|
void AddDescriptions();
|
||||||
|
|
||||||
QComboBox* m_backend_combo;
|
QComboBox* m_backend_combo;
|
||||||
QCheckBox* m_disable_xfb;
|
QCheckBox* m_bypass_xfb;
|
||||||
QCheckBox* m_enable_statistics;
|
QCheckBox* m_enable_statistics;
|
||||||
QCheckBox* m_dump_textures;
|
QCheckBox* m_dump_textures;
|
||||||
QCheckBox* m_dump_objects;
|
QCheckBox* m_dump_objects;
|
||||||
|
|
|
@ -60,7 +60,7 @@ QGroupBox* InfoWidget::CreateISODetails()
|
||||||
|
|
||||||
QGroupBox* InfoWidget::CreateBannerDetails()
|
QGroupBox* InfoWidget::CreateBannerDetails()
|
||||||
{
|
{
|
||||||
QGroupBox* group = new QGroupBox(tr("%1 Banner Details").arg(m_game.GetPlatform()));
|
QGroupBox* group = new QGroupBox(tr("Banner Details"));
|
||||||
QFormLayout* layout = new QFormLayout;
|
QFormLayout* layout = new QFormLayout;
|
||||||
|
|
||||||
m_long_name = CreateValueDisplay();
|
m_long_name = CreateValueDisplay();
|
||||||
|
|
|
@ -33,7 +33,7 @@ void GCPadEmu::CreateMainLayout()
|
||||||
m_main_layout->addWidget(
|
m_main_layout->addWidget(
|
||||||
CreateGroupBox(tr("Control Stick"), Pad::GetGroup(GetPort(), PadGroup::MainStick)));
|
CreateGroupBox(tr("Control Stick"), Pad::GetGroup(GetPort(), PadGroup::MainStick)));
|
||||||
m_main_layout->addWidget(
|
m_main_layout->addWidget(
|
||||||
CreateGroupBox(tr("C-Stick"), Pad::GetGroup(GetPort(), PadGroup::CStick)));
|
CreateGroupBox(tr("C Stick"), Pad::GetGroup(GetPort(), PadGroup::CStick)));
|
||||||
m_main_layout->addWidget(CreateGroupBox(tr("D-Pad"), Pad::GetGroup(GetPort(), PadGroup::DPad)));
|
m_main_layout->addWidget(CreateGroupBox(tr("D-Pad"), Pad::GetGroup(GetPort(), PadGroup::DPad)));
|
||||||
m_main_layout->addItem(hbox_layout);
|
m_main_layout->addItem(hbox_layout);
|
||||||
|
|
||||||
|
|
|
@ -50,7 +50,7 @@ MappingWindow::MappingWindow(QWidget* parent, int port_num) : QDialog(parent), m
|
||||||
void MappingWindow::CreateDevicesLayout()
|
void MappingWindow::CreateDevicesLayout()
|
||||||
{
|
{
|
||||||
m_devices_layout = new QHBoxLayout();
|
m_devices_layout = new QHBoxLayout();
|
||||||
m_devices_box = new QGroupBox(tr("Devices"));
|
m_devices_box = new QGroupBox(tr("Device"));
|
||||||
m_devices_combo = new QComboBox();
|
m_devices_combo = new QComboBox();
|
||||||
m_devices_refresh = new QPushButton(tr("Refresh"));
|
m_devices_refresh = new QPushButton(tr("Refresh"));
|
||||||
|
|
||||||
|
@ -64,7 +64,7 @@ void MappingWindow::CreateDevicesLayout()
|
||||||
void MappingWindow::CreateProfilesLayout()
|
void MappingWindow::CreateProfilesLayout()
|
||||||
{
|
{
|
||||||
m_profiles_layout = new QHBoxLayout();
|
m_profiles_layout = new QHBoxLayout();
|
||||||
m_profiles_box = new QGroupBox(tr("Profiles"));
|
m_profiles_box = new QGroupBox(tr("Profile"));
|
||||||
m_profiles_combo = new QComboBox();
|
m_profiles_combo = new QComboBox();
|
||||||
m_profiles_load = new QPushButton(tr("Load"));
|
m_profiles_load = new QPushButton(tr("Load"));
|
||||||
m_profiles_save = new QPushButton(tr("Save"));
|
m_profiles_save = new QPushButton(tr("Save"));
|
||||||
|
@ -283,7 +283,7 @@ void MappingWindow::ChangeMappingType(MappingWindow::Type type)
|
||||||
{
|
{
|
||||||
auto* extension = new WiimoteEmuExtension(this);
|
auto* extension = new WiimoteEmuExtension(this);
|
||||||
widget = new WiimoteEmuGeneral(this, extension);
|
widget = new WiimoteEmuGeneral(this, extension);
|
||||||
setWindowTitle(tr("Wii Remote at Port %1").arg(GetPort() + 1));
|
setWindowTitle(tr("Wii Remote %1").arg(GetPort() + 1));
|
||||||
AddWidget(tr("General and Options"), widget);
|
AddWidget(tr("General and Options"), widget);
|
||||||
AddWidget(tr("Motion Controls and IR"), new WiimoteEmuMotionControl(this));
|
AddWidget(tr("Motion Controls and IR"), new WiimoteEmuMotionControl(this));
|
||||||
AddWidget(tr("Extension"), extension);
|
AddWidget(tr("Extension"), extension);
|
||||||
|
@ -294,10 +294,10 @@ void MappingWindow::ChangeMappingType(MappingWindow::Type type)
|
||||||
widget = new HotkeyGeneral(this);
|
widget = new HotkeyGeneral(this);
|
||||||
AddWidget(tr("General"), widget);
|
AddWidget(tr("General"), widget);
|
||||||
AddWidget(tr("TAS Tools"), new HotkeyTAS(this));
|
AddWidget(tr("TAS Tools"), new HotkeyTAS(this));
|
||||||
AddWidget(tr("Wii (Remote)"), new HotkeyWii(this));
|
AddWidget(tr("Wii and Wii Remote"), new HotkeyWii(this));
|
||||||
AddWidget(tr("Graphics"), new HotkeyGraphics(this));
|
AddWidget(tr("Graphics"), new HotkeyGraphics(this));
|
||||||
AddWidget(tr("3D"), new Hotkey3D(this));
|
AddWidget(tr("3D"), new Hotkey3D(this));
|
||||||
AddWidget(tr("Save States"), new HotkeyStates(this));
|
AddWidget(tr("Save and Load State"), new HotkeyStates(this));
|
||||||
setWindowTitle(tr("Hotkey Settings"));
|
setWindowTitle(tr("Hotkey Settings"));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -136,12 +136,13 @@ void WiimoteEmuExtension::CreateTurntableLayout()
|
||||||
|
|
||||||
auto* vbox = new QVBoxLayout();
|
auto* vbox = new QVBoxLayout();
|
||||||
vbox->addWidget(CreateGroupBox(
|
vbox->addWidget(CreateGroupBox(
|
||||||
tr("Effect Dial"),
|
tr("Effect"), Wiimote::GetTurntableGroup(GetPort(), WiimoteEmu::TurntableGroup::EffectDial)));
|
||||||
Wiimote::GetTurntableGroup(GetPort(), WiimoteEmu::TurntableGroup::EffectDial)));
|
|
||||||
vbox->addWidget(
|
vbox->addWidget(
|
||||||
|
// i18n: "Table" refers to a turntable
|
||||||
CreateGroupBox(tr("Left Table"),
|
CreateGroupBox(tr("Left Table"),
|
||||||
Wiimote::GetTurntableGroup(GetPort(), WiimoteEmu::TurntableGroup::LeftTable)));
|
Wiimote::GetTurntableGroup(GetPort(), WiimoteEmu::TurntableGroup::LeftTable)));
|
||||||
vbox->addWidget(CreateGroupBox(
|
vbox->addWidget(CreateGroupBox(
|
||||||
|
// i18n: "Table" refers to a turntable
|
||||||
tr("Right Table"),
|
tr("Right Table"),
|
||||||
Wiimote::GetTurntableGroup(GetPort(), WiimoteEmu::TurntableGroup::RightTable)));
|
Wiimote::GetTurntableGroup(GetPort(), WiimoteEmu::TurntableGroup::RightTable)));
|
||||||
vbox->addWidget(
|
vbox->addWidget(
|
||||||
|
|
|
@ -148,19 +148,19 @@ void GameList::ShowContextMenu(const QPoint&)
|
||||||
|
|
||||||
QMenu* menu = new QMenu(this);
|
QMenu* menu = new QMenu(this);
|
||||||
DiscIO::Platform platform = GameFile(game).GetPlatformID();
|
DiscIO::Platform platform = GameFile(game).GetPlatformID();
|
||||||
menu->addAction(tr("Properties"), this, &GameList::OpenProperties);
|
menu->addAction(tr("&Properties"), this, &GameList::OpenProperties);
|
||||||
menu->addAction(tr("Wiki"), this, &GameList::OpenWiki);
|
menu->addAction(tr("&Wiki"), this, &GameList::OpenWiki);
|
||||||
menu->addSeparator();
|
menu->addSeparator();
|
||||||
|
|
||||||
if (platform == DiscIO::Platform::GAMECUBE_DISC || platform == DiscIO::Platform::WII_DISC)
|
if (platform == DiscIO::Platform::GAMECUBE_DISC || platform == DiscIO::Platform::WII_DISC)
|
||||||
{
|
{
|
||||||
menu->addAction(tr("Default ISO"), this, &GameList::SetDefaultISO);
|
menu->addAction(tr("Set as &default ISO"), this, &GameList::SetDefaultISO);
|
||||||
const auto blob_type = GameFile(game).GetBlobType();
|
const auto blob_type = GameFile(game).GetBlobType();
|
||||||
|
|
||||||
if (blob_type == DiscIO::BlobType::GCZ)
|
if (blob_type == DiscIO::BlobType::GCZ)
|
||||||
menu->addAction(tr("Decompress ISO"), this, &GameList::CompressISO);
|
menu->addAction(tr("Decompress ISO..."), this, &GameList::CompressISO);
|
||||||
else if (blob_type == DiscIO::BlobType::PLAIN)
|
else if (blob_type == DiscIO::BlobType::PLAIN)
|
||||||
menu->addAction(tr("Compress ISO"), this, &GameList::CompressISO);
|
menu->addAction(tr("Compress ISO..."), this, &GameList::CompressISO);
|
||||||
|
|
||||||
menu->addSeparator();
|
menu->addSeparator();
|
||||||
}
|
}
|
||||||
|
@ -190,13 +190,13 @@ void GameList::ShowContextMenu(const QPoint&)
|
||||||
|
|
||||||
if (platform == DiscIO::Platform::WII_WAD || platform == DiscIO::Platform::WII_DISC)
|
if (platform == DiscIO::Platform::WII_WAD || platform == DiscIO::Platform::WII_DISC)
|
||||||
{
|
{
|
||||||
menu->addAction(tr("Open Wii save folder"), this, &GameList::OpenSaveFolder);
|
menu->addAction(tr("Open Wii &save folder"), this, &GameList::OpenSaveFolder);
|
||||||
menu->addAction(tr("Export Wii save (Experimental)"), this, &GameList::ExportWiiSave);
|
menu->addAction(tr("Export Wii save (Experimental)"), this, &GameList::ExportWiiSave);
|
||||||
menu->addSeparator();
|
menu->addSeparator();
|
||||||
}
|
}
|
||||||
|
|
||||||
menu->addAction(tr("Open Containing Folder"), this, &GameList::OpenContainingFolder);
|
menu->addAction(tr("Open &containing folder"), this, &GameList::OpenContainingFolder);
|
||||||
menu->addAction(tr("Remove File"), this, &GameList::DeleteFile);
|
menu->addAction(tr("Delete File..."), this, &GameList::DeleteFile);
|
||||||
menu->exec(QCursor::pos());
|
menu->exec(QCursor::pos());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -239,7 +239,7 @@ void GameList::CompressISO()
|
||||||
wii_warning.setText(tr("Are you sure?"));
|
wii_warning.setText(tr("Are you sure?"));
|
||||||
wii_warning.setInformativeText(
|
wii_warning.setInformativeText(
|
||||||
tr("Compressing a Wii disc image will irreversibly change the compressed copy by removing "
|
tr("Compressing a Wii disc image will irreversibly change the compressed copy by removing "
|
||||||
"padding data. Your disc image will still work."));
|
"padding data. Your disc image will still work. Continue?"));
|
||||||
wii_warning.setStandardButtons(QMessageBox::Yes | QMessageBox::No);
|
wii_warning.setStandardButtons(QMessageBox::Yes | QMessageBox::No);
|
||||||
|
|
||||||
if (wii_warning.exec() == QMessageBox::No)
|
if (wii_warning.exec() == QMessageBox::No)
|
||||||
|
@ -253,7 +253,7 @@ void GameList::CompressISO()
|
||||||
.dir()
|
.dir()
|
||||||
.absoluteFilePath(file.GetGameID())
|
.absoluteFilePath(file.GetGameID())
|
||||||
.append(compressed ? QStringLiteral(".gcm") : QStringLiteral(".gcz")),
|
.append(compressed ? QStringLiteral(".gcm") : QStringLiteral(".gcz")),
|
||||||
compressed ? tr("Uncompressed GC/Wii images (*.iso *.gcm") :
|
compressed ? tr("Uncompressed GC/Wii images (*.iso *.gcm)") :
|
||||||
tr("Compressed GC/Wii images (*.gcz)"));
|
tr("Compressed GC/Wii images (*.gcz)"));
|
||||||
|
|
||||||
if (dst_path.isEmpty())
|
if (dst_path.isEmpty())
|
||||||
|
@ -296,8 +296,8 @@ void GameList::InstallWAD()
|
||||||
const bool success = GameFile(GetSelectedGame()).Install();
|
const bool success = GameFile(GetSelectedGame()).Install();
|
||||||
|
|
||||||
result_dialog.setIcon(success ? QMessageBox::Information : QMessageBox::Critical);
|
result_dialog.setIcon(success ? QMessageBox::Information : QMessageBox::Critical);
|
||||||
result_dialog.setText(success ? tr("Succesfully installed title to the NAND") :
|
result_dialog.setText(success ? tr("Successfully installed this title to the NAND.") :
|
||||||
tr("Failed to install title to the NAND"));
|
tr("Failed to install this title to the NAND."));
|
||||||
result_dialog.exec();
|
result_dialog.exec();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -318,8 +318,8 @@ void GameList::UninstallWAD()
|
||||||
const bool success = GameFile(GetSelectedGame()).Uninstall();
|
const bool success = GameFile(GetSelectedGame()).Uninstall();
|
||||||
|
|
||||||
result_dialog.setIcon(success ? QMessageBox::Information : QMessageBox::Critical);
|
result_dialog.setIcon(success ? QMessageBox::Information : QMessageBox::Critical);
|
||||||
result_dialog.setText(success ? tr("Succesfully removed title from the NAND") :
|
result_dialog.setText(success ? tr("Successfully removed this title from the NAND.") :
|
||||||
tr("Failed to remove title from the NAND"));
|
tr("Failed to remove this title from the NAND."));
|
||||||
result_dialog.exec();
|
result_dialog.exec();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -347,7 +347,7 @@ void GameList::DeleteFile()
|
||||||
|
|
||||||
confirm_dialog.setIcon(QMessageBox::Warning);
|
confirm_dialog.setIcon(QMessageBox::Warning);
|
||||||
confirm_dialog.setText(tr("Are you sure you want to delete this file?"));
|
confirm_dialog.setText(tr("Are you sure you want to delete this file?"));
|
||||||
confirm_dialog.setInformativeText(tr("You won't be able to undo this!"));
|
confirm_dialog.setInformativeText(tr("This cannot be undone!"));
|
||||||
confirm_dialog.setStandardButtons(QMessageBox::Yes | QMessageBox::Cancel);
|
confirm_dialog.setStandardButtons(QMessageBox::Yes | QMessageBox::Cancel);
|
||||||
|
|
||||||
if (confirm_dialog.exec() == QMessageBox::Yes)
|
if (confirm_dialog.exec() == QMessageBox::Yes)
|
||||||
|
@ -442,7 +442,7 @@ void GameList::OnColumnVisibilityToggled(const QString& row, bool visible)
|
||||||
{tr("Platform"), GameListModel::COL_PLATFORM},
|
{tr("Platform"), GameListModel::COL_PLATFORM},
|
||||||
{tr("Size"), GameListModel::COL_SIZE},
|
{tr("Size"), GameListModel::COL_SIZE},
|
||||||
{tr("Title"), GameListModel::COL_TITLE},
|
{tr("Title"), GameListModel::COL_TITLE},
|
||||||
{tr("Quality"), GameListModel::COL_RATING}};
|
{tr("State"), GameListModel::COL_RATING}};
|
||||||
|
|
||||||
m_table->setColumnHidden(rowname_to_col_index[row], !visible);
|
m_table->setColumnHidden(rowname_to_col_index[row], !visible);
|
||||||
}
|
}
|
||||||
|
|
|
@ -121,7 +121,7 @@ QVariant GameListModel::headerData(int section, Qt::Orientation orientation, int
|
||||||
case COL_SIZE:
|
case COL_SIZE:
|
||||||
return tr("Size");
|
return tr("Size");
|
||||||
case COL_RATING:
|
case COL_RATING:
|
||||||
return tr("Quality");
|
return tr("State");
|
||||||
}
|
}
|
||||||
return QVariant();
|
return QVariant();
|
||||||
}
|
}
|
||||||
|
|
|
@ -76,14 +76,14 @@ void MenuBar::EmulationStopped()
|
||||||
|
|
||||||
void MenuBar::AddFileMenu()
|
void MenuBar::AddFileMenu()
|
||||||
{
|
{
|
||||||
QMenu* file_menu = addMenu(tr("File"));
|
QMenu* file_menu = addMenu(tr("&File"));
|
||||||
m_open_action = file_menu->addAction(tr("Open"), this, &MenuBar::Open);
|
m_open_action = file_menu->addAction(tr("&Open..."), this, &MenuBar::Open);
|
||||||
m_exit_action = file_menu->addAction(tr("Exit"), this, &MenuBar::Exit);
|
m_exit_action = file_menu->addAction(tr("E&xit"), this, &MenuBar::Exit);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MenuBar::AddToolsMenu()
|
void MenuBar::AddToolsMenu()
|
||||||
{
|
{
|
||||||
QMenu* tools_menu = addMenu(tr("Tools"));
|
QMenu* tools_menu = addMenu(tr("&Tools"));
|
||||||
m_wad_install_action = tools_menu->addAction(tr("Install WAD..."), this, &MenuBar::InstallWAD);
|
m_wad_install_action = tools_menu->addAction(tr("Install WAD..."), this, &MenuBar::InstallWAD);
|
||||||
|
|
||||||
// Label will be set by a NANDRefresh later
|
// Label will be set by a NANDRefresh later
|
||||||
|
@ -106,13 +106,13 @@ void MenuBar::AddToolsMenu()
|
||||||
|
|
||||||
void MenuBar::AddEmulationMenu()
|
void MenuBar::AddEmulationMenu()
|
||||||
{
|
{
|
||||||
QMenu* emu_menu = addMenu(tr("Emulation"));
|
QMenu* emu_menu = addMenu(tr("&Emulation"));
|
||||||
m_play_action = emu_menu->addAction(tr("Play"), this, &MenuBar::Play);
|
m_play_action = emu_menu->addAction(tr("&Play"), this, &MenuBar::Play);
|
||||||
m_pause_action = emu_menu->addAction(tr("Pause"), this, &MenuBar::Pause);
|
m_pause_action = emu_menu->addAction(tr("&Pause"), this, &MenuBar::Pause);
|
||||||
m_stop_action = emu_menu->addAction(tr("Stop"), this, &MenuBar::Stop);
|
m_stop_action = emu_menu->addAction(tr("&Stop"), this, &MenuBar::Stop);
|
||||||
m_reset_action = emu_menu->addAction(tr("Reset"), this, &MenuBar::Reset);
|
m_reset_action = emu_menu->addAction(tr("&Reset"), this, &MenuBar::Reset);
|
||||||
m_fullscreen_action = emu_menu->addAction(tr("Fullscreen"), this, &MenuBar::Fullscreen);
|
m_fullscreen_action = emu_menu->addAction(tr("Toggle &Fullscreen"), this, &MenuBar::Fullscreen);
|
||||||
m_frame_advance_action = emu_menu->addAction(tr("Frame Advance"), this, &MenuBar::FrameAdvance);
|
m_frame_advance_action = emu_menu->addAction(tr("&Frame Advance"), this, &MenuBar::FrameAdvance);
|
||||||
m_screenshot_action = emu_menu->addAction(tr("Take Screenshot"), this, &MenuBar::Screenshot);
|
m_screenshot_action = emu_menu->addAction(tr("Take Screenshot"), this, &MenuBar::Screenshot);
|
||||||
AddStateLoadMenu(emu_menu);
|
AddStateLoadMenu(emu_menu);
|
||||||
AddStateSaveMenu(emu_menu);
|
AddStateSaveMenu(emu_menu);
|
||||||
|
@ -122,7 +122,7 @@ void MenuBar::AddEmulationMenu()
|
||||||
|
|
||||||
void MenuBar::AddStateLoadMenu(QMenu* emu_menu)
|
void MenuBar::AddStateLoadMenu(QMenu* emu_menu)
|
||||||
{
|
{
|
||||||
m_state_load_menu = emu_menu->addMenu(tr("Load State"));
|
m_state_load_menu = emu_menu->addMenu(tr("&Load State"));
|
||||||
m_state_load_menu->addAction(tr("Load State from File"), this, &MenuBar::StateLoad);
|
m_state_load_menu->addAction(tr("Load State from File"), this, &MenuBar::StateLoad);
|
||||||
m_state_load_menu->addAction(tr("Load State from Selected Slot"), this, &MenuBar::StateLoadSlot);
|
m_state_load_menu->addAction(tr("Load State from Selected Slot"), this, &MenuBar::StateLoadSlot);
|
||||||
m_state_load_slots_menu = m_state_load_menu->addMenu(tr("Load State from Slot"));
|
m_state_load_slots_menu = m_state_load_menu->addMenu(tr("Load State from Slot"));
|
||||||
|
@ -138,7 +138,7 @@ void MenuBar::AddStateLoadMenu(QMenu* emu_menu)
|
||||||
|
|
||||||
void MenuBar::AddStateSaveMenu(QMenu* emu_menu)
|
void MenuBar::AddStateSaveMenu(QMenu* emu_menu)
|
||||||
{
|
{
|
||||||
m_state_save_menu = emu_menu->addMenu(tr("Save State"));
|
m_state_save_menu = emu_menu->addMenu(tr("Sa&ve State"));
|
||||||
m_state_save_menu->addAction(tr("Save State to File"), this, &MenuBar::StateSave);
|
m_state_save_menu->addAction(tr("Save State to File"), this, &MenuBar::StateSave);
|
||||||
m_state_save_menu->addAction(tr("Save State to Selected Slot"), this, &MenuBar::StateSaveSlot);
|
m_state_save_menu->addAction(tr("Save State to Selected Slot"), this, &MenuBar::StateSaveSlot);
|
||||||
m_state_save_menu->addAction(tr("Save State to Oldest Slot"), this, &MenuBar::StateSaveOldest);
|
m_state_save_menu->addAction(tr("Save State to Oldest Slot"), this, &MenuBar::StateSaveOldest);
|
||||||
|
@ -187,7 +187,7 @@ void MenuBar::UpdateStateSlotMenu()
|
||||||
|
|
||||||
void MenuBar::AddViewMenu()
|
void MenuBar::AddViewMenu()
|
||||||
{
|
{
|
||||||
QMenu* view_menu = addMenu(tr("View"));
|
QMenu* view_menu = addMenu(tr("&View"));
|
||||||
AddGameListTypeSection(view_menu);
|
AddGameListTypeSection(view_menu);
|
||||||
view_menu->addSeparator();
|
view_menu->addSeparator();
|
||||||
AddTableColumnsMenu(view_menu);
|
AddTableColumnsMenu(view_menu);
|
||||||
|
@ -198,39 +198,41 @@ void MenuBar::AddViewMenu()
|
||||||
|
|
||||||
void MenuBar::AddOptionsMenu()
|
void MenuBar::AddOptionsMenu()
|
||||||
{
|
{
|
||||||
QMenu* options_menu = addMenu(tr("Options"));
|
QMenu* options_menu = addMenu(tr("&Options"));
|
||||||
options_menu->addAction(tr("Co&nfiguration..."), this, &MenuBar::Configure);
|
options_menu->addAction(tr("Co&nfiguration"), this, &MenuBar::Configure);
|
||||||
options_menu->addSeparator();
|
options_menu->addSeparator();
|
||||||
options_menu->addAction(tr("&Graphics Settings..."), this, &MenuBar::ConfigureGraphics);
|
options_menu->addAction(tr("&Graphics Settings"), this, &MenuBar::ConfigureGraphics);
|
||||||
options_menu->addAction(tr("&Audio Settings..."), this, &MenuBar::ConfigureAudio);
|
options_menu->addAction(tr("&Audio Settings"), this, &MenuBar::ConfigureAudio);
|
||||||
options_menu->addAction(tr("&Controller Settings..."), this, &MenuBar::ConfigureControllers);
|
options_menu->addAction(tr("&Controller Settings"), this, &MenuBar::ConfigureControllers);
|
||||||
options_menu->addAction(tr("&Hotkey Settings..."), this, &MenuBar::ConfigureHotkeys);
|
options_menu->addAction(tr("&Hotkey Settings"), this, &MenuBar::ConfigureHotkeys);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MenuBar::AddHelpMenu()
|
void MenuBar::AddHelpMenu()
|
||||||
{
|
{
|
||||||
QMenu* help_menu = addMenu(tr("Help"));
|
QMenu* help_menu = addMenu(tr("&Help"));
|
||||||
QAction* website = help_menu->addAction(tr("Website"));
|
QAction* website = help_menu->addAction(tr("&Website"));
|
||||||
connect(website, &QAction::triggered, this,
|
connect(website, &QAction::triggered, this,
|
||||||
[]() { QDesktopServices::openUrl(QUrl(QStringLiteral("https://dolphin-emu.org/"))); });
|
[]() { QDesktopServices::openUrl(QUrl(QStringLiteral("https://dolphin-emu.org/"))); });
|
||||||
QAction* documentation = help_menu->addAction(tr("Online Documentation"));
|
QAction* documentation = help_menu->addAction(tr("Online &Documentation"));
|
||||||
connect(documentation, &QAction::triggered, this, []() {
|
connect(documentation, &QAction::triggered, this, []() {
|
||||||
QDesktopServices::openUrl(QUrl(QStringLiteral("https://dolphin-emu.org/docs/guides")));
|
QDesktopServices::openUrl(QUrl(QStringLiteral("https://dolphin-emu.org/docs/guides")));
|
||||||
});
|
});
|
||||||
QAction* github = help_menu->addAction(tr("GitHub Repository"));
|
QAction* github = help_menu->addAction(tr("&GitHub Repository"));
|
||||||
connect(github, &QAction::triggered, this, []() {
|
connect(github, &QAction::triggered, this, []() {
|
||||||
QDesktopServices::openUrl(QUrl(QStringLiteral("https://github.com/dolphin-emu/dolphin")));
|
QDesktopServices::openUrl(QUrl(QStringLiteral("https://github.com/dolphin-emu/dolphin")));
|
||||||
});
|
});
|
||||||
|
|
||||||
help_menu->addSeparator();
|
help_menu->addSeparator();
|
||||||
help_menu->addAction(tr("About"), this, &MenuBar::ShowAboutDialog);
|
help_menu->addAction(tr("&About"), this, &MenuBar::ShowAboutDialog);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MenuBar::AddGameListTypeSection(QMenu* view_menu)
|
void MenuBar::AddGameListTypeSection(QMenu* view_menu)
|
||||||
{
|
{
|
||||||
|
// i18n: When this option is enabled, the game list is displayed as a table
|
||||||
QAction* table_view = view_menu->addAction(tr("Table"));
|
QAction* table_view = view_menu->addAction(tr("Table"));
|
||||||
table_view->setCheckable(true);
|
table_view->setCheckable(true);
|
||||||
|
|
||||||
|
// i18n: When this option is enabled, the game list is displayed as a list
|
||||||
QAction* list_view = view_menu->addAction(tr("List"));
|
QAction* list_view = view_menu->addAction(tr("List"));
|
||||||
list_view->setCheckable(true);
|
list_view->setCheckable(true);
|
||||||
|
|
||||||
|
@ -257,7 +259,7 @@ void MenuBar::AddTableColumnsMenu(QMenu* view_menu)
|
||||||
{tr("Maker"), &SConfig::GetInstance().m_showMakerColumn},
|
{tr("Maker"), &SConfig::GetInstance().m_showMakerColumn},
|
||||||
{tr("Size"), &SConfig::GetInstance().m_showSizeColumn},
|
{tr("Size"), &SConfig::GetInstance().m_showSizeColumn},
|
||||||
{tr("Country"), &SConfig::GetInstance().m_showRegionColumn},
|
{tr("Country"), &SConfig::GetInstance().m_showRegionColumn},
|
||||||
{tr("Quality"), &SConfig::GetInstance().m_showStateColumn}};
|
{tr("State"), &SConfig::GetInstance().m_showStateColumn}};
|
||||||
|
|
||||||
QActionGroup* column_group = new QActionGroup(this);
|
QActionGroup* column_group = new QActionGroup(this);
|
||||||
QMenu* cols_menu = view_menu->addMenu(tr("Table Columns"));
|
QMenu* cols_menu = view_menu->addMenu(tr("Table Columns"));
|
||||||
|
@ -373,12 +375,12 @@ void MenuBar::InstallWAD()
|
||||||
if (GameFile(wad_file).Install())
|
if (GameFile(wad_file).Install())
|
||||||
{
|
{
|
||||||
result_dialog.setIcon(QMessageBox::Information);
|
result_dialog.setIcon(QMessageBox::Information);
|
||||||
result_dialog.setText(tr("Successfully installed title to the NAND"));
|
result_dialog.setText(tr("Successfully installed this title to the NAND."));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
result_dialog.setIcon(QMessageBox::Critical);
|
result_dialog.setIcon(QMessageBox::Critical);
|
||||||
result_dialog.setText(tr("Failed to install title to the NAND!"));
|
result_dialog.setText(tr("Failed to install this title to the NAND."));
|
||||||
}
|
}
|
||||||
|
|
||||||
result_dialog.exec();
|
result_dialog.exec();
|
||||||
|
|
|
@ -100,7 +100,7 @@ void GeneralPane::CreateBasic()
|
||||||
#if defined(USE_ANALYTICS) && USE_ANALYTICS
|
#if defined(USE_ANALYTICS) && USE_ANALYTICS
|
||||||
void GeneralPane::CreateAnalytics()
|
void GeneralPane::CreateAnalytics()
|
||||||
{
|
{
|
||||||
auto* analytics_group = new QGroupBox(tr("Usage Statistics Reporting"));
|
auto* analytics_group = new QGroupBox(tr("Usage Statistics Reporting Settings"));
|
||||||
auto* analytics_group_layout = new QVBoxLayout;
|
auto* analytics_group_layout = new QVBoxLayout;
|
||||||
analytics_group->setLayout(analytics_group_layout);
|
analytics_group->setLayout(analytics_group_layout);
|
||||||
m_main_layout->addWidget(analytics_group);
|
m_main_layout->addWidget(analytics_group);
|
||||||
|
|
|
@ -70,8 +70,8 @@ void InterfacePane::CreateUI()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Checkboxes
|
// Checkboxes
|
||||||
m_checkbox_auto_window = new QCheckBox(tr("Auto Adjust Window Size"));
|
m_checkbox_auto_window = new QCheckBox(tr("Auto-Adjust Window Size"));
|
||||||
m_checkbox_top_window = new QCheckBox(tr("Keep Dolphin on Top"));
|
m_checkbox_top_window = new QCheckBox(tr("Keep Window on Top"));
|
||||||
m_checkbox_render_to_window = new QCheckBox(tr("Render to Main Window"));
|
m_checkbox_render_to_window = new QCheckBox(tr("Render to Main Window"));
|
||||||
m_checkbox_use_builtin_title_database = new QCheckBox(tr("Use Built-In Database of Game Names"));
|
m_checkbox_use_builtin_title_database = new QCheckBox(tr("Use Built-In Database of Game Names"));
|
||||||
groupbox_layout->addWidget(m_checkbox_auto_window);
|
groupbox_layout->addWidget(m_checkbox_auto_window);
|
||||||
|
@ -89,7 +89,7 @@ void InterfacePane::CreateInGame()
|
||||||
|
|
||||||
m_checkbox_confirm_on_stop = new QCheckBox(tr("Confirm on Stop"));
|
m_checkbox_confirm_on_stop = new QCheckBox(tr("Confirm on Stop"));
|
||||||
m_checkbox_use_panic_handlers = new QCheckBox(tr("Use Panic Handlers"));
|
m_checkbox_use_panic_handlers = new QCheckBox(tr("Use Panic Handlers"));
|
||||||
m_checkbox_enable_osd = new QCheckBox(tr("Enable On Screen Messages"));
|
m_checkbox_enable_osd = new QCheckBox(tr("Show On-Screen Messages"));
|
||||||
m_checkbox_show_active_title = new QCheckBox(tr("Show Active Title in Window Title"));
|
m_checkbox_show_active_title = new QCheckBox(tr("Show Active Title in Window Title"));
|
||||||
m_checkbox_pause_on_focus_lost = new QCheckBox(tr("Pause on Focus Loss"));
|
m_checkbox_pause_on_focus_lost = new QCheckBox(tr("Pause on Focus Loss"));
|
||||||
m_checkbox_hide_mouse = new QCheckBox(tr("Hide Mouse Cursor"));
|
m_checkbox_hide_mouse = new QCheckBox(tr("Hide Mouse Cursor"));
|
||||||
|
|
|
@ -123,7 +123,7 @@ QGridLayout* PathPane::MakePathsLayout()
|
||||||
[=] { SConfig::GetInstance().m_strDefaultISO = m_game_edit->text().toStdString(); });
|
[=] { SConfig::GetInstance().m_strDefaultISO = m_game_edit->text().toStdString(); });
|
||||||
QPushButton* game_open = new QPushButton;
|
QPushButton* game_open = new QPushButton;
|
||||||
connect(game_open, &QPushButton::clicked, this, &PathPane::BrowseDefaultGame);
|
connect(game_open, &QPushButton::clicked, this, &PathPane::BrowseDefaultGame);
|
||||||
layout->addWidget(new QLabel(tr("Default Game")), 0, 0);
|
layout->addWidget(new QLabel(tr("Default ISO:")), 0, 0);
|
||||||
layout->addWidget(m_game_edit, 0, 1);
|
layout->addWidget(m_game_edit, 0, 1);
|
||||||
layout->addWidget(game_open, 0, 2);
|
layout->addWidget(game_open, 0, 2);
|
||||||
|
|
||||||
|
@ -132,7 +132,7 @@ QGridLayout* PathPane::MakePathsLayout()
|
||||||
[=] { SConfig::GetInstance().m_strDVDRoot = m_dvd_edit->text().toStdString(); });
|
[=] { SConfig::GetInstance().m_strDVDRoot = m_dvd_edit->text().toStdString(); });
|
||||||
QPushButton* dvd_open = new QPushButton;
|
QPushButton* dvd_open = new QPushButton;
|
||||||
connect(dvd_open, &QPushButton::clicked, this, &PathPane::BrowseDVDRoot);
|
connect(dvd_open, &QPushButton::clicked, this, &PathPane::BrowseDVDRoot);
|
||||||
layout->addWidget(new QLabel(tr("DVD Root")), 1, 0);
|
layout->addWidget(new QLabel(tr("DVD Root:")), 1, 0);
|
||||||
layout->addWidget(m_dvd_edit, 1, 1);
|
layout->addWidget(m_dvd_edit, 1, 1);
|
||||||
layout->addWidget(dvd_open, 1, 2);
|
layout->addWidget(dvd_open, 1, 2);
|
||||||
|
|
||||||
|
@ -141,7 +141,7 @@ QGridLayout* PathPane::MakePathsLayout()
|
||||||
[=] { SConfig::GetInstance().m_strApploader = m_app_edit->text().toStdString(); });
|
[=] { SConfig::GetInstance().m_strApploader = m_app_edit->text().toStdString(); });
|
||||||
QPushButton* app_open = new QPushButton;
|
QPushButton* app_open = new QPushButton;
|
||||||
connect(app_open, &QPushButton::clicked, this, &PathPane::BrowseApploader);
|
connect(app_open, &QPushButton::clicked, this, &PathPane::BrowseApploader);
|
||||||
layout->addWidget(new QLabel(tr("Apploader")), 2, 0);
|
layout->addWidget(new QLabel(tr("Apploader:")), 2, 0);
|
||||||
layout->addWidget(m_app_edit, 2, 1);
|
layout->addWidget(m_app_edit, 2, 1);
|
||||||
layout->addWidget(app_open, 2, 2);
|
layout->addWidget(app_open, 2, 2);
|
||||||
|
|
||||||
|
@ -150,7 +150,7 @@ QGridLayout* PathPane::MakePathsLayout()
|
||||||
[=] { SConfig::GetInstance().m_NANDPath = m_nand_edit->text().toStdString(); });
|
[=] { SConfig::GetInstance().m_NANDPath = m_nand_edit->text().toStdString(); });
|
||||||
QPushButton* nand_open = new QPushButton;
|
QPushButton* nand_open = new QPushButton;
|
||||||
connect(nand_open, &QPushButton::clicked, this, &PathPane::BrowseWiiNAND);
|
connect(nand_open, &QPushButton::clicked, this, &PathPane::BrowseWiiNAND);
|
||||||
layout->addWidget(new QLabel(tr("Wii NAND Root")), 3, 0);
|
layout->addWidget(new QLabel(tr("Wii NAND Root:")), 3, 0);
|
||||||
layout->addWidget(m_nand_edit, 3, 1);
|
layout->addWidget(m_nand_edit, 3, 1);
|
||||||
layout->addWidget(nand_open, 3, 2);
|
layout->addWidget(nand_open, 3, 2);
|
||||||
|
|
||||||
|
|
|
@ -72,15 +72,15 @@ void ToolBar::MakeActions()
|
||||||
m_stop_action = addAction(tr("Stop"), this, &ToolBar::StopPressed);
|
m_stop_action = addAction(tr("Stop"), this, &ToolBar::StopPressed);
|
||||||
widgetForAction(m_stop_action)->setMinimumWidth(button_width);
|
widgetForAction(m_stop_action)->setMinimumWidth(button_width);
|
||||||
|
|
||||||
m_fullscreen_action = addAction(tr("Full Screen"), this, &ToolBar::FullScreenPressed);
|
m_fullscreen_action = addAction(tr("FullScr"), this, &ToolBar::FullScreenPressed);
|
||||||
widgetForAction(m_fullscreen_action)->setMinimumWidth(button_width);
|
widgetForAction(m_fullscreen_action)->setMinimumWidth(button_width);
|
||||||
|
|
||||||
m_screenshot_action = addAction(tr("Screen Shot"), this, &ToolBar::ScreenShotPressed);
|
m_screenshot_action = addAction(tr("ScrShot"), this, &ToolBar::ScreenShotPressed);
|
||||||
widgetForAction(m_screenshot_action)->setMinimumWidth(button_width);
|
widgetForAction(m_screenshot_action)->setMinimumWidth(button_width);
|
||||||
|
|
||||||
addSeparator();
|
addSeparator();
|
||||||
|
|
||||||
m_config_action = addAction(tr("Settings"), this, &ToolBar::SettingsPressed);
|
m_config_action = addAction(tr("Config"), this, &ToolBar::SettingsPressed);
|
||||||
widgetForAction(m_config_action)->setMinimumWidth(button_width);
|
widgetForAction(m_config_action)->setMinimumWidth(button_width);
|
||||||
|
|
||||||
m_graphics_action = addAction(tr("Graphics"), this, &ToolBar::GraphicsPressed);
|
m_graphics_action = addAction(tr("Graphics"), this, &ToolBar::GraphicsPressed);
|
||||||
|
|
|
@ -19,7 +19,7 @@ GCAdapterConfigDiag::GCAdapterConfigDiag(wxWindow* const parent, const wxString&
|
||||||
const int tab_num)
|
const int tab_num)
|
||||||
: wxDialog(parent, wxID_ANY, name), m_pad_id(tab_num)
|
: wxDialog(parent, wxID_ANY, name), m_pad_id(tab_num)
|
||||||
{
|
{
|
||||||
wxCheckBox* const gamecube_rumble = new wxCheckBox(this, wxID_ANY, _("Rumble"));
|
wxCheckBox* const gamecube_rumble = new wxCheckBox(this, wxID_ANY, _("Enable Rumble"));
|
||||||
gamecube_rumble->SetValue(SConfig::GetInstance().m_AdapterRumble[m_pad_id]);
|
gamecube_rumble->SetValue(SConfig::GetInstance().m_AdapterRumble[m_pad_id]);
|
||||||
gamecube_rumble->Bind(wxEVT_CHECKBOX, &GCAdapterConfigDiag::OnAdapterRumble, this);
|
gamecube_rumble->Bind(wxEVT_CHECKBOX, &GCAdapterConfigDiag::OnAdapterRumble, this);
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ GCAdapterConfigDiag::GCAdapterConfigDiag(wxWindow* const parent, const wxString&
|
||||||
gamecube_konga->SetValue(SConfig::GetInstance().m_AdapterKonga[m_pad_id]);
|
gamecube_konga->SetValue(SConfig::GetInstance().m_AdapterKonga[m_pad_id]);
|
||||||
gamecube_konga->Bind(wxEVT_CHECKBOX, &GCAdapterConfigDiag::OnAdapterKonga, this);
|
gamecube_konga->Bind(wxEVT_CHECKBOX, &GCAdapterConfigDiag::OnAdapterKonga, this);
|
||||||
|
|
||||||
m_adapter_status = new wxStaticText(this, wxID_ANY, _("Adapter Not Detected"));
|
m_adapter_status = new wxStaticText(this, wxID_ANY, _("No Adapter Detected"));
|
||||||
|
|
||||||
if (!GCAdapter::IsDetected())
|
if (!GCAdapter::IsDetected())
|
||||||
{
|
{
|
||||||
|
@ -75,7 +75,7 @@ void GCAdapterConfigDiag::OnUpdateAdapter(wxCommandEvent& WXUNUSED(event))
|
||||||
if (GCAdapter::IsDetected())
|
if (GCAdapter::IsDetected())
|
||||||
m_adapter_status->SetLabelText(_("Adapter Detected"));
|
m_adapter_status->SetLabelText(_("Adapter Detected"));
|
||||||
else
|
else
|
||||||
m_adapter_status->SetLabelText(_("Adapter Not Detected"));
|
m_adapter_status->SetLabelText(_("No Adapter Detected"));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -68,7 +68,7 @@ void GeneralConfigPane::InitializeGUI()
|
||||||
m_throttler_choice =
|
m_throttler_choice =
|
||||||
new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_throttler_array_string);
|
new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_throttler_array_string);
|
||||||
m_cpu_engine_radiobox =
|
m_cpu_engine_radiobox =
|
||||||
new wxRadioBox(this, wxID_ANY, _("CPU Emulator Engine"), wxDefaultPosition, wxDefaultSize,
|
new wxRadioBox(this, wxID_ANY, _("CPU Emulation Engine"), wxDefaultPosition, wxDefaultSize,
|
||||||
m_cpu_engine_array_string, 0, wxRA_SPECIFY_ROWS);
|
m_cpu_engine_array_string, 0, wxRA_SPECIFY_ROWS);
|
||||||
|
|
||||||
m_dual_core_checkbox->SetToolTip(
|
m_dual_core_checkbox->SetToolTip(
|
||||||
|
@ -230,5 +230,5 @@ void GeneralConfigPane::OnAnalyticsCheckBoxChanged(wxCommandEvent& event)
|
||||||
void GeneralConfigPane::OnAnalyticsNewIdButtonClick(wxCommandEvent& event)
|
void GeneralConfigPane::OnAnalyticsNewIdButtonClick(wxCommandEvent& event)
|
||||||
{
|
{
|
||||||
DolphinAnalytics::Instance()->GenerateNewIdentity();
|
DolphinAnalytics::Instance()->GenerateNewIdentity();
|
||||||
wxMessageBox(_("New identity generated."), _("Identity generation"), wxICON_INFORMATION);
|
wxMessageBox(_("New identity generated."), _("Identity Generation"), wxICON_INFORMATION);
|
||||||
}
|
}
|
||||||
|
|
|
@ -87,12 +87,12 @@ void InterfaceConfigPane::InitializeGUI()
|
||||||
|
|
||||||
m_confirm_stop_checkbox = new wxCheckBox(this, wxID_ANY, _("Confirm on Stop"));
|
m_confirm_stop_checkbox = new wxCheckBox(this, wxID_ANY, _("Confirm on Stop"));
|
||||||
m_panic_handlers_checkbox = new wxCheckBox(this, wxID_ANY, _("Use Panic Handlers"));
|
m_panic_handlers_checkbox = new wxCheckBox(this, wxID_ANY, _("Use Panic Handlers"));
|
||||||
m_osd_messages_checkbox = new wxCheckBox(this, wxID_ANY, _("On-Screen Display Messages"));
|
m_osd_messages_checkbox = new wxCheckBox(this, wxID_ANY, _("Show On-Screen Messages"));
|
||||||
m_show_active_title_checkbox =
|
m_show_active_title_checkbox =
|
||||||
new wxCheckBox(this, wxID_ANY, _("Show Active Title in Window Title"));
|
new wxCheckBox(this, wxID_ANY, _("Show Active Title in Window Title"));
|
||||||
m_use_builtin_title_database_checkbox =
|
m_use_builtin_title_database_checkbox =
|
||||||
new wxCheckBox(this, wxID_ANY, _("Use Built-In Database of Game Names"));
|
new wxCheckBox(this, wxID_ANY, _("Use Built-In Database of Game Names"));
|
||||||
m_pause_focus_lost_checkbox = new wxCheckBox(this, wxID_ANY, _("Pause on Focus Lost"));
|
m_pause_focus_lost_checkbox = new wxCheckBox(this, wxID_ANY, _("Pause on Focus Loss"));
|
||||||
m_interface_lang_choice =
|
m_interface_lang_choice =
|
||||||
new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_interface_lang_strings);
|
new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_interface_lang_strings);
|
||||||
m_theme_choice = new wxChoice(this, wxID_ANY);
|
m_theme_choice = new wxChoice(this, wxID_ANY);
|
||||||
|
|
|
@ -442,7 +442,7 @@ VideoConfigDiag::VideoConfigDiag(wxWindow* parent, const std::string& title)
|
||||||
szr_other->Add(CreateCheckBox(page_general, _("Log Render Time to File"),
|
szr_other->Add(CreateCheckBox(page_general, _("Log Render Time to File"),
|
||||||
wxGetTranslation(log_render_time_to_file_desc),
|
wxGetTranslation(log_render_time_to_file_desc),
|
||||||
Config::GFX_LOG_RENDER_TIME_TO_FILE));
|
Config::GFX_LOG_RENDER_TIME_TO_FILE));
|
||||||
szr_other->Add(CreateCheckBoxRefBool(page_general, _("Auto Adjust Window Size"),
|
szr_other->Add(CreateCheckBoxRefBool(page_general, _("Auto-Adjust Window Size"),
|
||||||
wxGetTranslation(auto_window_size_desc),
|
wxGetTranslation(auto_window_size_desc),
|
||||||
SConfig::GetInstance().bRenderWindowAutoSize));
|
SConfig::GetInstance().bRenderWindowAutoSize));
|
||||||
szr_other->Add(CreateCheckBox(page_general, _("Show NetPlay Messages"),
|
szr_other->Add(CreateCheckBox(page_general, _("Show NetPlay Messages"),
|
||||||
|
@ -552,7 +552,7 @@ VideoConfigDiag::VideoConfigDiag(wxWindow* parent, const std::string& title)
|
||||||
|
|
||||||
// AF
|
// AF
|
||||||
{
|
{
|
||||||
const std::array<wxString, 5> af_choices{{"1x", "2x", "4x", "8x", "16x"}};
|
const std::array<wxString, 5> af_choices{{_("1x"), _("2x"), _("4x"), _("8x"), _("16x")}};
|
||||||
szr_enh->Add(new wxStaticText(page_enh, wxID_ANY, _("Anisotropic Filtering:")),
|
szr_enh->Add(new wxStaticText(page_enh, wxID_ANY, _("Anisotropic Filtering:")),
|
||||||
wxGBPosition(row, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
|
wxGBPosition(row, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
|
||||||
szr_enh->Add(CreateChoice(page_enh, Config::GFX_ENHANCE_MAX_ANISOTROPY,
|
szr_enh->Add(CreateChoice(page_enh, Config::GFX_ENHANCE_MAX_ANISOTROPY,
|
||||||
|
|
|
@ -17,7 +17,8 @@
|
||||||
|
|
||||||
namespace ControllerEmu
|
namespace ControllerEmu
|
||||||
{
|
{
|
||||||
Slider::Slider(const std::string& name_) : ControlGroup(name_, GroupType::Slider)
|
Slider::Slider(const std::string& name, const std::string& ui_name)
|
||||||
|
: ControlGroup(name, ui_name, GroupType::Slider)
|
||||||
{
|
{
|
||||||
controls.emplace_back(std::make_unique<Input>("Left"));
|
controls.emplace_back(std::make_unique<Input>("Left"));
|
||||||
controls.emplace_back(std::make_unique<Input>("Right"));
|
controls.emplace_back(std::make_unique<Input>("Right"));
|
||||||
|
@ -25,6 +26,10 @@ Slider::Slider(const std::string& name_) : ControlGroup(name_, GroupType::Slider
|
||||||
numeric_settings.emplace_back(std::make_unique<NumericSetting>(_trans("Dead Zone"), 0, 0, 50));
|
numeric_settings.emplace_back(std::make_unique<NumericSetting>(_trans("Dead Zone"), 0, 0, 50));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Slider::Slider(const std::string& name) : Slider(name, name)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
void Slider::GetState(ControlState* const slider)
|
void Slider::GetState(ControlState* const slider)
|
||||||
{
|
{
|
||||||
const ControlState deadzone = numeric_settings[0]->GetValue();
|
const ControlState deadzone = numeric_settings[0]->GetValue();
|
||||||
|
|
|
@ -13,6 +13,7 @@ namespace ControllerEmu
|
||||||
class Slider : public ControlGroup
|
class Slider : public ControlGroup
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
Slider(const std::string& name, const std::string& ui_name);
|
||||||
explicit Slider(const std::string& name);
|
explicit Slider(const std::string& name);
|
||||||
|
|
||||||
void GetState(ControlState* slider);
|
void GetState(ControlState* slider);
|
||||||
|
|
Loading…
Reference in New Issue