Можно ли передать указатель на объект в операции перетаскивания?
Вот сценарий ...
У меня есть NSArray пользовательских объектов.В качестве аргумента мы скажем, что это список личных объектов.
Список привязан к NSTableView
через NSArrayController
.NSTableView
является источником перетаскивания, и у меня есть NSView
в качестве места назначения перетаскивания.
При реализации перетаскивания я могу легко получить имя текущего выбранного человека из NSArrayController
как NSString
в процессе перетаскивания и передать его получателю в NSView
.
Однако я хотел бы иметь возможность передавать указатель на объект person, чтобы получатель имел доступ ко всему объекту.
Проблема, как представляется, заключается в том, что операция перетаскивания создает новый объект.экземпляр объекта person и не делает ссылки на выбранный объект person, несмотря на реализацию необходимых методов в модели person.В результате я получаю объект person в месте назначения, он просто не заполняется данными из объекта.
В идеале я хочу указатель объекта, потому что NSView будет использовать ссылку на объект в порядкечто любые обновления самого объекта отражаются как в NSView
, так и в NSTableView
(и везде, где используется объект).
Возможно ли даже использовать ссылку на объект в режиме перетаскиванияоперации или мне нужно передать какую-то пользовательскую ссылку, которая является iVar объекта person, а затем выполнить поиск, как только он прибудет в пункт назначения?(Мне показалось бы немного архаичным, учитывая, сколько объектов ссылается на Obj-c).
Я понимаю, что цель может принять операцию перетаскивания извне приложения, но указание операции как локальной операции будетэто не так?
Я проверил документы Apple, но все еще не могу найти ответ.
Перетаскивание тем программирования
Руководство по программированию картона
Любая и вся помощь очень ценится.