В Haskell, как вы можете перетаскивать узел представления дерева между представлениями дерева в gtk2hs (Gtk3)?
Я пытался выяснить, как перетащить узел дерева (поддерживая его путь) между представлениями дерева в одном окне приложения GTK.
Если у меня есть следующее в TreeView...
- Один
- пункт 1А
- В
- пункт 1B
- Два
- пункт 2А
Как я могу перетащить "элемент 1A" в другой TreeView в том же окне, чтобы получить следующий TreeView...
- Один
- пункт 1А
Я пытался следовать ListDND.hs
пример в каталоге demos исходного кода gtk2hs (что очень полезно); однако, поскольку я использую gtk3, API-интерфейс достаточно изменился, чтобы он не казался полностью применимым.
Я видел ответ здесь: gtk2hs dnd объяснение
Я думал об использовании строки, поместив путь дерева и текст узла в кортеж, а затем вызвав show
на кортеж и передавая это как выбор в treeDragDestDragDataReceived
обратный звонок в DragDestIface
интерфейс... но я не могу заставить этот обратный вызов вызываться.
Я видел строку об ошибке Gtk в ListDND.hs
файл. Поэтому я попытался включить следующую строку в свой собственный код, но это не сработало:
tl <- targetListNew
treeViewEnableModelDragDest treeView tl []
...Куда treeView
мой источник сопротивления
Заранее благодарю за внимание.