faceicontest.cpp 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. SPDX-FileCopyrightText: 2014 Nicolás Alvarez <nicolas.alvarez@gmail.com>
  3. SPDX-License-Identifier: LGPL-2.0-only
  4. */
  5. #include "faceicontest.h"
  6. #include <QApplication>
  7. #include <QListWidget>
  8. #include <QVBoxLayout>
  9. #include <kuser.h>
  10. int main(int argc, char **argv)
  11. {
  12. QApplication app(argc, argv);
  13. FaceIconTest *mainWin = new FaceIconTest();
  14. mainWin->show();
  15. return app.exec();
  16. }
  17. FaceIconTest::FaceIconTest()
  18. {
  19. QVBoxLayout *layout = new QVBoxLayout(this);
  20. listWidget = new QListWidget(this);
  21. layout->addWidget(listWidget);
  22. const QList<KUser> users = KUser::allUsers();
  23. for (const KUser &u : users) {
  24. QPixmap pixmap(u.faceIconPath());
  25. if (pixmap.isNull()) {
  26. pixmap = QPixmap(QSize(48, 48));
  27. pixmap.fill();
  28. } else {
  29. pixmap = pixmap.scaled(48, 48, Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
  30. }
  31. QListWidgetItem *item = new QListWidgetItem(u.loginName(), listWidget);
  32. item->setData(Qt::DecorationRole, pixmap);
  33. }
  34. }
  35. #include "moc_faceicontest.cpp"