implemented exclusive checking in GenitivModel

This commit is contained in:
Michael Mandl 2018-06-30 10:05:49 +02:00
parent 02eaa7be16
commit 00a4d37ec3
2 changed files with 41 additions and 4 deletions

View file

@ -4,7 +4,42 @@ GenitivModel::GenitivModel(QObject *parent)
: CheckableTestModel(parent) : CheckableTestModel(parent)
{ {
m_tests = { m_tests = {
{ "Genitiv Präpositionen", { "anstelle", "außerhalb", "mithilfe" } }, { "Genitiv Präpositionen",
{ "Attributierung", { "Schuhe", "Zauberstab", "Hut", "Brille", "Gürtel" } }, { "anstelle (1)", "anstelle (2)", "außerhalb (1)", "außerhalb (2)",
"mithilfe (1)", "mithilfe (2)" } },
{ "Attributierung",
{ "Schuhe (1)", "Schuhe (2)", "Zauberstab (1)", "Zauberstab (2)",
"Hut (1)", "Hut (2)", "Brille (1)", "Brille (2)", "Gürtel (1)",
"Gürtel (2)" } },
}; };
for (auto index : { 1, 3, 5 })
{
m_tests[0].items()[index].setValue(2);
}
for (auto index : { 1, 3, 5, 7, 9 })
{
m_tests[1].items()[index].setValue(2);
}
}
bool GenitivModel::setData(
const QModelIndex &modelIndex, const QVariant &value, int role)
{
if (role == Qt::CheckStateRole && value.toBool() == true)
{
if (modelIndex.column() % 2 == 0)
{
CheckableTestModel::setData(
index(modelIndex.row(), modelIndex.column() + 1), false, role);
}
else
{
CheckableTestModel::setData(
index(modelIndex.row(), modelIndex.column() - 1), false, role);
}
}
return CheckableTestModel::setData(modelIndex, value, role);
} }

View file

@ -8,4 +8,6 @@ class GenitivModel : public CheckableTestModel
public: public:
GenitivModel(QObject *parent); GenitivModel(QObject *parent);
bool setData(const QModelIndex &index, const QVariant &value,
int role = Qt::EditRole) override;
}; };