[PPE] Add SinguPostProcessDefault for setting active and persisting preset
This commit is contained in:
@@ -35,6 +35,7 @@
|
|||||||
#include "llpostprocess.h"
|
#include "llpostprocess.h"
|
||||||
|
|
||||||
#include "lldir.h"
|
#include "lldir.h"
|
||||||
|
#include "llcontrol.h"
|
||||||
#include "llfasttimer.h"
|
#include "llfasttimer.h"
|
||||||
#include "llgl.h"
|
#include "llgl.h"
|
||||||
#include "llglslshader.h"
|
#include "llglslshader.h"
|
||||||
@@ -369,11 +370,13 @@ LLPostProcess::LLPostProcess(void) :
|
|||||||
load_effects(gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, "windlight", XML_FILENAME));
|
load_effects(gDirUtilp->getExpandedFilename(LL_PATH_APP_SETTINGS, "windlight", XML_FILENAME));
|
||||||
load_effects(gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "windlight", XML_FILENAME));
|
load_effects(gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "windlight", XML_FILENAME));
|
||||||
|
|
||||||
// Singu TODO: Make this configurable via settings
|
auto setting = gSavedSettings.getControl("SinguPostProcessDefault");
|
||||||
if (!mAllEffectInfo.has("Default"))
|
setting->getSignal()->connect(std::bind(&LLPostProcess::setSelectedEffect, this, std::bind(&LLSD::asStringRef, std::placeholders::_2)));
|
||||||
mAllEffectInfo["Default"] = LLSD::emptyMap();
|
const auto& str = setting->get().asStringRef();
|
||||||
|
if (!mAllEffectInfo.has(str))
|
||||||
|
mAllEffectInfo[str] = LLSD::emptyMap();
|
||||||
|
|
||||||
LLSD& defaults = mAllEffectInfo["Default"];
|
LLSD& defaults = mAllEffectInfo[str];
|
||||||
|
|
||||||
// Add defaults for all missing effects
|
// Add defaults for all missing effects
|
||||||
for(auto& shader : mShaders)
|
for(auto& shader : mShaders)
|
||||||
@@ -385,11 +388,12 @@ LLPostProcess::LLPostProcess(void) :
|
|||||||
defaults[it2->first]=it2->second;
|
defaults[it2->first]=it2->second;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
setSelectedEffect("Default");
|
setSelectedEffect(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
LLPostProcess::~LLPostProcess(void)
|
LLPostProcess::~LLPostProcess(void)
|
||||||
{
|
{
|
||||||
|
gSavedSettings.setString("SinguPostProcessDefault", mSelectedEffectName);
|
||||||
destroyGL() ;
|
destroyGL() ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -918,6 +918,17 @@ RIP Latif Khalifa.</string>
|
|||||||
<key>Value</key>
|
<key>Value</key>
|
||||||
<boolean>1</boolean>
|
<boolean>1</boolean>
|
||||||
</map>
|
</map>
|
||||||
|
<key>SinguPostProcessDefault</key>
|
||||||
|
<map>
|
||||||
|
<key>Comment</key>
|
||||||
|
<string>Default post process preset, changing this will change your active preset</string>
|
||||||
|
<key>Persist</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>Type</key>
|
||||||
|
<string>String</string>
|
||||||
|
<key>Value</key>
|
||||||
|
<boolean>Default</boolean>
|
||||||
|
</map>
|
||||||
<key>SinguReplaceLinks</key>
|
<key>SinguReplaceLinks</key>
|
||||||
<map>
|
<map>
|
||||||
<key>Comment</key>
|
<key>Comment</key>
|
||||||
|
|||||||
Reference in New Issue
Block a user