43 //Build theme list |
44 //Build theme list |
44 mThemeList = CpThemeUtil::buildThemeList(); |
45 mThemeList = CpThemeUtil::buildThemeList(); |
45 |
46 |
46 //Look into theme paths and add a file watcher for it |
47 //Look into theme paths and add a file watcher for it |
47 //to get notified when themes are added. |
48 //to get notified when themes are added. |
48 QStringList themesPathList = CpThemeUtil::themePathList(); |
49 QStringList themePaths = CpThemeUtil::themeDirectories(mThemeList); |
49 foreach (const QString &path, themesPathList) { |
50 if(!themePaths.empty()) { |
50 QDir themeDir; |
51 mFileWatcher->addPaths(themePaths); |
51 themeDir.setPath( path ) ; |
|
52 QStringList list = themeDir.entryList(QDir::AllDirs|QDir::NoDotAndDotDot, QDir::Name); |
|
53 if(list.contains("themes", Qt::CaseSensitive )) { |
|
54 mFileWatcher->addPath(themeDir.path() + "/themes/"); |
|
55 } |
|
56 } |
52 } |
57 connect(mFileWatcher, SIGNAL(directoryChanged(const QString&)), |
53 |
|
54 connect(mFileWatcher, SIGNAL(directoryChanged(QString&)), |
58 this, SLOT(themeListChanged())); |
55 this, SLOT(themeListChanged())); |
59 |
56 |
60 // data for the list which appears after the themes: |
57 // data for the list which appears after the themes: |
61 CpThemeInfo fetchFromStore; |
58 CpThemeInfo fetchFromStore; |
62 fetchFromStore.setName(hbTrId("txt_cp_list_get_more_tones")); |
59 fetchFromStore.setName(hbTrId("txt_cp_list_get_more_tones")); |
63 fetchFromStore.setItemType(CpThemeInfo::ThemeListItemType_URL); |
60 fetchFromStore.setItemType(CpThemeInfo::ThemeListItemType_URL); |
64 fetchFromStore.setItemData(QString("http://lr.ovi.mobi/store/themes")); |
61 fetchFromStore.setItemData(QString("http://lr.ovi.mobi/store/themes")); |