mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-09-19 20:32:15 +02:00
UI: Disable downscale filter setting for same resolutions
Disables the downscale filter dropdown menu when base and output resolution are the same.
This commit is contained in:
parent
6a5a5b4538
commit
90f1ebf4aa
@ -967,6 +967,7 @@ Basic.Settings.Video.Adapter="Video Adapter"
|
||||
Basic.Settings.Video.BaseResolution="Base (Canvas) Resolution"
|
||||
Basic.Settings.Video.ScaledResolution="Output (Scaled) Resolution"
|
||||
Basic.Settings.Video.DownscaleFilter="Downscale Filter"
|
||||
Basic.Settings.Video.DownscaleFilter.Unavailable="[Resolutions match, no downscaling required]"
|
||||
Basic.Settings.Video.DisableAeroWindows="Disable Aero (Windows only)"
|
||||
Basic.Settings.Video.FPS="FPS"
|
||||
Basic.Settings.Video.FPSCommon="Common FPS Values"
|
||||
|
@ -1555,30 +1555,42 @@ void OBSBasicSettings::ResetDownscales(uint32_t cx, uint32_t cy,
|
||||
|
||||
void OBSBasicSettings::LoadDownscaleFilters()
|
||||
{
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Bilinear"),
|
||||
QT_UTF8("bilinear"));
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Area"),
|
||||
QT_UTF8("area"));
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Bicubic"),
|
||||
QT_UTF8("bicubic"));
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Lanczos"),
|
||||
QT_UTF8("lanczos"));
|
||||
QString downscaleFilter = ui->downscaleFilter->currentData().toString();
|
||||
if (downscaleFilter.isEmpty())
|
||||
downscaleFilter =
|
||||
config_get_string(main->Config(), "Video", "ScaleType");
|
||||
|
||||
const char *scaleType =
|
||||
config_get_string(main->Config(), "Video", "ScaleType");
|
||||
ui->downscaleFilter->clear();
|
||||
if (ui->baseResolution->currentText() ==
|
||||
ui->outputResolution->currentText()) {
|
||||
ui->downscaleFilter->setEnabled(false);
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Unavailable"),
|
||||
downscaleFilter);
|
||||
} else {
|
||||
ui->downscaleFilter->setEnabled(true);
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Bilinear"),
|
||||
QT_UTF8("bilinear"));
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Area"),
|
||||
QT_UTF8("area"));
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Bicubic"),
|
||||
QT_UTF8("bicubic"));
|
||||
ui->downscaleFilter->addItem(
|
||||
QTStr("Basic.Settings.Video.DownscaleFilter.Lanczos"),
|
||||
QT_UTF8("lanczos"));
|
||||
|
||||
if (astrcmpi(scaleType, "bilinear") == 0)
|
||||
ui->downscaleFilter->setCurrentIndex(0);
|
||||
else if (astrcmpi(scaleType, "lanczos") == 0)
|
||||
ui->downscaleFilter->setCurrentIndex(3);
|
||||
else if (astrcmpi(scaleType, "area") == 0)
|
||||
ui->downscaleFilter->setCurrentIndex(1);
|
||||
else
|
||||
ui->downscaleFilter->setCurrentIndex(2);
|
||||
if (downscaleFilter == "bilinear")
|
||||
ui->downscaleFilter->setCurrentIndex(0);
|
||||
else if (downscaleFilter == "lanczos")
|
||||
ui->downscaleFilter->setCurrentIndex(3);
|
||||
else if (downscaleFilter == "area")
|
||||
ui->downscaleFilter->setCurrentIndex(1);
|
||||
else
|
||||
ui->downscaleFilter->setCurrentIndex(2);
|
||||
}
|
||||
}
|
||||
|
||||
void OBSBasicSettings::LoadResolutionLists()
|
||||
@ -4085,8 +4097,10 @@ void OBSBasicSettings::on_filenameFormatting_textEdited(const QString &text)
|
||||
|
||||
void OBSBasicSettings::on_outputResolution_editTextChanged(const QString &text)
|
||||
{
|
||||
if (!loading)
|
||||
if (!loading) {
|
||||
RecalcOutputResPixels(QT_TO_UTF8(text));
|
||||
LoadDownscaleFilters();
|
||||
}
|
||||
}
|
||||
|
||||
void OBSBasicSettings::on_baseResolution_editTextChanged(const QString &text)
|
||||
|
Loading…
Reference in New Issue
Block a user