Check if there are more properties that could be added
Test Windows build
Test macOS build
Decide how to handle improper value changes which are normally validated in dialogs code
This one is a bit tricky. I have added some basic checks, so that the user cannot e.g. set width to a negative value or place an object on an non-existing layer, but there are more things to verify (e.g. via diameter > via drill).
One idea that I have is to move the data validation code to setters, so that an exception is thrown when the user tries to do something wrong. It also has a positive side-effect because Python scripts will receive the same exceptions. The main drawback is that set method has to be executed to validate data, making roll-backs slightly more complicated. Perhaps dialogs could edit a copy instead of the original object and transfer the data once everything is valid?