def __setattr__(self, attribute, value): """ Reimplements the :meth:`foundations.nodes.AbstractCompositeNode.__setattr__` method. :param attribute.: Attribute. :type attribute.: object :param value.: Value. :type value.: object """ currentValue = getattr(self, attribute, None) AbstractCompositeNode.__setattr__(self, attribute, value) if not attribute in ("_GraphModelNode__name", "_GraphModelNode__roles", "_GraphModelNode__flags"): return triggerModel = getattr(self, "_Mixin_GraphModelObject__triggerModel", False) if triggerModel and value is not currentValue: self.nodeChanged()