contentstorage/caclient/src/caiconcache.cpp
changeset 115 3ab5c078b490
parent 109 e0aa398e6810
child 125 26079c1bb561
equal deleted inserted replaced
109:e0aa398e6810 115:3ab5c078b490
    88             this, SLOT(remove(const CaEntry &,ChangeType)));
    88             this, SLOT(remove(const CaEntry &,ChangeType)));
    89 
    89 
    90 }
    90 }
    91 
    91 
    92 /*!
    92 /*!
    93  Checks if icon is already cached
       
    94  \param entry an entry
       
    95  \param size size of an icon
       
    96  \retval true if icon exist in cache
       
    97 
       
    98  */
       
    99 bool CaIconCache::exist(const CaEntry &entry, const QSize &size)
       
   100 {
       
   101     CACLIENTTEST_FUNC_ENTRY("CaIconCache::exist");
       
   102     bool result(false);
       
   103     result = mCache.contains(key(entry,size));
       
   104     CACLIENTTEST_FUNC_EXIT("CaIconCache::exist");
       
   105     return result;
       
   106 }
       
   107 
       
   108 /*!
       
   109  Returns an icon from a cache
    93  Returns an icon from a cache
   110  \param entry an entry
    94  \param entry an entry
   111  \param size size of an icon
    95  \param size size of an icon
   112  \retval icon
    96  \retval icon
   113 
    97 
   114  */
    98  */
   115 
    99 
   116 HbIcon CaIconCache::icon(const CaEntry &entry, const QSize &size)
   100 HbIcon CaIconCache::icon(const CaEntry &entry, const QSizeF &size)
   117 {
   101 {
   118     CACLIENTTEST_FUNC_ENTRY("CaIconCache::icon");
   102     CACLIENTTEST_FUNC_ENTRY("CaIconCache::icon");
   119     HbIcon result;
   103     HbIcon result;
   120     if (HbIcon* tmp = mCache.object(key(entry,size))) {
   104     if (HbIcon* tmp = mCache.object(key(entry,size))) {
   121         result = *tmp;
   105         result = *tmp;
   129  \param entry an entry
   113  \param entry an entry
   130  \param size size of an icon
   114  \param size size of an icon
   131  \param icon icon to be cached
   115  \param icon icon to be cached
   132 
   116 
   133  */
   117  */
   134 void CaIconCache::insert(const CaEntry &entry, const QSize &size,
   118 void CaIconCache::insert(const CaEntry &entry, const QSizeF &size,
   135                          const HbIcon &icon)
   119                          const HbIcon &icon)
   136 {
   120 {
   137     CACLIENTTEST_FUNC_ENTRY("CaIconCache::insert");
   121     CACLIENTTEST_FUNC_ENTRY("CaIconCache::insert");
   138     mCache.insert(key(entry,size),new HbIcon(icon));
   122     mCache.insert(key(entry,size),new HbIcon(icon));
   139     CACLIENTTEST_FUNC_EXIT("CaIconCache::insert");
   123     CACLIENTTEST_FUNC_EXIT("CaIconCache::insert");
   164  Generates a key
   148  Generates a key
   165  \param entry an entry
   149  \param entry an entry
   166  \return key
   150  \return key
   167  */
   151  */
   168 
   152 
   169 QString CaIconCache::key(const CaEntry &entry, const QSize &size)
   153 QString CaIconCache::key(const CaEntry &entry, const QSizeF &size)
   170 {
   154 {
   171     QString key;
   155     QString key;
   172     if (!entry.iconDescription().filename().isEmpty()) {
   156     if (!entry.iconDescription().filename().isEmpty()) {
   173         key.append(entry.iconDescription().filename());
   157         key.append(entry.iconDescription().filename());
   174         key.append(separator);
   158         key.append(separator);
   177         key.append(separator);
   161         key.append(separator);
   178         key.append(entry.id());
   162         key.append(entry.id());
   179     }
   163     }
   180     if (size.isValid()) {
   164     if (size.isValid()) {
   181         key.append(separator);
   165         key.append(separator);
   182         key.append(size.height());
   166         key += QString::number(size.height());
   183         key.append(separator);
   167         key.append(separator);
   184         key.append(size.width());
   168         key += QString::number(size.width());
   185     }
   169     }
   186     return key;
   170     return key;
   187 }
   171 }