diff --git a/indra/newview/aoengine.cpp b/indra/newview/aoengine.cpp index 883b9e6105..a2fcd873e9 100644 --- a/indra/newview/aoengine.cpp +++ b/indra/newview/aoengine.cpp @@ -62,6 +62,7 @@ AOEngine::AOEngine() : mLastMotion(ANIM_AGENT_STAND), mLastOverriddenMotion(ANIM_AGENT_STAND) { + gSavedPerAccountSettings.getControl("UseAO")->getCommitSignal()->connect(boost::bind(&AOEngine::onToggleAOControl, this)); } AOEngine::~AOEngine() @@ -80,6 +81,11 @@ void AOEngine::onLoginComplete() AOEngine::instance().init(); } +void AOEngine::onToggleAOControl() +{ + enable(gSavedPerAccountSettings.getBOOL("UseAO")); +} + void AOEngine::clear( bool aFromTimer ) { mOldSets.insert( mOldSets.end(), mSets.begin(), mSets.end() ); diff --git a/indra/newview/aoengine.h b/indra/newview/aoengine.h index 6f5d3d5267..c48c798975 100644 --- a/indra/newview/aoengine.h +++ b/indra/newview/aoengine.h @@ -170,6 +170,7 @@ class AOEngine BOOL createAnimationLink(const AOSet* set,AOSet::AOState* state,const LLInventoryItem* item); void purgeFolder(const LLUUID& uuid) const; + void onToggleAOControl(); static void onNotecardLoadComplete( LLVFS* vfs,const LLUUID& assetUUID,LLAssetType::EType type, void* userdata,S32 status,LLExtStat extStatus); void parseNotecard(const char* buffer);