--- a/textinput/peninputhwrtrui/inc/truimainviewcontainer.h Wed Jun 23 04:57:58 2010 +0800
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,439 +0,0 @@
-/*
-* 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: CTruiMainViewContainer class of TrainingUI
-*
-*/
-
-
-#ifndef C_TRUIMAINVIEWCONTAINER_H
-#define C_TRUIMAINVIEWCONTAINER_H
-
-#include "truicontainerbase.h"
-#include "truihwrboxobserver.h"
-
-class CAknButton;
-class CAknChoiceList;
-class CTruiHwrBox;
-class CAknCharMapDialog;
-class CAknsBasicBackgroundControlContext;
-class CEikLabel;
-class CAknPreviewPopUpController;
-
-const TInt KActiveCharSize = 1;
-const TInt KLabelTextLen = 100;
-/**
- * CTruiMainViewContainer container control
- * Used as the component to training ui main view
- *
- * @code
- * iContainer = CTruiMainViewContainer::NewL( ClientRect() );
- * iContainer->SetMopParent( this );
- * AppUi()->AddToStackL( *this, iContainer );
- * @endcode
- *
- */
-class CTruiMainViewContainer : public CTruiContainerBase,
- public MCoeControlObserver,
- public MTruiHwrBoxObserver
- {
-public:
-
- /**
- * Two-phased constructor.
- * @param aRect The rectangle that defines the control's extent.
- * The rectangle's origin is relative to the origin of its associated window.
- * @return Pointer to the component control
- */
- static CTruiMainViewContainer* NewL( const TRect& aRect );
-
- /**
- * Two-phased constructor.
- * @param aRect The rectangle that defines the control's extent.
- * The rectangle's origin is relative to the origin of its associated window.
- * @return Pointer to the component control
- */
- static CTruiMainViewContainer* NewLC( const TRect& aRect );
-
- /**
- * Destructor.
- */
- virtual ~CTruiMainViewContainer();
-
- /**
- * Handles an event from an observed control.
- *
- * @param aControl The control that sent the event.
- * @param aEventType The event type.
- */
- void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType );
-
- /**
- * Handles language script changed.
- *
- * @param aScriptId The selected language script's Id
- */
- void HandleLanguageScriptChangedL( TInt aScriptId );
-
- /**
- * Handles character range changed.
- *
- * @param aIndex The index of range item in Menu "character range" or choicelist
- * @param aRangeId The range Id.
- */
- void HandleCharRangeChangedL( TInt aIndex, TInt aRangeId );
-
- /**
- * Handles choosing an active char from SCT.
- *
- */
- void HandleChooseCharEventL();
-
- /**
- * Preview character model
- *
- */
- void PreviewCharacterModel();
-
- /**
- * Set current trained character
- *
- * @param aChar the trained character
- */
- void SetCurrentCharL( const TPtrC& aChar );
-
- /**
- * Clear current model
- *
- */
- void ClearCurrentModel();
-
- /**
- * Delete model of current character
- *
- */
- void DeleteModelL();
-
- /**
- * Delete all models of current character
- *
- */
- void DeleteAllModelL();
-
- /**
- * Check if clear button has been dimmed
- *
- * @return ETrue: dimmed; EFalse: undimmed
- */
- TBool IsButtonDimmed();
-
- /**
- * Check if all delete button has been dimmed
- *
- * @return ETrue: dimmed; EFalse: undimmed
- */
- TBool IsAllDelete();
-
- /**
- * Get character set Id, used to choose which characters will be displayed in SCT
- *
- * @param aRangeId Character range Id for special character table
- *
- * @return Id of character set.
- */
- TInt SctCharacterSetId( TInt aRangeId );
-
- /**
- * Get cyrillic lower character set Id
- *
- * @param aInputLanguage Current input language
- *
- * @return Id of character set.
- */
- TInt SctCyrillicLowerCharacterSetId( TLanguage aInputLanguage );
-
- /**
- * Get cyrillic upper character set Id
- *
- * @param aInputLanguage Current input language
- *
- * @return Id of character set.
- */
- TInt SctCyrillicUpperCharacterSetId( TLanguage aInputLanguage );
-
- /**
- * Before exit, do some necessary operation
- *
- */
- void PrepareToExitL();
-
- /**
- * Handle size changed
- *
- * @param aVarity: Use aVarity to load different resulotion's LAF data.
- */
- void DoSizeChanged( TInt aVarity );
-
-private:
-
- /**
- * Constructor.
- */
- CTruiMainViewContainer();
-
- /**
- * Perform the second phase construction of a CTruiMainViewContainer object.
- *
- * @param aRect: The rectangle that defines the control's extent.
- */
- void ConstructL( const TRect& aRect );
-
- /**
- * Create controls to be displayed in this container.
- *
- */
- void InitializeControlsL();
-
- /**
- * Create label and display it in the container.
- *
- * @param aResourceID The resource ID
- * @param aParent The parent of the control.
- * @param aObserver The observer of the control.
- * @return The pointer to the label.
- */
- CEikLabel* CreateLabelL( const TInt aResourceId,
- const CCoeControl* aParent,
- MCoeControlObserver* aObserver );
-
- /**
- * Create choicelist and display it in the container.
- *
- * @param aParent The parent of the control.
- * @param aObserver The observer of the control.
- * @param aTextArray The content displayed in the control.
- * @param aButton The attached button.
- * @return The pointer to the choiclist.
- */
- CAknChoiceList* CreateChoiceListL( CCoeControl* aParent,
- MCoeControlObserver* aObserver,
- CDesCArray* aTextArray,
- CAknButton* aButton );
-
- /**
- * Create HWRBox and display it in the container.
- *
- * @param aParent The parent of the control.
- * @param aObserver The observer of the control.
- * @return The pointer to the choiclist.
- */
- CTruiHwrBox* CreateHwrBoxL( CCoeControl* aParent,
- MTruiHwrBoxObserver* aObserver );
-
- /**
- * Return button's resourceId by Character Range Id.
- *
- * @param aRangeId The character range ID.
- * @return Reource Id to be used to create button for choicelist.
- */
- TInt ButtonResourceId( TInt aRangeId ) const;
-
- /**
- * Pop Sct dialog
- *
- * @param aCharCase Character case for special character table
- *
- * @param aSpecialChar Reference to the buffer where selected special characters are put.
- * @param aCharSetResourceId The resource ID of special character table
- * @return Id of the button used to dismiss dialog.
- *
- */
- TInt PopupSctDialogL( TInt aCharCase, TDes& aSpecialChars, TInt aCharSetResourceId );
-
- /**
- * Popup information note
- *
- * @param aText The text to be displayed in CAknInformationNote.
- */
- void PopupInformationNoteL( const TDesC& aText );
-
- /**
- * Adjust special behavior characters to displayable characters.
- * @param aResult Return result for adjustment.
- *
- */
- void AdjustDisplayChars( TDes& aResult );
-
- /**
- * From CoeControl.
- * Handles key event.
- *
- * @param aKeyEvent The key event.
- * @param aType The type of key event: EEventKey, EEventKeyUp or EEventKeyDown.
- * @return Indicates whether or not the key event was used by this control.
- */
- TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
-
- /**
- * GetHelpContext()
- * Identify the help context so that the framework can look up
- * the corresponding help topic
- * @param aContext Returns the help context
- */
- void GetHelpContext( TCoeHelpContext& aContext ) const;
-
- /**
- * From CoeControl.
- * Responds to changes to the size and position of the contents of this control.
- */
- void SizeChanged();
-
- /**
- * From CoeControl.
- * Responds to a change in focus.
- *
- * @param aRect Contains the value that was passed to it by SetFocus().
- */
- void FocusChanged( TDrawNow aDrawNow );
-
- /**
- * From CoeControl.
- * Draws the container.
- *
- * @param aRect The region of the control to be redrawn. Co-ordinates are relative to the control's origin (top left corner).
- */
- virtual void Draw( const TRect& aRect ) const;
-
- /**
- * From CoeControl.
- * Handles a change to the control's resources.
- *
- * @param aType A message UID value.
- */
- void HandleResourceChange( TInt aType );
-
- void HandlePointerEventL(const TPointerEvent& aPointerEvent);
-
-// From MTruiHWRBoxObserver
- /**
- * From MTruiHWRBoxObserver.
- * Input times out
- * Handle the save model event
- */
- void SaveNewModelL();
-
- /**
- * From MTruiHWRBoxObserver.
- * HandleEventL
- * Handle the message event from the HWRBox
- * @param aMessage According to the aMessage to handle the event
- */
- void HandleEventL( TMessageType aMessage );
-
-private: // data
-
- /**
- * The current trained character
- */
- TBuf<KActiveCharSize> iCurrentChar;
-
- /**
- * The current tip of training character
- */
- HBufC* iLabeltext;
-
- /**
- * Store the wrapped text to indicate which character is being trained.
- *
- * Own
- */
- HBufC* iWrappedLabelText;
-
- /**
- * This text helps a user understand that he / she is
- * teaching his / her own character models to HWR engine
- * Not own
- */
- CEikLabel* iLabel;
-
- /**
- * The Clear button in toolbar, used to clean up the Writing Box
- * Not own
- */
- CAknButton* iClearBtn;
-
- /**
- * The preview button in toolbar
- * Not own
- */
- CAknButton* iPreviewBtn;
-
- /**
- * The button currently associated with choicelist.
- * Not own
- */
- CAknButton* iCurChoiceListBtn;
-
- /**
- * Left buttons allow quick access to the previous character
- * in the selected character range.
- * Not own
- */
- CAknButton* iLeftBtn;
-
- /**
- * Indicates which character is currently selected.
- * Not own
- */
- CEikLabel* iIindicator;
-
- /**
- * Right buttons allow quick access to the Next character
- * in the selected character range.
- * Not own
- */
- CAknButton* iRightBtn;
-
- /**
- * ChoiceList is used for switching between character ranges.
- * Not own
- */
- CAknChoiceList* iChoicelist;
-
- /**
- * The Writing Box is used for drawing a character model.
- * Not own
- */
- CTruiHwrBox* iHwrBox;
-
- /**
- * Pointer to background
- * Own
- */
- CAknsBasicBackgroundControlContext* iBackGround;
-
- /**
- * Rect of parent pane of label
- */
- TRect iLabelPaneRect;
-
- /**
- * MultiLineTextLayout of Label
- */
- TAknMultiLineTextLayout iMultilineLayout;
-
- RArray<TInt> iLineWidthArray;
- };
-
-#endif // C_TRUIMAINVIEWCONTAINER_H
-