56 QModelIndex source_index = mapToSource(proxy_index);
57 return sourceModel()->data(source_index, role);
60 return QVariant::fromValue(
61 reinterpret_cast<ScenarioItem*
>(proxy_index.internalPointer()));
63 return QVariant::fromValue(
66 return QVariant::fromValue(
69 return QVariant::fromValue(
70 reinterpret_cast<SettingsItem*
>(proxy_index.internalPointer()));
73 return QSortFilterProxyModel::data(proxy_index, role);
79 const QModelIndex& sourceParent)
const
84 if (filterRegExp().isEmpty())
89 QModelIndexList childrenColumn1;
91 childrenColumn1 << sourceModel()->index(sourceRow, 0, sourceParent);
94 for (
int i = 0; i < childrenColumn1.size(); ++i)
96 for (
int j = 0; j < sourceModel()->rowCount(childrenColumn1[i]); ++j)
98 childrenColumn1 << childrenColumn1[i].child(j, 0);
103 for (
int i = 0; i < childrenColumn1.size(); ++i)
105 if (sourceModel()->
data(childrenColumn1[i]).toString().contains(filterRegExp()))
112 if (sourceModel()->columnCount() > 1)
114 QModelIndexList childrenColumn2;
116 childrenColumn2 << sourceModel()->index(sourceRow, 1, sourceParent);
119 for (
int i = 0; i < childrenColumn2.size(); ++i)
121 for (
int j = 0; j < sourceModel()->rowCount(childrenColumn2[i]); ++j)
123 childrenColumn2 << childrenColumn2[i].child(j, 1);
127 for (
int i = 0; i < childrenColumn2.size(); ++i)
129 if (sourceModel()->
data(childrenColumn2[i]).toString().contains(filterRegExp()))