mirror-chatterino2/src/controllers/commands/commandmodel.cpp

31 lines
972 B
C++

#include "commandmodel.hpp"
namespace chatterino {
namespace controllers {
namespace commands {
// commandmodel
CommandModel::CommandModel(QObject *parent)
: util::SignalVectorModel<Command>(2, parent)
{
}
// turn a vector item into a model row
Command CommandModel::getItemFromRow(std::vector<QStandardItem *> &row, const Command &original)
{
return Command(row[0]->data(Qt::EditRole).toString(), row[1]->data(Qt::EditRole).toString());
}
// turns a row in the model into a vector item
void CommandModel::getRowFromItem(const Command &item, std::vector<QStandardItem *> &row)
{
row[0]->setData(item.name, Qt::DisplayRole);
row[0]->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsEditable);
row[1]->setData(item.func, Qt::DisplayRole);
row[1]->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsEditable);
}
} // namespace commands
} // namespace controllers
} // namespace chatterino