all classes have qobject