fepstub/UiPlugins/AknFepUiInterface/inc/aknfepuictrleditentrypopup.h
author hgs
Wed, 23 Jun 2010 04:57:58 +0800
changeset 24 fc42a86c98e3
permissions -rw-r--r--
201025
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
24
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0""
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:           
hgs
parents:
diff changeset
    15
*       Provides the CAknFepUICtrlPinyinPopup class definitions.
hgs
parents:
diff changeset
    16
*
hgs
parents:
diff changeset
    17
*/
hgs
parents:
diff changeset
    18
hgs
parents:
diff changeset
    19
hgs
parents:
diff changeset
    20
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
hgs
parents:
diff changeset
    24
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
hgs
parents:
diff changeset
    27
hgs
parents:
diff changeset
    28
hgs
parents:
diff changeset
    29
#ifndef AKN_FEP_UI_EDIT_ENTRY_POPUP_H
hgs
parents:
diff changeset
    30
#define AKN_FEP_UI_EDIT_ENTRY_POPUP_H
hgs
parents:
diff changeset
    31
hgs
parents:
diff changeset
    32
#include <e32std.h>
hgs
parents:
diff changeset
    33
hgs
parents:
diff changeset
    34
class MAknFepUICtrlEditEntryPopup
hgs
parents:
diff changeset
    35
    {
hgs
parents:
diff changeset
    36
public:
hgs
parents:
diff changeset
    37
    enum 
hgs
parents:
diff changeset
    38
        {
hgs
parents:
diff changeset
    39
        ESpellingChanged    = 0x0001,
hgs
parents:
diff changeset
    40
        ESpellingNavigation = 0x0002,
hgs
parents:
diff changeset
    41
            EDispPageChanged    = 0x0004
hgs
parents:
diff changeset
    42
        };
hgs
parents:
diff changeset
    43
    /**
hgs
parents:
diff changeset
    44
     * The cursor move orientation.
hgs
parents:
diff changeset
    45
     */    
hgs
parents:
diff changeset
    46
    enum TMoveDirect
hgs
parents:
diff changeset
    47
        {
hgs
parents:
diff changeset
    48
        ELeft = 0,
hgs
parents:
diff changeset
    49
        ERight = 1
hgs
parents:
diff changeset
    50
        }; 
hgs
parents:
diff changeset
    51
    /**
hgs
parents:
diff changeset
    52
     * The number of selections that can be displayed in the popup.
hgs
parents:
diff changeset
    53
     */
hgs
parents:
diff changeset
    54
    enum
hgs
parents:
diff changeset
    55
        {
hgs
parents:
diff changeset
    56
        EMaxToneMarkLength = 1,
hgs
parents:
diff changeset
    57
        EMaxCandidates = 6,
hgs
parents:
diff changeset
    58
        EMaxCandidateCharsNotIncludingToneMark = 6,
hgs
parents:
diff changeset
    59
        EMaxCandidateChars = EMaxCandidateCharsNotIncludingToneMark + EMaxToneMarkLength,
hgs
parents:
diff changeset
    60
        EMaxPhraseCandidate = 10
hgs
parents:
diff changeset
    61
        };
hgs
parents:
diff changeset
    62
hgs
parents:
diff changeset
    63
    typedef TBufC<EMaxToneMarkLength> TToneMark;
hgs
parents:
diff changeset
    64
hgs
parents:
diff changeset
    65
public:
hgs
parents:
diff changeset
    66
    
hgs
parents:
diff changeset
    67
    /**
hgs
parents:
diff changeset
    68
     * This function move the cursor in the EEP.
hgs
parents:
diff changeset
    69
     *
hgs
parents:
diff changeset
    70
     * @param aMoveDirect if ELeft, the cursor move left
hgs
parents:
diff changeset
    71
     *                    if ERight, the cursor move right
hgs
parents:
diff changeset
    72
     *
hgs
parents:
diff changeset
    73
     * @return EFalse if the cursor can't move again other ETrue.
hgs
parents:
diff changeset
    74
     */
hgs
parents:
diff changeset
    75
    virtual TBool Move( TInt aMoveDirect ) const = 0;
hgs
parents:
diff changeset
    76
      
hgs
parents:
diff changeset
    77
    /**
hgs
parents:
diff changeset
    78
     * This function move the cursor in the EEP.
hgs
parents:
diff changeset
    79
     *
hgs
parents:
diff changeset
    80
     * @param aCount the number of the verifide Key sequence.
hgs
parents:
diff changeset
    81
     *
hgs
parents:
diff changeset
    82
     * @return None
hgs
parents:
diff changeset
    83
     */
hgs
parents:
diff changeset
    84
    virtual void SetVerifiedKeySequenceCount( TInt aCount ) const = 0;
hgs
parents:
diff changeset
    85
      
hgs
parents:
diff changeset
    86
    /**
hgs
parents:
diff changeset
    87
     * This function move the cursor in the EEP.
hgs
parents:
diff changeset
    88
     *
hgs
parents:
diff changeset
    89
     * @param aFlag if ETrue, the key sequence is verified
hgs
parents:
diff changeset
    90
     *              if EFalse, the key sequence is not verified.
hgs
parents:
diff changeset
    91
     *      
hgs
parents:
diff changeset
    92
     * @return EFalse if the cursor can't move again other ETrue.
hgs
parents:
diff changeset
    93
     */
hgs
parents:
diff changeset
    94
      virtual TBool SetVerifiedKeySequenceFlag( TBool aFlag) const = 0;
hgs
parents:
diff changeset
    95
      
hgs
parents:
diff changeset
    96
    /**
hgs
parents:
diff changeset
    97
     * This function returns the index of the selected phrase item .
hgs
parents:
diff changeset
    98
     *
hgs
parents:
diff changeset
    99
     * @return aIndex index of entry in window, zero based
hgs
parents:
diff changeset
   100
     */
hgs
parents:
diff changeset
   101
    virtual TInt CurrentSelection() const = 0;
hgs
parents:
diff changeset
   102
    
hgs
parents:
diff changeset
   103
    /**
hgs
parents:
diff changeset
   104
     * This function returns the visible index of the selected item.
hgs
parents:
diff changeset
   105
     *
hgs
parents:
diff changeset
   106
     * @return aIndex index of entry in window, zero based
hgs
parents:
diff changeset
   107
     */
hgs
parents:
diff changeset
   108
    virtual TInt CurrentVisibleSelection() const = 0;
hgs
parents:
diff changeset
   109
hgs
parents:
diff changeset
   110
    /**
hgs
parents:
diff changeset
   111
     * Enables the display of the control. Sets the control's 
hgs
parents:
diff changeset
   112
     * window postion and visibility, but only if the value has
hgs
parents:
diff changeset
   113
     * changed (so it's ok to call it excessively). 
hgs
parents:
diff changeset
   114
     *
hgs
parents:
diff changeset
   115
     * @param aEnable if ETrue, makes visible
hgs
parents:
diff changeset
   116
     *                          if EFalse, makes non-visible
hgs
parents:
diff changeset
   117
     *
hgs
parents:
diff changeset
   118
     */
hgs
parents:
diff changeset
   119
    virtual void Enable(TBool aEnable) = 0;
hgs
parents:
diff changeset
   120
    /**
hgs
parents:
diff changeset
   121
     * set the number of selections that are visible
hgs
parents:
diff changeset
   122
     *
hgs
parents:
diff changeset
   123
     * @param aCount the number of visible selections, must be 
hgs
parents:
diff changeset
   124
     *                          0 < aCount <= KMaxNumberOfSelections 
hgs
parents:
diff changeset
   125
     */
hgs
parents:
diff changeset
   126
    virtual void SetVisibleCount(TInt aCount) = 0;
hgs
parents:
diff changeset
   127
hgs
parents:
diff changeset
   128
    /**
hgs
parents:
diff changeset
   129
     * get the current visible selection count
hgs
parents:
diff changeset
   130
     *
hgs
parents:
diff changeset
   131
     * @return visible selection count
hgs
parents:
diff changeset
   132
     */
hgs
parents:
diff changeset
   133
    virtual TInt VisibleSelectionCount() const = 0;
hgs
parents:
diff changeset
   134
hgs
parents:
diff changeset
   135
hgs
parents:
diff changeset
   136
    /**
hgs
parents:
diff changeset
   137
     * This sets the string of the internal buffer for the item index aIndex to aText,
hgs
parents:
diff changeset
   138
     * even if the index falls outside the current visible candidates.
hgs
parents:
diff changeset
   139
     *
hgs
parents:
diff changeset
   140
     * @param aText new contents of text item
hgs
parents:
diff changeset
   141
     * @return ETrue if successful
hgs
parents:
diff changeset
   142
     *              EFalse if index outside visible candidates (but value is still set)
hgs
parents:
diff changeset
   143
     *
hgs
parents:
diff changeset
   144
     */
hgs
parents:
diff changeset
   145
    virtual TBool SetItemText(TInt aIndex, const TDesC& aText) = 0;
hgs
parents:
diff changeset
   146
hgs
parents:
diff changeset
   147
    /**
hgs
parents:
diff changeset
   148
     *   Sets the string of the internal buffer for visible item 
hgs
parents:
diff changeset
   149
     */
hgs
parents:
diff changeset
   150
    virtual TBool SetPhraseItemTexts() = 0;
hgs
parents:
diff changeset
   151
    
hgs
parents:
diff changeset
   152
    /**
hgs
parents:
diff changeset
   153
     * This function gets the text at the index aIndex. 
hgs
parents:
diff changeset
   154
     *
hgs
parents:
diff changeset
   155
     * @param aIndex index of entry in window, zero based
hgs
parents:
diff changeset
   156
     * @output aText contains contents of text item
hgs
parents:
diff changeset
   157
     * @return ETrue always
hgs
parents:
diff changeset
   158
     *
hgs
parents:
diff changeset
   159
     */
hgs
parents:
diff changeset
   160
    virtual TBool GetItemText(TInt aIndex, TDes& aText) const = 0;
hgs
parents:
diff changeset
   161
hgs
parents:
diff changeset
   162
    /**
hgs
parents:
diff changeset
   163
     * This function sets the Tone Mark for a specific entry
hgs
parents:
diff changeset
   164
     * 
hgs
parents:
diff changeset
   165
     * @param aIndex index of entry
hgs
parents:
diff changeset
   166
     * @param aToneMark the tone mark
hgs
parents:
diff changeset
   167
     *
hgs
parents:
diff changeset
   168
     */
hgs
parents:
diff changeset
   169
    virtual void SetToneMark(TInt aIndex, const TDesC& aToneMark) = 0;
hgs
parents:
diff changeset
   170
hgs
parents:
diff changeset
   171
    /**
hgs
parents:
diff changeset
   172
     * This function sets the validity of the tonemark
hgs
parents:
diff changeset
   173
     *
hgs
parents:
diff changeset
   174
     * @param aIndex index of the entry to be affected
hgs
parents:
diff changeset
   175
     * @param aValid if ETrue, tonemark will be displayed as valid
hgs
parents:
diff changeset
   176
     *                          if EFalse, tonemark will be displayed as not valid
hgs
parents:
diff changeset
   177
     */
hgs
parents:
diff changeset
   178
    virtual void SetItemToneMarkValidity(TInt aIndex, TBool aValid) = 0;
hgs
parents:
diff changeset
   179
    /**
hgs
parents:
diff changeset
   180
     * Is the control enabled for display?
hgs
parents:
diff changeset
   181
     *
hgs
parents:
diff changeset
   182
     * @return if not enabled, return EFalse
hgs
parents:
diff changeset
   183
     */
hgs
parents:
diff changeset
   184
    virtual TBool IsEnabled() const = 0;
hgs
parents:
diff changeset
   185
hgs
parents:
diff changeset
   186
    /**
hgs
parents:
diff changeset
   187
     * Select the next visible item. If already on the last one, loop to the 
hgs
parents:
diff changeset
   188
     * first one.
hgs
parents:
diff changeset
   189
     *
hgs
parents:
diff changeset
   190
     * @return ETrue if success, 
hgs
parents:
diff changeset
   191
     *              EFalse if no items visible, or if selection is outside visible items
hgs
parents:
diff changeset
   192
     */
hgs
parents:
diff changeset
   193
    virtual TBool SelectNextPhrase() = 0;
hgs
parents:
diff changeset
   194
hgs
parents:
diff changeset
   195
    /**
hgs
parents:
diff changeset
   196
     * Select the previous visible item. If already on the first one, loop to the 
hgs
parents:
diff changeset
   197
     * last one.
hgs
parents:
diff changeset
   198
     *
hgs
parents:
diff changeset
   199
     * @return ETrue if success, 
hgs
parents:
diff changeset
   200
     *              EFalse if no items visible, or if selection is outside visible items
hgs
parents:
diff changeset
   201
     */
hgs
parents:
diff changeset
   202
    virtual TBool SelectPrevPhrase() = 0;
hgs
parents:
diff changeset
   203
hgs
parents:
diff changeset
   204
    /**
hgs
parents:
diff changeset
   205
     * Return Pinyin spelling candidate array 
hgs
parents:
diff changeset
   206
     */
hgs
parents:
diff changeset
   207
    virtual CDesCArrayFlat* PhoneticSpellingArray(void) = 0;
hgs
parents:
diff changeset
   208
hgs
parents:
diff changeset
   209
    /**
hgs
parents:
diff changeset
   210
     * Split phrase pinyin spelling candidates into pages 
hgs
parents:
diff changeset
   211
     */
hgs
parents:
diff changeset
   212
    virtual void SplitPhraseSpellingIntoPages(void) = 0;
hgs
parents:
diff changeset
   213
hgs
parents:
diff changeset
   214
    /**
hgs
parents:
diff changeset
   215
     * Split pinyin spelling candidates into pages 
hgs
parents:
diff changeset
   216
     */
hgs
parents:
diff changeset
   217
    virtual void SplitSpellingIntoPages(TInt aCount) = 0;
hgs
parents:
diff changeset
   218
    
hgs
parents:
diff changeset
   219
    /**
hgs
parents:
diff changeset
   220
     * Set display page for deliberate selection 
hgs
parents:
diff changeset
   221
     */
hgs
parents:
diff changeset
   222
    virtual void SetDisplayPage(TInt aSelection) = 0;
hgs
parents:
diff changeset
   223
hgs
parents:
diff changeset
   224
    /**
hgs
parents:
diff changeset
   225
     *    Return keystroke array 
hgs
parents:
diff changeset
   226
     */
hgs
parents:
diff changeset
   227
    virtual CDesCArrayFlat* KeystrokeArray(void) = 0;
hgs
parents:
diff changeset
   228
    
hgs
parents:
diff changeset
   229
    /**
hgs
parents:
diff changeset
   230
     *    return in effect keystroke array
hgs
parents:
diff changeset
   231
     */
hgs
parents:
diff changeset
   232
    virtual CDesCArrayFlat* InEffectKeystrokeArray(void) = 0;    
hgs
parents:
diff changeset
   233
hgs
parents:
diff changeset
   234
    /**
hgs
parents:
diff changeset
   235
     *    Return show keystroke array 
hgs
parents:
diff changeset
   236
     */
hgs
parents:
diff changeset
   237
    virtual CDesCArrayFlat* ShowKeystrokeArray(void) = 0;
hgs
parents:
diff changeset
   238
    
hgs
parents:
diff changeset
   239
    /**
hgs
parents:
diff changeset
   240
     *    Return current page start spelling index 
hgs
parents:
diff changeset
   241
     */
hgs
parents:
diff changeset
   242
    virtual TInt CurrentPageStartIndex(void) = 0;
hgs
parents:
diff changeset
   243
    virtual void SetFlag(TInt aFlag) = 0;
hgs
parents:
diff changeset
   244
    virtual void ClearFlag(TInt aFlag) = 0;
hgs
parents:
diff changeset
   245
    virtual TBool IsFlagSet(TInt aFlag) const = 0;
hgs
parents:
diff changeset
   246
    virtual void PopupSizeChanged() = 0;
hgs
parents:
diff changeset
   247
    };
hgs
parents:
diff changeset
   248
hgs
parents:
diff changeset
   249
#endif // AKN_FEP_UI_EDIT_ENTRY_POPUP_H
hgs
parents:
diff changeset
   250
hgs
parents:
diff changeset
   251
// End of file