mmsharinguis_plat/live_comms_plugin_api/inc/lcuiprovider.h
branchRCL_3
changeset 33 bc78a40cd63c
parent 32 73a1feb507fb
child 35 6c57ef9392d2
equal deleted inserted replaced
32:73a1feb507fb 33:bc78a40cd63c
     1 /*
       
     2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: 
       
    15 *
       
    16 */
       
    17 
       
    18 #ifndef MLCUIPROVIDER_H
       
    19 #define MLCUIPROVIDER_H
       
    20 
       
    21 // INCLUDES
       
    22 #include <e32std.h>
       
    23 #include <bamdesca.h> 
       
    24 
       
    25 // CLASS DECLARATION
       
    26 /**
       
    27 * A callback for fetching session related information from the end user.
       
    28 */
       
    29 class MLcUiProvider
       
    30     {
       
    31     public:
       
    32 
       
    33         /**
       
    34         * Asks to select the recipient for the session from 
       
    35         * a predefined list of recipients.
       
    36         * @param aRecipientAddresses the list of possible recipients
       
    37         * @param aSelectedRecipientAddress on return contains 
       
    38         * the selected recipient
       
    39         * @return ETrue if the recipient was selected, otherwise EFalse
       
    40         */
       
    41         virtual TBool SelectRecipient( 
       
    42             MDesCArray& aRecipientAddresses, 
       
    43             TDes& aSelectedRecipientAddress ) = 0;        
       
    44         
       
    45         /**
       
    46         * Asks to input the recipient for the session.
       
    47         * @param aRecipientAddress on return contains the recipient address
       
    48         * @return ETrue if the recipient was inserted, otherwise EFalse
       
    49         */
       
    50         virtual TBool InputRecipient( TDes& aRecipientAddress ) = 0;
       
    51         
       
    52         /**
       
    53         * The application foreground status has to be changed. 
       
    54         * @param aForeground ETrue if application should be brought to 
       
    55         * foreground.
       
    56         */
       
    57         virtual void HandleForegroundStatus( TBool aForeground ) = 0;
       
    58         
       
    59         /**
       
    60         * UI needs to be blocked/unblocked. If engine is processing
       
    61         * asynchronous operation and cannot handle other actions meanwhile,
       
    62         * it can ask UI to block user controls until asynchronous operation
       
    63         * completes. NOTE: session termination is allowed even if blocking 
       
    64         * is active.
       
    65         * @param aBlocked, ETrue is UI should be blocked, EFalse
       
    66         *   if UI can be unblocked.
       
    67         */
       
    68         virtual void BlockUi( TBool aBlocked ) = 0;
       
    69     };
       
    70    
       
    71     
       
    72 #endif // MLCUIPROVIDER_H
       
    73 
       
    74 // end of file