diff -r f1bdd6b078d1 -r 2cb9bae34d17 fep/aknfep/UiPlugins/AknFepUiInterface/AvkonImpl/inc/AknFepUIAvkonCtrlInputPane.h --- a/fep/aknfep/UiPlugins/AknFepUiInterface/AvkonImpl/inc/AknFepUIAvkonCtrlInputPane.h Tue Jul 06 14:38:41 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,283 +0,0 @@ -/* -* Copyright (c) 2002-2004 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: -* Provides the CAknFepUICtrlInputPane definition. -* -*/ - - - - - - - - - - - - -#ifndef __AKN_FEP_AVKON_INPUT_PANE_H__ -#define __AKN_FEP_AVKON_INPUT_PANE_H__ - -#include -#include -#include - -#include "AknFepUIAvkonCtrlContainerChinese.h" -class CEikLabel; -class CAknsFrameBackgroundControlContext; - - -/** - * pane in which the user's input is shown - */ -NONSHARABLE_CLASS(CAknFepUICtrlInputPane) : public CCoeControl, public MAknFepUICtrlInputPane - { -public: - /** - * first phase construction - * - * @param aParent parent window - * @param aPaneLayout the required layout - * - */ - static CAknFepUICtrlInputPane* NewL(RWindow& aParent, - TInputPaneLayout aPaneLayout, - CAknFepUiLayoutDataMgr* aLafDataMgr); - - /** - * destructor - */ - ~CAknFepUICtrlInputPane(); - - /** - * set the observer - *

Note that only one observer is supported! - * - * @param aObserver pointer to the observer - */ - - void SetSizeChangedObserver(MAknFepUICtrlPinyinPopupSizeChangedObserver* aObserver); - - /** - * Set the text buffer of the pane. - * - * @param aDes, the label will be filled with the first N characters from aDes, - * where N=EMaxInputCharsNotIncludingToneMark - * - */ - void SetText(const TDesC& aDes); - - /** - * Get the text buffer of the pane - * - * @output aText the buffer is filled with the contents of the candidate - * of the pane, up to the size of the buffer - */ - void GetText(TDes& aText) const; - - /** - * This function sets the highlighted status of the pane for rendering purposes. - * - * @param aHighlighted whether or not the input pane has the highlight - */ - void SetHighlighted(TBool aHighlighted); - - /** - * This function returns the highlighted status of the Pane. - * - * @return whether the pane is highlighted - */ - TBool Highlighted() const; - - /** - * This function sets the Tone Mark for the Pane. - * - * @param aToneMark descriptor containing the tone mark character - */ - void SetToneMark(const TDesC& aToneMark); - - /** - * This function gets the Tone Mark for the Pane. - * - * @output aToneMark descriptor containing the tone mark character - */ - void GetToneMark(TDes& aToneMark) const; - - /** - * This function sets the validity of the tonemark - * - * @param aValid if ETrue, tonemark will be displayed as valid - * if EFalse, tonemark will be displayed as not valid - */ - void SetToneMarkValidity(TBool aValid); - - /** - * sets the layout index to use when accessing the - * layout dll - */ - void SetLayoutIndex(TInt aIndex); - - /** - * sets the font to be used, which will override the font from LAF - * - * @param aFontId the new font id, pass in 0 to use the one from LAF - * - */ - void SetOverrideFontId(TInt aFontId); - - /** - * This function determines whether the current text is shown or not - * - * @param aValid if ETrue, text will be displayed - * if EFalse, text will be displayed - */ - void MakeTextVisible(TBool aVisible); - /** - * This function calculate the input pane's size for phrase input layout - * @return input pane's size - * - */ - TInt LabelTextWidthInPixels() const; - - /** - * Set,clear and check phonetic change status (for phrase input) - */ - inline void SetFlag(TInt aFlag); - inline void ClearFlag(TInt aFlag); - inline TBool IsFlagSet(TInt aFlag) const; - - void SetLayout( TInputPaneLayout aPaneLayout ); - - -public: // from CCoeControl - /** - * size changed - */ - virtual void SizeChanged(); - - /** - * count component controls - * - * @return number of contained controls - */ - TInt CountComponentControls() const; - - /** - * Component control - * - * @param aIndex the control to return, must be between 0 and the number of controls - * @return pointer to contained control, ownership is not passed - * - */ - CCoeControl* ComponentControl(TInt aIndex) const; - - /** - * draw - * - * @param aRect rectangle - * - */ - virtual void Draw(const TRect& aRect) const; - -protected: - - /** - * second phase construction - * - * @param aParent parent window - */ - void ConstructL(RWindow& aParent); - - /** - * constructor - * - * @param aPaneLayout the required layout - */ - CAknFepUICtrlInputPane(TInputPaneLayout aPaneLayout, CAknFepUiLayoutDataMgr* aLafDataMgr); - - /** - * Update the contents of the label, by combining - * the buffer with the tone mark - */ - void UpdateLabelContents(); - - /** - * layout contained controls - */ - void LayoutContainedControls(); - - /** - * layout the background frames - * - * @param aOuterRect filled with outer rect coords - * @param aInnerRect filled with inner rect coords - * - */ - void CalculateFrameRects(TRect& aOuterRect, TRect& aInnerRect) const; - -private: - - /** - * Get dispalying input text - * - * @param aDes Input text - */ - TInt CalculateMaxTextLength(const TDesC& aDes) const; - - /** - * layout input text - * - * @param aDes Input text - */ - TInt CalculateTextLength(const TDesC& aDes) const; - -private: - TBool iHighlighted; - TInputPaneLayout iLayout; - TInt iLayoutIndex; - TInt iMaxInputChars; - TAknLayoutRect iUnselectedStringHighlight; - TBufC iToneMarkBuffer; - TBool iToneMarkValidity; - TInt iFontId; - TInt iFlags; -private: // the following are owned - HBufC* iBuffer; - CEikLabel* iLabel; - CEikLabel* iLabelToneMark; - -private: // the following are not owned - CAknFepUiLayoutDataMgr* iLafDataMgr; - MAknFepUICtrlPinyinPopupSizeChangedObserver* iSizeChangedObserver; - }; - -inline void CAknFepUICtrlInputPane::SetFlag(TInt aFlag) - { - iFlags |= aFlag; - } - -inline void CAknFepUICtrlInputPane::ClearFlag(TInt aFlag) - { - iFlags &= ~aFlag; - } - -inline TBool CAknFepUICtrlInputPane::IsFlagSet(TInt aFlag) const - { - return iFlags & aFlag; - } - -#endif //__AKN_FEP_AVKON_INPUT_PANE_H__ - -// End of file