Расшифровка целых и других масок в какао - PullRequest
8 голосов
/ 24 июля 2010

Какао имеет множество целочисленных масок и кодов. Например, NSCommandKeyMask или NSF1FunctionKey, которые четко определены и задокументированы в заголовках.

Однако некоторые из них могут быть архаичными, и при доступе к атрибутам специальных возможностей, например, чтобы получить глиф (AXMenuItemCmdGlyph), вам дается целое число, например 111, которое представляет F1 (0xf704), или 112, которое представляет F2 (hex: 0xf705).

Есть ли простой способ иметь дело с масками и кодами? Возможно, тот, который способен конвертировать 111 в соответствующий гекс Unicode 0xf704? Я имею в виду, что NSEvent.h отображает NSF1FunctionKey в 0xf704, но есть ли отображение для 111 в NSF1FunctionKey или 0xf704?

1 Ответ

1 голос
/ 24 июля 2010

Если вы хотите использовать символ Unicode для эквивалента ключа пункта меню, а не глиф для него, попробуйте получить атрибут kAXMenuItemCmdCharAttribute вместо kAXMenuItemCmdGlyphAttribute.

...