import gr.ebs.gss.client.clipboard.Clipboard;
import gr.ebs.gss.client.dnd.DnDFocusPanel;
+import gr.ebs.gss.client.dnd.DnDSimpleFocusPanel;
import gr.ebs.gss.client.rest.GetCommand;
import gr.ebs.gss.client.rest.RestException;
import gr.ebs.gss.client.rest.resource.FileResource;
if (context.selectedWidgets.isEmpty())
throw new VetoDragException();
- if(context.draggable != null){
- DnDFocusPanel toDrop = (DnDFocusPanel) context.draggable;
- //prevent drag and drop for trashed files and for unselected tree items
- if(toDrop.getFiles() != null && folders.isTrashItem(folders.getCurrent()))
- throw new VetoDragException();
- else if(toDrop.getItem() != null && !toDrop.getItem().equals(folders.getCurrent()))
- throw new VetoDragException();
- else if(toDrop.getItem() != null && !toDrop.getItem().isDraggable())
- throw new VetoDragException();
-
- }
+ if(context.draggable != null)
+ if(context.draggable instanceof DnDFocusPanel){
+ DnDFocusPanel toDrop = (DnDFocusPanel) context.draggable;
+ //prevent drag and drop for trashed files and for unselected tree items
+ if(toDrop.getFiles() != null && folders.isTrashItem(folders.getCurrent()))
+ throw new VetoDragException();
+ else if(toDrop.getItem() != null && !toDrop.getItem().equals(folders.getCurrent()))
+ throw new VetoDragException();
+ else if(toDrop.getItem() != null && !toDrop.getItem().isDraggable())
+ throw new VetoDragException();
+
+ }
+ else if(context.draggable instanceof DnDSimpleFocusPanel){
+ DnDSimpleFocusPanel toDrop = (DnDSimpleFocusPanel) context.draggable;
+ //prevent drag and drop for trashed files and for unselected tree items
+ if(toDrop.getFiles() != null && folders.isTrashItem(folders.getCurrent()))
+ throw new VetoDragException();
+ }
}
@Override
AbsolutePanel container = new AbsolutePanel();
DOM.setStyleAttribute(container.getElement(), "overflow", "visible");
for (Iterator iterator = aContext.selectedWidgets.iterator(); iterator.hasNext();) {
+ HTML html = null;
Widget widget = (Widget) iterator.next();
- DnDFocusPanel book = (DnDFocusPanel) widget;
- HTML html = book.cloneHTML();
+ if(widget instanceof DnDFocusPanel){
+ DnDFocusPanel book = (DnDFocusPanel) widget;
+ html = book.cloneHTML();
+ }
+ else if(widget instanceof DnDSimpleFocusPanel){
+ DnDSimpleFocusPanel book = (DnDSimpleFocusPanel) widget;
+ html = book.cloneHTML();
+ }
if(html == null)
container.add(new Label("Drag ME"));
else
Cookies.setCookie(cookie, "", null, domain, path, false);
}
-
-
}
@Override
public void onDrop(DragContext context) {
super.onDrop(context);
- DnDFocusPanel toDrop = (DnDFocusPanel) context.draggable;
- if (toDrop.getItem() != null) {
- if (toDrop.getItem().getUserObject() != null && toDrop.getItem().getUserObject() instanceof FolderResource) {
- FolderResource folderToDrop = (FolderResource) toDrop.getItem().getUserObject();
+ if(context.draggable instanceof DnDFocusPanel){
+ DnDFocusPanel toDrop = (DnDFocusPanel) context.draggable;
+ if (toDrop.getItem() != null)
+ if (toDrop.getItem().getUserObject() != null && toDrop.getItem().getUserObject() instanceof FolderResource) {
+ FolderResource folderToDrop = (FolderResource) toDrop.getItem().getUserObject();
+ FolderResource initialFolder = null;
+ if (nodeHolder.getItem().getUserObject() instanceof FolderResource)
+ initialFolder = (FolderResource) nodeHolder.getItem().getUserObject();
+ boolean othersShared = false;
+ if (GSS.get().getFolders().isOthersSharedItem(nodeHolder.getItem()))
+ othersShared = true;
+ DnDFolderPopupMenu popup = new DnDFolderPopupMenu(GSS.get().getFolders().getImages(), initialFolder, folderToDrop, othersShared);
+ int left = nodeHolder.getItem().getAbsoluteLeft() + 40;
+ int top = nodeHolder.getItem().getAbsoluteTop() + 20;
+ popup.setPopupPosition(left, top);
+ popup.show();
+ }
+ }
+ else if(context.draggable instanceof DnDSimpleFocusPanel){
+ DnDSimpleFocusPanel toDrop = (DnDSimpleFocusPanel) context.draggable;
+ if (toDrop.getFiles() != null) {
+ List<FileResource> folderToDrop = toDrop.getFiles();
FolderResource initialFolder = null;
- if (nodeHolder.getItem().getUserObject() instanceof FolderResource)
+ if (GSS.get().getFolders().isTrash(nodeHolder.getItem())) {
+ } else if (nodeHolder.getItem().getUserObject() instanceof FolderResource)
initialFolder = (FolderResource) nodeHolder.getItem().getUserObject();
boolean othersShared = false;
if (GSS.get().getFolders().isOthersSharedItem(nodeHolder.getItem()))
popup.setPopupPosition(left, top);
popup.show();
}
- } else if (toDrop.getFiles() != null) {
- List<FileResource> folderToDrop = toDrop.getFiles();
- FolderResource initialFolder = null;
- if (GSS.get().getFolders().isTrash(nodeHolder.getItem())) {
- } else if (nodeHolder.getItem().getUserObject() instanceof FolderResource)
- initialFolder = (FolderResource) nodeHolder.getItem().getUserObject();
- boolean othersShared = false;
- if (GSS.get().getFolders().isOthersSharedItem(nodeHolder.getItem()))
- othersShared = true;
- DnDFolderPopupMenu popup = new DnDFolderPopupMenu(GSS.get().getFolders().getImages(), initialFolder, folderToDrop, othersShared);
- int left = nodeHolder.getItem().getAbsoluteLeft() + 40;
- int top = nodeHolder.getItem().getAbsoluteTop() + 20;
- popup.setPopupPosition(left, top);
- popup.show();
}
}