Мой любимый менеджер личной информации (PIM) всех времен — Claris Organizer (CO). CO была куплена (или лицензирована) компанией Palm и стала Palm Desktop (PD). Я использовал их исключительно на Macintosh, пока Mac OSX не прекратил поддержку программ Mac Classic PowerPC. С тех пор я очень медленно и крайне прерывисто стремился воссоздать CO/PD независимым от платформы, но соответствующим платформе способом.
Задача рекреации пошла по нескольким путям.
Первая задача — извлечь информацию из работающего Palm Desktop. Есть две попытки. Первый находится в AppleScript/PalmDesktop/ExportToXML.applescript. Это рукописный экстрактор. Второй — в DataModelling. Идея здесь состоит в том, чтобы создать программное обеспечение для извлечения данных, используя модель данных, содержащихся в PD. Здесь используется чистое серебро.
Вторая задача — извлечь ресурсы приложения PD, особенно информацию о декоре. Это содержится в MacResourceExtraction. Для этого использовалось несколько инструментов, но в настоящее время цель состоит в том, чтобы продолжать расширять класс mac-utils.
Третья задача — эмулировать возможности связывания PD с помощью URL-адресов приложений Mac OS и AppleScript. Это временное решение, позволяющее получить некоторые возможности до создания полноценного заменяющего приложения. Он содержится в отдельном репозитории COinJ_AppleScript. Существуют сценарии для помещения в буфер обмена/буфера копирования URL-адресов календаря, контактов, Evernote, Finder, Safari и почты.
Четвертая задача — это само приложение. Существует много кода Java, в котором есть примеры различных компонентов графического интерфейса с фиктивными обработчиками событий/действий.