2009-03-10 11 views
0

Ce qui suit est l'utilisation du glisser-déposer bibliothèque d'ici:mise en page GWT-DND (drag and drop) question

http://code.google.com/p/gwt-dnd/

Lorsque vous placez un panneau absolu intérieur d'un panneau relatif, il semble désactiver la capacité de glisser. Un exemple simple:

private AbsolutePanel leftPanelTree = new AbsolutePanel(); 
    private HorizontalPanel drawingAppPanel = new HorizontalPanel(); 
    private VerticalPanel leftPanel = new VerticalPanel(); 
    private VerticalPanel rightPanel = new VerticalPanel(); 
    private Label rightSideFiller = new Label("Right Side"); 
    private Label leftSideFiller = new Label("Left Side"); 
    private Image newImage = new Image("images/link.gif"); 
    private PickupDragController newDragController = 
     new PickupDragController(leftPanelTree, true); 

     public DrawingApplication() { 
       initWidget(drawingAppPanel); 

       newDragController.makeDraggable(newImage); 
       leftPanelTree.setWidth("300px"); 
       leftPanelTree.setHeight("200px"); 
       leftPanelTree.addStyleName("panelBorderTest"); 
       leftPanelTree.add(newImage, 1, 1); 

       drawingAppPanel.setWidth("100%"); 
       drawingAppPanel.setHeight("100%"); 
       drawingAppPanel.setBorderWidth(2); 

       drawingAppPanel.add(leftPanel); 
       drawingAppPanel.add(rightPanel); 

       leftPanel.setBorderWidth(2); 
       leftPanel.setHeight("100%"); 
       leftPanel.setWidth("100%"); 
       leftPanel.add(leftSideFiller); 
       //leftPanel.add(leftPanelTree); 

       rightPanel.add(rightSideFiller); 
     } 

Si, cependant, j'ajouter l'image à RootPanel (et changer le panneau limite en conséquence) ou ajouter le panneau absolu au RootPanel directement puis faites glisser la capacité fonctionne. Est-ce que j'ai râté quelque chose?

Répondre

2

Le problème n'était pas dans mon code après tout, il y a un problème documenté avec l'appel de RootPanel.get(). Clear(); ce qui fait que cette bibliothèque ne fonctionne pratiquement pas. Il y a une solution disponible sous ce numéro ici:

http://code.google.com/p/gwt-dnd/issues/detail?id=55

mais il n'a pas été facile à trouver. Espérons que cela sera corrigé dans une future version s'il y en a une.