diff -r 2eacb6118286 -r ba76fc04e6c2 phoneuis/bubblemanager2/bubblecore/src/bubbleconferencehandler.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/phoneuis/bubblemanager2/bubblecore/src/bubbleconferencehandler.h Fri Jun 04 10:19:18 2010 +0100 @@ -0,0 +1,80 @@ +/*! +* 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: Conference call bubble handler. +* +*/ + +#ifndef BUBBLECONFERENCEHANDLER_H_ +#define BUBBLECONFERENCEHANDLER_H_ + +#include "bubblehandler.h" +#include "bubblewidgetmanager.h" + +class BubbleHeader; +class HbAction; +class BubbleButton; +class HbLabel; +class BubbleConferenceHeader; +class HbListWidgetItem; +class BubbleParticipantListItem; +class HbListView; +class BubbleParticipantListModel; +class QTimer; +class QModelIndex; + +class BubbleConferenceHandler : public BubbleHandler + { + Q_OBJECT + +public: + explicit BubbleConferenceHandler( + BubbleWidgetManager& widgetManager, + BubbleWidgetManager::View view, + BubbleWidgetManager::Container container, + QObject* parent = 0); + virtual ~BubbleConferenceHandler(); + +protected: + void reset(); + + void readBubbleHeader( const BubbleHeader& header ); + + void setButtons(const QList& actions); + + QGraphicsWidget* graphicsWidgetForAction( HbAction* action ) const; + + void updateTimerDisplayNow(); + + void conferenceMemberRemoved(int bubbleId); + + void conferenceRemoved(); + +protected slots: + void handleItemSelected( const QModelIndex& current, + const QModelIndex& previous); + void clearSelection(); + +protected: //data + const BubbleConferenceHeader* mHeader; + HbLabel* mTimerLabel; + BubbleButton* mButtonCenter; + BubbleButton* mButtonLeft; + BubbleButton* mButtonRight; + HbListView* mList; + BubbleParticipantListModel* mModel; + BubbleParticipantListItem* mPrototype; // not owned + QTimer* mSelectionTimer; + }; + +#endif /* BUBBLECONFERENCEHANDLER_H_ */