summaryrefslogtreecommitdiff
path: root/indra/newview/llinventoryobserver.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llinventoryobserver.h')
-rw-r--r--indra/newview/llinventoryobserver.h270
1 files changed, 135 insertions, 135 deletions
diff --git a/indra/newview/llinventoryobserver.h b/indra/newview/llinventoryobserver.h
index bec08d2cdf..43bcf14d89 100644
--- a/indra/newview/llinventoryobserver.h
+++ b/indra/newview/llinventoryobserver.h
@@ -1,25 +1,25 @@
-/**
+/**
* @file llinventoryobserver.h
* @brief LLInventoryObserver class header file
*
* $LicenseInfo:firstyear=2002&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2010, Linden Research, Inc.
- *
+ *
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
- *
+ *
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
- *
+ *
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
+ *
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
@@ -36,35 +36,35 @@ class LLViewerInventoryCategory;
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Class LLInventoryObserver
//
-// A simple abstract base class that can relay messages when the inventory
+// A simple abstract base class that can relay messages when the inventory
// changes.
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class LLInventoryObserver
{
public:
- // This enumeration is a way to refer to what changed in a more
- // human readable format. You can mask the value provided by
- // chaged() to see if the observer is interested in the change.
- enum
- {
- NONE = 0,
- LABEL = 1, // Name changed
- INTERNAL = 2, // Internal change (e.g. asset uuid different)
- ADD = 4, // Something added
- REMOVE = 8, // Something deleted
- STRUCTURE = 16, // Structural change (e.g. item or folder moved)
- CALLING_CARD = 32, // Calling card change (e.g. online, grant status, cancel)
- GESTURE = 64,
- REBUILD = 128, // Item UI changed (e.g. item type different)
- SORT = 256, // Folder needs to be resorted.
- CREATE = 512, // With ADD, item has just been created.
- // unfortunately a particular message is still associated with some unique semantics.
- UPDATE_CREATE = 1024, // With ADD, item added via UpdateCreateInventoryItem
- ALL = 0xffffffff
- };
- LLInventoryObserver();
- virtual ~LLInventoryObserver();
- virtual void changed(U32 mask) = 0;
+ // This enumeration is a way to refer to what changed in a more
+ // human readable format. You can mask the value provided by
+ // chaged() to see if the observer is interested in the change.
+ enum
+ {
+ NONE = 0,
+ LABEL = 1, // Name changed
+ INTERNAL = 2, // Internal change (e.g. asset uuid different)
+ ADD = 4, // Something added
+ REMOVE = 8, // Something deleted
+ STRUCTURE = 16, // Structural change (e.g. item or folder moved)
+ CALLING_CARD = 32, // Calling card change (e.g. online, grant status, cancel)
+ GESTURE = 64,
+ REBUILD = 128, // Item UI changed (e.g. item type different)
+ SORT = 256, // Folder needs to be resorted.
+ CREATE = 512, // With ADD, item has just been created.
+ // unfortunately a particular message is still associated with some unique semantics.
+ UPDATE_CREATE = 1024, // With ADD, item added via UpdateCreateInventoryItem
+ ALL = 0xffffffff
+ };
+ LLInventoryObserver();
+ virtual ~LLInventoryObserver();
+ virtual void changed(U32 mask) = 0;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -75,63 +75,63 @@ public:
class LLInventoryFetchObserver : public LLInventoryObserver
{
public:
- LLInventoryFetchObserver(const LLUUID& id = LLUUID::null); // single item
- LLInventoryFetchObserver(const uuid_vec_t& ids); // multiple items
- void setFetchID(const LLUUID& id);
- void setFetchIDs(const uuid_vec_t& ids);
+ LLInventoryFetchObserver(const LLUUID& id = LLUUID::null); // single item
+ LLInventoryFetchObserver(const uuid_vec_t& ids); // multiple items
+ void setFetchID(const LLUUID& id);
+ void setFetchIDs(const uuid_vec_t& ids);
- BOOL isFinished() const;
+ BOOL isFinished() const;
- virtual void startFetch() = 0;
- virtual void changed(U32 mask) = 0;
- virtual void done() {};
+ virtual void startFetch() = 0;
+ virtual void changed(U32 mask) = 0;
+ virtual void done() {};
protected:
- uuid_vec_t mComplete;
- uuid_vec_t mIncomplete;
- uuid_vec_t mIDs;
+ uuid_vec_t mComplete;
+ uuid_vec_t mIncomplete;
+ uuid_vec_t mIDs;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Class LLInventoryFetchItemsObserver
//
-// Fetches inventory items, calls done() when all inventory has arrived.
+// Fetches inventory items, calls done() when all inventory has arrived.
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class LLInventoryFetchItemsObserver : public LLInventoryFetchObserver
{
public:
- LLInventoryFetchItemsObserver(const LLUUID& item_id = LLUUID::null);
- LLInventoryFetchItemsObserver(const uuid_vec_t& item_ids);
+ LLInventoryFetchItemsObserver(const LLUUID& item_id = LLUUID::null);
+ LLInventoryFetchItemsObserver(const uuid_vec_t& item_ids);
- /*virtual*/ void startFetch();
- /*virtual*/ void changed(U32 mask);
+ /*virtual*/ void startFetch();
+ /*virtual*/ void changed(U32 mask);
// For attempts to group requests if too many items are requested
static const S32 MAX_INDIVIDUAL_ITEM_REQUESTS;
private:
- LLTimer mFetchingPeriod;
+ LLTimer mFetchingPeriod;
- /**
- * Period of waiting a notification when requested items get added into inventory.
- */
- static const F32 FETCH_TIMER_EXPIRY;
+ /**
+ * Period of waiting a notification when requested items get added into inventory.
+ */
+ static const F32 FETCH_TIMER_EXPIRY;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Class LLInventoryFetchDescendentsObserver
//
-// Fetches children of a category/folder, calls done() when all
-// inventory has arrived.
+// Fetches children of a category/folder, calls done() when all
+// inventory has arrived.
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class LLInventoryFetchDescendentsObserver : public LLInventoryFetchObserver
{
public:
- LLInventoryFetchDescendentsObserver(const LLUUID& cat_id = LLUUID::null);
- LLInventoryFetchDescendentsObserver(const uuid_vec_t& cat_ids);
+ LLInventoryFetchDescendentsObserver(const LLUUID& cat_id = LLUUID::null);
+ LLInventoryFetchDescendentsObserver(const uuid_vec_t& cat_ids);
- virtual void startFetch();
- /*virtual*/ void changed(U32 mask);
+ virtual void startFetch();
+ /*virtual*/ void changed(U32 mask);
protected:
- BOOL isCategoryComplete(const LLViewerInventoryCategory* cat) const;
+ BOOL isCategoryComplete(const LLViewerInventoryCategory* cat) const;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -144,16 +144,16 @@ protected:
class LLInventoryFetchComboObserver : public LLInventoryObserver
{
public:
- LLInventoryFetchComboObserver(const uuid_vec_t& folder_ids,
- const uuid_vec_t& item_ids);
- ~LLInventoryFetchComboObserver();
- /*virtual*/ void changed(U32 mask);
- void startFetch();
+ LLInventoryFetchComboObserver(const uuid_vec_t& folder_ids,
+ const uuid_vec_t& item_ids);
+ ~LLInventoryFetchComboObserver();
+ /*virtual*/ void changed(U32 mask);
+ void startFetch();
- virtual void done() = 0;
+ virtual void done() = 0;
protected:
- LLInventoryFetchItemsObserver *mFetchItems;
- LLInventoryFetchDescendentsObserver *mFetchDescendents;
+ LLInventoryFetchItemsObserver *mFetchItems;
+ LLInventoryFetchDescendentsObserver *mFetchDescendents;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -168,22 +168,22 @@ protected:
class LLInventoryAddItemByAssetObserver : public LLInventoryObserver
{
public:
- LLInventoryAddItemByAssetObserver() : mIsDirty(false) {}
- virtual void changed(U32 mask);
+ LLInventoryAddItemByAssetObserver() : mIsDirty(false) {}
+ virtual void changed(U32 mask);
- void watchAsset(const LLUUID& asset_id);
- bool isAssetWatched(const LLUUID& asset_id);
+ void watchAsset(const LLUUID& asset_id);
+ bool isAssetWatched(const LLUUID& asset_id);
protected:
- virtual void onAssetAdded(const LLUUID& asset_id) {}
- virtual void done() = 0;
+ virtual void onAssetAdded(const LLUUID& asset_id) {}
+ virtual void done() = 0;
- typedef std::vector<LLUUID> item_ref_t;
- item_ref_t mAddedItems;
- item_ref_t mWatchedAssets;
+ typedef std::vector<LLUUID> item_ref_t;
+ item_ref_t mAddedItems;
+ item_ref_t mWatchedAssets;
private:
- bool mIsDirty;
+ bool mIsDirty;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -195,11 +195,11 @@ private:
class LLInventoryAddedObserver : public LLInventoryObserver
{
public:
- LLInventoryAddedObserver() {}
- /*virtual*/ void changed(U32 mask);
+ LLInventoryAddedObserver() {}
+ /*virtual*/ void changed(U32 mask);
protected:
- virtual void done() = 0;
+ virtual void done() = 0;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -212,39 +212,39 @@ protected:
class LLInventoryCategoryAddedObserver : public LLInventoryObserver
{
public:
-
- typedef std::vector<LLViewerInventoryCategory*> cat_vec_t;
-
- LLInventoryCategoryAddedObserver() : mAddedCategories() {}
- /*virtual*/ void changed(U32 mask);
-
+
+ typedef std::vector<LLViewerInventoryCategory*> cat_vec_t;
+
+ LLInventoryCategoryAddedObserver() : mAddedCategories() {}
+ /*virtual*/ void changed(U32 mask);
+
protected:
- virtual void done() = 0;
-
- cat_vec_t mAddedCategories;
+ virtual void done() = 0;
+
+ cat_vec_t mAddedCategories;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Class LLInventoryCompletionObserver
//
-// Base class for doing something when when all observed items are locally
-// complete. Implements the changed() method of LLInventoryObserver
-// and declares a new method named done() which is called when all watched items
+// Base class for doing something when when all observed items are locally
+// complete. Implements the changed() method of LLInventoryObserver
+// and declares a new method named done() which is called when all watched items
// have complete information in the inventory model.
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class LLInventoryCompletionObserver : public LLInventoryObserver
{
public:
- LLInventoryCompletionObserver() {}
- /*virtual*/ void changed(U32 mask);
+ LLInventoryCompletionObserver() {}
+ /*virtual*/ void changed(U32 mask);
- void watchItem(const LLUUID& id);
+ void watchItem(const LLUUID& id);
protected:
- virtual void done() = 0;
+ virtual void done() = 0;
- uuid_vec_t mComplete;
- uuid_vec_t mIncomplete;
+ uuid_vec_t mComplete;
+ uuid_vec_t mIncomplete;
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -257,40 +257,40 @@ protected:
class LLInventoryCategoriesObserver : public LLInventoryObserver
{
public:
- typedef boost::function<void()> callback_t;
+ typedef boost::function<void()> callback_t;
- LLInventoryCategoriesObserver() {};
- virtual void changed(U32 mask);
+ LLInventoryCategoriesObserver() {};
+ virtual void changed(U32 mask);
- /**
- * Add cat_id to the list of observed categories with a
- * callback fired on category being changed.
- *
- * @return "true" if category was added, "false" if it could
- * not be found.
- */
- bool addCategory(const LLUUID& cat_id, callback_t cb, bool init_name_hash = false);
- void removeCategory(const LLUUID& cat_id);
+ /**
+ * Add cat_id to the list of observed categories with a
+ * callback fired on category being changed.
+ *
+ * @return "true" if category was added, "false" if it could
+ * not be found.
+ */
+ bool addCategory(const LLUUID& cat_id, callback_t cb, bool init_name_hash = false);
+ void removeCategory(const LLUUID& cat_id);
protected:
- typedef LLUUID digest_t; // To clarify the actual usage of this "UUID"
- struct LLCategoryData
- {
- LLCategoryData(const LLUUID& cat_id, const LLUUID& thumbnail_id, callback_t cb, S32 version, S32 num_descendents);
- LLCategoryData(const LLUUID& cat_id, const LLUUID& thumbnail_id, callback_t cb, S32 version, S32 num_descendents, const digest_t& name_hash);
- callback_t mCallback;
- S32 mVersion;
- S32 mDescendentsCount;
- digest_t mItemNameHash;
- bool mIsNameHashInitialized;
- LLUUID mCatID;
- LLUUID mThumbnailId;
- };
-
- typedef std::map<LLUUID, LLCategoryData> category_map_t;
- typedef category_map_t::value_type category_map_value_t;
-
- category_map_t mCategoryMap;
+ typedef LLUUID digest_t; // To clarify the actual usage of this "UUID"
+ struct LLCategoryData
+ {
+ LLCategoryData(const LLUUID& cat_id, const LLUUID& thumbnail_id, callback_t cb, S32 version, S32 num_descendents);
+ LLCategoryData(const LLUUID& cat_id, const LLUUID& thumbnail_id, callback_t cb, S32 version, S32 num_descendents, const digest_t& name_hash);
+ callback_t mCallback;
+ S32 mVersion;
+ S32 mDescendentsCount;
+ digest_t mItemNameHash;
+ bool mIsNameHashInitialized;
+ LLUUID mCatID;
+ LLUUID mThumbnailId;
+ };
+
+ typedef std::map<LLUUID, LLCategoryData> category_map_t;
+ typedef category_map_t::value_type category_map_value_t;
+
+ category_map_t mCategoryMap;
};
class LLFolderView;
@@ -299,15 +299,15 @@ class LLFolderView;
class LLScrollOnRenameObserver: public LLInventoryObserver
{
public:
- LLFolderView *mView;
- LLUUID mUUID;
-
- LLScrollOnRenameObserver(const LLUUID& uuid, LLFolderView *view):
- mUUID(uuid),
- mView(view)
- {
- }
- /* virtual */ void changed(U32 mask);
+ LLFolderView *mView;
+ LLUUID mUUID;
+
+ LLScrollOnRenameObserver(const LLUUID& uuid, LLFolderView *view):
+ mUUID(uuid),
+ mView(view)
+ {
+ }
+ /* virtual */ void changed(U32 mask);
};