diff options
| -rw-r--r-- | indra/llui/llfolderviewitem.h | 3 | ||||
| -rw-r--r-- | indra/newview/llimfloatercontainer.cpp | 8 | ||||
| -rw-r--r-- | indra/newview/llimfloatercontainer.h | 3 | 
3 files changed, 7 insertions, 7 deletions
| diff --git a/indra/llui/llfolderviewitem.h b/indra/llui/llfolderviewitem.h index 19caa7f020..4eda02f13f 100644 --- a/indra/llui/llfolderviewitem.h +++ b/indra/llui/llfolderviewitem.h @@ -406,15 +406,12 @@ public:  	LLFolderViewFolder* getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse);  	void gatherChildRangeExclusive(LLFolderViewItem* start, LLFolderViewItem* end, bool reverse,  std::vector<LLFolderViewItem*>& items); -protected: -	friend void LLFolderViewItem::addToFolder(LLFolderViewFolder*);  	// internal functions for tracking folders and items separately  	// use addToFolder() virtual method to ensure folders are always added to mFolders  	// and not mItems  	void addItem(LLFolderViewItem* item);  	void addFolder( LLFolderViewFolder* folder); -public:  	//WARNING: do not call directly...use the appropriate LLFolderViewModel-derived class instead  	template<typename SORT_FUNC> void sortFolders(const SORT_FUNC& func) { mFolders.sort(func); }  	template<typename SORT_FUNC> void sortItems(const SORT_FUNC& func) { mItems.sort(func); } diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index 405a2b3255..cc094fcaa1 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -100,7 +100,7 @@ BOOL LLIMFloaterContainer::postBuild()  	mConversationsListPanel = getChild<LLPanel>("conversations_list_panel");  	// CHUI-98 : View Model for conversations -	LLConversationItem* base_item = new LLConversationItem(); +	LLConversationItem* base_item = new LLConversationItem(this);  	LLFolderView::Params p;  	p.view_model = &mConversationViewModel;  	p.parent_panel = mConversationsListPanel; @@ -456,7 +456,7 @@ void LLIMFloaterContainer::addConversationListItem(std::string name, const LLUUI  	mConversationsWidgets[floaterp] = widget;  	// Add a new conversation widget to the root folder of a folder view. -	mConversationsRoot->addItem(widget); +	widget->addToFolder(mConversationsRoot);  	// Add it to the UI  	widget->setVisible(TRUE); @@ -533,6 +533,7 @@ LLFolderViewItem* LLIMFloaterContainer::createConversationItemWidget(LLConversat  // Conversation items  LLConversationItem::LLConversationItem(std::string name, const LLUUID& uuid, LLFloater* floaterp, LLIMFloaterContainer* containerp) : +	LLFolderViewModelItemCommon(containerp->getRootViewModel()),  	mName(name),  	mUUID(uuid),      mFloater(floaterp), @@ -540,7 +541,8 @@ LLConversationItem::LLConversationItem(std::string name, const LLUUID& uuid, LLF  {  } -LLConversationItem::LLConversationItem() : +LLConversationItem::LLConversationItem(LLIMFloaterContainer* containerp) : +	LLFolderViewModelItemCommon(containerp->getRootViewModel()),  	mName(""),  	mUUID(),  	mFloater(NULL), diff --git a/indra/newview/llimfloatercontainer.h b/indra/newview/llimfloatercontainer.h index 9b487dd652..b352e8a004 100644 --- a/indra/newview/llimfloatercontainer.h +++ b/indra/newview/llimfloatercontainer.h @@ -57,7 +57,7 @@ class LLConversationItem : public LLFolderViewModelItemCommon  {  public:  	LLConversationItem(std::string name, const LLUUID& uuid, LLFloater* floaterp, LLIMFloaterContainer* containerp); -	LLConversationItem(); +	LLConversationItem(LLIMFloaterContainer* containerp);  	virtual ~LLConversationItem() {}  	// Stub those things we won't really be using in this conversation context @@ -241,6 +241,7 @@ public:  	/*virtual*/ void sessionVoiceOrIMStarted(const LLUUID& session_id);  	/*virtual*/ void sessionRemoved(const LLUUID& session_id);  	/*virtual*/ void sessionIDUpdated(const LLUUID& old_session_id, const LLUUID& new_session_id) {}; +	LLConversationViewModel& getRootViewModel() { return mConversationViewModel; }  private:  	typedef std::map<LLUUID,LLFloater*> avatarID_panel_map_t; | 
