uifw/EikStd/srvuiinc/eikkeysoundmap.h
changeset 0 2f259fa3e83a
equal deleted inserted replaced
-1:000000000000 0:2f259fa3e83a
       
     1 /*
       
     2 * Copyright (c) 2002-2007 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:  EikSrv keysound map.
       
    15 *
       
    16 */
       
    17 
       
    18 #ifndef __EIKKEYSOUNDMAP_H__
       
    19 #define __EIKKEYSOUNDMAP_H__
       
    20 
       
    21 #include <e32base.h>
       
    22 #include <w32std.h>
       
    23 
       
    24 class TSKey
       
    25     {
       
    26 public:
       
    27     void Set(TInt aKeyCode, TInt aRepeatType, TInt aSid);
       
    28 public:
       
    29     TInt iKeyCode;
       
    30     TInt iSid;
       
    31     };
       
    32 
       
    33 // CEikSoundStack - implements a single sound map
       
    34 
       
    35 NONSHARABLE_CLASS(CEikKeySoundMap) : public CArrayFixFlat<TSKey>
       
    36     {
       
    37 public:
       
    38     static CEikKeySoundMap* NewL();
       
    39     ~CEikKeySoundMap();
       
    40     void InternalizeL(RReadStream& aStream, TInt aIndex, TInt aUid);
       
    41     TBool Find(TSKey& aKey);
       
    42     TInt ContextResourceId();
       
    43     void SetContextResourceId(TInt aContextResId);
       
    44 private:
       
    45     CEikKeySoundMap();
       
    46 private:
       
    47     TInt iContextResourceId;
       
    48     };
       
    49 
       
    50 
       
    51 // CEikKeySoundStack - provides logic for searching sound maps
       
    52 
       
    53 NONSHARABLE_CLASS(CEikKeySoundStack) : public CArrayPtrFlat<CEikKeySoundMap>
       
    54     {
       
    55 public:
       
    56     static CEikKeySoundStack* NewL();
       
    57     ~CEikKeySoundStack();
       
    58     TBool Find(TInt aScanCode, TInt aRepeat, TInt& aSid);
       
    59 private:
       
    60     CEikKeySoundStack();
       
    61     TInt iPreviousRepeat;
       
    62     };
       
    63 
       
    64 #endif