Cacao: Haga clic derecho en NSStatusItem

Soy un desarrollador de .Net que necesita portar un pequeño proyecto en Mac, por lo que no sé casi nada sobre el Objetivo C. De hecho, el siguiente código era solo un montón de agarrar pajitas y disparar en la oscuridad.

Intentando construir un programa de menú de estado que abra una u otra ventana dependiendo de si es un clic izquierdo o un clic derecho / ctrl + clic. Esto es lo que tengo, y funciona solo con el botón izquierdo (obviamente):

-(void) awakeFromNib{

    NSBundle *bundle = [NSbundle mainBundle];

    statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSSquareStatusItemLength] retain];
    [statusImage = [[NSImage alloc] initWithContentsOfFile:[bundle pathForResource:@"icon" ofType:@"png"]];
    [statusItem setImage:statusImage];
    [statusItem setToolTip:@"Program Name"];
    [statusItem setHighlightMode:YES];
    [statusItem setAction:@selector(openWin:)];
    [statusItem setTarget: self];
}

-(void)openWin:(id)sender{
    [self openLeftWindow:sender];
}

-(IBAction)openLeftWindow:(id)sender{
    //Code to populate Left Click Window
    [leftWindow makeKeyAndorderFront:nil];
}

-(IBAction)openRightWindow:(id)sender{
    //Code to populate Right Click Window
    [rightWindow makeKeyAndorderFront:nil];
}

Me parece que la solución sería una declaración if en la función openWin () para determinar en qué botón se hace clic (o si se mantuvo presionada la tecla Ctrl) y luego ejecutar el código apropiado o hacer que el menú sea consciente tanto de la izquierda como de la derecha clics Pero ninguno de estos funcionó cuando intenté hacerlo.

Gracias por adelantado.

Respuestas a la pregunta(3)

Su respuesta a la pregunta