diff options
author | Merov Linden <merov@lindenlab.com> | 2013-05-02 14:09:40 -0700 |
---|---|---|
committer | Merov Linden <merov@lindenlab.com> | 2013-05-02 14:09:40 -0700 |
commit | 043f2e0bfd40d29464175de838e3a36aad6e81df (patch) | |
tree | a84a7d8ab7a4b0c3a6afb3a7b2007c9ce4a36afb /indra/llcharacter/llvisualparam.cpp | |
parent | d07fab9e165e354678f5f8f78d331f8cfe8618d2 (diff) | |
parent | 1beb15c93b139e4494bb90cce30b1c67accb4b08 (diff) |
Pull from viewer-release
Diffstat (limited to 'indra/llcharacter/llvisualparam.cpp')
-rw-r--r-- | indra/llcharacter/llvisualparam.cpp | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/indra/llcharacter/llvisualparam.cpp b/indra/llcharacter/llvisualparam.cpp index 809b312abe..f7cb0f76b7 100644 --- a/indra/llcharacter/llvisualparam.cpp +++ b/indra/llcharacter/llvisualparam.cpp @@ -168,7 +168,8 @@ LLVisualParam::LLVisualParam() mIsAnimating( FALSE ), mID( -1 ), mInfo( 0 ), - mIsDummy(FALSE) + mIsDummy(FALSE), + mParamLocation(LOC_UNKNOWN) { } @@ -250,6 +251,7 @@ void LLVisualParam::setAnimationTarget(F32 target_value, BOOL upload_bake) if (mIsDummy) { setWeight(target_value, upload_bake); + mTargetWeight = mCurWeight; return; } @@ -319,3 +321,32 @@ void LLVisualParam::resetDrivenParams() // nothing to do for non-driver parameters return; } + +const std::string param_location_name(const EParamLocation& loc) +{ + switch (loc) + { + case LOC_UNKNOWN: return "unknown"; + case LOC_AV_SELF: return "self"; + case LOC_AV_OTHER: return "other"; + case LOC_WEARABLE: return "wearable"; + default: return "error"; + } +} + +void LLVisualParam::setParamLocation(EParamLocation loc) +{ + if (mParamLocation == LOC_UNKNOWN || loc == LOC_UNKNOWN) + { + mParamLocation = loc; + } + else if (mParamLocation == loc) + { + // no action + } + else + { + lldebugs << "param location is already " << mParamLocation << ", not slamming to " << loc << llendl; + } +} + |