set null before emitting the event, as the emission triggers arbitrary user code which may be reentrant (e.g. changes source)
you can squish these lines together more, and should probably combine the ifs
BINDABLE properties still need NOTIFY as a fallback (afaik, the qt documentation doesn't mention it either way so I keep NOTIFY)
Also this is going to have issues due to qobject threading, as it will create a direct connection. Take a look at how FileViewOperation::finished works and is called.
Should trigger quantizeAsync(). You can use QQmlParserStatus::componentCompleted to delay the initial run until all properties are set as well.
This is a race condition, if another quantization task is started before this one finishes the new one won't run. Instead of canceling with isProcessing, keep a pointer to the old task to disconnect from before starting a new one.