Сегодня удалось продуктивно поработать и завернуть долго тянущиеся доработки.

Вообще-то, формально, я переделываю главный экран, чтобы выводилось не просто 3 последних Плота. А то  реально неудобно пользоваться — я хочу сделать что-то типа списка заметок в Evernote, только вместо заметок плоты.

Редактирование во внешнем  окне, формально, у меня давно сделано, но как это обычно бывает, когда я начал разбираться, выяснилось, что много не доделано.

GoldFish

Пришлось привести логику в порядок:сделал выбранный нодшейп независимым в рамках плота (раньше выбранный нодшейп был всего 1 в рамках всей программы).

Конечно же, исправил парочку ошибок.

Добавил навигацию по плотам (в том числе возможность открыть в новом окне) и нормальный поиск (в выпадающем списке внизу).

GoldFish
Также добавил синхронизацию нодшейпов в плотах (то есть, полноценное клонирование плота). То, что раньше называлось клонированием, фактически было копированием.

То есть, если раньше я копировал плот, но естественно создавалась копии всех нодшейпов и линк шейпов, но дальнейшей синхронизации не проводилось.

Теперь же я сделал, что в ноде, привязанном к плоту, в контент записывается массив id нодов, представленных на плоте.

При добавлении \ удалении нодшейпы на каждом ноде синхронизируются с этим списком.

Это важно, потому что теперь можно реально представлять одни и те же данные в разном виде: в виде графа и в виде дерева (раньше это полноценно работало только с нод шейпами).

Естественно, возможность простого копирования я тоже оставил.

В общем: как видите, сделано немало и эти доработки существенно улучшили функционал программы.

PS Все непонятные слова из данной статьи вы можете посмотреть в глоссарии.