summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelpeople.h
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2009-08-05 16:10:15 -0400
committerNat Goodspeed <nat@lindenlab.com>2009-08-05 16:10:15 -0400
commit07129bf928f79246849e66b396fab44a7a228216 (patch)
treee4e19b342540450ff84dad75f90d5acb5b3d6269 /indra/newview/llpanelpeople.h
parent03ebc43132331b9a8dcb3c418ec9c319a6beddda (diff)
parentdc62495da6e5c153c0df57fdbce6b0f40c0208f2 (diff)
Merge recent changes
Diffstat (limited to 'indra/newview/llpanelpeople.h')
-rw-r--r--indra/newview/llpanelpeople.h27
1 files changed, 21 insertions, 6 deletions
diff --git a/indra/newview/llpanelpeople.h b/indra/newview/llpanelpeople.h
index 4d535f287c..2ac1bf424c 100644
--- a/indra/newview/llpanelpeople.h
+++ b/indra/newview/llpanelpeople.h
@@ -37,7 +37,7 @@
#include "llcallingcard.h" // for avatar tracker
-class LLSearchEditor;
+class LLFilterEditor;
class LLTabContainer;
class LLAvatarList;
class LLGroupList;
@@ -61,8 +61,10 @@ private:
bool updateNearbyList();
bool updateRecentList();
bool updateGroupList();
+ bool filterFriendList();
+ bool filterNearbyList();
+ bool filterRecentList();
void updateButtons();
- bool refreshFriendNames(U32 changed_mask);
LLAvatarList* getActiveAvatarList() const;
LLUUID getCurrentItemID() const;
void buttonSetVisible(std::string btn_name, BOOL visible);
@@ -72,8 +74,10 @@ private:
/*virtual*/ void onVisibilityChange(BOOL new_visibility);
+ void reSelectedCurrentTab();
+
// UI callbacks
- void onSearchEdit(const std::string& search_string);
+ void onFilterEdit(const std::string& search_string);
void onTabSelected(const LLSD& param);
void onViewProfileButtonClicked();
void onAddFriendButtonClicked();
@@ -92,7 +96,6 @@ private:
void onGroupPlusButtonClicked();
void onGroupMinusButtonClicked();
void onGroupPlusMenuItemClicked(const LLSD& userdata);
- void onGroupMinusMenuItemClicked(const LLSD& userdata);
// misc callbacks
bool onFriendListUpdate(U32 changed_mask);
@@ -101,7 +104,9 @@ private:
const std::vector<LLUUID>& ids,
void*);
- LLSearchEditor* mSearchEditor;
+ void hideProfileView();
+
+ LLFilterEditor* mFilterEditor;
LLTabContainer* mTabContainer;
LLAvatarList* mFriendList;
LLAvatarList* mNearbyList;
@@ -109,7 +114,6 @@ private:
LLGroupList* mGroupList;
LLHandle<LLView> mGroupPlusMenuHandle;
- LLHandle<LLView> mGroupMinusMenuHandle;
Updater* mFriendListUpdater;
Updater* mNearbyListUpdater;
@@ -117,6 +121,17 @@ private:
Updater* mGroupListUpdater;
std::string mFilterSubString;
+
+ // The vectors below contain up-to date avatar lists
+ // for the corresponding tabs.
+ // When the user enters a filter, it gets applied
+ // to all the vectors and the result is shown in the tabs.
+ // We don't need to have such a vector for the groups tab
+ // since re-fetching the groups list is always fast.
+ typedef std::vector<LLUUID> uuid_vector_t;
+ uuid_vector_t mNearbyVec;
+ uuid_vector_t mFriendVec;
+ uuid_vector_t mRecentVec;
};
#endif //LL_LLPANELPEOPLE_H