contentstorage/cautils/inc/cainnericondescription.h
author hgs
Mon, 20 Sep 2010 10:22:22 +0300
changeset 119 50e220be30d1
parent 92 782e3408c2ab
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
92
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
 * Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
 * All rights reserved.
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
 *
hgs
parents:
diff changeset
     9
 * Initial Contributors:
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
 *
hgs
parents:
diff changeset
    12
 * Contributors:
hgs
parents:
diff changeset
    13
 *
hgs
parents:
diff changeset
    14
 * Description: Definition of entry attribute
hgs
parents:
diff changeset
    15
 *
hgs
parents:
diff changeset
    16
 */
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#ifndef __CAINNERICONDESCRIPTION_H__
hgs
parents:
diff changeset
    19
#define __CAINNERICONDESCRIPTION_H__
hgs
parents:
diff changeset
    20
hgs
parents:
diff changeset
    21
#include <e32base.h>
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
//FORWARD DECLARATIONS
hgs
parents:
diff changeset
    24
class RWriteStream;
hgs
parents:
diff changeset
    25
class RReadStream;
hgs
parents:
diff changeset
    26
hgs
parents:
diff changeset
    27
/**
hgs
parents:
diff changeset
    28
 *  CA entry icon.
hgs
parents:
diff changeset
    29
 *  @lib .lib
hgs
parents:
diff changeset
    30
 *  @since S60 v5.0
hgs
parents:
diff changeset
    31
 */
hgs
parents:
diff changeset
    32
