diff -r 000000000000 -r 8466d47a6819 emailuis/uicomponents/inc/fstextviewer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/emailuis/uicomponents/inc/fstextviewer.h Thu Dec 17 08:39:21 2009 +0200 @@ -0,0 +1,139 @@ +/* +* Copyright (c) 2007 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: API class for TextViewer component +* +*/ + + +#ifndef C_FSTEXTVIEWER_H +#define C_FSTEXTVIEWER_H + +// removed __FS_ALFRED_SUPPORT flag +//#include +// removed __FS_ALFRED_SUPPORT flag +#include +// SF +#include +// +class CFsRichText; +class CFsTextViewerVisualizer; +class CFsTextViewerControl; +class MFsTextViewerObserver; +class CFsSmileyDictionary; +class CFsTextViewerKeys; +class CFsTextViewerWatermark; +class CAlfLayout; +class CAlfTexture; +class CFsTextViewerVisualizerSettings; + +class CFsTextViewer : public CBase + { + public: + IMPORT_C static CFsTextViewer* NewL ( CAlfEnv& aEnv ); + IMPORT_C ~CFsTextViewer(); + + public: + IMPORT_C CAlfControl* GetControl() const; + IMPORT_C void SetTextL( + CFsRichText* aText, + CFsSmileyDictionary* aSmDict ); + IMPORT_C void Show(); + IMPORT_C void Hide(); + IMPORT_C void SetObserver( MFsTextViewerObserver* aObserver ); + IMPORT_C void SetScrollOffsetInPx( TInt aPxOffset ); + IMPORT_C void SetScrollOffsetInLines( TInt aLineOffset ); + IMPORT_C void SetSmileySize( TSize aSize ); + IMPORT_C void SetPictureSize( TSize aSize ); + IMPORT_C void SetScrollDelay( TInt aDelay ); + IMPORT_C void SetCursorDelay( TInt aDelay ); + IMPORT_C void EnableSmileys( TBool aStatus = ETrue ); + IMPORT_C TBool Smileys(); + IMPORT_C void ReloadTextL(); + IMPORT_C void GetCurrentHotspotL( TInt& aBegin, TInt& aEnd ); + IMPORT_C void GetMarkedArea( TInt& aBegin, TInt& aEnd ); + IMPORT_C void EnableCursorUpDown( TBool aStatus = ETrue ); + IMPORT_C TBool CursorUpDown(); + IMPORT_C void SetCustomKeys( CFsTextViewerKeys* aKeys ); + IMPORT_C CFsTextViewerKeys* Keys(); + IMPORT_C void SetWatermarkL( CFsTextViewerWatermark* aWatermark ); + IMPORT_C CAlfLayout* RootLayout(); + IMPORT_C void SetBackgroundColorL( const TRgb& aColor ); + IMPORT_C void SetBackgroundImageL( CAlfTexture& aTexture ); + IMPORT_C void SetBackgroundOpacity( const TAlfTimedValue& aOpacity ); + IMPORT_C const TAlfTimedValue& BackgroundOpacity() const; + IMPORT_C void SetPartBgColorL( + TInt aStartChar, + TInt aEndChar, + const TRgb& aColor ); + IMPORT_C void SetPartBgImageL( + TInt aStartChar, + TInt aEndChar, + CAlfTexture& aTexture ); + IMPORT_C void SetLiteLineBg( + CAlfTexture& aTexture, + TReal32 aOpacity ); + IMPORT_C void SetActionButton( + CAlfTexture& aTexture, + TReal32 aOpacity ); + IMPORT_C void SetActionButtonMargin( TReal32 aMargin ); + IMPORT_C void SetActionButtonSize( TReal32 aWidth, TReal32 aHeight ); + IMPORT_C void SetMirroring( TBool aEnable = ETrue ); + IMPORT_C TInt GetTotalLines(); + IMPORT_C TInt GetFirstDisplayedLine(); + // + IMPORT_C TInt GetFirstCharInLine(TInt aChar); + IMPORT_C TInt GetLineNumber(TInt aLineOffset); + // + IMPORT_C TInt GetLastDisplayedLine(); + IMPORT_C void RemoveEndLinesL( TInt aLines ); + IMPORT_C void ReplaceTextL( + CFsRichText* aRichText, + CFsSmileyDictionary* aSmDict = NULL ); + IMPORT_C void FocusLineL( + TInt aLine, + TBool aShowAsFirstLine = EFalse ); + IMPORT_C void SetLeftMargin( TInt aMargin ); + IMPORT_C void SetRightMargin( TInt aMargin ); + IMPORT_C void ReloadPicturesL( TInt aLine = -1 ); + IMPORT_C TBool GetVisibleFocusedHotspotLine( TInt& aLineNum ) const; + IMPORT_C void HideActionButtonFromCurrentHighlightedHotspot(); + IMPORT_C void ShowActionButtonForCurrentHighlightedHotspotL(); + // + IMPORT_C void SetCurrentHotspotByOrderL( TInt aIndex, TBool aFocusLine = EFalse ); + // + IMPORT_C void SetCurrentHotspotByCharL( TInt aIndex ); + IMPORT_C CAlfLayout* GetStatusLayout(); + IMPORT_C void UpdateStatusLayout(); + IMPORT_C void RemoveStatusLayout(); + IMPORT_C HBufC* GetCurrentHotspotTextL(); + // + IMPORT_C TInt GetCurrentHotspotByOrder(); + // + + private: + CFsTextViewer( CAlfEnv& aEnv ); + void ConstructL( CAlfEnv& aEnv ); + + private: + CFsTextViewerVisualizer* iVisualizer; + CFsTextViewerControl* iControl; + CFsTextViewerWatermark* iWatermark; + CAlfTexture* iTexture; + TRgb iColor; + TBool iBackColorSet; + CFsTextViewerVisualizerSettings* iSettings; + }; + +#endif // C_FSTEXTVIEWER_H +