CHUI-98 : Defining the various llconversation sub classes in their respective file

meow-7.2.2
Merov Linden 2012-08-23 19:44:10 -07:00
parent 15d957616e
commit e537d6477d
5 changed files with 75 additions and 3 deletions

View File

@ -29,7 +29,10 @@
#include "llconversationmodel.h"
// Conversation items
//
// Conversation items : common behaviors
//
LLConversationItem::LLConversationItem(std::string display_name, const LLUUID& uuid, LLFolderViewModelInterface& root_view_model) :
LLFolderViewModelItemCommon(root_view_model),
mName(display_name),
@ -73,4 +76,32 @@ bool LLConversationSort::operator()(const LLConversationItem* const& a, const LL
return (compare < 0);
}
//
// LLConversationItemSession
//
LLConversationItemSession::LLConversationItemSession(std::string display_name, const LLUUID& uuid, LLFolderViewModelInterface& root_view_model) :
LLConversationItem(display_name,uuid,root_view_model)
{
}
LLConversationItemSession::LLConversationItemSession(LLFolderViewModelInterface& root_view_model) :
LLConversationItem(root_view_model)
{
}
//
// LLConversationItemParticipant
//
LLConversationItemParticipant::LLConversationItemParticipant(std::string display_name, const LLUUID& uuid, LLFolderViewModelInterface& root_view_model) :
LLConversationItem(display_name,uuid,root_view_model)
{
}
LLConversationItemParticipant::LLConversationItemParticipant(LLFolderViewModelInterface& root_view_model) :
LLConversationItem(root_view_model)
{
}
// EOF

View File

@ -104,6 +104,22 @@ private:
const LLUUID mUUID;
};
class LLConversationItemSession : public LLConversationItem
{
public:
LLConversationItemSession(std::string display_name, const LLUUID& uuid, LLFolderViewModelInterface& root_view_model);
LLConversationItemSession(LLFolderViewModelInterface& root_view_model);
virtual ~LLConversationItemSession() {}
};
class LLConversationItemParticipant : public LLConversationItem
{
public:
LLConversationItemParticipant(std::string display_name, const LLUUID& uuid, LLFolderViewModelInterface& root_view_model);
LLConversationItemParticipant(LLFolderViewModelInterface& root_view_model);
virtual ~LLConversationItemParticipant() {}
};
// We don't want to ever filter conversations but we need to declare that class to create a conversation view model.
// We just stubb everything for the moment.
class LLConversationFilter : public LLFolderViewFilter

View File

@ -32,6 +32,10 @@
#include "llimconversation.h"
#include "llimfloatercontainer.h"
//
// Implementation of conversations list session widgets
//
LLConversationViewSession::Params::Params() :
container()
{}
@ -75,4 +79,13 @@ void LLConversationViewSession::setVisibleIfDetached(BOOL visible)
}
}
//
// Implementation of conversations list participant (avatar) widgets
//
LLConversationViewParticipant::LLConversationViewParticipant( const LLFolderViewItem::Params& p ):
LLFolderViewItem(p)
{
}
// EOF

View File

@ -31,7 +31,7 @@
class LLIMFloaterContainer;
// Implementation of conversations list widgets
// Implementation of conversations list session widgets
class LLConversationViewSession : public LLFolderViewFolder
{
@ -55,4 +55,16 @@ public:
void setVisibleIfDetached(BOOL visible);
};
// Implementation of conversations list participant (avatar) widgets
class LLConversationViewParticipant : public LLFolderViewItem
{
protected:
friend class LLUICtrlFactory;
LLConversationViewParticipant( const LLFolderViewItem::Params& p );
public:
virtual ~LLConversationViewParticipant( void ) { }
};
#endif // LL_LLCONVERSATIONVIEW_H

View File

@ -471,7 +471,7 @@ void LLIMFloaterContainer::addConversationListItem(const LLUUID& uuid)
removeConversationListItem(uuid,false);
// Create a conversation item
LLConversationItem* item = new LLConversationItem(display_name, uuid, getRootViewModel());
LLConversationItem* item = new LLConversationItemSession(display_name, uuid, getRootViewModel());
mConversationsItems[uuid] = item;
// Create a widget from it