summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterinventorysettings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfloaterinventorysettings.cpp')
-rw-r--r--indra/newview/llfloaterinventorysettings.cpp26
1 files changed, 24 insertions, 2 deletions
diff --git a/indra/newview/llfloaterinventorysettings.cpp b/indra/newview/llfloaterinventorysettings.cpp
index 29d6e90a33..3232b4f8b2 100644
--- a/indra/newview/llfloaterinventorysettings.cpp
+++ b/indra/newview/llfloaterinventorysettings.cpp
@@ -28,17 +28,39 @@
#include "llfloaterinventorysettings.h"
+#include "llcolorswatch.h"
+
LLFloaterInventorySettings::LLFloaterInventorySettings(const LLSD& key)
: LLFloater(key)
{
+ mCommitCallbackRegistrar.add("ScriptPref.applyUIColor", { boost::bind(&LLFloaterInventorySettings::applyUIColor, this, _1, _2) });
+ mCommitCallbackRegistrar.add("ScriptPref.getUIColor", { boost::bind(&LLFloaterInventorySettings::getUIColor, this, _1, _2) });
}
LLFloaterInventorySettings::~LLFloaterInventorySettings()
{}
-BOOL LLFloaterInventorySettings::postBuild()
+bool LLFloaterInventorySettings::postBuild()
{
+ getChild<LLUICtrl>("favorites_color")->setCommitCallback(boost::bind(&LLFloaterInventorySettings::updateColorSwatch, this));
getChild<LLButton>("ok_btn")->setCommitCallback(boost::bind(&LLFloater::closeFloater, this, false));
- return TRUE;
+ return true;
+}
+
+void LLFloaterInventorySettings::updateColorSwatch()
+{
+ bool val = getChild<LLUICtrl>("favorites_color")->getEnabled();
+ getChild<LLUICtrl>("favorites_color")->setEnabled(val);
+}
+
+void LLFloaterInventorySettings::applyUIColor(LLUICtrl* ctrl, const LLSD& param)
+{
+ LLUIColorTable::instance().setColor(param.asString(), LLColor4(ctrl->getValue()));
+}
+
+void LLFloaterInventorySettings::getUIColor(LLUICtrl* ctrl, const LLSD& param)
+{
+ LLColorSwatchCtrl* color_swatch = (LLColorSwatchCtrl*)ctrl;
+ color_swatch->setOriginal(LLUIColorTable::instance().getColor(param.asString()));
}