--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/uiservicetab/vimpstcmdprocess/inc/cvimpstprocessfriendrequestitem.h Wed Sep 01 12:33:36 2010 +0100
@@ -0,0 +1,216 @@
+/*
+* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Friend request item, stores all the information regarding *the ERactive authorization
+*
+*/
+
+
+
+#ifndef CVIMPSTPROCESSFRIENDREQUESTITEM_H_
+#define CVIMPSTPROCESSFRIENDREQUESTITEM_H_
+
+#include <e32base.h>
+#include "tvimpstenums.h"
+#include "cvimpstprocessarrayitem.h"
+
+// CLASS DECLARATION
+
+/**
+ * Friend request item, stores all the information regarding the ERactive authorization.
+ * Responsible for handling feriend requests.
+ * @lib vimpstcmdprocess.dll
+ * @since 5.0
+ */
+class CVIMPSTProcessFriendRequestItem:public CBase,
+ public MVIMPSTProcessArrayItem
+ {
+ public: // symbain constructor , destructor
+
+ /**
+ * Returns the instance of tis class.
+ * @param aRequesterId, requestor id.
+ * @return CVIMPSTProcessFriendRequestItem, instance of this class.
+ */
+ static CVIMPSTProcessFriendRequestItem* NewL(CVIMPSTProcessArray& aParent, const TDesC& aRequesterId, const TDesC& aRequestorDisplayName);
+
+ /**
+ * symbain way of construction
+ * @param aRequesterId, requestor id.
+ */
+ void ConstructL(const TDesC& aRequesterId, const TDesC& aRequestorDisplayName);
+
+ /**
+ * destructor
+ */
+ virtual ~CVIMPSTProcessFriendRequestItem();
+
+ private:
+
+ /**
+ * C++ default constructor
+ */
+ CVIMPSTProcessFriendRequestItem(CVIMPSTProcessArray& aParent);
+
+ public: //From MImArrayItem
+
+ /**
+ * Returns the name of the contact item
+ * @return TPtrC, name of the contact item to be displayed
+ */
+ TPtrC GetItemNameText();
+
+ /**
+ * Returns the default type of the contact item
+ * @return TEnumsPC::TItem: type of the contact item as either
+ * EContactitem, EContactListItem etc
+ */
+ TVIMPSTEnums::TItem Type();
+
+
+ /**
+ * Get the index of the contact item from engine side model
+ * @return TInt: index
+ */
+ inline TInt GetItemIndex()
+ {
+ return iIndex;
+ }
+
+ /**
+ * Set the index of the contact item from engine side model
+ * @param TInt: aIndex
+ */
+ inline void SetItemIndex(TInt aIndex)
+ {
+ iIndex = aIndex;
+ }
+
+ /**
+ * @return the VPBK Contact Link
+ */
+ inline MVPbkContactLink* ContactLink()
+ {
+ return NULL;
+ }
+
+
+
+ /**
+ * Returns the user id of the listbox item
+ * @return TPtrC, user id of the listbox item.
+ */
+ inline TPtrC GetItemUserId();
+
+ /**
+ * Returns the avatar index of the listbox item
+ * @return TInt: avatar index of the listbox item.
+ */
+ inline TInt AvatarIndex()
+ {
+ return KErrNone; // always return zero
+ }
+
+ /**
+ * sets the avatar index of the listbox item
+ * @param aAvatarIndex: avatar index to be set
+ */
+ inline void SetAvatarIndex(TInt /*aAvatarIndex*/ )
+ {
+ // dummy not used
+ }
+
+ /**
+ * Sets the messages pending status of the contact item
+ * @param aPendingMessageStatus: true if the contact has pending messages
+ * else false
+ */
+ void SetMsgPending(TBool aPendingMessageStatus);
+
+ /**
+ * gets the messages pending status of the contact item
+ * @return iSMsgPending: true if the contact has pending messages
+ * else false
+ */
+ TBool IsMsgPending();
+
+ /**
+ * Sets the name of the listbox item
+ * @param aName: Name of the listbox item to be set
+ * @return void
+ */
+
+ void SetConversationOpen(TBool aConvOpen ) ;
+
+ /**
+ * gets the messages pending status of the contact item
+ * @return iSMsgPending: true if the contact has pending messages
+ * else false
+ */
+ TBool IsConversationOpen() ;
+
+ /**
+ * returns status text of the contact
+ */
+ const TDesC& StatusText()
+ {
+ //NA
+ return KNullDesC;
+ }
+
+ /**
+ * returns online status of the contact
+ */
+ TVIMPSTEnums::TOnlineStatus OnlineStatus()
+ {
+ //NA
+ return TVIMPSTEnums::EUnknown;
+ }
+
+ /*
+ * Format and Reformat the string for listbox
+ */
+ void DoFormatStringL();
+
+ /**
+ * return formatted string needed for listbox for this item
+ */
+ TPtrC16 FormattedItemString();
+
+ private://member variables.
+
+ //Process Array
+ CVIMPSTProcessArray& iParent;
+
+ /**
+ * Index of the item in engines model class
+ */
+ TInt iIndex;
+
+ // Owns, user id of item.
+ HBufC* iUesrId;
+
+ // Owns, user id of item.
+ HBufC* iDisplayName;
+
+ // ETrue if it has a pending message, else EFalse.
+ TBool iSMsgPending;
+ // is conversation open
+ TBool iIsConversationOpen;
+
+ // for listbox
+ HBufC* iFormattedString;
+ };
+
+#endif /*CVIMPSTPROCESSFRIENDREQUESTITEM_H_*/
+