SubProj sub = (SubProj)successor;
if (sub.isSubprojectOpen())
sub.getSubproject().markAllTasksAsNeedingRecalculation(true);
}
successor.invalidateSchedules();
successor.markTaskAsNeedingRecalculation();
// The line below fixes a bug with nested parents of the sort pred->grand par sib1->sib2. Of course, it means most of the code above is redundant (except for subproject stuff)
project.markAllTasksAsNeedingRecalculation(true);
calculate(true,null); // Run both passes, since the CP might be modified and it's hard to tell if so
} else if (changedObject == project) { // if whole project changed, such