[Scummvm-git-logs] scummvm branch-2-7 -> 84e2f57fef2f06ced399be84dc0fd9df7946201f
sev-
noreply at scummvm.org
Sun Feb 5 22:18:08 UTC 2023
This automated email contains information about 4 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
4c1593a7fd GUI: Don't create a popup for the stretch mode if it's not supported
9dc8142585 GUI: Don't create popups for scalers if they're not supported
0deaf0d02f GUI: Don't create a popup for 3D renderers if they're not supported
84e2f57fef GUI: Don't create a popup for anti-aliasing levels if they're not supported
Commit: 4c1593a7fdd7fbc35fed06fb63beb1fdb83290b9
https://github.com/scummvm/scummvm/commit/4c1593a7fdd7fbc35fed06fb63beb1fdb83290b9
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2023-02-05T23:16:55+01:00
Commit Message:
GUI: Don't create a popup for the stretch mode if it's not supported
Changed paths:
gui/options.cpp
diff --git a/gui/options.cpp b/gui/options.cpp
index 11a4a267f41..35e8912c4f2 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -346,26 +346,6 @@ void OptionsDialog::build() {
_renderModePopUp->setSelectedTag(sel);
}
- _stretchPopUp->setSelected(0);
-
- if (g_system->hasFeature(OSystem::kFeatureStretchMode)) {
- if (ConfMan.hasKey("stretch_mode", _domain)) {
- const OSystem::GraphicsMode *sm = g_system->getSupportedStretchModes();
- Common::String stretchMode(ConfMan.get("stretch_mode", _domain));
- int stretchCount = 1;
- while (sm->name) {
- stretchCount++;
- if (scumm_stricmp(sm->name, stretchMode.c_str()) == 0)
- _stretchPopUp->setSelected(stretchCount);
- sm++;
- }
- }
- } else {
- _stretchPopUpDesc->setVisible(false);
- _stretchPopUp->setVisible(false);
- _stretchPopUp->setEnabled(false);
- }
-
_scalerPopUp->setSelected(0);
_scaleFactorPopUp->setSelected(0);
@@ -442,6 +422,27 @@ void OptionsDialog::build() {
}
}
+ if (_stretchPopUp) {
+ if (g_system->hasFeature(OSystem::kFeatureStretchMode)) {
+ _stretchPopUp->setSelected(0);
+
+ if (ConfMan.hasKey("stretch_mode", _domain)) {
+ const OSystem::GraphicsMode *sm = g_system->getSupportedStretchModes();
+ Common::String stretchMode(ConfMan.get("stretch_mode", _domain));
+ int stretchCount = 1;
+ while (sm->name) {
+ stretchCount++;
+ if (scumm_stricmp(sm->name, stretchMode.c_str()) == 0)
+ _stretchPopUp->setSelected(stretchCount);
+ sm++;
+ }
+ }
+ } else {
+ _stretchPopUpDesc->setVisible(false);
+ _stretchPopUp->setVisible(false);
+ }
+ }
+
// Shader options
if (_shader) {
if (g_system->hasFeature(OSystem::kFeatureShaders)) {
@@ -650,28 +651,30 @@ void OptionsDialog::apply() {
}
}
- isSet = false;
- if ((int32)_stretchPopUp->getSelectedTag() >= 0) {
- const OSystem::GraphicsMode *sm = g_system->getSupportedStretchModes();
-
- while (sm->name) {
- if (sm->id == (int)_stretchPopUp->getSelectedTag()) {
- if (ConfMan.get("stretch_mode", _domain) != sm->name) {
- graphicsModeChanged = true;
- ConfMan.set("stretch_mode", sm->name, _domain);
- _stretchPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
+ if (g_system->hasFeature(OSystem::kFeatureStretchMode)) {
+ isSet = false;
+ if ((int32)_stretchPopUp->getSelectedTag() >= 0) {
+ const OSystem::GraphicsMode *sm = g_system->getSupportedStretchModes();
+
+ while (sm->name) {
+ if (sm->id == (int)_stretchPopUp->getSelectedTag()) {
+ if (ConfMan.get("stretch_mode", _domain) != sm->name) {
+ graphicsModeChanged = true;
+ ConfMan.set("stretch_mode", sm->name, _domain);
+ _stretchPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
+ }
+ isSet = true;
+ break;
}
- isSet = true;
- break;
+ sm++;
}
- sm++;
}
- }
- if (!isSet) {
- _stretchPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
- ConfMan.removeKey("stretch_mode", _domain);
- if (g_system->getStretchMode() != g_system->getDefaultStretchMode())
- graphicsModeChanged = true;
+ if (!isSet) {
+ _stretchPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
+ ConfMan.removeKey("stretch_mode", _domain);
+ if (g_system->getStretchMode() != g_system->getDefaultStretchMode())
+ graphicsModeChanged = true;
+ }
}
isSet = false;
@@ -1229,8 +1232,11 @@ void OptionsDialog::setGraphicSettingsState(bool enabled) {
_stretchPopUpDesc->setEnabled(enabled);
_stretchPopUp->setEnabled(enabled);
} else {
- _stretchPopUpDesc->setEnabled(false);
- _stretchPopUp->setEnabled(false);
+ // Happens when we switch to backend that doesn't support stretch modes
+ if (_stretchPopUp) {
+ _stretchPopUpDesc->setEnabled(false);
+ _stretchPopUp->setEnabled(false);
+ }
}
if (g_system->hasFeature(OSystem::kFeatureScalers)) {
@@ -1582,17 +1588,19 @@ void OptionsDialog::addGraphicControls(GuiObject *boss, const Common::String &pr
}
// The Stretch mode popup
- const OSystem::GraphicsMode *sm = g_system->getSupportedStretchModes();
- _stretchPopUpDesc = new StaticTextWidget(boss, prefix + "grStretchModePopupDesc", _("Stretch mode:"));
- if (ConfMan.isKeyTemporary("stretch_mode"))
- _stretchPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorOverride);
- _stretchPopUp = new PopUpWidget(boss, prefix + "grStretchModePopup");
+ if (g_system->hasFeature(OSystem::kFeatureStretchMode)) {
+ const OSystem::GraphicsMode *sm = g_system->getSupportedStretchModes();
+ _stretchPopUpDesc = new StaticTextWidget(boss, prefix + "grStretchModePopupDesc", _("Stretch mode:"));
+ if (ConfMan.isKeyTemporary("stretch_mode"))
+ _stretchPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorOverride);
+ _stretchPopUp = new PopUpWidget(boss, prefix + "grStretchModePopup");
- _stretchPopUp->appendEntry(_("<default>"));
- _stretchPopUp->appendEntry(Common::U32String());
- while (sm->name) {
- _stretchPopUp->appendEntry(_c(sm->description, context), sm->id);
- sm++;
+ _stretchPopUp->appendEntry(_("<default>"));
+ _stretchPopUp->appendEntry(Common::U32String());
+ while (sm->name) {
+ _stretchPopUp->appendEntry(_c(sm->description, context), sm->id);
+ sm++;
+ }
}
// The Scaler popup
@@ -1998,6 +2006,8 @@ void OptionsDialog::setupGraphicsTab() {
// Fixes crash when switching from SDL Surface to OpenGL
if (!_shader && g_system->hasFeature(OSystem::kFeatureShaders)) {
rebuild();
+ } else if (!_stretchPopUp && g_system->hasFeature(OSystem::kFeatureStretchMode)) {
+ rebuild();
}
setGraphicSettingsState(_enableGraphicSettings);
}
@@ -2008,9 +2018,6 @@ void OptionsDialog::setupGraphicsTab() {
if (g_system->hasFeature(OSystem::kFeatureStretchMode)) {
_stretchPopUpDesc->setVisible(true);
_stretchPopUp->setVisible(true);
- } else {
- _stretchPopUpDesc->setVisible(false);
- _stretchPopUp->setVisible(false);
}
_fullscreenCheckbox->setVisible(true);
if (g_system->hasFeature(OSystem::kFeatureFilteringMode))
Commit: 9dc8142585f90b3512d38bf0acc7fab9cfa1aa22
https://github.com/scummvm/scummvm/commit/9dc8142585f90b3512d38bf0acc7fab9cfa1aa22
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2023-02-05T23:16:55+01:00
Commit Message:
GUI: Don't create popups for scalers if they're not supported
Changed paths:
gui/options.cpp
diff --git a/gui/options.cpp b/gui/options.cpp
index 35e8912c4f2..3bba403e9ae 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -346,39 +346,6 @@ void OptionsDialog::build() {
_renderModePopUp->setSelectedTag(sel);
}
- _scalerPopUp->setSelected(0);
- _scaleFactorPopUp->setSelected(0);
-
- if (g_system->hasFeature(OSystem::kFeatureScalers)) {
- if (ConfMan.hasKey("scaler", _domain)) {
- const PluginList &scalerPlugins = ScalerMan.getPlugins();
- Common::String scaler(ConfMan.get("scaler", _domain));
-
- for (uint scalerIndex = 0; scalerIndex < scalerPlugins.size(); scalerIndex++) {
- if (scumm_stricmp(scalerPlugins[scalerIndex]->get<ScalerPluginObject>().getName(), scaler.c_str()) != 0)
- continue;
-
- _scalerPopUp->setSelectedTag(scalerIndex);
- updateScaleFactors(scalerIndex);
-
- if (ConfMan.hasKey("scale_factor", _domain)) {
- int scaleFactor = ConfMan.getInt("scale_factor", _domain);
- if (scalerPlugins[scalerIndex]->get<ScalerPluginObject>().hasFactor(scaleFactor))
- _scaleFactorPopUp->setSelectedTag(scaleFactor);
- }
-
- break;
- }
-
- }
- } else {
- _scalerPopUpDesc->setVisible(false);
- _scalerPopUp->setVisible(false);
- _scalerPopUp->setEnabled(false);
- _scaleFactorPopUp->setVisible(false);
- _scaleFactorPopUp->setEnabled(false);
- }
-
// Fullscreen setting
if (g_system->hasFeature(OSystem::kFeatureFullscreenMode)) {
_fullscreenCheckbox->setState(ConfMan.getBool("fullscreen", _domain));
@@ -443,6 +410,39 @@ void OptionsDialog::build() {
}
}
+ if (_scalerPopUp) {
+ if (g_system->hasFeature(OSystem::kFeatureScalers)) {
+ _scalerPopUp->setSelected(0);
+ _scaleFactorPopUp->setSelected(0);
+
+ if (ConfMan.hasKey("scaler", _domain)) {
+ const PluginList &scalerPlugins = ScalerMan.getPlugins();
+ Common::String scaler(ConfMan.get("scaler", _domain));
+
+ for (uint scalerIndex = 0; scalerIndex < scalerPlugins.size(); scalerIndex++) {
+ if (scumm_stricmp(scalerPlugins[scalerIndex]->get<ScalerPluginObject>().getName(), scaler.c_str()) != 0)
+ continue;
+
+ _scalerPopUp->setSelectedTag(scalerIndex);
+ updateScaleFactors(scalerIndex);
+
+ if (ConfMan.hasKey("scale_factor", _domain)) {
+ int scaleFactor = ConfMan.getInt("scale_factor", _domain);
+ if (scalerPlugins[scalerIndex]->get<ScalerPluginObject>().hasFactor(scaleFactor))
+ _scaleFactorPopUp->setSelectedTag(scaleFactor);
+ }
+
+ break;
+ }
+
+ }
+ } else {
+ _scalerPopUpDesc->setVisible(false);
+ _scalerPopUp->setVisible(false);
+ _scaleFactorPopUp->setVisible(false);
+ }
+ }
+
// Shader options
if (_shader) {
if (g_system->hasFeature(OSystem::kFeatureShaders)) {
@@ -677,35 +677,37 @@ void OptionsDialog::apply() {
}
}
- isSet = false;
- const PluginList &scalerPlugins = ScalerMan.getPlugins();
- if ((int32)_scalerPopUp->getSelectedTag() >= 0) {
- const char *name = scalerPlugins[_scalerPopUp->getSelectedTag()]->get<ScalerPluginObject>().getName();
- if (ConfMan.get("scaler", _domain) != name) {
- graphicsModeChanged = true;
- ConfMan.set("scaler", name, _domain);
- _scalerPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
- }
+ if (g_system->hasFeature(OSystem::kFeatureScalers)) {
+ isSet = false;
+ const PluginList &scalerPlugins = ScalerMan.getPlugins();
+ if ((int32)_scalerPopUp->getSelectedTag() >= 0) {
+ const char *name = scalerPlugins[_scalerPopUp->getSelectedTag()]->get<ScalerPluginObject>().getName();
+ if (ConfMan.get("scaler", _domain) != name) {
+ graphicsModeChanged = true;
+ ConfMan.set("scaler", name, _domain);
+ _scalerPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
+ }
- int factor = _scaleFactorPopUp->getSelectedTag();
- if (ConfMan.getInt("scale_factor", _domain) != factor) {
- ConfMan.setInt("scale_factor", factor, _domain);
- graphicsModeChanged = true;
- _scalerPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
+ int factor = _scaleFactorPopUp->getSelectedTag();
+ if (ConfMan.getInt("scale_factor", _domain) != factor) {
+ ConfMan.setInt("scale_factor", factor, _domain);
+ graphicsModeChanged = true;
+ _scalerPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
+ }
+ isSet = true;
}
- isSet = true;
- }
- if (!isSet) {
- ConfMan.removeKey("scaler", _domain);
- ConfMan.removeKey("scale_factor", _domain);
- _scalerPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
+ if (!isSet) {
+ ConfMan.removeKey("scaler", _domain);
+ ConfMan.removeKey("scale_factor", _domain);
+ _scalerPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorNormal);
- uint defaultScaler = g_system->getDefaultScaler();
- uint defaultScaleFactor = g_system->getDefaultScaleFactor();
- if (g_system->getScaler() != defaultScaler)
- graphicsModeChanged = true;
- else if (g_system->getScaleFactor() != defaultScaleFactor)
- graphicsModeChanged = true;
+ uint defaultScaler = g_system->getDefaultScaler();
+ uint defaultScaleFactor = g_system->getDefaultScaleFactor();
+ if (g_system->getScaler() != defaultScaler)
+ graphicsModeChanged = true;
+ else if (g_system->getScaleFactor() != defaultScaleFactor)
+ graphicsModeChanged = true;
+ }
}
if (_rendererTypePopUp->getSelectedTag() > 0) {
@@ -1244,9 +1246,12 @@ void OptionsDialog::setGraphicSettingsState(bool enabled) {
_scalerPopUp->setEnabled(enabled);
_scaleFactorPopUp->setEnabled(enabled);
} else {
- _scalerPopUpDesc->setEnabled(false);
- _scalerPopUp->setEnabled(false);
- _scaleFactorPopUp->setEnabled(false);
+ // Happens when we switch to backend that doesn't support scalers
+ if (_scalerPopUp) {
+ _scalerPopUpDesc->setEnabled(false);
+ _scalerPopUp->setEnabled(false);
+ _scaleFactorPopUp->setEnabled(false);
+ }
}
if (g_system->hasFeature(OSystem::kFeatureShaders)) {
@@ -1604,18 +1609,20 @@ void OptionsDialog::addGraphicControls(GuiObject *boss, const Common::String &pr
}
// The Scaler popup
- const PluginList &scalerPlugins = ScalerMan.getPlugins();
- _scalerPopUpDesc = new StaticTextWidget(boss, prefix + "grScalerPopupDesc", _("Scaler:"));
- _scalerPopUp = new PopUpWidget(boss, prefix + "grScalerPopup", Common::U32String(), kScalerPopUpCmd);
+ if (g_system->hasFeature(OSystem::kFeatureScalers)) {
+ const PluginList &scalerPlugins = ScalerMan.getPlugins();
+ _scalerPopUpDesc = new StaticTextWidget(boss, prefix + "grScalerPopupDesc", _("Scaler:"));
+ _scalerPopUp = new PopUpWidget(boss, prefix + "grScalerPopup", Common::U32String(), kScalerPopUpCmd);
- _scalerPopUp->appendEntry(_("<default>"));
- _scalerPopUp->appendEntry(Common::U32String());
- for (uint scalerIndex = 0; scalerIndex < scalerPlugins.size(); scalerIndex++) {
- _scalerPopUp->appendEntry(_c(scalerPlugins[scalerIndex]->get<ScalerPluginObject>().getPrettyName(), context), scalerIndex);
- }
+ _scalerPopUp->appendEntry(_("<default>"));
+ _scalerPopUp->appendEntry(Common::U32String());
+ for (uint scalerIndex = 0; scalerIndex < scalerPlugins.size(); scalerIndex++) {
+ _scalerPopUp->appendEntry(_c(scalerPlugins[scalerIndex]->get<ScalerPluginObject>().getPrettyName(), context), scalerIndex);
+ }
- _scaleFactorPopUp = new PopUpWidget(boss, prefix + "grScaleFactorPopup");
- updateScaleFactors(_scalerPopUp->getSelectedTag());
+ _scaleFactorPopUp = new PopUpWidget(boss, prefix + "grScaleFactorPopup");
+ updateScaleFactors(_scalerPopUp->getSelectedTag());
+ }
if (g_system->hasFeature(OSystem::kFeatureShaders)) {
if (g_system->getOverlayWidth() > 320)
@@ -2006,6 +2013,8 @@ void OptionsDialog::setupGraphicsTab() {
// Fixes crash when switching from SDL Surface to OpenGL
if (!_shader && g_system->hasFeature(OSystem::kFeatureShaders)) {
rebuild();
+ } else if (!_scalerPopUp && g_system->hasFeature(OSystem::kFeatureScalers)) {
+ rebuild();
} else if (!_stretchPopUp && g_system->hasFeature(OSystem::kFeatureStretchMode)) {
rebuild();
}
@@ -2033,10 +2042,6 @@ void OptionsDialog::setupGraphicsTab() {
_scalerPopUpDesc->setFontColor(ThemeEngine::FontColor::kFontColorOverride);
_scalerPopUp->setVisible(true);
_scaleFactorPopUp->setVisible(true);
- } else {
- _scalerPopUpDesc->setVisible(false);
- _scalerPopUp->setVisible(false);
- _scaleFactorPopUp->setVisible(false);
}
if (g_system->hasFeature(OSystem::kFeatureShaders)) {
Commit: 0deaf0d02f01cdb7be83c4d3c06fcfbd822cf5a5
https://github.com/scummvm/scummvm/commit/0deaf0d02f01cdb7be83c4d3c06fcfbd822cf5a5
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2023-02-05T23:16:55+01:00
Commit Message:
GUI: Don't create a popup for 3D renderers if they're not supported
Changed paths:
gui/options.cpp
diff --git a/gui/options.cpp b/gui/options.cpp
index 3bba403e9ae..03f1d7d585d 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -378,9 +378,6 @@ void OptionsDialog::build() {
_vsyncCheckbox->setOverride(true);
}
- _rendererTypePopUp->setEnabled(true);
- _rendererTypePopUp->setSelectedTag(Graphics::Renderer::parseTypeCode(ConfMan.get("renderer", _domain)));
-
_antiAliasPopUp->setEnabled(true);
if (ConfMan.hasKey("antialiasing", _domain)) {
_antiAliasPopUp->setSelectedTag(ConfMan.getInt("antialiasing", _domain));
@@ -464,6 +461,11 @@ void OptionsDialog::build() {
}
}
+ if (_rendererTypePopUp) {
+ _rendererTypePopUp->setEnabled(true);
+ _rendererTypePopUp->setSelectedTag(Graphics::Renderer::parseTypeCode(ConfMan.get("renderer", _domain)));
+ }
+
// Audio options
if (!loadMusicDeviceSetting(_midiPopUp, "music_driver"))
_midiPopUp->setSelected(0);
@@ -710,11 +712,13 @@ void OptionsDialog::apply() {
}
}
- if (_rendererTypePopUp->getSelectedTag() > 0) {
- Graphics::RendererType selected = (Graphics::RendererType) _rendererTypePopUp->getSelectedTag();
- ConfMan.set("renderer", Graphics::Renderer::getTypeCode(selected), _domain);
- } else {
- ConfMan.removeKey("renderer", _domain);
+ if (_rendererTypePopUp) {
+ if (_rendererTypePopUp->getSelectedTag() > 0) {
+ Graphics::RendererType selected = (Graphics::RendererType) _rendererTypePopUp->getSelectedTag();
+ ConfMan.set("renderer", Graphics::Renderer::getTypeCode(selected), _domain);
+ } else {
+ ConfMan.removeKey("renderer", _domain);
+ }
}
if (_antiAliasPopUp->getSelectedTag() != (uint32)-1) {
@@ -1225,11 +1229,14 @@ void OptionsDialog::setGraphicSettingsState(bool enabled) {
_gfxPopUp->setEnabled(enabled);
_renderModePopUpDesc->setEnabled(enabled);
_renderModePopUp->setEnabled(enabled);
- _rendererTypePopUpDesc->setEnabled(enabled);
- _rendererTypePopUp->setEnabled(enabled);
_antiAliasPopUpDesc->setEnabled(enabled);
_antiAliasPopUp->setEnabled(enabled);
+ if (_rendererTypePopUp) {
+ _rendererTypePopUpDesc->setEnabled(enabled);
+ _rendererTypePopUp->setEnabled(enabled);
+ }
+
if (g_system->hasFeature(OSystem::kFeatureStretchMode)) {
_stretchPopUpDesc->setEnabled(enabled);
_stretchPopUp->setEnabled(enabled);
@@ -1646,21 +1653,23 @@ void OptionsDialog::addGraphicControls(GuiObject *boss, const Common::String &pr
if (g_system->hasFeature(OSystem::kFeatureVSync))
_vsyncCheckbox = new CheckboxWidget(boss, prefix + "grVSyncCheckbox", _("V-Sync"), _("Wait for the vertical sync to refresh the screen in order to prevent tearing artifacts"));
- if (g_system->getOverlayWidth() > 320)
- _rendererTypePopUpDesc = new StaticTextWidget(boss, prefix + "grRendererTypePopupDesc", _("Game 3D Renderer:"));
- else
- _rendererTypePopUpDesc = new StaticTextWidget(boss, prefix + "grRendererTypePopupDesc", _c("Game 3D Renderer:", "lowres"));
-
- _rendererTypePopUp = new PopUpWidget(boss, prefix + "grRendererTypePopup");
- _rendererTypePopUp->appendEntry(_("<default>"), Graphics::kRendererTypeDefault);
- _rendererTypePopUp->appendEntry("");
Common::Array<Graphics::RendererTypeDescription> rt = Graphics::Renderer::listTypes();
- for (Common::Array<Graphics::RendererTypeDescription>::iterator it = rt.begin();
- it != rt.end(); ++it) {
- if (g_system->getOverlayWidth() > 320) {
- _rendererTypePopUp->appendEntry(_(it->description), it->id);
- } else {
- _rendererTypePopUp->appendEntry(_c(it->description, "lowres"), it->id);
+ if (!rt.empty()) {
+ if (g_system->getOverlayWidth() > 320)
+ _rendererTypePopUpDesc = new StaticTextWidget(boss, prefix + "grRendererTypePopupDesc", _("Game 3D Renderer:"));
+ else
+ _rendererTypePopUpDesc = new StaticTextWidget(boss, prefix + "grRendererTypePopupDesc", _c("Game 3D Renderer:", "lowres"));
+
+ _rendererTypePopUp = new PopUpWidget(boss, prefix + "grRendererTypePopup");
+ _rendererTypePopUp->appendEntry(_("<default>"), Graphics::kRendererTypeDefault);
+ _rendererTypePopUp->appendEntry("");
+ for (Common::Array<Graphics::RendererTypeDescription>::iterator it = rt.begin();
+ it != rt.end(); ++it) {
+ if (g_system->getOverlayWidth() > 320) {
+ _rendererTypePopUp->appendEntry(_(it->description), it->id);
+ } else {
+ _rendererTypePopUp->appendEntry(_c(it->description, "lowres"), it->id);
+ }
}
}
Commit: 84e2f57fef2f06ced399be84dc0fd9df7946201f
https://github.com/scummvm/scummvm/commit/84e2f57fef2f06ced399be84dc0fd9df7946201f
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2023-02-05T23:17:10+01:00
Commit Message:
GUI: Don't create a popup for anti-aliasing levels if they're not supported
Changed paths:
gui/options.cpp
diff --git a/gui/options.cpp b/gui/options.cpp
index 03f1d7d585d..bb06f9f7a59 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -377,13 +377,6 @@ void OptionsDialog::build() {
if (ConfMan.isKeyTemporary("vsync"))
_vsyncCheckbox->setOverride(true);
}
-
- _antiAliasPopUp->setEnabled(true);
- if (ConfMan.hasKey("antialiasing", _domain)) {
- _antiAliasPopUp->setSelectedTag(ConfMan.getInt("antialiasing", _domain));
- } else {
- _antiAliasPopUp->setSelectedTag(uint32(-1));
- }
}
if (_stretchPopUp) {
@@ -466,6 +459,15 @@ void OptionsDialog::build() {
_rendererTypePopUp->setSelectedTag(Graphics::Renderer::parseTypeCode(ConfMan.get("renderer", _domain)));
}
+ if (_antiAliasPopUp) {
+ _antiAliasPopUp->setEnabled(true);
+ if (ConfMan.hasKey("antialiasing", _domain)) {
+ _antiAliasPopUp->setSelectedTag(ConfMan.getInt("antialiasing", _domain));
+ } else {
+ _antiAliasPopUp->setSelectedTag(uint32(-1));
+ }
+ }
+
// Audio options
if (!loadMusicDeviceSetting(_midiPopUp, "music_driver"))
_midiPopUp->setSelected(0);
@@ -721,11 +723,13 @@ void OptionsDialog::apply() {
}
}
- if (_antiAliasPopUp->getSelectedTag() != (uint32)-1) {
- uint level = _antiAliasPopUp->getSelectedTag();
- ConfMan.setInt("antialiasing", level, _domain);
- } else {
- ConfMan.removeKey("antialiasing", _domain);
+ if (_antiAliasPopUp) {
+ if (_antiAliasPopUp->getSelectedTag() != (uint32)-1) {
+ uint level = _antiAliasPopUp->getSelectedTag();
+ ConfMan.setInt("antialiasing", level, _domain);
+ } else {
+ ConfMan.removeKey("antialiasing", _domain);
+ }
}
} else {
@@ -1229,14 +1233,17 @@ void OptionsDialog::setGraphicSettingsState(bool enabled) {
_gfxPopUp->setEnabled(enabled);
_renderModePopUpDesc->setEnabled(enabled);
_renderModePopUp->setEnabled(enabled);
- _antiAliasPopUpDesc->setEnabled(enabled);
- _antiAliasPopUp->setEnabled(enabled);
if (_rendererTypePopUp) {
_rendererTypePopUpDesc->setEnabled(enabled);
_rendererTypePopUp->setEnabled(enabled);
}
+ if (_antiAliasPopUp) {
+ _antiAliasPopUpDesc->setEnabled(enabled);
+ _antiAliasPopUp->setEnabled(enabled);
+ }
+
if (g_system->hasFeature(OSystem::kFeatureStretchMode)) {
_stretchPopUpDesc->setEnabled(enabled);
_stretchPopUp->setEnabled(enabled);
@@ -1673,19 +1680,16 @@ void OptionsDialog::addGraphicControls(GuiObject *boss, const Common::String &pr
}
}
- _antiAliasPopUpDesc = new StaticTextWidget(boss, prefix + "grAntiAliasPopupDesc", _("3D Anti-aliasing:"));
- _antiAliasPopUp = new PopUpWidget(boss, prefix + "grAntiAliasPopup");
- _antiAliasPopUp->appendEntry(_("<default>"), uint32(-1));
- _antiAliasPopUp->appendEntry("");
- _antiAliasPopUp->appendEntry(_("Disabled"), 0);
const Common::Array<uint> levels = g_system->getSupportedAntiAliasingLevels();
- for (uint i = 0; i < levels.size(); i++) {
- _antiAliasPopUp->appendEntry(Common::String::format("%dx", levels[i]), levels[i]);
- }
- if (levels.empty()) {
- // Don't show the anti-aliasing selection menu when it is not supported
- _antiAliasPopUpDesc->setVisible(false);
- _antiAliasPopUp->setVisible(false);
+ if (!levels.empty()) {
+ _antiAliasPopUpDesc = new StaticTextWidget(boss, prefix + "grAntiAliasPopupDesc", _("3D Anti-aliasing:"));
+ _antiAliasPopUp = new PopUpWidget(boss, prefix + "grAntiAliasPopup");
+ _antiAliasPopUp->appendEntry(_("<default>"), uint32(-1));
+ _antiAliasPopUp->appendEntry("");
+ _antiAliasPopUp->appendEntry(_("Disabled"), 0);
+ for (uint i = 0; i < levels.size(); i++) {
+ _antiAliasPopUp->appendEntry(Common::String::format("%dx", levels[i]), levels[i]);
+ }
}
// Filtering checkbox
More information about the Scummvm-git-logs
mailing list