User chain support

This commit is contained in:
iota97 2020-05-18 11:17:45 +02:00
parent a81991f114
commit 0c885db052
13 changed files with 134 additions and 48 deletions

View file

@ -47,6 +47,7 @@
#include "Core/Core.h"
extern bool g_TakeScreenshot;
extern bool g_ShaderNameListChanged;
namespace MainWindow {
extern HINSTANCE hInst;
@ -154,7 +155,7 @@ namespace MainWindow {
int item = ID_SHADERS_BASE + 1;
for (size_t i = 0; i < availableShaders.size(); i++)
CheckMenuItem(menu, item++, ((g_Config.sPostShaderName == availableShaders[i]) ? MF_CHECKED : MF_UNCHECKED));
CheckMenuItem(menu, item++, ((g_Config.vPostShaderNames[0] == availableShaders[i] && (g_Config.vPostShaderNames[0] == "Off" || g_Config.vPostShaderNames[1] == "Off")) ? MF_CHECKED : MF_UNCHECKED));
}
bool CreateShadersSubmenu(HMENU menu) {
@ -188,7 +189,7 @@ namespace MainWindow {
continue;
int checkedStatus = MF_UNCHECKED;
availableShaders.push_back(i->section);
if (g_Config.sPostShaderName == i->section) {
if (g_Config.vPostShaderNames[0] == i->section && (g_Config.vPostShaderNames[0] == "Off" || g_Config.vPostShaderNames[1] == "Off")) {
checkedStatus = MF_CHECKED;
}
@ -1064,8 +1065,11 @@ namespace MainWindow {
// ID_SHADERS_BASE and an additional 1 off it.
u32 index = (wParam - ID_SHADERS_BASE - 1);
if (index < availableShaders.size()) {
g_Config.sPostShaderName = availableShaders[index];
g_Config.vPostShaderNames.clear();
if (availableShaders[index] != "Off")
g_Config.vPostShaderNames.push_back(availableShaders[index]);
g_Config.vPostShaderNames.push_back("Off");
g_ShaderNameListChanged = true;
NativeMessageReceived("gpu_resized", "");
break;
}