mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-10 18:35:47 -04:00
Android: Expose some of the GameSettings traits
This commit is contained in:
@ -728,6 +728,26 @@ static std::optional<std::string> GetEntryValueForKey(const Entry& entry, const
|
||||
else
|
||||
return entry.input_profile_name;
|
||||
}
|
||||
else if (key == "ForceSoftwareRenderer")
|
||||
{
|
||||
return entry.HasTrait(Trait::ForceSoftwareRenderer) ? "true" : "false";
|
||||
}
|
||||
else if (key == "ForceSoftwareRendererForReadbacks")
|
||||
{
|
||||
return entry.HasTrait(Trait::ForceSoftwareRendererForReadbacks) ? "true" : "false";
|
||||
}
|
||||
else if (key == "DisableWidescreen")
|
||||
{
|
||||
return entry.HasTrait(Trait::DisableWidescreen) ? "true" : "false";
|
||||
}
|
||||
else if (key == "ForcePGXPVertexCache")
|
||||
{
|
||||
return entry.HasTrait(Trait::ForcePGXPVertexCache) ? "true" : "false";
|
||||
}
|
||||
else if (key == "ForcePGXPCPUMode")
|
||||
{
|
||||
return entry.HasTrait(Trait::ForcePGXPCPUMode) ? "true" : "false";
|
||||
}
|
||||
else
|
||||
{
|
||||
Log_ErrorPrintf("Unknown key: %s", std::string(key).c_str());
|
||||
@ -980,6 +1000,41 @@ static void SetEntryValueForKey(Entry& entry, const std::string_view& key, const
|
||||
else
|
||||
entry.input_profile_name = value.value();
|
||||
}
|
||||
else if (key == "ForceSoftwareRenderer")
|
||||
{
|
||||
if (!value.has_value() || !StringUtil::FromChars<bool>(value.value()).value_or(false))
|
||||
entry.RemoveTrait(Trait::ForceSoftwareRenderer);
|
||||
else
|
||||
entry.AddTrait(Trait::ForceSoftwareRenderer);
|
||||
}
|
||||
else if (key == "ForceSoftwareRendererForReadbacks")
|
||||
{
|
||||
if (!value.has_value() || !StringUtil::FromChars<bool>(value.value()).value_or(false))
|
||||
entry.RemoveTrait(Trait::ForceSoftwareRendererForReadbacks);
|
||||
else
|
||||
entry.AddTrait(Trait::ForceSoftwareRendererForReadbacks);
|
||||
}
|
||||
else if (key == "DisableWidescreen")
|
||||
{
|
||||
if (!value.has_value() || !StringUtil::FromChars<bool>(value.value()).value_or(false))
|
||||
entry.RemoveTrait(Trait::DisableWidescreen);
|
||||
else
|
||||
entry.AddTrait(Trait::DisableWidescreen);
|
||||
}
|
||||
else if (key == "ForcePGXPVertexCache")
|
||||
{
|
||||
if (!value.has_value() || !StringUtil::FromChars<bool>(value.value()).value_or(false))
|
||||
entry.RemoveTrait(Trait::ForcePGXPVertexCache);
|
||||
else
|
||||
entry.AddTrait(Trait::ForcePGXPVertexCache);
|
||||
}
|
||||
else if (key == "ForcePGXPCPUMode")
|
||||
{
|
||||
if (!value.has_value() || !StringUtil::FromChars<bool>(value.value()).value_or(false))
|
||||
entry.RemoveTrait(Trait::ForcePGXPCPUMode);
|
||||
else
|
||||
entry.AddTrait(Trait::ForcePGXPCPUMode);
|
||||
}
|
||||
else
|
||||
{
|
||||
Log_ErrorPrintf("Unknown key: %s", std::string(key).c_str());
|
||||
|
Reference in New Issue
Block a user