UI: Hide renderer/adapter when not on windows

Also hide adapter list if not using Direct3D.
master
jp9000 2016-01-25 06:22:00 -08:00
parent 22f7e6a82d
commit c072ba55b2
2 changed files with 22 additions and 4 deletions

View File

@ -2791,7 +2791,7 @@
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="label_9">
<widget class="QLabel" name="rendererLabel">
<property name="text">
<string>Basic.Settings.Video.Renderer</string>
</property>
@ -2805,7 +2805,7 @@
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_7">
<widget class="QLabel" name="adapterLabel">
<property name="text">
<string>Basic.Settings.Video.Adapter</string>
</property>

View File

@ -367,6 +367,15 @@ OBSBasicSettings::OBSBasicSettings(QWidget *parent)
connect(toggleAero, &QAbstractButton::toggled,
this, &OBSBasicSettings::ToggleDisableAero);
}
#else
delete ui->rendererLabel;
delete ui->renderer;
delete ui->adapterLabel;
delete ui->adapter;
ui->rendererLabel = nullptr;
ui->renderer = nullptr;
ui->adapterLabel = nullptr;
ui->adapter = nullptr;
#endif
connect(ui->streamDelaySec, SIGNAL(valueChanged(int)),
@ -787,19 +796,26 @@ void OBSBasicSettings::LoadStream1Settings()
void OBSBasicSettings::LoadRendererList()
{
#ifdef _WIN32
const char *renderer = config_get_string(GetGlobalConfig(), "Video",
"Renderer");
#ifdef _WIN32
ui->renderer->addItem(QT_UTF8("Direct3D 11"));
#endif
ui->renderer->addItem(QT_UTF8("OpenGL"));
int idx = ui->renderer->findText(QT_UTF8(renderer));
if (idx == -1)
idx = 0;
if (strcmp(renderer, "OpenGL") == 0) {
delete ui->adapter;
delete ui->adapterLabel;
ui->adapter = nullptr;
ui->adapterLabel = nullptr;
}
ui->renderer->setCurrentIndex(idx);
#endif
}
Q_DECLARE_METATYPE(MonitorInfo);
@ -2053,9 +2069,11 @@ void OBSBasicSettings::SaveVideoSettings()
void OBSBasicSettings::SaveAdvancedSettings()
{
#ifdef _WIN32
if (WidgetChanged(ui->renderer))
config_set_string(App()->GlobalConfig(), "Video", "Renderer",
QT_TO_UTF8(ui->renderer->currentText()));
#endif
SaveSpinBox(ui->audioBufferingTime, "Audio", "BufferingTime");
SaveCombo(ui->colorFormat, "Video", "ColorFormat");
SaveCombo(ui->colorSpace, "Video", "ColorSpace");