2019-09-08 22:27:57 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <QStandardItem>
|
|
|
|
|
|
|
|
namespace chatterino {
|
|
|
|
|
|
|
|
static void setBoolItem(QStandardItem *item, bool value,
|
|
|
|
bool userCheckable = true, bool selectable = true)
|
|
|
|
{
|
2019-09-18 13:03:16 +02:00
|
|
|
item->setFlags(Qt::ItemFlags(
|
2019-09-08 22:27:57 +02:00
|
|
|
Qt::ItemIsEnabled | (selectable ? Qt::ItemIsSelectable : 0) |
|
|
|
|
(userCheckable ? Qt::ItemIsUserCheckable : 0)));
|
|
|
|
item->setCheckState(value ? Qt::Checked : Qt::Unchecked);
|
|
|
|
}
|
|
|
|
|
|
|
|
static void setStringItem(QStandardItem *item, const QString &value,
|
|
|
|
bool editable = true, bool selectable = true)
|
|
|
|
{
|
|
|
|
item->setData(value, Qt::EditRole);
|
2019-09-18 13:03:16 +02:00
|
|
|
item->setFlags(Qt::ItemFlags(Qt::ItemIsEnabled |
|
|
|
|
(selectable ? Qt::ItemIsSelectable : 0) |
|
|
|
|
(editable ? (Qt::ItemIsEditable) : 0)));
|
2019-09-08 22:27:57 +02:00
|
|
|
}
|
|
|
|
|
2020-01-25 11:03:10 +01:00
|
|
|
static void setFilePathItem(QStandardItem *item, const QUrl &value)
|
|
|
|
{
|
|
|
|
item->setData(value, Qt::UserRole);
|
|
|
|
item->setData(value.fileName(), Qt::DisplayRole);
|
|
|
|
item->setFlags(Qt::ItemFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable));
|
|
|
|
}
|
|
|
|
|
|
|
|
static void setColorItem(QStandardItem *item, const QColor &value)
|
|
|
|
{
|
|
|
|
item->setData(value, Qt::DecorationRole);
|
|
|
|
item->setFlags(Qt::ItemFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable));
|
|
|
|
}
|
|
|
|
|
2019-09-08 22:27:57 +02:00
|
|
|
static QStandardItem *emptyItem()
|
|
|
|
{
|
|
|
|
auto *item = new QStandardItem();
|
2019-09-18 13:03:16 +02:00
|
|
|
item->setFlags(Qt::ItemFlags(0));
|
2019-09-08 22:27:57 +02:00
|
|
|
return item;
|
|
|
|
}
|
|
|
|
|
|
|
|
} // namespace chatterino
|