diff -r 6a20128ce557 -r ebfee66fde93 messagingapp/msgui/unifiedviewer/inc/unicontentswidget.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/messagingapp/msgui/unifiedviewer/inc/unicontentswidget.h Fri Jun 04 10:25:39 2010 +0100 @@ -0,0 +1,142 @@ +/* + * 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: This widget is place holder for message headers and body + * + */ + +#ifndef UNI_CONTENTS_WIDGET_H +#define UNI_CONTENTS_WIDGET_H + +#include +#include +#include "convergedmessage.h" + +class QGraphicsLinearLayout; +class QGraphicsGridLayout; +class UniViewerFeeder; +class ConvergedMessage; +class UniViewSlideWidget; + +/** + * This widget is place holder for message headers and body + */ +class UniContentsWidget : public HbWidget +{ +Q_OBJECT + +public: + /** + * Constructor + */ + UniContentsWidget(UniViewerFeeder* feeder, QGraphicsItem * parent = 0); + + /** + * Destructor + */ + ~UniContentsWidget(); + + /** + * Clears the content on the widget + */ + void clearContent(); + + /** + * Populates the content on the widget + */ + void populateContent(); + + /** + * Remove item from layout + */ + void removeItemFromLayout(UniViewSlideWidget* item); + +public slots: + + /* + * Creates and populates the next slide + */ + void populateNextSlide(); + +private: + + /* + * Adds item to layout. + * @param item item to be added. + */ + void addItemToLayout(UniViewSlideWidget* item); + + +signals: + /** + * this signal is emitted when sendMessage is emitted. from UniViewerTextItem. + */ + void sendMessage(const QString& phoneNumber,const QString& alias = QString()); + +private: + + /** + * QGraphicsLinearLayout object + * Owned + */ + QGraphicsLinearLayout* mMainLayout; + + /** + * UniViewerFeeder object + * Owned + */ + UniViewerFeeder* mViewFeeder; + + /** + * Total number of slides + */ + int mTotalSlides; + + /** + * Current slide number + */ + int mCurrentSlide; + + /** + * Slide array. + */ + QList mSlides; + + /** + * Total slides that can be created + */ + int mSlideWindow; + + /** + * Total slides to be created in the construction + */ + int mInitialLoadCount; + + /** + * Total slides of the current message already loaded + */ + int mTotalSlidesLoaded; + + /** + * Maintains the total slides added to the layout + */ + int mRowCount; + + /** + * Message type of the message being viewed + */ + ConvergedMessage::MessageType mMessageType; +}; + +#endif // UNI_CONTENTS_WIDGET_H +// EOF