diff options
| author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2010-02-26 13:13:26 -0500 |
|---|---|---|
| committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2010-02-26 13:13:26 -0500 |
| commit | 3b52ab6cf17ceae4a2d45a8477b8643a9e3c6162 (patch) | |
| tree | 58491dbe94278921244e05927d0d58b580304646 /indra/newview/llpanelgroupgeneral.cpp | |
| parent | 27c83bf399f2ca91f0444aa97a98af00a2483c30 (diff) | |
| parent | 470c05b70808f0a51090c0f50847fe614bf041e9 (diff) | |
merge
Diffstat (limited to 'indra/newview/llpanelgroupgeneral.cpp')
| -rw-r--r-- | indra/newview/llpanelgroupgeneral.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/indra/newview/llpanelgroupgeneral.cpp b/indra/newview/llpanelgroupgeneral.cpp index 555e277ce5..517204b232 100644 --- a/indra/newview/llpanelgroupgeneral.cpp +++ b/indra/newview/llpanelgroupgeneral.cpp @@ -111,6 +111,8 @@ BOOL LLPanelGroupGeneral::postBuild() { mListVisibleMembers->setDoubleClickCallback(openProfile, this); mListVisibleMembers->setContextMenu(LLScrollListCtrl::MENU_AVATAR); + + mListVisibleMembers->setSortCallback(boost::bind(&LLPanelGroupGeneral::sortMembersList,this,_1,_2,_3)); } // Options @@ -944,4 +946,18 @@ void LLPanelGroupGeneral::setGroupID(const LLUUID& id) activate(); } +S32 LLPanelGroupGeneral::sortMembersList(S32 col_idx,const LLScrollListItem* i1,const LLScrollListItem* i2) +{ + const LLScrollListCell *cell1 = i1->getColumn(col_idx); + const LLScrollListCell *cell2 = i2->getColumn(col_idx); + + if(col_idx == 2) + { + if(LLStringUtil::compareDict(cell1->getValue().asString(),"Online") == 0 ) + return 1; + if(LLStringUtil::compareDict(cell2->getValue().asString(),"Online") == 0 ) + return -1; + } + return LLStringUtil::compareDict(cell1->getValue().asString(), cell2->getValue().asString()); +} |
