src/hbcore/devicedialogbase/hbsymbianvariant.h
changeset 28 b7da29130b0e
parent 0 16d8024aca5e
child 30 80e4d18b72f5
equal deleted inserted replaced
23:e6ad4ef83b23 28:b7da29130b0e
    32 #include <badesca.h>
    32 #include <badesca.h>
    33 
    33 
    34 class CHbSymbianVariantPrivate;
    34 class CHbSymbianVariantPrivate;
    35 class CHbSymbianVariantMapPrivate;
    35 class CHbSymbianVariantMapPrivate;
    36 
    36 
    37 class CHbSymbianVariant : public CBase
    37 class CHbSymbianVariant
       
    38 #if !defined(HB_DOXYGEN)
       
    39 : public CBase
       
    40 #endif // !defined(HB_DOXYGEN)
    38 {
    41 {
    39 public:
    42 public:
    40 
    43 
    41     enum TType{
    44     enum TType{
    42     EInt,
    45         EInt, EBool, EUint, EReal, ERect, EPoint, ESize, EChar,
    43     EBool,
    46         EDes, EBinary, EDesArray, EVariantMap
    44     EUint,
       
    45     EReal,
       
    46     ERect,
       
    47     EPoint,
       
    48     ESize,
       
    49     EChar,
       
    50     EDes,
       
    51     EBinary,
       
    52     EDesArray,
       
    53     EVariantMap
       
    54     };
    47     };
    55 
    48 
    56     IMPORT_C static CHbSymbianVariant* NewL(const TAny* aData, TType aDataType);
    49     IMPORT_C static CHbSymbianVariant* NewL(const TAny* aData, TType aDataType);
    57 
    50     IMPORT_C ~CHbSymbianVariant();
    58 
    51 
    59     IMPORT_C CHbSymbianVariant::TType Type() const;
    52     IMPORT_C CHbSymbianVariant::TType Type() const;
    60 
    53 
    61     template<typename T>
    54     template<typename T>
    62         T* Value() const {
    55         T* Value() const {
    66                 }
    59                 }
    67             else return 0;
    60             else return 0;
    68         }
    61         }
    69 
    62 
    70     IMPORT_C TAny* Data() const;
    63     IMPORT_C TAny* Data() const;
    71 
       
    72     IMPORT_C void SetData(TAny* aData, TType aDataType);
    64     IMPORT_C void SetData(TAny* aData, TType aDataType);
    73 
       
    74     IMPORT_C TBool IsValid() const;
    65     IMPORT_C TBool IsValid() const;
    75 
       
    76     IMPORT_C ~CHbSymbianVariant();
       
    77 
    66 
    78 private:
    67 private:
    79     CHbSymbianVariant(const TAny* aData, TType aDataType);
    68     CHbSymbianVariant(const TAny* aData, TType aDataType);
    80 
       
    81     void ConstructL(const TAny* aData, TType aDataType);
    69     void ConstructL(const TAny* aData, TType aDataType);
    82 
       
    83     CHbSymbianVariant(const CHbSymbianVariant& aNativeVariant);
    70     CHbSymbianVariant(const CHbSymbianVariant& aNativeVariant);
    84 
    71 
    85 private:
    72 private:
    86     CHbSymbianVariantPrivate* d;
    73     CHbSymbianVariantPrivate* d;
    87 };
    74 };
    88 
    75 
    89 class CHbSymbianVariantMap : public CBase
    76 class CHbSymbianVariantMap
       
    77 #if !defined(HB_DOXYGEN)
       
    78 : public CBase
       
    79 #endif // !defined(HB_DOXYGEN)
    90 {
    80 {
    91 public:
    81 public:
    92     IMPORT_C static CHbSymbianVariantMap* NewL();
    82     IMPORT_C static CHbSymbianVariantMap* NewL();
    93     IMPORT_C ~CHbSymbianVariantMap();
    83     IMPORT_C ~CHbSymbianVariantMap();
    94 
    84 
    95     IMPORT_C TInt Add(const TDesC& aKey, CHbSymbianVariant* aVariant);
    85     IMPORT_C TInt Add(const TDesC& aKey, CHbSymbianVariant* aVariant);
    96 
       
    97     IMPORT_C TInt Delete(const TDesC& aKey);
    86     IMPORT_C TInt Delete(const TDesC& aKey);
    98 
       
    99     IMPORT_C const CHbSymbianVariant* Get(const TDesC& aKey) const;
    87     IMPORT_C const CHbSymbianVariant* Get(const TDesC& aKey) const;
   100 
       
   101     IMPORT_C MDesCArray& Keys() const;
    88     IMPORT_C MDesCArray& Keys() const;
   102 
    89 
   103 private:
    90 private:
   104 
       
   105     CHbSymbianVariantMap();
    91     CHbSymbianVariantMap();
   106 
       
   107     void ConstructL();
    92     void ConstructL();
   108 
    93 
   109     CHbSymbianVariantMapPrivate* d;
    94     CHbSymbianVariantMapPrivate* d;
   110 };
    95 };
   111 
    96