ipsservices/ipssossettings/inc/ipssetuifolderlistarray.h
branchRCL_3
changeset 34 cd2816114bd1
parent 0 8466d47a6819
equal deleted inserted replaced
33:da5135c61bad 34:cd2816114bd1
    20 #define IPSSETUIFOLDERLISTARRAY_H
    20 #define IPSSETUIFOLDERLISTARRAY_H
    21 
    21 
    22 
    22 
    23 #include <msvstd.h>     // TMsvId  
    23 #include <msvstd.h>     // TMsvId  
    24 #include <bamdesca.h>   // MDesCArray
    24 #include <bamdesca.h>   // MDesCArray
       
    25 
       
    26 /**
       
    27  * Help class to be used for transfering tree structure of folders 
       
    28  * to list structure of visible items - inline class
       
    29  */
       
    30 class TArrayFolderItem 
       
    31     {
       
    32 private:
       
    33     TMsvId iId;           // folder id
       
    34     TMsvId iParent;       // parent folder or mailbox id for root
       
    35     TInt   iIndentLevel;  // level of indentation
       
    36 public: 
       
    37     TArrayFolderItem ( TMsvId aId, TInt32 aParent, TInt32 aIndentLevel );  
       
    38     ~TArrayFolderItem(); 
       
    39     TMsvId Id( void ); 
       
    40     TInt32 Parent( void ); 
       
    41     TInt32 IndentLevel( void );  
       
    42     }; // TArrayFolderItem  
       
    43 
       
    44 //  CIpsSetUiFolderListArray does not have inline definitions
       
    45 #include "ipssetuifolderlistarray.inl" 
    25 
    46 
    26 class CMsvEntry;
    47 class CMsvEntry;
    27 /**
    48 /**
    28  * Array class to be used by CIpsSetUiSubscriptionDialog
    49  * Array class to be used by CIpsSetUiSubscriptionDialog
    29  *
    50  *
   136      * @param TMsvId, id of folder to be checked for children
   157      * @param TMsvId, id of folder to be checked for children
   137      * @return TBool ETrue if folder has children
   158      * @return TBool ETrue if folder has children
   138      */
   159      */
   139     TBool DoContextHasChildFoldersL( TMsvId aId ) const;
   160     TBool DoContextHasChildFoldersL( TMsvId aId ) const;
   140 
   161 
       
   162     /**
       
   163      * RefreshFolderListArrayL - for recursive filling in the iArrayBuf 
       
   164      * @param aIdFolder, id of folder to be checked for children
       
   165      * @param aArrayIndex, id of the array index to be written to
       
   166      * @param aIndentLevel, indent level for new item - increases with recursion
       
   167      * @return void
       
   168      */
       
   169     void RefreshFolderListArrayL( TMsvId aIdFolder, TInt & aArrayIndex, TInt aIndentLevel );
   141 private:
   170 private:
   142 
   171 
   143 // data
   172 // data
   144 
   173 
   145     /**
   174     /**
   166 
   195 
   167     /**
   196     /**
   168      * Number of items.
   197      * Number of items.
   169      */
   198      */
   170     TInt            iCount;
   199     TInt            iCount;
       
   200 
       
   201     /**
       
   202      * transform tree to list buffer
       
   203      */
       
   204     RPointerArray<TArrayFolderItem> iArrayBuf;  
       
   205 
   171     };
   206     };
   172 
   207 
   173 #endif
   208 #endif
   174 
   209 
   175 // End of File
   210 // End of File