summaryrefslogtreecommitdiff
path: root/indra/newview/llgesturemgr.cpp
diff options
context:
space:
mode:
authorCG Linden <cg@lindenlab.com>2010-01-26 13:44:24 -0800
committerCG Linden <cg@lindenlab.com>2010-01-26 13:44:24 -0800
commitb8856efd5ff0e4899bb369dfd0815e824cd3a432 (patch)
tree4c99369867ed9e58b69dfad4ba8ee3a2e9a17b9b /indra/newview/llgesturemgr.cpp
parent5fc9d8bddad16b7d8dc6d481107a8ce690fdf731 (diff)
parentfee564c26e1018787cf70b95fc677c1da447118c (diff)
Pulled from viewer-2-0
Diffstat (limited to 'indra/newview/llgesturemgr.cpp')
-rw-r--r--indra/newview/llgesturemgr.cpp35
1 files changed, 35 insertions, 0 deletions
diff --git a/indra/newview/llgesturemgr.cpp b/indra/newview/llgesturemgr.cpp
index 82293b4aa0..0ba7bdf613 100644
--- a/indra/newview/llgesturemgr.cpp
+++ b/indra/newview/llgesturemgr.cpp
@@ -98,6 +98,41 @@ void LLGestureManager::init()
// TODO
}
+void LLGestureManager::changed(U32 mask)
+{
+ LLInventoryFetchObserver::changed(mask);
+
+ if (mask & LLInventoryObserver::GESTURE)
+ {
+ // If there was a gesture label changed, update all the names in the
+ // active gestures and then notify observers
+ if (mask & LLInventoryObserver::LABEL)
+ {
+ for(item_map_t::iterator it = mActive.begin(); it != mActive.end(); ++it)
+ {
+ if(it->second)
+ {
+ LLViewerInventoryItem* item = gInventory.getItem(it->first);
+ if(item)
+ {
+ it->second->mName = item->getName();
+ }
+ }
+ }
+ notifyObservers();
+ }
+ // If there was a gesture added or removed notify observers
+ // STRUCTURE denotes that the inventory item has been moved
+ // In the case of deleting gesture, it is moved to the trash
+ else if(mask & LLInventoryObserver::ADD ||
+ mask & LLInventoryObserver::REMOVE ||
+ mask & LLInventoryObserver::STRUCTURE)
+ {
+ notifyObservers();
+ }
+ }
+}
+
// Use this version when you have the item_id but not the asset_id,
// and you KNOW the inventory is loaded.