-rw-r--r-- | noncore/apps/zsafe/zsafe.cpp | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/noncore/apps/zsafe/zsafe.cpp b/noncore/apps/zsafe/zsafe.cpp index abf6511..ef16b46 100644 --- a/noncore/apps/zsafe/zsafe.cpp +++ b/noncore/apps/zsafe/zsafe.cpp @@ -2794,2 +2794,44 @@ void ZSafe::setCategoryDialogFields(CategoryDialog *dialog) dialog->Field6->setText(getFieldLabel (selectedItem, "6", tr("Field 5"))); + + QString icon; + Category *cat= categories.find (selectedItem->text(0)); + if (cat) + { + icon = cat->getIconName(); + } + +#ifdef DESKTOP + QDir d(iconPath); +#else + QDir d(QPEApplication::qpeDir() + "/pics/"); +#endif + d.setFilter( QDir::Files); + + const QFileInfoList *list = d.entryInfoList(); + int i=0; + QFileInfoListIterator it( *list ); // create list iterator + QFileInfo *fi; // pointer for traversing + if (icon.isEmpty() || icon.isNull()) + { + dialog->IconField->setCurrentItem(0); + } + else + { + while ( (fi=it.current()) ) + { // for each file... + QString fileName = fi->fileName(); + if(fileName.right(4) == ".png") + { + fileName = fileName.mid(0,fileName.length()-4); + + if(fileName+".png"==icon) + { + dialog->IconField->setCurrentItem(i+1); + break; + } + ++i; + } + ++it; + } + } } @@ -2804,2 +2846,44 @@ void ZSafe::setCategoryDialogFields(CategoryDialog *dialog, QString category) dialog->Field6->setText(getFieldLabel (category, "6", tr("Field 5"))); + + QString icon; + Category *cat= categories.find (category); + if (cat) + { + icon = cat->getIconName(); + } + +#ifdef DESKTOP + QDir d(iconPath); +#else + QDir d(QPEApplication::qpeDir() + "/pics/"); +#endif + d.setFilter( QDir::Files); + + const QFileInfoList *list = d.entryInfoList(); + int i=0; + QFileInfoListIterator it( *list ); // create list iterator + QFileInfo *fi; // pointer for traversing + if (icon.isEmpty() || icon.isNull()) + { + dialog->IconField->setCurrentItem(0); + } + else + { + while ( (fi=it.current()) ) + { // for each file... + QString fileName = fi->fileName(); + if(fileName.right(4) == ".png") + { + fileName = fileName.mid(0,fileName.length()-4); + + if(fileName+".png"==icon) + { + dialog->IconField->setCurrentItem(i+1); + break; + } + ++i; + } + ++it; + } + } } |