diff -r 000000000000 -r 5f000ab63145 phoneuis/BubbleManager/Inc/BMConfHeader.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/phoneuis/BubbleManager/Inc/BMConfHeader.h Mon Jan 18 20:18:27 2010 +0200 @@ -0,0 +1,181 @@ +/* +* Copyright (c) 2002 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: +* Concrete class which holds info about conference call +* +*/ + + +#ifndef CONFHEADER_H +#define CONFHEADER_H + +// INCLUDES +#include "BMBubbleHeader.h" + +// FORWARD DECLARATIONS +class CBubbleCallHeader; + +// CLASS DECLARATION + +/** +* CBubbleConfHeader class +* +* Concrete class which holds info about conference call +* +* @lib bubblemanager +* @since 1.0 +*/ + +class CBubbleConfHeader : public CBubbleHeader + { + public: // Constructors and destructor + + /** + * two phase constructor + * @param aBubbleId Id of the call header + * @return New instance + */ + static CBubbleConfHeader* NewL( + const CBubbleManager::TBubbleId& aBubbleId); + + /** + * Destructor. + */ + virtual ~CBubbleConfHeader(); + + public: // Member functions + + /** + * Add call to conference call. + * @param aCall Added call. + */ + void AddRow( CBubbleCallHeader& aCall ); + + /** + * Remove call from conferece. + * @param aCallId Bubble id of removed call. + */ + void RemoveRow( const CBubbleManager::TBubbleId& aCallId ); + + /** + * Get headers in conference call. + * @param aCalls Reference where item are put to. + */ + void GetRows( CArrayPtrFlat& aCalls ) const; + + /** + * Get amount of calls in conference call. + * @return Amount of calls in conf. + */ + TUint8 RowCount() const; + + /** + * Set highlight row. + * @param aRow The row number 1-n. KBubbleNoHighlightRow no highlight. + */ + void SetHighlight( const CBubbleManager::TRowNumber& aRow ); + + /** + * Set highlight header. + * @param aBubbleId Id of highlighted item. + */ + void SetHighlightId( const CBubbleManager::TBubbleId& aBubbleId ); + + /** + * Get bubble id of highlighted item. + * @return Id of highlighted item. KBubbleInvalidId if no highlight. + */ + CBubbleManager::TBubbleId HighlightId() const; + + /** + * Move highlight one item upwards. If already at upmost, no change. + */ + void MoveHighlightOneUp(); + + /** + * Move highlight one item downwards. If already at lowest, no change. + */ + void MoveHighlightOneDown(); + + /** + * Get the highlight row number. + * @return The row number 1-n. KBubbleNoHighlightRow no highlight. + */ + CBubbleManager::TRowNumber Highlight() const; + + /** + * Set conference call expanded. + * @param aIsExpanded ETrue expands the conf call. + */ + void SetIsExpanded( TBool aIsExpanded ); + + /** + * Is conference expanded. + * @return ETrue if expanded. + */ + TBool IsExpanded( ) const; + + public: // Functions form base classes + + /** + * From CBubbleHeader. + */ + virtual void Reset(); + + /** + * From CBubbleHeader. + */ + virtual void SetIsUsed( const TBool& aIsUsed ); + + /** + * From CBubbleHeader. + */ + virtual TBool IsUsed() const; + + /** + * From CBubbleHeader. + */ + virtual TBool IsConference() const; + + protected: + + /** + * Default constructor. + */ + CBubbleConfHeader(); + + private: // private functions + + /** + * 2nd phase constructor. + */ + void ConstructL( const CBubbleManager::TBubbleId& aBubbleId ); + + private: //data + // Is header used? + TBool iIsUsed; + // Is conference expanded? + TBool iIsExpanded; + //1-5 , KBubbleNoHighlightRow no highlight + CBubbleManager::TRowNumber iSelection; + // Current calls in conference call + CArrayPtrFlat* iCalls; + + private: + friend class CT_CBubbleConfHeader; + }; + +#endif //CONFHEADER_H + +// End of File