epoc32/include/coeinput.h
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
     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__