summaryrefslogtreecommitdiff
path: root/src/genericicondelegate.cpp
blob: 1ee980ab31a5d7dda37ab788e254268f90d0a28a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "genericicondelegate.h"
#include "pluginlist.h"
#include <QList>
#include <QPixmapCache>

GenericIconDelegate::GenericIconDelegate(QTreeView* parent, int role, int logicalIndex,
                                         int compactSize)
    : IconDelegate(parent, logicalIndex, compactSize), m_Role(role)
{}

QList<QString> GenericIconDelegate::getIcons(const QModelIndex& index) const
{
  QList<QString> result;
  if (index.isValid()) {
    for (const QVariant& var : index.data(m_Role).toList()) {
      if (!compact() || !var.toString().isEmpty()) {
        result.append(var.toString());
      }
    }
  }
  return result;
}

size_t GenericIconDelegate::getNumIcons(const QModelIndex& index) const
{
  return index.data(m_Role).toList().count();
}