Retângulo arredondado no NSView que recorta todas as subvisões

Estou criando umNSView subclasse com cantos arredondados. Essa visualização deve ser um contêiner e outras subvisões serão adicionadas a ele. Estou tentando obter os cantos arredondados doNSView cortar todos os cantos da subvisão também, mas não consigo obtê-lo.

- (void)drawRect:(NSRect)dirtyRect {
    NSRect rect = [self bounds];
    NSBezierPath *path = [NSBezierPath bezierPathWithRoundedRect:rect xRadius:self.radius yRadius:self.radius];
    [path addClip];

    [[NSColor redColor] set];
    NSRectFill(dirtyRect);

    [super drawRect:dirtyRect];     
}

O vermelho é apenas por exemplo. Se eu adicionar uma subvisão à direita, os cantos não serão cortados:

Como posso conseguir isso?

questionAnswers(3)

yourAnswerToTheQuestion