private void handleRefresh() { final Set<IResource> roots= collectRoots(getResources()); WorkspaceModifyOperation op= new WorkspaceModifyOperation() { @Override public void execute(IProgressMonitor monitor) throws CoreException { try { monitor.beginTask(PackagesMessages.DragAdapter_refreshing, roots.size()); MultiStatus status= createMultiStatus(); Iterator<IResource> iter= roots.iterator(); while (iter.hasNext()) { IResource r= iter.next(); try { r.refreshLocal(IResource.DEPTH_ONE, new SubProgressMonitor(monitor, 1)); } catch (CoreException e) { status.add(e.getStatus()); } } if (!status.isOK()) { throw new CoreException(status); } } finally { monitor.done(); } } }; runOperation(op, true, false); }
private List getResources() { ISelection s= fProvider.getSelection(); if (!(s instanceof IStructuredSelection)) return null; return convertIntoResources((IStructuredSelection)s); }
public void dragSetData(DragSourceEvent event){ List elements= getResources(); if (elements == null || elements.size() == 0) { event.data= null; return; } event.data= getResourceLocations(elements); }
/* package */ void handleDropMove(DragSourceEvent event) { final List elements= getResources(); if (elements == null || elements.size() == 0) return; runOperation(op, true, false);
private void initDrag() { int ops= DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK; Transfer[] transfers= new Transfer[] { LocalSelectionTransfer.getInstance(), ResourceTransfer.getInstance(), FileTransfer.getInstance()}; TransferDragSourceListener[] dragListeners= new TransferDragSourceListener[] { new SelectionTransferDragAdapter(fViewer), new ResourceTransferDragAdapter(fViewer), new FileTransferDragAdapter(fViewer) }; fViewer.addDragSupport(ops, transfers, new JdtViewerDragAdapter(fViewer, dragListeners)); }
@Override public void dragFinished(DragSourceEvent event) { if (!event.doit) return; if (event.detail == DND.DROP_MOVE) { // http://bugs.eclipse.org/bugs/show_bug.cgi?id=30543 // handleDropMove(event); } else if (event.detail == DND.DROP_TARGET_MOVE) { handleRefresh(); } }
public void dragStart(DragSourceEvent event) { event.doit= isDragable(fProvider.getSelection()); }
/* package */ void handleDropMove() { final List<IResource> elements= getResources(); if (elements == null || elements.size() == 0) return; runOperation(op, true, false);
public JdtViewerDragSupport(StructuredViewer viewer) { fViewer= viewer; fDragAdapter= new JdtViewerDragAdapter(fViewer); fDragAdapter.addDragSourceListener(new SelectionTransferDragAdapter(fViewer)); fDragAdapter.addDragSourceListener(new EditorInputTransferDragAdapter(viewer)); fDragAdapter.addDragSourceListener(new ResourceTransferDragAdapter(fViewer)); fDragAdapter.addDragSourceListener(new FileTransferDragAdapter(fViewer)); fStarted= false; }
@Override public void dragFinished(DragSourceEvent event) { if (!event.doit) return; if (event.detail == DND.DROP_MOVE) { // http://bugs.eclipse.org/bugs/show_bug.cgi?id=30543 // handleDropMove(event); } else if (event.detail == DND.DROP_TARGET_MOVE) { handleRefresh(); } }
@Override public void dragStart(DragSourceEvent event) { event.doit= isDragable(fProvider.getSelection()); }
private void handleRefresh() { final Set<IResource> roots= collectRoots(getResources()); WorkspaceModifyOperation op= new WorkspaceModifyOperation() { @Override public void execute(IProgressMonitor monitor) throws CoreException { try { monitor.beginTask(PackagesMessages.DragAdapter_refreshing, roots.size()); MultiStatus status= createMultiStatus(); Iterator<IResource> iter= roots.iterator(); while (iter.hasNext()) { IResource r= iter.next(); try { r.refreshLocal(IResource.DEPTH_ONE, new SubProgressMonitor(monitor, 1)); } catch (CoreException e) { status.add(e.getStatus()); } } if (!status.isOK()) { throw new CoreException(status); } } finally { monitor.done(); } } }; runOperation(op, true, false); }
@Override public void dragSetData(DragSourceEvent event){ List<IResource> elements= getResources(); if (elements == null || elements.size() == 0) { event.data= null; return; } event.data= getResourceLocations(elements); }
/* package */ void handleDropMove() { final List<IResource> elements= getResources(); if (elements == null || elements.size() == 0) return; runOperation(op, true, false);
public JdtViewerDragSupport(StructuredViewer viewer) { fViewer= viewer; fDragAdapter= new JdtViewerDragAdapter(fViewer); fDragAdapter.addDragSourceListener(new SelectionTransferDragAdapter(fViewer)); fDragAdapter.addDragSourceListener(new EditorInputTransferDragAdapter(viewer)); fDragAdapter.addDragSourceListener(new ResourceTransferDragAdapter(fViewer)); fDragAdapter.addDragSourceListener(new FileTransferDragAdapter(fViewer)); fStarted= false; }
private List<IResource> getResources() { ISelection s= fProvider.getSelection(); if (!(s instanceof IStructuredSelection)) return null; return convertIntoResources((IStructuredSelection)s); }
public void dragFinished(DragSourceEvent event) { if (!event.doit) return; if (event.detail == DND.DROP_MOVE) { // http://bugs.eclipse.org/bugs/show_bug.cgi?id=30543 // handleDropMove(event); } else if (event.detail == DND.DROP_NONE || event.detail == DND.DROP_TARGET_MOVE) { handleRefresh(event); } }
@Override public void dragStart(DragSourceEvent event) { event.doit= isDragable(fProvider.getSelection()); }
private void handleRefresh(DragSourceEvent event) { final Set roots= collectRoots(getResources()); WorkspaceModifyOperation op= new WorkspaceModifyOperation() { public void execute(IProgressMonitor monitor) throws CoreException { try { monitor.beginTask(PackagesMessages.DragAdapter_refreshing, roots.size()); MultiStatus status= createMultiStatus(); Iterator iter= roots.iterator(); while (iter.hasNext()) { IResource r= (IResource)iter.next(); try { r.refreshLocal(IResource.DEPTH_ONE, new SubProgressMonitor(monitor, 1)); } catch (CoreException e) { status.add(e.getStatus()); } } if (!status.isOK()) { throw new CoreException(status); } } finally { monitor.done(); } } }; runOperation(op, true, false); }
@Override public void dragSetData(DragSourceEvent event){ List<IResource> elements= getResources(); if (elements == null || elements.size() == 0) { event.data= null; return; } event.data= getResourceLocations(elements); }