1.1 --- a/epoc32/include/coeinput.h Tue Nov 24 13:55:44 2009 +0000
1.2 +++ b/epoc32/include/coeinput.h Tue Mar 16 16:12:26 2010 +0000
1.3 @@ -1,1 +1,115 @@
1.4 -coeinput.h
1.5 +// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
1.6 +// All rights reserved.
1.7 +// This component and the accompanying materials are made available
1.8 +// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
1.9 +// which accompanies this distribution, and is available
1.10 +// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
1.11 +//
1.12 +// Initial Contributors:
1.13 +// Nokia Corporation - initial contribution.
1.14 +//
1.15 +// Contributors:
1.16 +//
1.17 +// Description:
1.18 +//
1.19 +
1.20 +#ifndef __COEINPUT_H__
1.21 +#define __COEINPUT_H__
1.22 +
1.23 +#include <e32std.h>
1.24 +
1.25 +// classes defined in FEPBASE, declared here
1.26 +class MCoeFepAwareTextEditor;
1.27 +class MCoeCaptionRetrieverForFep;
1.28 +
1.29 +class MObjectProvider;
1.30 +
1.31 +class TCoeInputCapabilities
1.32 +/** Describes which forms of text input are consumed by a control or view.
1.33 +
1.34 +@publishedAll
1.35 +@released */
1.36 + {
1.37 +public:
1.38 + /** Text input capability flags. These are used to define the text input
1.39 + capabilities of a control or view. */
1.40 + enum
1.41 + {
1.42 + /** No text input capabilities supported. */
1.43 + ENone =0,
1.44 + /** Supports positive western integers. */
1.45 + EWesternNumericIntegerPositive =0x00000001,
1.46 + /** Supports negative western integers. */
1.47 + EWesternNumericIntegerNegative =0x00000002,
1.48 + /** Supports real numbers. */
1.49 + EWesternNumericReal =0x00000004,
1.50 + /** Supports the western alphabets. */
1.51 + EWesternAlphabetic =0x00000008,
1.52 + /** Supports Hiragana. */
1.53 + EJapaneseHiragana =0x00000010,
1.54 + /** Supports half width Katakana. */
1.55 + EJapaneseKatakanaHalfWidth =0x00000020,
1.56 + /** Supports full width Katakana. */
1.57 + EJapaneseKatakanaFullWidth =0x00000040,
1.58 + /** Supports dialable characters */
1.59 + EDialableCharacters =0x00000080,
1.60 + /** Supports secret text. This is text in which characters appear
1.61 + as asterisks. */
1.62 + ESecretText =0x00000100,
1.63 + /** Supports auto sentence case.
1.64 + This is text in which first word in a sentence begins with an uppercase letter,
1.65 + with all other letters and words in lowercase. */
1.66 + EAutoSentenceCase =0x00000200,
1.67 + /** Supports non-predictive input. */
1.68 + ENonPredictive =0x00000400,
1.69 + /** Supports all types of text. */
1.70 + EAllText =0x01000000,
1.71 + /** Supports navigation keys. These include arrow keys, page-up,
1.72 + page-down, home, end, tab, etc. */
1.73 + ENavigation =0x02000000
1.74 + };
1.75 + class MCoeFepSpecificExtensions; // to be defined by concrete FEPs, declared here
1.76 +public:
1.77 + // all these functions are exported (rather than inline) so that binary compatibility becomes easier to maintain
1.78 + IMPORT_C TCoeInputCapabilities();
1.79 + IMPORT_C TCoeInputCapabilities(TUint aCapabilities);
1.80 + IMPORT_C TCoeInputCapabilities(TUint aCapabilities, MCoeFepAwareTextEditor* aFepAwareTextEditor, MCoeCaptionRetrieverForFep* aCaptionRetrieverForFep);
1.81 + IMPORT_C TCoeInputCapabilities(TUint aCapabilities, MCoeFepAwareTextEditor* aFepAwareTextEditor, MCoeCaptionRetrieverForFep* aCaptionRetrieverForFep, TUid aFepUid, MCoeFepSpecificExtensions* aFepSpecificExtensions);
1.82 + IMPORT_C TCoeInputCapabilities(const TCoeInputCapabilities& aAnother); // defined so that iSpareForFutureUse is not copied
1.83 + IMPORT_C TCoeInputCapabilities& operator=(const TCoeInputCapabilities& aAnother); // defined so that iSpareForFutureUse is not copied
1.84 + IMPORT_C TBool operator==(const TCoeInputCapabilities& aAnother) const; // defined so that iSpareForFutureUse is not tested
1.85 + IMPORT_C TBool operator!=(const TCoeInputCapabilities& aAnother) const; // defined so that iSpareForFutureUse is not tested
1.86 + IMPORT_C void MergeWith(const TCoeInputCapabilities& aAnother);
1.87 + IMPORT_C void SetCapabilities(TUint aCapabilities);
1.88 + IMPORT_C TUint Capabilities() const;
1.89 + IMPORT_C TBool IsNone() const;
1.90 + IMPORT_C TBool SupportsWesternNumericIntegerPositive() const;
1.91 + IMPORT_C TBool SupportsWesternNumericIntegerNegative() const;
1.92 + IMPORT_C TBool SupportsWesternNumericReal() const;
1.93 + IMPORT_C TBool SupportsWesternAlphabetic() const;
1.94 + IMPORT_C TBool SupportsJapaneseHiragana() const;
1.95 + IMPORT_C TBool SupportsJapaneseKatakanaHalfWidth() const;
1.96 + IMPORT_C TBool SupportsJapaneseKatakanaFullWidth() const;
1.97 + IMPORT_C TBool SupportsDialableCharacters() const;
1.98 + IMPORT_C TBool SupportsSecretText() const;
1.99 + IMPORT_C TBool SupportsAutoSentenceCase() const;
1.100 + IMPORT_C TBool SupportsNonPredictive() const;
1.101 + IMPORT_C TBool SupportsAllText() const;
1.102 + IMPORT_C TBool SupportsNavigation() const;
1.103 + IMPORT_C MCoeFepAwareTextEditor* FepAwareTextEditor() const;
1.104 + IMPORT_C MCoeCaptionRetrieverForFep* CaptionRetrieverForFep() const;
1.105 + IMPORT_C MCoeFepSpecificExtensions* FepSpecificExtensions(TUid aFepUid) const;
1.106 + IMPORT_C MObjectProvider* ObjectProvider() const;
1.107 + IMPORT_C void SetObjectProvider(MObjectProvider* aObjectProvider);
1.108 +
1.109 +private:
1.110 + TUint iCapabilities;
1.111 + MCoeFepAwareTextEditor* iFepAwareTextEditor;
1.112 + MCoeCaptionRetrieverForFep* iCaptionRetrieverForFep;
1.113 + TUint iFepUid;
1.114 + MCoeFepSpecificExtensions* iFepSpecificExtensions;
1.115 + MObjectProvider* iObjectProvider;
1.116 + TAny* iSpareForFutureUse[5];
1.117 + };
1.118 +
1.119 +#endif // __COEINPUT_H__