Обнаружение целевого узла перетаскивания в дереве sencha ext-gwt 3.0

Контекст: sencha ext-gwt 3.0 (beta3). Я использую dnd, чтобы позволить пользователю переупорядочивать дерево по одному элементу за раз. Я могу легко получить перетаскиваемый элемент, но не нашел, как получить цель перетаскивания. Вот мой код:

final TreeDropTarget<IMyModel> target = new TreeDropTarget<IMyModel>(mytree);
target.setAllowSelfAsSource(true);
target.setAllowDropOnLeaf(true);
target.setFeedback(DND.Feedback.BOTH);
target.addDropHandler(new DndDropEvent.DndDropHandler()
{
  @Override
  public void onDrop(final DndDropEvent event)
  {
    IMyModel dragged = mytree.getSelectionModel().getSelectedItem();

    // TODO get the drop target element!
  }
});

person nakhli    schedule 06.03.2012    source источник


Ответы (2)


Вот что сработало для меня:

target.addDropHandler(new DndDropHandler() {
    @Override
    public void onDrop(DndDropEvent event) {
        final TreeNode<MyModel> item = source.getWidget().findNode(event.getDragEndEvent().getNativeEvent().getEventTarget().<Element> cast());
        MyModel newParent = item.getModel();
    }
}); 
person Leah Buckley    schedule 30.05.2012

Обратитесь к примерам бета-версии GXT 3.0, доступным здесь

person Ganesh Kumar    schedule 13.03.2012
comment
В примере не показано, как обнаружить цель сброса, не так ли? - person nakhli; 13.03.2012
comment
он имеет перетаскивание, но не показывает, как определить целевой узел перетаскивания из того, что я вижу. Можете ли вы предложить код? - person nakhli; 13.03.2012