williamr@2: // Copyright (c) 1999-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@2: // 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 williamr@2: // which accompanies this distribution, and is available williamr@2: // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // williamr@2: williamr@2: #ifndef __MPARSER_H__ williamr@2: #define __MPARSER_H__ williamr@2: williamr@2: #include williamr@2: #include williamr@2: williamr@2: class CRichText; williamr@2: class TCharFormat; williamr@2: williamr@2: /** williamr@2: * @internalTechnology williamr@2: * Internal to Symbian williamr@2: */ williamr@2: class MParser williamr@2: { williamr@2: public: williamr@2: virtual TBool ParseThisText(const CRichText& aTextObj, williamr@2: TBool aAllowBack, williamr@2: TInt aStartScan, williamr@2: TInt aScanLength, williamr@2: TInt& aStartTag, williamr@2: TInt& aTagLength) = 0; williamr@2: williamr@2: virtual const TDesC& CreateDoItText(const CRichText& aTextObj, williamr@2: TInt aStartText, williamr@2: TInt aLength) = 0; williamr@2: williamr@2: virtual void ActivateThisTextL(const CRichText& aTextObj, williamr@2: TInt aStartText, williamr@2: TInt aLength) = 0; williamr@2: williamr@2: IMPORT_C virtual TBool ReformatOnRecognise() const; williamr@2: williamr@2: IMPORT_C virtual TBool ReformatOnRollover() const; williamr@2: williamr@2: IMPORT_C virtual void GetRecogniseFormat(TCharFormat& aFormat); williamr@2: williamr@2: IMPORT_C virtual void GetRolloverFormat(TCharFormat& aFormat); williamr@2: williamr@2: IMPORT_C virtual TBool ConfirmCursorOverTag(const CRichText& aTextObj, williamr@2: TInt aTagStart, williamr@2: TInt aTagLen, williamr@2: TInt aCurPos); williamr@2: williamr@2: IMPORT_C virtual void MParser_Reserved_2(); williamr@2: williamr@2: //++ ADD COMMENT HERE (poss. provide default implement that panics) williamr@2: virtual void Release() = 0; williamr@2: }; williamr@2: williamr@2: #endif