Rev 247 | Rev 252 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 247 | Rev 250 | ||
---|---|---|---|
Line 153... | Line 153... | ||
153 | foreach(ResourceUnit *ru, GlobalSettings::instance()->model()->ruList()) |
153 | foreach(ResourceUnit *ru, GlobalSettings::instance()->model()->ruList()) |
154 | ru->cleanTreeList(); |
154 | ru->cleanTreeList(); |
155 | }
|
155 | }
|
156 | }
|
156 | }
|
157 | 157 | ||
- | 158 | int Management::filter(QVariantList idList) |
|
- | 159 | {
|
|
- | 160 | QHash<int, int> ids; |
|
- | 161 | foreach(const QVariant &v, idList) |
|
- | 162 | ids[v.toInt()] = 1; |
|
- | 163 | ||
- | 164 | QList<QPair<Tree*, double> >::iterator tp=mTrees.begin(); |
|
- | 165 | while (tp!=mTrees.end()) { |
|
- | 166 | if (!ids.contains(tp->first->id()) ) |
|
- | 167 | tp = mTrees.erase(tp); |
|
- | 168 | else
|
|
- | 169 | tp++; |
|
- | 170 | }
|
|
- | 171 | return mTrees.count(); |
|
- | 172 | }
|
|
- | 173 | ||
- | 174 | int Management::filter(QString filter) |
|
- | 175 | {
|
|
- | 176 | TreeWrapper tw;
|
|
- | 177 | Expression expr(filter,&tw); |
|
- | 178 | qDebug() << "filtering with" << filter; |
|
- | 179 | QList<QPair<Tree*, double> >::iterator tp=mTrees.begin(); |
|
- | 180 | while (tp!=mTrees.end()) { |
|
- | 181 | tw.setTree(tp->first); |
|
- | 182 | if (!expr.execute()) |
|
- | 183 | tp = mTrees.erase(tp); |
|
- | 184 | else
|
|
- | 185 | tp++; |
|
- | 186 | }
|
|
- | 187 | return mTrees.count(); |
|
- | 188 | }
|
|
158 | 189 | ||
159 | int Management::load(QString filter) |
190 | int Management::load(QString filter) |
160 | {
|
191 | {
|
161 | TreeWrapper tw;
|
192 | TreeWrapper tw;
|
162 | Model *m = GlobalSettings::instance()->model(); |
193 | Model *m = GlobalSettings::instance()->model(); |