| 330 | class HandledProjectedModList(HandledList): |
| 331 | |
| 332 | def append(self, proj): |
| 333 | if proj.isInvalid: |
| 334 | # we must include it before we remove it. doing it this way ensures |
| 335 | # rows and relationships in database are removed as well |
| 336 | HandledList.append(self, proj) |
| 337 | self.remove(proj) |
| 338 | return |
| 339 | proj.projected = True |
| 340 | HandledList.append(self, proj) |
| 341 | # Remove non-projectable modules |
| 342 | if not proj.item.isType("projected") and not proj.isExclusiveSystemEffect: |
| 343 | self.remove(proj) |
| 344 | |
| 345 | def insert(self, idx, proj): |
| 346 | if proj.isInvalid: |