'Apply first function SUBST to arguments, than FUNC.'

def __call__(self, *args):

    try:
        if self.subst:
            args = self.subst(*args)
        return self.func(*args)
    except SystemExit as msg:
        raise SystemExit, msg
    except:
        self.widget._report_exception()
