レスポンダチェーンとかをちゃんと理解していると,明白なことなのかもしれないが,こないだこれにダダはまりしたので,メモっとく.
あるビュー上にサブビューをおく.

// Create main view
id mainView = [[MyView1 alloc] initWithFrame:[window bounds] withName:@"main view"];
[window setContentView:mainView];
// Create sub view in main view
id subview = [[MyView2 alloc] initWithFrame:CGRectMake( 20, 20, 100, 100) withName:@"sub view"];
[mainView addSubview:subview];

subview上でマウスをクリックすると,MyView2のmouseDownが実行される.
subviewの下にあるmainviewには,mouseDownのイベントは届かない.

- (void) mouseDown:(NSEvent*)event {
NSLog( @"click - %@", name_ );
[super mouseDown:event];
}

[super mouseDown:event]をmouseDownイベントで実装しておくと,mainviewにもmouseDownイベントが届く.
順序は,subviewー>mainviewの順でmosueDownイベントが発生する様子.