NPAPI в MacOs дает мне CGrafPtr в структуре NPWindow, мне нужен WindowRef. Есть ли способ получить WindowRef от CGrafPtr?CGrafPtr to WindowRef
Спасибо!
NPAPI в MacOs дает мне CGrafPtr в структуре NPWindow, мне нужен WindowRef. Есть ли способ получить WindowRef от CGrafPtr?CGrafPtr to WindowRef
Спасибо!
NPAPI предоставляет вам CGrafPtr, если вы используете очень, очень устаревшую модель чертежа QuickDraw (с моделью событий Carbon). Написание нового плагина с использованием модели QuickDraw было бы ужасной идеей: Firefox 64-бит не поддерживает его, 64-битная версия Safari не поддерживает его, и Chrome на самом деле не поддерживает его (и скоро совсем не будет). Ваш плагин не будет работать для большинства пользователей.
Вместо этого вы должны использовать либо Core Animation (рисунок) + Cocoa (событие), либо CoreGraphics + Cocoa. В модели событий Cocoa есть намеренно, нет способа получить ссылку на окно браузера. Современные браузеры почти все запускают плагины в отдельном процессе, и вы не можете ссылаться на окна через процессы.
Короче говоря, если вы пытаетесь создать новый плагин NPAPI, который требует доступа к окну браузера, ваш дизайн неправильный.
Я использую код с сайта Mozilla, который, вероятно, очень старый. Можете ли вы указать мне на какой-то более новый пример? Какую целевую цель я должен использовать вместо окна? –
Отъезд FireBreath (http://firebreath.org). Даже если вы не используете фреймворк, на веб-сайте есть много хорошей информации. Однако на веб-сайте mozilla есть обновленная информация. Вам просто нужно найти это =] https://wiki.mozilla.org/NPAPI и https://developer.mozilla.org/en/Gecko_Plugin_API_Reference - это основные места документации. – taxilian
Я не знаю, что вы подразумеваете под «целью события»; Я бы предложил опубликовать новый вопрос с добавлением NPAPI с дополнительной информацией о том, что вы на самом деле пытаетесь выполнить, поскольку «какая цель я должна использовать» вполне может быть неправильным вопросом, так же как «как получить WindowRef из CGrafPtr «Это был неправильный вопрос. – smorgan