Я использую pyobjc для добавления некоторых необходимых функциональных возможностей OSX к некоторому случайному программному обеспечению python. Мне нужно будет получить доступ к API-константам objc-land из python-land.Доступ к константам objc API и перечислениям из python
Пример таких констант лежит далеко внизу на странице NSRunningApplication, в частности три возможных значения NSApplicationActivationPolicy.
Для контекста текущая задача заключается в перечислении в настоящее время приложений, ориентированных на пользователя. Для этого, следующий код работает просто отлично:
from Foundation import *
from Cocoa import *
import objc
for runningApp in sorted(
NSWorkspace.sharedWorkspace().runningApplications(),
key=lambda x: x.localizedName()
):
if runningApp.activationPolicy() == 0:
# Do stuff
Но я предпочел бы не проверить с нуля (чтобы сделать его более удобным для чтения), ни жёстко фиктивное значение NSApplicationActivationPolicyRegular до нуля в моем собственном коде, когда он легко доступен в оригинальной библиотеке.
Как я могу получить доступ к таким константам objc из python через pyobjc?