tornadofx-guide icon indicating copy to clipboard operation
tornadofx-guide copied to clipboard

what is the tornadofx way to have constraints for properties?

Open ysm-coder opened this issue 5 years ago • 1 comments

I couldnt find it in the guide, but bassicaly if I have some constraints (like String should only contain lowercase letters) I would check them in the setters and if something is wrong I can throw an Exception, display an Alert, return from the setter without setting anything or whatever. But in tornadofx I dont have var+setters but instead I have val properties like SimpleStringProperty. So what should I do? One idea is to somehow check this in .onChange{} but the problems I see with it is that this happens after the change (what if someone else also listens to the change and does something before I can check the constraint, also how do I get my old value back?). What is the intended way to do this?

ysm-coder avatar Jan 13 '20 21:01 ysm-coder

This is nicely solved in the validation support inside of the form builder. Please see Validation section of the guide, on this page: https://github.com/edvin/tornadofx-guide/blob/master/part1/11.%20Editing%20Models%20and%20Validation.md

edvin avatar Jan 24 '20 15:01 edvin