summaryrefslogtreecommitdiff
path: root/indra/newview/llfriendcard.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfriendcard.h')
-rw-r--r--indra/newview/llfriendcard.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/indra/newview/llfriendcard.h b/indra/newview/llfriendcard.h
index aa391ce2c1..feea05bc1d 100644
--- a/indra/newview/llfriendcard.h
+++ b/indra/newview/llfriendcard.h
@@ -72,6 +72,12 @@ public:
bool isItemInAnyFriendsList(const LLViewerInventoryItem* item);
/**
+ * Checks if specified category is contained in the Calling Card/Friends folder and
+ * determines if specified Inventory Object exists in that category.
+ */
+ bool isObjDirectDescendentOfCategory(const LLInventoryObject* obj, const LLViewerInventoryCategory* cat) const;
+
+ /**
* Checks is the specified category is in the Calling Card/Friends folder
*/
bool isCategoryInFriendFolder(const LLViewerInventoryCategory* cat) const;
@@ -83,8 +89,10 @@ public:
/**
* Synchronizes content of the Calling Card/Friends/All Global Inventory folder with Agent's Friend List
+ *
+ * @return true - if folder is already synchronized, false otherwise.
*/
- void syncFriendsFolder();
+ bool syncFriendsFolder();
/*!
* \brief
@@ -138,11 +146,20 @@ private:
void onFriendListUpdate(U32 changed_mask);
+ /**
+ * Force fetching of the Inventory folder specified by passed folder's LLUUID.
+ *
+ * It only sends request to server, server reply should be processed in other place.
+ * Because request can be sent via UDP we need to periodically check if request was completed with success.
+ */
+ void forceFriendListIsLoaded(const LLUUID& folder_id) const;
+
private:
typedef std::set<LLUUID> avatar_uuid_set_t;
avatar_uuid_set_t mBuddyIDSet;
+ bool mFriendsAllFolderCompleted;
};
#endif // LL_LLFRIENDCARD_H