Как получить выбранный NSMenuItem из подменю?
У меня есть API, который позволяет пользователям создавать всплывающие меню с подменю, и у меня возникают проблемы с обнаружением выбранного элемента, когда пользователь нажимает на параметр, который принадлежит подменю.
Итак, отображение и "конструкция" всплывающего меню правильная и работает нормально. Начиная с NSMenu, я добавляю несколько NSMenuItems, затем для некоторых NSMenuItems я добавляю новое NSMenu с еще несколькими NSMenuItems.
Проблема начинается, когда я нажимаю на элемент, который принадлежит подменю, выбранный элемент, который я получаю, всегда равен нулю. Работает нормально для главного меню. Вот как я показываю меню:
NSRect frame = NSMakeRect(mp.origin.x + 10, mp.origin.y + 10, 1, 1);
NSPopUpButtonCell *cell = [[NSPopUpButtonCell alloc] initTextCell: @"" pullsDown: NO];
[cell setAutoenablesItems: NO];
[cell setAltersStateOfSelectedItem: NO];
[cell setMenu: mainMenu];
[cell selectItem: Nil];
[cell performClickWithFrame: frame inView: [window initialFirstResponder]];
NSMenuItem *xpto = [cell selectedItem];