Детекторы данных в какао - PullRequest
2 голосов
/ 09 января 2010

Я хочу добавить детектор данных в NSTextField / NSTextView, как в Mail (например, дата, электронная почта, URL и т. Д.).

У кого-нибудь есть идеи, как это сделать? Я думаю, что видел это в исходном коде TextEdit, но когда я проверял, это была версия 2005 года, и я не могу найти новый исходный код.

Alex

Ответы [ 2 ]

3 голосов
/ 08 июля 2010

В Snow Leopard теперь вы можете включить детекторы данных в NSTextView, просто установив соответствующий флажок в Инспекторе IB.

2 голосов
/ 10 января 2010

Вам необходимо установить выход форматера объекта. Встроенные средства форматирования: NSDateFormatter и NSNumberFormatter .

alt text

Вы можете определить собственные средства форматирования, расширив класс NSFormatter . В Aaron Hillegass отлично ' Программирование какао для Max OS X ' есть глава по созданию NSFormatters.

Чтобы определить даты, URL, адрес электронной почты и т. Д. В теле некоторого текста, вы можете использовать Latent Semantic Mapping Framework . Это открытый API Leopard, но для него не так много документации. Существует также инструмент командной строки под названием lsm , который позволит вам протестировать любые пользовательские экстракторы, которые вы хотите использовать. Это C API, и, насколько я знаю, он не интегрирован в Какао, поэтому вам нужно подключить его самостоятельно

...