py3: Draft: use proper way to test if property is available if the attribute is not available py3 raises: `<class 'AssertionError'>: The enum is empty`. For py2 hasattr simple returns False. Similar changes should be applied also to other places.
py3: Draft: use proper way to test if property is available
if the attribute is not available py3 raises: `<class 'AssertionError'>: The enum is empty`. For py2 hasattr simple returns False. Similar changes should be applied also to other places.

Fat-Zer/FreeCAD_sf_master,Fat-Zer/FreeCAD_sf_master,Fat-Zer/FreeCAD_sf_master,Fat-Zer/FreeCAD_sf_master,Fat-Zer/FreeCAD_sf_master