protected IVisitor<Component, Component> getComponentFindingVisitor(String markupId) { return new ComponentFinder(markupId); }
/** * handles the event processing during dragging. */ @Override protected void respond(final AjaxRequestTarget target) { Component component = getComponent(); Request request; if (component != null && (request = component.getRequest()) != null) { EventType dragEventType = EventType.stringToType(request.getParameter(EventType.IDENTIFIER)); ComponentFinder visitor = new ComponentFinder(request.getParameter(DROPPED_COMPONENTID_IDENTIFIER)); component.getPage().visitChildren(visitor); if (component instanceof IDroppable) { IDroppable draggableComponent = (IDroppable)component; if (dragEventType == EventType.DROP) draggableComponent.onDrop(target, visitor.getFoundComponent(), new SpecialKeys(request)); else if (dragEventType == EventType.DROP_ACTIVATE) draggableComponent.onActivate(target, visitor.getFoundComponent(), new SpecialKeys(request)); else if (dragEventType == EventType.DROP_DEACTIVATE) draggableComponent.onDeactivate(target, visitor.getFoundComponent(), new SpecialKeys(request)); } if (dragEventType == EventType.DROP) onDrop(target, visitor.getFoundComponent(), new SpecialKeys(request)); else if (dragEventType == EventType.DROP_ACTIVATE) onActivate(target, visitor.getFoundComponent(), new SpecialKeys(request)); else if (dragEventType == EventType.DROP_DEACTIVATE) onDeactivate(target, visitor.getFoundComponent(), new SpecialKeys(request)); } }
@Override public void component(Component component, IVisit<Component> visit) { if (component.getMarkupId().equals(getMarkupId())) { visit.stop(component); } }
ComponentFinder visitor = new ComponentFinder(otherSortableId); component.getPage().visitChildren(visitor); Component otherSortable = visitor.getFoundComponent(); onReceived(target, sortedComponent, newPosition, (Sortable<?>)otherSortable); } catch (Exception e) {