def _update_change_dec(func):
    """
    Decorator to track property changes in class. Apply @property.setter after @_update_change_dec
    :param func: function object to decorate
    :return: decorated function
    """

    def _wrapper(self, val):
        self._changed = True
        func(self, val)

    return _wrapper