A Text-Script based Marionette Object.
About 30 Options in the Object Info palette. And many if then combinations, which results in drawing/not drawing a part of the cabinet. I did this first with a graphical script network. But there was no possibility to NOT execute part of a graphical script because of an option.
It is just possible to execute/draw everything and then delete objects. Which results in a disadvantage of speed. So I decided to write code instead. Anyway, this is also something, marionette can be used for.