diff -r fa1df4b99609 -r ebe688cedc25 messagingapp/msgui/conversationview/inc/msgconversationbaseview.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/messagingapp/msgui/conversationview/inc/msgconversationbaseview.h Tue Aug 31 15:11:31 2010 +0300 @@ -0,0 +1,187 @@ +/* + * Copyright (c) 2009 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:Conversation Base view. + * + */ + +#ifndef MSG_CONVERSATION_VIEW_INTERFACE_H +#define MSG_CONVERSATION_VIEW_INTERFACE_H + +#ifdef CONVERSATIONVIEW_DLL +#define CONVERSATION_VIEW_EXPORT Q_DECL_EXPORT +#else +#define CONVERSATION_VIEW_EXPORT Q_DECL_IMPORT +#endif + +#include +#include "msgbaseview.h" + +// FORWARD DECLARATIONS +class MsgConversationView; +class HbListWidgetItem; +class MsgContactCardWidget; +class QGraphicsLinearLayout; +class XQSettingsManager; +class XQPublishAndSubscribeUtils; + +class CONVERSATION_VIEW_EXPORT MsgConversationBaseView: public MsgBaseView +{ +Q_OBJECT + +public: + + /** + * Constructor + */ + MsgConversationBaseView(QGraphicsItem* parent = 0); + + /** + * Destructor + */ + ~MsgConversationBaseView(); + +public: + /** + * openConversationView + * Launches conversation view + * @param entryId, the conversation index to be open + * + */ + void openConversation(qint64 entryId); + + /** + * clearContent + * Clear conversation view content + */ + void clearContent(); + + /** + * saveContentToDrafts + * Saves the editors content in cv to drafts + * @return valid message id if save is success + * else invalid message id ( i.e. -1 ) + */ + int saveContentToDrafts(); + + /** + * conversationId + * Get the conversationId + */ + qint64 conversationId(); + +public slots: + /** + * Close the conversation view + * This slot is triggered when user presses back(seconday sofykey) + */ + void closeConversationView(); + + /** + * Mark messages as read + * Slot is triiggered when replying started + */ + void markMessagesAsRead(); + + /** + * Publish the conversation id based on the flag. + * @param setId if true previous conversation id + * will be published else -1 will be published. + */ + void setPSCVId(bool setId); + +private slots: + /** + * Slot for delayed construction + */ + void doDelayedConstruction(); + + /** + * Hides chrome when itu-t is up + */ + void hideChrome(bool hide); + + /** + * Slot for handling valid returns from the framework. + * + * @param result const QVariant& + */ + void handleOk(const QVariant& result); + + /** + * Slot for handling errors. Error ids are provided as + * 32-bit integers. + * @param errorCode qint32 + */ + void handleError(int errorCode, const QString& errorMessage); + + /** + * Slot for handling the timer expiry event fired from view reay indication + */ + void handleViewReady(); + + /** + * + */ + void handleConversationIdChange(qint64 convId); + +signals: + /** + * Signal emitted when the conversation view is closed. + */ + void conversationViewClosed(); + +private: + /** + * Create and initialise the view + */ + void initView(); + +private: + + /** + * Conversation ID + */ + qint64 mConversationId; + + /** + * MsgConversationView, main view class + * Owned + */ + MsgConversationView *mConversationView; + + /** + * Contact card widget. + */ + MsgContactCardWidget* mContactCard; + + /** + * Main layout. + */ + QGraphicsLinearLayout* mMainLayout; + + /** + * Object of XQSettingsKey. + */ + XQSettingsKey mCVIdkey; + + /** + * mSettingsManager + * Instance of the XQSettingsManager + * Own. + */ + XQSettingsManager* mSettingsManager; +}; + +#endif // MSG_CONVERSATION_VIEW_INTERFACE_H +// EOF