Qt: enlarge some tooltip hover areas in settings

This commit is contained in:
Megamouse 2020-01-19 09:16:22 +01:00
parent 9ef96e8274
commit 30d5a849e3
3 changed files with 301 additions and 167 deletions

View file

@ -193,16 +193,16 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Comboboxes // Comboboxes
xemu_settings->EnhanceComboBox(ui->spuBlockSize, emu_settings::SPUBlockSize); xemu_settings->EnhanceComboBox(ui->spuBlockSize, emu_settings::SPUBlockSize);
SubscribeTooltip(ui->spuBlockSize, json_cpu_cbo["spuBlockSize"].toString()); SubscribeTooltip(ui->gb_spuBlockSize, json_cpu_cbo["spuBlockSize"].toString());
xemu_settings->EnhanceComboBox(ui->preferredSPUThreads, emu_settings::PreferredSPUThreads, true); xemu_settings->EnhanceComboBox(ui->preferredSPUThreads, emu_settings::PreferredSPUThreads, true);
SubscribeTooltip(ui->preferredSPUThreads, json_cpu_cbo["preferredSPUThreads"].toString()); SubscribeTooltip(ui->gb_spu_threads, json_cpu_cbo["preferredSPUThreads"].toString());
ui->preferredSPUThreads->setItemText(ui->preferredSPUThreads->findData("0"), tr("Auto")); ui->preferredSPUThreads->setItemText(ui->preferredSPUThreads->findData("0"), tr("Auto"));
if (utils::has_rtm()) if (utils::has_rtm())
{ {
xemu_settings->EnhanceComboBox(ui->enableTSX, emu_settings::EnableTSX); xemu_settings->EnhanceComboBox(ui->enableTSX, emu_settings::EnableTSX);
SubscribeTooltip(ui->enableTSX, json_cpu_cbo["enableTSX"].toString()); SubscribeTooltip(ui->gb_tsx, json_cpu_cbo["enableTSX"].toString());
static const QString tsx_forced = qstr(fmt::format("%s", tsx_usage::forced)); static const QString tsx_forced = qstr(fmt::format("%s", tsx_usage::forced));
static const QString tsx_default = qstr(xemu_settings->GetSettingDefault(emu_settings::EnableTSX)); static const QString tsx_default = qstr(xemu_settings->GetSettingDefault(emu_settings::EnableTSX));
@ -320,14 +320,14 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Comboboxes // Comboboxes
xemu_settings->EnhanceComboBox(ui->renderBox, emu_settings::Renderer); xemu_settings->EnhanceComboBox(ui->renderBox, emu_settings::Renderer);
SubscribeTooltip(ui->renderBox, json_gpu_cbo["renderBox"].toString()); SubscribeTooltip(ui->gb_renderer, json_gpu_cbo["renderBox"].toString());
SubscribeTooltip(ui->graphicsAdapterBox, json_gpu_cbo["graphicsAdapterBox"].toString()); SubscribeTooltip(ui->gb_graphicsAdapter, json_gpu_cbo["graphicsAdapterBox"].toString());
// Change displayed renderer names // Change displayed renderer names
ui->renderBox->setItemText(ui->renderBox->findData("Null"), render_creator.name_Null); ui->renderBox->setItemText(ui->renderBox->findData("Null"), render_creator.name_Null);
xemu_settings->EnhanceComboBox(ui->resBox, emu_settings::Resolution); xemu_settings->EnhanceComboBox(ui->resBox, emu_settings::Resolution);
SubscribeTooltip(ui->resBox, json_gpu_cbo["resBox"].toString()); SubscribeTooltip(ui->gb_default_resolution, json_gpu_cbo["resBox"].toString());
// remove unsupported resolutions from the dropdown // remove unsupported resolutions from the dropdown
const int saved_index = ui->resBox->currentIndex(); const int saved_index = ui->resBox->currentIndex();
bool saved_index_removed = false; bool saved_index_removed = false;
@ -378,16 +378,16 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
} }
xemu_settings->EnhanceComboBox(ui->aspectBox, emu_settings::AspectRatio); xemu_settings->EnhanceComboBox(ui->aspectBox, emu_settings::AspectRatio);
SubscribeTooltip(ui->aspectBox, json_gpu_cbo["aspectBox"].toString()); SubscribeTooltip(ui->gb_aspectRatio, json_gpu_cbo["aspectBox"].toString());
xemu_settings->EnhanceComboBox(ui->frameLimitBox, emu_settings::FrameLimit); xemu_settings->EnhanceComboBox(ui->frameLimitBox, emu_settings::FrameLimit);
SubscribeTooltip(ui->frameLimitBox, json_gpu_cbo["frameLimitBox"].toString()); SubscribeTooltip(ui->gb_frameLimit, json_gpu_cbo["frameLimitBox"].toString());
xemu_settings->EnhanceComboBox(ui->antiAliasing, emu_settings::MSAA); xemu_settings->EnhanceComboBox(ui->antiAliasing, emu_settings::MSAA);
SubscribeTooltip(ui->antiAliasing, json_gpu_cbo["antiAliasing"].toString()); SubscribeTooltip(ui->gb_antiAliasing, json_gpu_cbo["antiAliasing"].toString());
xemu_settings->EnhanceComboBox(ui->anisotropicFilterOverride, emu_settings::AnisotropicFilterOverride, true); xemu_settings->EnhanceComboBox(ui->anisotropicFilterOverride, emu_settings::AnisotropicFilterOverride, true);
SubscribeTooltip(ui->anisotropicFilterOverride, json_gpu_cbo["anisotropicFilterOverride"].toString()); SubscribeTooltip(ui->gb_anisotropicFilter, json_gpu_cbo["anisotropicFilterOverride"].toString());
// only allow values 0,2,4,8,16 // only allow values 0,2,4,8,16
for (int i = ui->anisotropicFilterOverride->count() - 1; i >= 0; i--) for (int i = ui->anisotropicFilterOverride->count() - 1; i >= 0; i--)
{ {
@ -738,9 +738,9 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
xemu_settings->EnhanceComboBox(ui->audioOutBox, emu_settings::AudioRenderer); xemu_settings->EnhanceComboBox(ui->audioOutBox, emu_settings::AudioRenderer);
#ifdef WIN32 #ifdef WIN32
SubscribeTooltip(ui->audioOutBox, json_audio["audioOutBox"].toString()); SubscribeTooltip(ui->gb_audio_out, json_audio["audioOutBox"].toString());
#else #else
SubscribeTooltip(ui->audioOutBox, json_audio["audioOutBox_Linux"].toString()); SubscribeTooltip(ui->gb_audio_out, json_audio["audioOutBox_Linux"].toString());
#endif #endif
// Change displayed backend names // Change displayed backend names
ui->audioOutBox->setItemText(ui->renderBox->findData("Null"), tr("Disable Audio Output")); ui->audioOutBox->setItemText(ui->renderBox->findData("Null"), tr("Disable Audio Output"));
@ -801,13 +801,13 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Sliders // Sliders
EnhanceSlider(emu_settings::MasterVolume, ui->masterVolume, ui->masterVolumeLabel, tr("Master: %0 %")); EnhanceSlider(emu_settings::MasterVolume, ui->masterVolume, ui->masterVolumeLabel, tr("Master: %0 %"));
SubscribeTooltip(ui->masterVolume, json_audio["masterVolume"].toString()); SubscribeTooltip(ui->master_volume, json_audio["masterVolume"].toString());
EnhanceSlider(emu_settings::AudioBufferDuration, ui->audioBufferDuration, ui->audioBufferDurationLabel, tr("Audio Buffer Duration: %0 ms")); EnhanceSlider(emu_settings::AudioBufferDuration, ui->audioBufferDuration, ui->audioBufferDurationLabel, tr("Audio Buffer Duration: %0 ms"));
SubscribeTooltip({ ui->audioBufferDuration, ui->audioBufferDurationLabel }, json_audio["audioBufferDuration"].toString()); SubscribeTooltip(ui->audio_buffer_duration, json_audio["audioBufferDuration"].toString());
EnhanceSlider(emu_settings::TimeStretchingThreshold, ui->timeStretchingThreshold, ui->timeStretchingThresholdLabel, tr("Time Stretching Threshold: %0 %")); EnhanceSlider(emu_settings::TimeStretchingThreshold, ui->timeStretchingThreshold, ui->timeStretchingThresholdLabel, tr("Time Stretching Threshold: %0 %"));
SubscribeTooltip({ ui->timeStretchingThreshold, ui->timeStretchingThresholdLabel }, json_audio["timeStretchingThreshold"].toString()); SubscribeTooltip(ui->time_stretching_threshold, json_audio["timeStretchingThreshold"].toString());
// _____ __ ____ _______ _ // _____ __ ____ _______ _
// |_ _| / / / __ \ |__ __| | | // |_ _| / / / __ \ |__ __| | |
@ -819,19 +819,19 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Comboboxes // Comboboxes
xemu_settings->EnhanceComboBox(ui->keyboardHandlerBox, emu_settings::KeyboardHandler); xemu_settings->EnhanceComboBox(ui->keyboardHandlerBox, emu_settings::KeyboardHandler);
SubscribeTooltip(ui->keyboardHandlerBox, json_input["keyboardHandlerBox"].toString()); SubscribeTooltip(ui->gb_keyboard_handler, json_input["keyboardHandlerBox"].toString());
xemu_settings->EnhanceComboBox(ui->mouseHandlerBox, emu_settings::MouseHandler); xemu_settings->EnhanceComboBox(ui->mouseHandlerBox, emu_settings::MouseHandler);
SubscribeTooltip(ui->mouseHandlerBox, json_input["mouseHandlerBox"].toString()); SubscribeTooltip(ui->gb_mouse_handler, json_input["mouseHandlerBox"].toString());
xemu_settings->EnhanceComboBox(ui->cameraTypeBox, emu_settings::CameraType); xemu_settings->EnhanceComboBox(ui->cameraTypeBox, emu_settings::CameraType);
SubscribeTooltip(ui->cameraTypeBox, json_input["cameraTypeBox"].toString()); SubscribeTooltip(ui->gb_camera_type, json_input["cameraTypeBox"].toString());
xemu_settings->EnhanceComboBox(ui->cameraBox, emu_settings::Camera); xemu_settings->EnhanceComboBox(ui->cameraBox, emu_settings::Camera);
SubscribeTooltip(ui->cameraBox, json_input["cameraBox"].toString()); SubscribeTooltip(ui->gb_camera_setting, json_input["cameraBox"].toString());
xemu_settings->EnhanceComboBox(ui->moveBox, emu_settings::Move); xemu_settings->EnhanceComboBox(ui->moveBox, emu_settings::Move);
SubscribeTooltip(ui->moveBox, json_input["moveBox"].toString()); SubscribeTooltip(ui->gb_move_handler, json_input["moveBox"].toString());
// _____ _ _______ _ // _____ _ _______ _
// / ____| | | |__ __| | | // / ____| | | |__ __| | |
@ -845,10 +845,10 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Comboboxes // Comboboxes
xemu_settings->EnhanceComboBox(ui->sysLangBox, emu_settings::Language, false, false, 0, true); xemu_settings->EnhanceComboBox(ui->sysLangBox, emu_settings::Language, false, false, 0, true);
SubscribeTooltip(ui->sysLangBox, json_sys["sysLangBox"].toString()); SubscribeTooltip(ui->gb_sysLang, json_sys["sysLangBox"].toString());
xemu_settings->EnhanceComboBox(ui->keyboardType, emu_settings::KeyboardType, false, false, 0, true); xemu_settings->EnhanceComboBox(ui->keyboardType, emu_settings::KeyboardType, false, false, 0, true);
SubscribeTooltip(ui->keyboardType, json_sys["keyboardType"].toString()); SubscribeTooltip(ui->gb_keyboardType, json_sys["keyboardType"].toString());
// Checkboxes // Checkboxes
@ -856,13 +856,12 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
SubscribeTooltip(ui->enableHostRoot, json_sys["enableHostRoot"].toString()); SubscribeTooltip(ui->enableHostRoot, json_sys["enableHostRoot"].toString());
xemu_settings->EnhanceCheckBox(ui->enableCacheClearing, emu_settings::LimitCacheSize); xemu_settings->EnhanceCheckBox(ui->enableCacheClearing, emu_settings::LimitCacheSize);
SubscribeTooltip(ui->enableCacheClearing, json_sys["limitCacheSize"].toString()); SubscribeTooltip(ui->gb_DiskCacheClearing, json_sys["limitCacheSize"].toString());
connect(ui->enableCacheClearing, &QCheckBox::stateChanged, ui->maximumCacheSize, &QSlider::setEnabled); connect(ui->enableCacheClearing, &QCheckBox::stateChanged, ui->maximumCacheSize, &QSlider::setEnabled);
// Sliders // Sliders
EnhanceSlider(emu_settings::MaximumCacheSize, ui->maximumCacheSize, ui->maximumCacheSizeLabel, tr("Maximum size: %0 MB")); EnhanceSlider(emu_settings::MaximumCacheSize, ui->maximumCacheSize, ui->maximumCacheSizeLabel, tr("Maximum size: %0 MB"));
SubscribeTooltip(ui->maximumCacheSize, json_sys["limitCacheSize"].toString());
ui->maximumCacheSize->setEnabled(ui->enableCacheClearing->isChecked()); ui->maximumCacheSize->setEnabled(ui->enableCacheClearing->isChecked());
// Radio Buttons // Radio Buttons
@ -904,7 +903,7 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Comboboxes // Comboboxes
xemu_settings->EnhanceComboBox(ui->netStatusBox, emu_settings::ConnectionStatus); xemu_settings->EnhanceComboBox(ui->netStatusBox, emu_settings::ConnectionStatus);
SubscribeTooltip(ui->netStatusBox, json_net["netStatusBox"].toString()); SubscribeTooltip(ui->gb_network_status, json_net["netStatusBox"].toString());
// _ _ _______ _ // _ _ _______ _
@ -939,10 +938,10 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
xemu_settings->EnhanceComboBox(ui->maxSPURSThreads, emu_settings::MaxSPURSThreads, true); xemu_settings->EnhanceComboBox(ui->maxSPURSThreads, emu_settings::MaxSPURSThreads, true);
ui->maxSPURSThreads->setItemText(ui->maxSPURSThreads->findData("6"), tr("Unlimited (Default)")); ui->maxSPURSThreads->setItemText(ui->maxSPURSThreads->findData("6"), tr("Unlimited (Default)"));
SubscribeTooltip(ui->maxSPURSThreads, json_advanced["maxSPURSThreads"].toString()); SubscribeTooltip(ui->gb_max_spurs_threads, json_advanced["maxSPURSThreads"].toString());
xemu_settings->EnhanceComboBox(ui->sleepTimersAccuracy, emu_settings::SleepTimersAccuracy); xemu_settings->EnhanceComboBox(ui->sleepTimersAccuracy, emu_settings::SleepTimersAccuracy);
SubscribeTooltip(ui->sleepTimersAccuracy, json_advanced["sleepTimersAccuracy"].toString()); SubscribeTooltip(ui->gb_sleep_timers_accuracy, json_advanced["sleepTimersAccuracy"].toString());
// Sliders // Sliders
@ -978,19 +977,19 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
{ {
ui->vblank->setDisabled(true); ui->vblank->setDisabled(true);
ui->vblankReset->setDisabled(true); ui->vblankReset->setDisabled(true);
SubscribeTooltip(ui->vblank, json_advanced["disabledFromGlobal"].toString()); SubscribeTooltip(ui->gb_vblank, json_advanced["disabledFromGlobal"].toString());
ui->clockScale->setDisabled(true); ui->clockScale->setDisabled(true);
ui->clockScaleReset->setDisabled(true); ui->clockScaleReset->setDisabled(true);
SubscribeTooltip(ui->clockScale, json_advanced["disabledFromGlobal"].toString()); SubscribeTooltip(ui->gb_clockScale, json_advanced["disabledFromGlobal"].toString());
ui->wakeupDelay->setDisabled(true); ui->wakeupDelay->setDisabled(true);
ui->wakeupReset->setDisabled(true); ui->wakeupReset->setDisabled(true);
SubscribeTooltip(ui->wakeupDelay, json_advanced["disabledFromGlobal"].toString()); SubscribeTooltip(ui->gb_wakeupDelay, json_advanced["disabledFromGlobal"].toString());
} }
else else
{ {
SubscribeTooltip(ui->vblank, json_advanced["vblankRate"].toString()); SubscribeTooltip(ui->gb_vblank, json_advanced["vblankRate"].toString());
SubscribeTooltip(ui->clockScale, json_advanced["clocksScale"].toString()); SubscribeTooltip(ui->gb_clockScale, json_advanced["clocksScale"].toString());
SubscribeTooltip(ui->wakeupDelay, json_advanced["wakeupDelay"].toString()); SubscribeTooltip(ui->gb_wakeupDelay, json_advanced["wakeupDelay"].toString());
} }
// lib options tool tips // lib options tool tips
@ -1148,14 +1147,14 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Comboboxes // Comboboxes
xemu_settings->EnhanceComboBox(ui->maxLLVMThreads, emu_settings::MaxLLVMThreads, true, true, std::thread::hardware_concurrency()); xemu_settings->EnhanceComboBox(ui->maxLLVMThreads, emu_settings::MaxLLVMThreads, true, true, std::thread::hardware_concurrency());
SubscribeTooltip(ui->maxLLVMThreads, json_emu_misc["maxLLVMThreads"].toString()); SubscribeTooltip(ui->gb_max_llvm, json_emu_misc["maxLLVMThreads"].toString());
ui->maxLLVMThreads->setItemText(ui->maxLLVMThreads->findData("0"), tr("All (%1)").arg(std::thread::hardware_concurrency())); ui->maxLLVMThreads->setItemText(ui->maxLLVMThreads->findData("0"), tr("All (%1)").arg(std::thread::hardware_concurrency()));
xemu_settings->EnhanceComboBox(ui->perfOverlayDetailLevel, emu_settings::PerfOverlayDetailLevel); xemu_settings->EnhanceComboBox(ui->perfOverlayDetailLevel, emu_settings::PerfOverlayDetailLevel);
SubscribeTooltip(ui->perfOverlayDetailLevel, json_emu_overlay["perfOverlayDetailLevel"].toString()); SubscribeTooltip(ui->perf_overlay_detail_level, json_emu_overlay["perfOverlayDetailLevel"].toString());
xemu_settings->EnhanceComboBox(ui->perfOverlayPosition, emu_settings::PerfOverlayPosition); xemu_settings->EnhanceComboBox(ui->perfOverlayPosition, emu_settings::PerfOverlayPosition);
SubscribeTooltip(ui->perfOverlayPosition, json_emu_overlay["perfOverlayPosition"].toString()); SubscribeTooltip(ui->perf_overlay_position, json_emu_overlay["perfOverlayPosition"].toString());
// Checkboxes // Checkboxes
@ -1247,13 +1246,13 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Sliders // Sliders
EnhanceSlider(emu_settings::PerfOverlayUpdateInterval, ui->perfOverlayUpdateInterval, ui->label_update_interval, tr("Update Interval: %0 ms")); EnhanceSlider(emu_settings::PerfOverlayUpdateInterval, ui->perfOverlayUpdateInterval, ui->label_update_interval, tr("Update Interval: %0 ms"));
SubscribeTooltip(ui->perfOverlayUpdateInterval, json_emu_overlay["perfOverlayUpdateInterval"].toString()); SubscribeTooltip(ui->perf_overlay_update_interval, json_emu_overlay["perfOverlayUpdateInterval"].toString());
EnhanceSlider(emu_settings::PerfOverlayFontSize, ui->perfOverlayFontSize, ui->label_font_size, tr("Font Size: %0 px")); EnhanceSlider(emu_settings::PerfOverlayFontSize, ui->perfOverlayFontSize, ui->label_font_size, tr("Font Size: %0 px"));
SubscribeTooltip(ui->perfOverlayFontSize, json_emu_overlay["perfOverlayFontSize"].toString()); SubscribeTooltip(ui->perf_overlay_font_size, json_emu_overlay["perfOverlayFontSize"].toString());
EnhanceSlider(emu_settings::PerfOverlayOpacity, ui->perfOverlayOpacity, ui->label_opacity, tr("Opacity: %0 %")); EnhanceSlider(emu_settings::PerfOverlayOpacity, ui->perfOverlayOpacity, ui->label_opacity, tr("Opacity: %0 %"));
SubscribeTooltip(ui->perfOverlayOpacity, json_emu_overlay["perfOverlayOpacity"].toString()); SubscribeTooltip(ui->perf_overlay_opacity, json_emu_overlay["perfOverlayOpacity"].toString());
EnhanceSlider(emu_settings::ShaderLoadBgDarkening, ui->shaderLoadBgDarkening, ui->label_shaderLoadBgDarkening, tr("Background darkening: %0 %")); EnhanceSlider(emu_settings::ShaderLoadBgDarkening, ui->shaderLoadBgDarkening, ui->label_shaderLoadBgDarkening, tr("Background darkening: %0 %"));
SubscribeTooltip(ui->shaderLoadBgDarkening, json_emu_shaders["shaderLoadBgDarkening"].toString()); SubscribeTooltip(ui->shaderLoadBgDarkening, json_emu_shaders["shaderLoadBgDarkening"].toString());
@ -1328,7 +1327,7 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
// Comboboxes // Comboboxes
SubscribeTooltip(ui->combo_configs, json_gui["configs"].toString()); SubscribeTooltip(ui->combo_configs, json_gui["configs"].toString());
SubscribeTooltip(ui->combo_stylesheets, json_gui["stylesheets"].toString()); SubscribeTooltip(ui->gb_stylesheets, json_gui["stylesheets"].toString());
// Checkboxes: // Checkboxes:
SubscribeTooltip(ui->cb_custom_colors, json_gui["custom_colors"].toString()); SubscribeTooltip(ui->cb_custom_colors, json_gui["custom_colors"].toString());
@ -1804,14 +1803,6 @@ void settings_dialog::SubscribeTooltip(QObject* object, const QString& tooltip)
object->installEventFilter(this); object->installEventFilter(this);
} }
void settings_dialog::SubscribeTooltip(QList<QObject*> objects, const QString& tooltip)
{
for (auto obj : objects)
{
SubscribeTooltip(obj, tooltip);
}
}
// Thanks Dolphin // Thanks Dolphin
bool settings_dialog::eventFilter(QObject* object, QEvent* event) bool settings_dialog::eventFilter(QObject* object, QEvent* event)
{ {
@ -1820,7 +1811,7 @@ bool settings_dialog::eventFilter(QObject* object, QEvent* event)
return QDialog::eventFilter(object, event); return QDialog::eventFilter(object, event);
} }
int i = ui->tab_widget_settings->currentIndex(); const int i = ui->tab_widget_settings->currentIndex();
QLabel* label = m_description_labels[i].first; QLabel* label = m_description_labels[i].first;
if (event->type() == QEvent::Enter) if (event->type() == QEvent::Enter)

