diff options
| author | Yuri Chebotarev <ychebotarev@productengine.com> | 2010-05-20 16:58:20 +0300 | 
|---|---|---|
| committer | Yuri Chebotarev <ychebotarev@productengine.com> | 2010-05-20 16:58:20 +0300 | 
| commit | 55e26cf05604a4dc71fa6683f1ec576eac779cad (patch) | |
| tree | fedaefdaaaa088c4574ef1f78867749353466cac | |
| parent | 265f77747f9ae7719c338bd9b3e76ba59b130b68 (diff) | |
ext-7403 fix - reset all data before setting new group id
reviewed by Vadim Savchuk https://codereview.productengine.com/secondlife/r/419/
--HG--
branch : product-engine
| -rw-r--r-- | indra/newview/llpanelgrouproles.cpp | 29 | ||||
| -rw-r--r-- | indra/newview/llpanelgrouproles.h | 4 | 
2 files changed, 33 insertions, 0 deletions
| diff --git a/indra/newview/llpanelgrouproles.cpp b/indra/newview/llpanelgrouproles.cpp index 95ec8170f2..7dec2251e8 100644 --- a/indra/newview/llpanelgrouproles.cpp +++ b/indra/newview/llpanelgrouproles.cpp @@ -797,8 +797,37 @@ BOOL LLPanelGroupMembersSubTab::postBuildSubTab(LLView* root)  void LLPanelGroupMembersSubTab::setGroupID(const LLUUID& id)  { +	//clear members list +	if(mMembersList) mMembersList->deleteAllItems(); +	if(mAssignedRolesList) mAssignedRolesList->deleteAllItems(); +	if(mAllowedActionsList) mAllowedActionsList->deleteAllItems(); +  	LLPanelGroupSubTab::setGroupID(id); +} + +void LLPanelGroupRolesSubTab::setGroupID(const LLUUID& id) +{ +	if(mRolesList) mRolesList->deleteAllItems(); +	if(mAssignedMembersList) mAssignedMembersList->deleteAllItems(); +	if(mAllowedActionsList) mAllowedActionsList->deleteAllItems(); + +	if(mRoleName) mRoleName->clear(); +	if(mRoleDescription) mRoleDescription->clear(); +	if(mRoleTitle) mRoleTitle->clear(); + +	setFooterEnabled(FALSE); +	LLPanelGroupSubTab::setGroupID(id); +} +void LLPanelGroupActionsSubTab::setGroupID(const LLUUID& id) +{ +	if(mActionList) mActionList->deleteAllItems(); +	if(mActionRoles) mActionRoles->deleteAllItems(); +	if(mActionMembers) mActionMembers->deleteAllItems(); + +	if(mActionDescription) mActionDescription->clear(); + +	LLPanelGroupSubTab::setGroupID(id);  } diff --git a/indra/newview/llpanelgrouproles.h b/indra/newview/llpanelgrouproles.h index a877402041..44aa7cea38 100644 --- a/indra/newview/llpanelgrouproles.h +++ b/indra/newview/llpanelgrouproles.h @@ -257,6 +257,8 @@ public:  	void handleDeleteRole();  	void saveRoleChanges(); + +	virtual void setGroupID(const LLUUID& id);  protected:  	void handleActionCheck(LLUICtrl* ctrl, bool force);  	LLSD createRoleItem(const LLUUID& role_id, std::string name, std::string title, S32 members); @@ -294,6 +296,8 @@ public:  	virtual void update(LLGroupChange gc);  	void handleActionSelect(); + +	virtual void setGroupID(const LLUUID& id);  protected:  	LLScrollListCtrl*	mActionList;  	LLScrollListCtrl*	mActionRoles; | 
