Optimumcut-1D v3 Product Development
A lesson we learnt in Optimumcut-1D v2 is to provide as much information as possible when a part of a project is invalid. Informing the user that their project is invalid without telling them what is invalid makes people angry with the software, even if it was due to them editing the project in an external editor.
If an item in invalid, the error is cascaded up the project hierarchy marking every ancestor item as invalid as well. In this example, there is a single invalid Linear Cut (the linear material it refers to has been removed from the project). This marks the “Linear Cuts” item as invalid which in turn marks the “IB Vent 1×1” component invalid. This marks the “Components as invalid which marks the “Project” as invalid.