diff -r aecbbf00d063 -r d48ab3b357f1 uifw/ganes/inc/HgVgLetterPopup.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uifw/ganes/inc/HgVgLetterPopup.h Wed Sep 01 12:16:19 2010 +0100 @@ -0,0 +1,109 @@ +/* +* 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: +* +*/ + +#ifndef HGVGLETTERPOPUP_H_ +#define HGVGLETTERPOPUP_H_ + +// INCLUDES +#include +#include +#include +#include + +class CHgVgDrawBuffer; +class CFont; + +/** + * Helper class for drawing letter strip. + */ +NONSHARABLE_CLASS(CHgVgPopup) : CBase + { +public: + + /** + * Creates new CHgVgLetterStrip. + * + * @param aSize size of the letter strip in pixels. + * @param aFont font to use for letter rendering. + * @return HgVgLetterStrip-object + */ + static CHgVgPopup* NewL (const TRect& aRect, const CFont* aFont); + + // Destructor. + virtual ~CHgVgPopup(); + +private: + CHgVgPopup(const TRect& aRect, const CFont* aFont); + +public: // METHODS + + /** + * Sets letter in letter strip. + * + * @param aLetter + */ + void SetTextL(const TDesC& aText); + + /** + * Set two text to popupup + * + * @param aText1 + * @param aText2 + */ + void SetTexts(const TDesC& aText1, const TDesC& aText2); + + + /** + * Draws lettter strip at position. + * + * @param aPosition position to draw letter strip. + */ + void Draw(const TRect& aWindowRect, TReal aAlpha); + + /** + * + */ + void SetLayouts(const TAknWindowComponentLayout& aPopupLayout, + const TAknTextComponentLayout& aTextLayout, const TRect& aParentRect); + + /** + * + */ + void EnableLandscapeRendering(TBool enabled); + +protected: // Constructors + CHgVgPopup(); + + void ConstructL ( ); + +private: + + TRect iRect; + const CFont* iFont; + CHgVgDrawBuffer* iDrawBuffer; // renderer for drawing glyphs, owns; + VGImage iLetterImage; + VGPath iLetterBgPath; + VGPaint iLetterBgPaint; + HBufC* iPrevText; + + TAknWindowComponentLayout iPopupLayout; + TAknTextComponentLayout iTextLayout; + TRect iParentRect; + TBool iLandscape; + }; + +#endif /* HGVGLETTERPOPUP_H */