LOR оказался хорошей целью для изучения Cocoa Bindings :)
В коде нет ни одной строчки привязки гуя к модели, все выгребается через биндинги. Кроме WebView, который биндингов не имеет, его пришлось сабклассить (добавил биндинг на html содержимое фрейма).
Заодно разобрался с потоками. Потоки в Cocoa сделаны *очень* удобно. Вызовы между потоками тоже проблем не представляют.
Разбираю ЛОР через DOM модель (очищенную в Tidy), через XPath. libxslt (на нем основан xslt-функционал Cocoa) парсить это отказался, саблотрон встраивать желания не было. В некоторых местах - через регулярки.
Очень порадовала простота создания древовидной модели, на Qt это занимает намного больше времени и сил. В Cocoa - это 2 строчки: откуда брать корневые элементы, и в каком поле у них наследники. Биндинги рулят.
Скрин в PNG: http://l0st.ws/f/56/Screenshot%202008-09-26%2013h%2004m%2056s.png
Сырцы и бинарь будут доступны в ближайшее время.
>>> Просмотр (1280x800, 275 Kb)