Проблемы с AppScript с типами текста Какао NSString и AppleScript? - PullRequest
2 голосов
/ 08 декабря 2011

В одном из моих приложений я добавил несколько новых свойств в класс document стандартного пакета AppleScript. Некоторые из этих свойств имеют тип text, другие имеют тип boolean. Я написал файл "sdef" и добавил его к ресурсам моего приложения.

Но когда я запускаю приложение, в консоли появляются такие сообщения:

.sdef предупреждение для типа «текст» атрибут «заголовок» класса «окно» в Suite 'Standard Suite': ссылки на имена AppleScript могут не работать для это свойство, поскольку его тип не является производным от NSString.

И когда я на самом деле пытаюсь получить значение из такого нового свойства с типом text из AppleScript, произойдет сбой. Вызывается правильный метод в моем приложении, и он возвращает правильное значение как NSString, но AppleScript возвращает с ошибкой. В консоли снова появляется сообщение:

Ошибка при возврате результата команды сценария: результат объект ... "запрошенное значение NSString" ... не может быть преобразован в дескриптор события Apple типа «текст». Этот экземпляр класса '__NSCFString' вернул ноль при отправке -objectSpecifier (не так ли переопределено?) и нет никакого принудительного типа, объявленного для сценариев класс 'text'.

Что, вероятно, означает, что было невозможно преобразовать объект Cocoa NSString в объект AppleScript text.

Когда я пытаюсь получить значение из одного из новых логических свойств, оно работает просто отлично.

Что именно мне нужно сделать, чтобы преобразовать объект NSString в объект AppleScript text?

1 Ответ

0 голосов
/ 15 декабря 2013

Я подозреваю, что вам нужно привести текстовый параметр в строку NSString.

* 1003 т.е. *

Set sometextString to current application's NSString's stringwithTring:atext

Используйте это в своем методе

И чтобы вернуть его, вы делаете.

Return sometextString as text
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...