williamr@2: /* williamr@2: * Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@4: * under the terms of "Eclipse Public License v1.0" williamr@2: * which accompanies this distribution, and is available williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.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: * Bio control observer. williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: williamr@2: #ifndef __MSGBIOCONTROLOBSERVER_H_ williamr@2: #define __MSGBIOCONTROLOBSERVER_H_ williamr@2: williamr@2: // INCLUDES williamr@2: // CONSTANTS williamr@2: // MACROS williamr@2: // DATA TYPES williamr@2: // FUNCTION PROTOTYPES williamr@2: // FORWARD DECLARATIONS williamr@2: // FORWARD DECLARATIONS williamr@2: williamr@2: // CLASS DECLARATION williamr@2: williamr@2: /** williamr@2: * Interface for Bio Control Observer. The MMsgBioControlObserver is used williamr@2: * for observing the Bio Control from the editor application. williamr@2: */ williamr@2: class MMsgBioControlObserver williamr@2: { williamr@2: public: williamr@2: williamr@2: /** williamr@2: * The command types. For use in conjunction with the williamr@2: * functions of this class. williamr@2: */ williamr@2: enum TMsgCommands williamr@2: { williamr@2: EMsgNone = 0, williamr@2: EMsgSave, williamr@2: EMsgReply, williamr@2: EMsgForwad, williamr@2: EMsgSend, williamr@2: EMsgAddressBook, williamr@2: EMsgClose williamr@2: }; williamr@2: williamr@2: public: williamr@2: williamr@2: /** williamr@2: * Returns the first free command id that a BIO control can use for williamr@2: * its own purposes. All the commands having ids of more or equal to williamr@2: * an id returned by this function are passed to the BIO control. williamr@2: * @return First free command. williamr@2: */ williamr@2: virtual TInt FirstFreeCommand() const = 0; williamr@2: williamr@2: /** williamr@2: * Requests the BIO message editor/viewer to handle a command. williamr@2: * Typically the BIO message editor/viewer does not handle a requested williamr@2: * command immediately but after the BIO control has returned from the williamr@2: * HandleCommandL function. williamr@2: * @param aCommand The command that can be handled. williamr@2: * @return KerrNone or KerrNotSupported williamr@2: */ williamr@2: virtual TInt RequestHandleCommandL(TMsgCommands aCommand) = 0; williamr@2: williamr@2: /** williamr@2: * Returns ETrue or EFalse whether a requested aCommand is supported williamr@2: * by the BIO message editor or not. This command should be used williamr@2: * before requesting command handling by RequestHandleCommand(). williamr@2: * @param aCommand The command williamr@2: * @return ETrue if command is support and EFalse if not. williamr@2: */ williamr@2: virtual TBool IsCommandSupported(TMsgCommands aCommand) const = 0; williamr@2: }; williamr@2: williamr@2: williamr@2: #endif // __MSGBIOCONTROLOBSERVER_H_ williamr@2: williamr@2: //end of file