- m_size = new QCheckBox(i18nc("@option:check Additional Information", "Size"), box);
- m_date = new QCheckBox(i18nc("@option:check Additional Information", "Date"), box);
- m_permissions = new QCheckBox(i18nc("@option:check Additional Information", "Permissions"), box);
- m_owner = new QCheckBox(i18nc("@option:check Additional Information", "Owner"), box);
- m_group = new QCheckBox(i18nc("@option:check Additional Information", "Group"), box);
- m_type = new QCheckBox(i18nc("@option:check Additional Information", "Type"), box);
- connect(this, SIGNAL(okClicked()), this, SLOT(slotOk()));
+ m_listWidget = new QListWidget(mainWidget);
+ m_listWidget->setSelectionMode(QAbstractItemView::NoSelection);
+ const QList<KFileItemModel::RoleInfo> rolesInfo = KFileItemModel::rolesInformation();
+ foreach (const KFileItemModel::RoleInfo& info, rolesInfo) {
+ QListWidgetItem* item = new QListWidgetItem(info.translation, m_listWidget);
+ item->setCheckState(visibleRoles.contains(info.role) ? Qt::Checked : Qt::Unchecked);
+
+ const bool enable = (!info.requiresBaloo && !info.requiresIndexer) ||
+ (info.requiresBaloo) ||
+ (info.requiresIndexer && indexingEnabled);
+
+ if (!enable) {
+ item->setFlags(item->flags() & ~Qt::ItemIsEnabled);
+ }
+ }