Register tab update function, function is being called with (layout, object)

        :param model_alias:
        :param code:
        :return:

def register_update(self, model_alias, code):
        """
        Register tab update function, function is being called with (layout, object)

        :param model_alias:
        :param code:
        :return:
        """
        model_alias = self.get_model_alias(model_alias)

        def wrapper(update_layout):
            for item in self.tabs[model_alias]:
                if item.code == code:
                    item.layout_updates.append(update_layout)
            return update_layout
        return wrapper