implemented exclusive checking in GenitivModel
This commit is contained in:
parent
02eaa7be16
commit
00a4d37ec3
@ -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);
|
||||||
}
|
}
|
||||||
|
@ -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;
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user