NONSHARABLE_CLASS( CCaInnerIconDescription ): public CBase
hgs
parents:
diff changeset
    33
    {
hgs
parents:
diff changeset
    34
hgs
parents:
diff changeset
    35
public:
hgs
parents:
diff changeset
    36
hgs
parents:
diff changeset
    37
    /**
hgs
parents:
diff changeset
    38
     * Destructor.
hgs
parents:
diff changeset
    39
     */
hgs
parents:
diff changeset
    40
    virtual ~CCaInnerIconDescription();
hgs
parents:
diff changeset
    41
hgs
parents:
diff changeset
    42
    /**
hgs
parents:
diff changeset
    43
     * Two-phased constructor.     
hgs
parents:
diff changeset
    44
     * @return The created object.
hgs
parents:
diff changeset
    45
     */
hgs
parents:
diff changeset
    46
    IMPORT_C static CCaInnerIconDescription* NewL();
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
    /**
hgs
parents:
diff changeset
    49
     * Two-phased constructor.
hgs
parents:
diff changeset
    50
     * @return The created object.
hgs
parents:
diff changeset
    51
     */
hgs
parents:
diff changeset
    52
    IMPORT_C static CCaInnerIconDescription* NewLC();
hgs
parents:
diff changeset
    53
hgs
parents:
diff changeset
    54
    /**
hgs
parents:
diff changeset
    55
     * Gets icon id.
hgs
parents:
diff changeset
    56
     * @return iId.
hgs
parents:
diff changeset
    57
     */
hgs
parents:
diff changeset
    58
    TInt Id() const
hgs
parents:
diff changeset
    59
        {
hgs
parents:
diff changeset
    60
        return iId;
hgs
parents:
diff changeset
    61
        }
hgs
parents:
diff changeset
    62
hgs
parents:
diff changeset
    63
    /**
hgs
parents:
diff changeset
    64
     * Gets file name.
hgs
parents:
diff changeset
    65
     * @return iFileName.
hgs
parents:
diff changeset
    66
     */
hgs
parents:
diff changeset
    67
    TPtrC FileName() const
hgs
parents:
diff changeset
    68
        {
hgs
parents:
diff changeset
    69
        return iFileName;
hgs
parents:
diff changeset
    70
        }
hgs
parents:
diff changeset
    71
hgs
parents:
diff changeset
    72
    /**
hgs
parents:
diff changeset
    73
     * Gets skin id.
hgs
parents:
diff changeset
    74
     * @return iSkinId
hgs
parents:
diff changeset
    75
     */
hgs
parents:
diff changeset
    76
    TPtrC SkinId() const
hgs
parents:
diff changeset
    77
        {
hgs
parents:
diff changeset
    78
        return iSkinId;
hgs
parents:
diff changeset
    79
        }
hgs
parents:
diff changeset
    80
hgs
parents:
diff changeset
    81
    /**
hgs
parents:
diff changeset
    82
     * Gets application id.
hgs
parents:
diff changeset
    83
     * @return iApplicationId
hgs
parents:
diff changeset
    84
     */
hgs
parents:
diff changeset
    85
    TPtrC ApplicationId() const
hgs
parents:
diff changeset
    86
        {
hgs
parents:
diff changeset
    87
        return iApplicationId;
hgs
parents:
diff changeset
    88
        }
hgs
parents:
diff changeset
    89
hgs
parents:
diff changeset
    90
    /**
hgs
parents:
diff changeset
    91
     * Set icon id.
hgs
parents:
diff changeset
    92
     * @param aId Value     
hgs
parents:
diff changeset
    93
     */
hgs
parents:
diff changeset
    94
    IMPORT_C void SetId( const TInt aId );
hgs
parents:
diff changeset
    95
    
hgs
parents:
diff changeset
    96
    /**
hgs
parents:
diff changeset
    97
     * Set icon file name.
hgs
parents:
diff changeset
    98
     * @param aFileName Value
hgs
parents:
diff changeset
    99
     * Ownership taken.
hgs
parents:
diff changeset
   100
     */
hgs
parents:
diff changeset
   101
    IMPORT_C void SetFileNameL( const TDesC& aFileName );
hgs
parents:
diff changeset
   102
hgs
parents:
diff changeset
   103
    /**
hgs
parents:
diff changeset
   104
     * Set icon skin id.
hgs
parents:
diff changeset
   105
     * @param aSkinId Value
hgs
parents:
diff changeset
   106
     * Ownership taken.
hgs
parents:
diff changeset
   107
     */
hgs
parents:
diff changeset
   108
    IMPORT_C void SetSkinIdL( const TDesC& aSkinId );
hgs
parents:
diff changeset
   109
hgs
parents:
diff changeset
   110
    /**
hgs
parents:
diff changeset
   111
     * Set application id.
hgs
parents:
diff changeset
   112
     * @param aApplicationId Value
hgs
parents:
diff changeset
   113
     * Ownership taken.
hgs
parents:
diff changeset
   114
     */
hgs
parents:
diff changeset
   115
    IMPORT_C void SetApplicationIdL( const TDesC& aApplicationId );
hgs
parents:
diff changeset
   116
    
hgs
parents:
diff changeset
   117
    /**
hgs
parents:
diff changeset
   118
     * Externalizes icon to the stream
hgs
parents:
diff changeset
   119
     * @param aStream a write stream
hgs
parents:
diff changeset
   120
     */
hgs
parents:
diff changeset
   121
    void ExternalizeL( RWriteStream& aStream ) const;
hgs
parents:
diff changeset
   122
hgs
parents:
diff changeset
   123
    /**
hgs
parents:
diff changeset
   124
     * Internalizes stream to the icon
hgs
parents:
diff changeset
   125
     * @param aStream a read stream
hgs
parents:
diff changeset
   126
     */
hgs
parents:
diff changeset
   127
    void InternalizeL( RReadStream& aStream );    
hgs
parents:
diff changeset
   128
    
hgs
parents:
diff changeset
   129
private:
hgs
parents:
diff changeset
   130
hgs
parents:
diff changeset
   131
    /**
hgs
parents:
diff changeset
   132
     * Second phased constructor.
hgs
parents:
diff changeset
   133
     */
hgs
parents:
diff changeset
   134
    void ConstructL();
hgs
parents:
diff changeset
   135
    
hgs
parents:
diff changeset
   136
    /**
hgs
parents:
diff changeset
   137
     * Constructor
hgs
parents:
diff changeset
   138
     */
hgs
parents:
diff changeset
   139
    CCaInnerIconDescription();
hgs
parents:
diff changeset
   140
    
hgs
parents:
diff changeset
   141
private:
hgs
parents:
diff changeset
   142
    // data
hgs
parents:
diff changeset
   143
hgs
parents:
diff changeset
   144
    /*
hgs
parents:
diff changeset
   145
     * icon id
hgs
parents:
diff changeset
   146
     */
hgs
parents:
diff changeset
   147
    TInt iId;
hgs
parents:
diff changeset
   148
hgs
parents:
diff changeset
   149
    /*
hgs
parents:
diff changeset
   150
     * Icon filename
hgs
parents:
diff changeset
   151
     */
hgs
parents:
diff changeset
   152
    RBuf iFileName;
hgs
parents:
diff changeset
   153
    
hgs
parents:
diff changeset
   154
    /*
hgs
parents:
diff changeset
   155
     * Icon skin id
hgs
parents:
diff changeset
   156
     */
hgs
parents:
diff changeset
   157
    RBuf iSkinId;
hgs
parents:
diff changeset
   158
    
hgs
parents:
diff changeset
   159
    /*
hgs
parents:
diff changeset
   160
     * Icon application id
hgs
parents:
diff changeset
   161
     */
hgs
parents:
diff changeset
   162
    RBuf iApplicationId;    
hgs
parents:
diff changeset
   163
    };
hgs
parents:
diff changeset
   164
hgs
parents:
diff changeset
   165
#endif // __CAINNERICONDESCRIPTION_H__