Я пытаюсь интегрировать поддержку тачпада с помощью приложения SDL.Как создать NSTouchBar из объекта NSWindow?
Я пошел в объектный код c SDL и взломал непосредственно в код SDLView и получил рабочую панель, но теперь я хочу получить ту же функциональность с библиотекой SDL2. SDL предоставляет объект NSWindow, который он создает, и я думаю, что я могу создать объект-ответчик с makeTouchBar и makeItemForIdentifier, но я не знаю, как «прикрепить» его к окну. Я думаю, что это будет «цепочка ответчиков», но я не знаю точно, что это значит или как это сделать.
Я попытался создать следующее и попробовал несколько разных комбинаций setNextResponder в окне, но не может показаться, что вы правильно определили комбинацию, чтобы вызвать makeTouchBar, но я нахожусь в правильном шаре, поскольку он работает когда я помещаю эти методы непосредственно в представление.
@interface MyTouchbarResponder : NSResponder
- (id)init;
@property(strong, readonly) NSTouchBar *touchBar;
- (NSTouchBar *)makeTouchBar;
- (nullable NSTouchBarItem *)touchBar:(NSTouchBar *)touchBar makeItemForIdentifier:(NSTouchBarItemIdentifier)identifier;
@end
@implementation MyTouchbarResponder
- (id)init
{
[super init];
}
- (NSTouchBar *)makeTouchBar
{
...stuff...
}
- (nullable NSTouchBarItem *)touchBar:(NSTouchBar *)touchBar makeItemForIdentifier:(NSTouchBarItemIdentifier)identifier
{
...stuff...
}
@end
спасибо.
Спасибо. У меня нет контроля над окнами или классами просмотра. https://github.com/spurious/SDL-mirror/blob/master/src/video/cocoa/SDL_cocoawindow.m#L56 Все, что я получаю, является дескриптором объекта NSWindow. – xaxxon