dependencies/AknsPkgID.h
author jake
Tue, 13 Apr 2010 15:07:27 +0300
branchv5backport
changeset 56 7b5c31fac191
parent 39 4e8bbb15b77a
permissions -rw-r--r--
Many of the components were not compilingm,because bld.inf had undefined flag #ifdef RD_CUSTOMIZABLE_AI. All the flags removed now. Components do not compile right away. E.g. many icons are missing and need to be copied from Symbian3. See example from MCSPlugin. Shortcut plugin does not need to be compiled as MCSPlugin replaces it.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
39
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     1
/*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     2
* Copyright (c) 2003 Nokia Corporation and/or its subsidiary(-ies).
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     3
* All rights reserved.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     4
* This component and the accompanying materials are made available
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     6
* which accompanies this distribution, and is available
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     8
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
     9
* Initial Contributors:
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    11
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    12
* Contributors:
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    13
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    14
* Description:  Defines the package ID class used to identify skin packages
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    15
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    16
*/
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    17
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    18
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    19
#ifndef AKNSPKGID_H
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    20
#define AKNSPKGID_H
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    21
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    22
//  INCLUDES
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    23
#include <e32std.h>
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    24
#include <e32base.h>
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    25
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    26
// CONSTANTS
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    27
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    28
static const TInt KAknsPkgIDDesSize = 23;
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    29
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    30
// DATA TYPES
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    31
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    32
typedef TBuf<KAknsPkgIDDesSize> TAknsPkgIDBuf;
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    33
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    34
// FORWARD DECLARATIONS
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    35
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    36
// CLASS DECLARATION
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    37
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    38
/**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    39
* Package identifier used to identify skin packages. Package ID may be either
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    40
* a UID or a timestamp and random number pair.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    41
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    42
* Note that the class does not define any constructors. This ensures that 
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    43
* @c TAknsPkgID can be used in ROM constants.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    44
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    45
* @lib AknSkinSrv.lib
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    46
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    47
* @since 2.0
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    48
*/
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    49
class TAknsPkgID
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    50
    {    
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    51
    public: // New functions
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    52
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    53
        /**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    54
        * Sets skin package ID by giving a UID.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    55
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    56
        * @param aUid New UID to be set as the value of the package ID.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    57
        */
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    58
        inline void Set( const TUid aUid );
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    59
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    60
        /**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    61
        * Sets skin package ID by giving a timestamp and a random number.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    62
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    63
        * @param aTimestamp Timestamp as an integer. Must be non-zero.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    64
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    65
        * @param aNumber Random number.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    66
        */
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    67
        inline void Set( const TInt aTimestamp, const TInt aNumber );
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    68
        
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    69
        /**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    70
        * Sets skin package ID by an existing package ID.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    71
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    72
        * @param aID Skin package ID.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    73
        */
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    74
        inline void Set( const TAknsPkgID& aID );
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    75
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    76
        /**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    77
        * Checks whether the skin package ID is a UID.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    78
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    79
        * @return ETrue if the skin package ID is a UID, EFalse otherwise.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    80
        */
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    81
        inline TBool IsUid() const;
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    82
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    83
        /**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    84
        * Returns the skin package ID as a UID. If the package ID is not a
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    85
        * UID, the result is undefined.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    86
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    87
        * @return Skin packge ID as a UID.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    88
        */
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    89
        inline TUid Uid() const;
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    90
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    91
    public: // New functions - String conversions
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    92
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    93
        /**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    94
        * Copies the content of the package ID to the given descriptor.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    95
        * The size of the descriptor must be at least the size of
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    96
        * @c TAknsPkgIDBuf. Otherwise the method may panic.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    97
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    98
        * @param aDes Target descriptor.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
    99
        */
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   100
        IMPORT_C void CopyToDes( TDes& aDes ) const;
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   101
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   102
        /**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   103
        * Sets the content of the package ID based on the given character
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   104
        * representation. The content of the given descriptor must be
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   105
        * valid (as generated by @c CopyToDes). 
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   106
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   107
        * If the given descriptor doesn't contain a correctly formatted
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   108
        * skin package ID the method leaves and the content of the object
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   109
        * is undefined.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   110
        *
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   111
        * @param aDes Source descriptor.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   112
        */
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   113
        IMPORT_C void SetFromDesL( const TDesC& aDes );
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   114
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   115
    public: // Data
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   116
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   117
        TInt iNumber;       //!< Number or UID.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   118
        TInt iTimestamp;    //!< Timestamp (or 0 if UID).
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   119
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   120
    };
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   121
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   122
// CONSTANTS (continued)
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   123
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   124
static const TAknsPkgID KAknsNullPkgID = { 0, 0 };
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   125
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   126
// FUNCTION PROTOTYPES
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   127
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   128
/**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   129
* C++ equal operator.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   130
* Checks whether two package ID objects have identical content.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   131
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   132
* @param aFirst First object to be compared.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   133
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   134
* @param aSecond Second object to be compared.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   135
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   136
* @return true if objects have identical content, false otherwise.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   137
*/
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   138
inline TBool operator==( const TAknsPkgID& aFirst, const TAknsPkgID& aSecond );
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   139
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   140
/**
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   141
* C++ not equal operator.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   142
* Checks whether two package ID objects have identical content.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   143
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   144
* @param aFirst First object to be compared.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   145
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   146
* @param aSecond Second object to be compared.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   147
*
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   148
* @return false if objects have identical content, true otherwise.
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   149
*/
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   150
inline TBool operator!=( const TAknsPkgID& aFirst, const TAknsPkgID& aSecond );
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   151
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   152
// INLINED MEMBERS
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   153
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   154
#include "AknsPkgID.inl"
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   155
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   156
#endif // AKNSITEMID_H   
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   157
4e8bbb15b77a added files required to compile homescreen
kashif.sayed
parents:
diff changeset
   158
// End of File