1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-03 23:25:26 +02:00

double-click file download using background job

This commit is contained in:
David McKnight 2006-08-23 16:55:36 +00:00
parent 5c5121a9ed
commit cb9c15e29a
4 changed files with 23 additions and 3 deletions

View file

@ -3,10 +3,12 @@
*/
package org.eclipse.rse.files.ui.view;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.rse.files.ui.resources.SystemUniversalTempFileListener;
import org.eclipse.rse.ui.view.ISystemEditableRemoteObject;
import org.eclipse.swt.widgets.Display;
@ -47,7 +49,11 @@ public class DownloadJob extends Job
{
try
{
_editable.download(monitor);
IFile localFile = _editable.getLocalResource();
SystemUniversalTempFileListener listener = SystemUniversalTempFileListener.getListener();
listener.addIgnoreFile(localFile);
_editable.download(monitor);
listener.removeIgnoreFile(localFile);
}
catch (Exception e)
{

View file

@ -131,6 +131,7 @@ import org.eclipse.ui.ISharedImages;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.progress.IElementCollector;
import org.eclipse.ui.progress.UIJob;
import org.eclipse.ui.views.properties.IPropertyDescriptor;
import org.eclipse.ui.views.properties.PropertyDescriptor;
@ -2735,7 +2736,8 @@ public class SystemViewRemoteFileAdapter
{
if (editable.checkOpenInEditor() != ISystemEditableRemoteObject.OPEN_IN_SAME_PERSPECTIVE)
{
editable.open(getShell());
DownloadJob oJob = new DownloadJob(editable);
oJob.schedule();
}
else
{
@ -2746,6 +2748,8 @@ public class SystemViewRemoteFileAdapter
catch (Exception e)
{
}
}
else if (remoteFile.isDirectory())
{
@ -2761,7 +2765,7 @@ public class SystemViewRemoteFileAdapter
return false;
}
}
public boolean canEdit(Object element)
{
IRemoteFile remoteFile = (IRemoteFile) element;

View file

@ -107,6 +107,15 @@ public interface ISystemEditableRemoteObject
*/
public void open(Shell shell, boolean readOnly);
/**
* Open in editor
*/
public void open(IProgressMonitor monitor);
/**
* Open in editor
*/
public void open(IProgressMonitor monitor, boolean readOnly);
/**
* Set local resource properties

View file

@ -288,6 +288,7 @@ public class SystemViewDataDragAdapter extends DragSourceAdapter
{
try
{
Shell shell = event.display.getActiveShell();
if (editable.download(shell))
{