View file

@ -64,6 +64,5 @@ private:
QHash<QObject*, QString> m_descriptions; QHash<QObject*, QString> m_descriptions;
void SubscribeDescription(QLabel* description); void SubscribeDescription(QLabel* description);
void SubscribeTooltip(QObject* object, const QString& tooltip); void SubscribeTooltip(QObject* object, const QString& tooltip);
void SubscribeTooltip(QList<QObject*> objects, const QString& tooltip);
bool eventFilter(QObject* object, QEvent* event) override; bool eventFilter(QObject* object, QEvent* event) override;
}; };

View file

@ -36,7 +36,7 @@
</sizepolicy> </sizepolicy>
</property> </property>
<property name="currentIndex"> <property name="currentIndex">
<number>6</number> <number>0</number>
</property> </property>
<widget class="QWidget" name="coreTab"> <widget class="QWidget" name="coreTab">
<attribute name="title"> <attribute name="title">
@ -726,7 +726,7 @@
<item> <item>
<layout class="QVBoxLayout" name="verticalLayout_25"> <layout class="QVBoxLayout" name="verticalLayout_25">
<item> <item>
<widget class="QGroupBox" name="groupBox_30"> <widget class="QGroupBox" name="gb_audio_out">
<property name="title"> <property name="title">
<string>Audio Out</string> <string>Audio Out</string>
</property> </property>
@ -738,7 +738,7 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QGroupBox" name="groupBox_49"> <widget class="QGroupBox" name="gb_audio_settings">
<property name="title"> <property name="title">
<string>Audio Settings</string> <string>Audio Settings</string>
</property> </property>
@ -791,11 +791,26 @@
<item> <item>
<layout class="QVBoxLayout" name="verticalLayout_37"> <layout class="QVBoxLayout" name="verticalLayout_37">
<item> <item>
<widget class="QGroupBox" name="groupBox_6"> <widget class="QGroupBox" name="gb_audio_volume">
<property name="title"> <property name="title">
<string>Volume</string> <string>Volume</string>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_74"> <layout class="QVBoxLayout" name="verticalLayout_74">
<item>
<widget class="QWidget" name="master_volume" native="true">
<layout class="QVBoxLayout" name="layout_master_volume">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QLabel" name="masterVolumeLabel"> <widget class="QLabel" name="masterVolumeLabel">
<property name="text"> <property name="text">
@ -816,6 +831,9 @@
</property> </property>
</widget> </widget>
</item> </item>
</layout>
</widget>
</item>
<item> <item>
<spacer name="verticalSpacer_4"> <spacer name="verticalSpacer_4">
<property name="orientation"> <property name="orientation">
@ -840,7 +858,7 @@
<item> <item>
<layout class="QVBoxLayout" name="verticalLayout_71"> <layout class="QVBoxLayout" name="verticalLayout_71">
<item> <item>
<widget class="QGroupBox" name="groupBox_8"> <widget class="QGroupBox" name="gb_audio_buffering">
<property name="title"> <property name="title">
<string>Buffering</string> <string>Buffering</string>
</property> </property>
@ -852,6 +870,21 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QWidget" name="audio_buffer_duration" native="true">
<layout class="QVBoxLayout" name="layout_audio_buffer_duration">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QLabel" name="audioBufferDurationLabel"> <widget class="QLabel" name="audioBufferDurationLabel">
<property name="text"> <property name="text">
@ -872,6 +905,9 @@
</property> </property>
</widget> </widget>
</item> </item>
</layout>
</widget>
</item>
<item> <item>
<widget class="QCheckBox" name="enableTimeStretching"> <widget class="QCheckBox" name="enableTimeStretching">
<property name="text"> <property name="text">
@ -879,6 +915,21 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QWidget" name="time_stretching_threshold" native="true">
<layout class="QVBoxLayout" name="layout_time_stretching_threshold">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QLabel" name="timeStretchingThresholdLabel"> <widget class="QLabel" name="timeStretchingThresholdLabel">
<property name="text"> <property name="text">
@ -903,6 +954,9 @@
</widget> </widget>
</item> </item>
</layout> </layout>
</widget>
</item>
</layout>
</item> </item>
</layout> </layout>
</item> </item>
@ -1111,7 +1165,7 @@
<item> <item>
<layout class="QHBoxLayout" name="horizontalLayout_10" stretch="1,1,1"> <layout class="QHBoxLayout" name="horizontalLayout_10" stretch="1,1,1">
<item> <item>
<widget class="QGroupBox" name="groupBox_51"> <widget class="QGroupBox" name="gb_keyboard_handler">
<property name="title"> <property name="title">
<string>Keyboard Handler</string> <string>Keyboard Handler</string>
</property> </property>
@ -1123,7 +1177,7 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QGroupBox" name="groupBox_31"> <widget class="QGroupBox" name="gb_camera_type">
<property name="title"> <property name="title">
<string>Camera Input</string> <string>Camera Input</string>
</property> </property>
@ -1135,7 +1189,7 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QGroupBox" name="groupBox_2"> <widget class="QGroupBox" name="gb_move_handler">
<property name="title"> <property name="title">
<string>Move Handler</string> <string>Move Handler</string>
</property> </property>
@ -1151,7 +1205,7 @@
<item> <item>
<layout class="QHBoxLayout" name="horizontalLayout_11" stretch="1,1,1"> <layout class="QHBoxLayout" name="horizontalLayout_11" stretch="1,1,1">
<item> <item>
<widget class="QGroupBox" name="groupBox_53"> <widget class="QGroupBox" name="gb_mouse_handler">
<property name="title"> <property name="title">
<string>Mouse Handler</string> <string>Mouse Handler</string>
</property> </property>
@ -1163,7 +1217,7 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QGroupBox" name="groupBox_54"> <widget class="QGroupBox" name="gb_camera_setting">
<property name="title"> <property name="title">
<string>Camera Settings</string> <string>Camera Settings</string>
</property> </property>
@ -1277,7 +1331,7 @@
<item> <item>
<layout class="QHBoxLayout" name="horizontalLayout_15" stretch="1,1,1"> <layout class="QHBoxLayout" name="horizontalLayout_15" stretch="1,1,1">
<item> <item>
<widget class="QGroupBox" name="groupBox_33"> <widget class="QGroupBox" name="gb_console_region">
<property name="enabled"> <property name="enabled">
<bool>false</bool> <bool>false</bool>
</property> </property>
@ -1286,7 +1340,7 @@
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_36"> <layout class="QVBoxLayout" name="verticalLayout_36">
<item> <item>
<widget class="QComboBox" name="comboBox_12"/> <widget class="QComboBox" name="console_region"/>
</item> </item>
</layout> </layout>
</widget> </widget>
@ -1435,7 +1489,7 @@
<item> <item>
<layout class="QHBoxLayout" name="horizontalLayout_16" stretch="1,1,1"> <layout class="QHBoxLayout" name="horizontalLayout_16" stretch="1,1,1">
<item> <item>
<widget class="QGroupBox" name="groupBox_32"> <widget class="QGroupBox" name="gb_network_status">
<property name="title"> <property name="title">
<string>Network Status</string> <string>Network Status</string>
</property> </property>
@ -2237,6 +2291,21 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QWidget" name="perf_overlay_detail_level" native="true">
<layout class="QVBoxLayout" name="layout_perf_overlay_detail_level">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QLabel" name="label_detail_level"> <widget class="QLabel" name="label_detail_level">
<property name="text"> <property name="text">
@ -2247,6 +2316,24 @@
<item> <item>
<widget class="QComboBox" name="perfOverlayDetailLevel"/> <widget class="QComboBox" name="perfOverlayDetailLevel"/>
</item> </item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="perf_overlay_position" native="true">
<layout class="QVBoxLayout" name="layout_perf_overlay_position">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QLabel" name="label_position"> <widget class="QLabel" name="label_position">
<property name="text"> <property name="text">
@ -2257,6 +2344,9 @@
<item> <item>
<widget class="QComboBox" name="perfOverlayPosition"/> <widget class="QComboBox" name="perfOverlayPosition"/>
</item> </item>
</layout>
</widget>
</item>
<item> <item>
<widget class="QLabel" name="label_margin_x"> <widget class="QLabel" name="label_margin_x">
<property name="text"> <property name="text">
@ -2299,6 +2389,21 @@
</item> </item>
</layout> </layout>
</item> </item>
<item>
<widget class="QWidget" name="perf_overlay_update_interval" native="true">
<layout class="QVBoxLayout" name="layout_perf_overlay_update_interval">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QLabel" name="label_update_interval"> <widget class="QLabel" name="label_update_interval">
<property name="text"> <property name="text">
@ -2319,6 +2424,24 @@
</property> </property>
</widget> </widget>
</item> </item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="perf_overlay_font_size" native="true">
<layout class="QVBoxLayout" name="layout_perf_overlay_font_size">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QLabel" name="label_font_size"> <widget class="QLabel" name="label_font_size">
<property name="text"> <property name="text">
@ -2333,6 +2456,24 @@
</property> </property>
</widget> </widget>
</item> </item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="perf_overlay_opacity" native="true">
<layout class="QVBoxLayout" name="layout_perf_overlay_opacity">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item> <item>
<widget class="QLabel" name="label_opacity"> <widget class="QLabel" name="label_opacity">
<property name="text"> <property name="text">
@ -2347,6 +2488,9 @@
</property> </property>
</widget> </widget>
</item> </item>
</layout>
</widget>
</item>
<item> <item>
<spacer name="verticalSpacer_18"> <spacer name="verticalSpacer_18">
<property name="orientation"> <property name="orientation">