2012-10-02 6 views
3

우리는 GWT를 사용하고 있으며 우리는 두 개의 드래그 앤 드롭 트리 그리드를 만들어야합니다. 각 트리는 부모와 자식을 포함합니다 (현재 최대 2 단계). 여기에 우리가 할 수 있어야합니다 내용은 다음과 같습니다GWT 트리 내 및 트리 그리드 사이의 드래그 앤 드롭

사용 사례

  • 드래그 다른 하나의 트리 그리드에서 부모.
  • 부모 1을 부모 2로 드래그하십시오 (1은 2의 자식이되고 1의 자식은 2의 자식이됩니다) -> 묻지 마십시오 : D
  • 한 부모로부터 다른 자식으로 트리에서 아이 - 최고 수준 - 같은 트리 그리드)
  • 드래그 같은 트리 그리드 내에서 레벨을 위로하는 아이 (자녀는 부모)
  • 드래그 두 가지 옵션
    1 다른 나무 격자에 아이가 될 것이다 1은 트리 2의 부모가됩니다.
    2 - 부모 - 트리 1의 자식은 트리 그리드 2의 부모 자식이됩니다.

아직 이해가되지 않는 경우 전체 컨텍스트가 아직 없으므로 모두 알고 있습니다.

문제

우리는 같은 나무 격자에 드래그 할 수 있습니다. 셀을 드래그하고자하는 행이 숨겨져있는 경우 스크롤을 true로 설정하여 사용자가 드래그하여 스크롤 할 때 그리드가 스크롤되도록합니다. 그래서 같은 뭔가 : 스크롤 그리드 내부에 항상 객체를 유지하려고하므로

private void setDraggableOptions(DragAndDropColumn<?, ?> column) { 
    // retrieve draggableOptions on the column 
    DraggableOptions draggableOptions = column.getDraggableOptions(); 
    draggableOptions.setScroll(true); 
    // use template to construct the helper. The content of the div will be set 
    // after 
    draggableOptions.setHelper(HelperType.CLONE); 
    // opacity of the helper 
    draggableOptions.setOpacity((float) 0.8); 
    // cursor to use during the drag operation 
    draggableOptions.setCursor(Cursor.MOVE); 
    // set the revert option 
    draggableOptions.setRevert(RevertOption.ON_INVALID_DROP); 
    // prevents dragging when user click on the category drop-down list 
    draggableOptions.setCancel("select"); 
    column.setDraggableOptions(draggableOptions); 
} 

지금 문제는, 스크롤 트리 그리드를 설정, 사용자가 두 번째 트리에 개체를 드래그 할 수 없을 것입니다 .

우리는 gwtquery-plugins

는이 문제를 해결하기 위해 어떤 아이디어가 사용하고있는? 대단히 감사드립니다.

답변

관련 문제