|         |      1 /* | 
|         |      2 * Copyright (c) 2002 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:  MsgControlArray  declaration | 
|         |     15 * | 
|         |     16 */ | 
|         |     17  | 
|         |     18  | 
|         |     19  | 
|         |     20 #ifndef INC_MSGCONTROLARRAY_H | 
|         |     21 #define INC_MSGCONTROLARRAY_H | 
|         |     22  | 
|         |     23 // ========== INCLUDE FILES ================================ | 
|         |     24  | 
|         |     25 #include <e32base.h>                       // for CArrayPtrFlat | 
|         |     26  | 
|         |     27 #include "MsgBaseControl.h"                // for CMsgBaseControl | 
|         |     28  | 
|         |     29 // ========== CONSTANTS ==================================== | 
|         |     30  | 
|         |     31 // ========== MACROS ======================================= | 
|         |     32  | 
|         |     33 // ========== DATA TYPES =================================== | 
|         |     34  | 
|         |     35 // ========== FUNCTION PROTOTYPES ========================== | 
|         |     36  | 
|         |     37 // ========== FORWARD DECLARATIONS ========================= | 
|         |     38  | 
|         |     39 // ========== CLASS DECLARATION ============================ | 
|         |     40  | 
|         |     41 /** | 
|         |     42  * Defines an array that contains all the controls inherited from the CMsgBaseControl. | 
|         |     43  * | 
|         |     44  */ | 
|         |     45 class CMsgControlArray : public CArrayPtrFlat <CMsgBaseControl> | 
|         |     46 { | 
|         |     47  | 
|         |     48 public: | 
|         |     49  | 
|         |     50     /** | 
|         |     51      * Constructor. | 
|         |     52      * @param aGranularity | 
|         |     53      */ | 
|         |     54     CMsgControlArray(TInt aGranularity); | 
|         |     55  | 
|         |     56     /** | 
|         |     57      * Destructor. | 
|         |     58      */ | 
|         |     59     ~CMsgControlArray(); | 
|         |     60  | 
|         |     61     /** | 
|         |     62      * Finds a control from the array based on control id aControlId and returns | 
|         |     63      * its array index. | 
|         |     64      * @param aControlId | 
|         |     65      * @return | 
|         |     66      */ | 
|         |     67     TInt ComponentIndexFromId(TInt aControlId) const; | 
|         |     68  | 
|         |     69     /** | 
|         |     70      * Deletes a control from the array. | 
|         |     71      * @param aIndex | 
|         |     72      */ | 
|         |     73     void DeleteComponent(TInt aIndex); | 
|         |     74  | 
|         |     75 private: | 
|         |     76  | 
|         |     77     /** | 
|         |     78      * Constructor (not available). | 
|         |     79      */ | 
|         |     80     CMsgControlArray(); | 
|         |     81  | 
|         |     82 }; | 
|         |     83  | 
|         |     84 #endif | 
|         |     85  | 
|         |     86 // End of File |