1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-08 17:45:24 +02:00

can't assume workbench anymore

This commit is contained in:
David McKnight 2006-04-25 00:16:33 +00:00
parent a6ecbb2739
commit 0b1a0edb5a
6 changed files with 65 additions and 9 deletions

View file

@ -156,13 +156,19 @@ public class RSEFileStoreRemoteFileWrapper extends FileStore implements IFileSto
*/ */
if (_remoteFile.getName().equals(".project")) if (_remoteFile.getName().equals(".project"))
{ {
try try
{ {
// only temp file has contents // only temp file has contents
file = (IFile)UniversalFileTransferUtility.getTempFileFor(_remoteFile); file = (IFile)UniversalFileTransferUtility.getTempFileFor(_remoteFile);
if (file == null || !file.exists())
{
file.create(null, true, monitor);
}
} }
catch (Exception e) catch (Exception e)
{ {
e.printStackTrace();
} }
} }
if (file == null || !file.exists()) if (file == null || !file.exists())

View file

@ -93,7 +93,13 @@ public class RSEFileSystem extends FileSystem
IRemoteFileSubSystem ss = store.getRemoteFileSubSystem(); IRemoteFileSubSystem ss = store.getRemoteFileSubSystem();
if (!ss.isConnected()) if (!ss.isConnected())
{ {
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); Shell shell = null;
if (PlatformUI.isWorkbenchRunning())
{
shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
}
try try
{ {
ss.connect(shell); ss.connect(shell);
@ -121,8 +127,12 @@ public class RSEFileSystem extends FileSystem
Shell shell = null; Shell shell = null;
try try
{ {
shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(); //if (PlatformUI.isWorkbenchRunning())
//shell = RSEUIPlugin.getActiveWorkbenchShell(); {
//shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
shell = RSEUIPlugin.getActiveWorkbenchShell();
}
} }
catch (Exception e) catch (Exception e)
{ {

View file

@ -59,6 +59,7 @@ import org.eclipse.rse.ui.dialogs.SystemRenameSingleDialog;
import org.eclipse.rse.ui.messages.SystemMessageDialog; import org.eclipse.rse.ui.messages.SystemMessageDialog;
import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.PlatformUI;
/** /**
@ -137,10 +138,18 @@ public class UniversalFileTransferUtility
srcFS.download(srcFileOrFolder, tempFile, SystemEncodingUtil.ENCODING_UTF_8, monitor); srcFS.download(srcFileOrFolder, tempFile, SystemEncodingUtil.ENCODING_UTF_8, monitor);
if (!tempFile.exists() && !tempFile.isSynchronized(IResource.DEPTH_ZERO)) if (!tempFile.exists() && !tempFile.isSynchronized(IResource.DEPTH_ZERO))
{
// eclipse doesn't like this if the resource appears to be from another project
try
{ {
//tempFile.getWorkspace().getRoot().refreshLocal(IResource.DEPTH_INFINITE, monitor); //tempFile.getWorkspace().getRoot().refreshLocal(IResource.DEPTH_INFINITE, monitor);
tempFile.refreshLocal(IResource.DEPTH_ZERO, null/*monitor*/); tempFile.refreshLocal(IResource.DEPTH_ZERO, null/*monitor*/);
} }
catch (Exception e)
{
}
}
if (tempFile.exists()) if (tempFile.exists())
{ {
// if the file is virtual, set read only if necessary // if the file is virtual, set read only if necessary
@ -376,9 +385,12 @@ public class UniversalFileTransferUtility
{ {
// refresh temp file in project // refresh temp file in project
try try
{
if (PlatformUI.isWorkbenchRunning())
{ {
tempFile.refreshLocal(IResource.DEPTH_ONE, monitor); tempFile.refreshLocal(IResource.DEPTH_ONE, monitor);
} }
}
catch (CoreException e) catch (CoreException e)
{ {
e.printStackTrace(); e.printStackTrace();

View file

@ -35,6 +35,7 @@ import org.eclipse.jface.viewers.DecoratingLabelProvider;
import org.eclipse.jface.viewers.DoubleClickEvent; import org.eclipse.jface.viewers.DoubleClickEvent;
import org.eclipse.jface.viewers.IBasicPropertyConstants; import org.eclipse.jface.viewers.IBasicPropertyConstants;
import org.eclipse.jface.viewers.IDoubleClickListener; import org.eclipse.jface.viewers.IDoubleClickListener;
import org.eclipse.jface.viewers.ILabelDecorator;
import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.ISelectionChangedListener; import org.eclipse.jface.viewers.ISelectionChangedListener;
import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.jface.viewers.ISelectionProvider;
@ -121,8 +122,10 @@ import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Tree; import org.eclipse.swt.widgets.Tree;
import org.eclipse.swt.widgets.TreeItem; import org.eclipse.swt.widgets.TreeItem;
import org.eclipse.swt.widgets.Widget; import org.eclipse.swt.widgets.Widget;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPart; import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.dialogs.PropertyDialogAction; import org.eclipse.ui.dialogs.PropertyDialogAction;
import org.eclipse.ui.part.EditorInputTransfer; import org.eclipse.ui.part.EditorInputTransfer;
import org.eclipse.ui.part.PluginTransfer; import org.eclipse.ui.part.PluginTransfer;
@ -358,7 +361,13 @@ public class SystemView extends TreeViewer implements ISystemTree,
*/ */
public void setLabelAndContentProvider(SystemViewLabelAndContentProvider lcProvider) public void setLabelAndContentProvider(SystemViewLabelAndContentProvider lcProvider)
{ {
setLabelProvider(new DecoratingLabelProvider(lcProvider, RSEUIPlugin.getDefault().getWorkbench().getDecoratorManager().getLabelDecorator())); ILabelDecorator decorator = null;
if (PlatformUI.isWorkbenchRunning())
{
IWorkbench wb = PlatformUI.getWorkbench();
decorator = wb.getDecoratorManager().getLabelDecorator();
}
setLabelProvider(new DecoratingLabelProvider(lcProvider, decorator));
setContentProvider(lcProvider); setContentProvider(lcProvider);
} }

View file

@ -35,6 +35,7 @@ import org.eclipse.jface.viewers.DecoratingLabelProvider;
import org.eclipse.jface.viewers.DoubleClickEvent; import org.eclipse.jface.viewers.DoubleClickEvent;
import org.eclipse.jface.viewers.IBasicPropertyConstants; import org.eclipse.jface.viewers.IBasicPropertyConstants;
import org.eclipse.jface.viewers.IDoubleClickListener; import org.eclipse.jface.viewers.IDoubleClickListener;
import org.eclipse.jface.viewers.ILabelDecorator;
import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.ISelectionChangedListener; import org.eclipse.jface.viewers.ISelectionChangedListener;
import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.jface.viewers.ISelectionProvider;
@ -121,8 +122,10 @@ import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Tree; import org.eclipse.swt.widgets.Tree;
import org.eclipse.swt.widgets.TreeItem; import org.eclipse.swt.widgets.TreeItem;
import org.eclipse.swt.widgets.Widget; import org.eclipse.swt.widgets.Widget;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPart; import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.dialogs.PropertyDialogAction; import org.eclipse.ui.dialogs.PropertyDialogAction;
import org.eclipse.ui.part.EditorInputTransfer; import org.eclipse.ui.part.EditorInputTransfer;
import org.eclipse.ui.part.PluginTransfer; import org.eclipse.ui.part.PluginTransfer;
@ -358,7 +361,13 @@ public class SystemView extends TreeViewer implements ISystemTree,
*/ */
public void setLabelAndContentProvider(SystemViewLabelAndContentProvider lcProvider) public void setLabelAndContentProvider(SystemViewLabelAndContentProvider lcProvider)
{ {
setLabelProvider(new DecoratingLabelProvider(lcProvider, RSEUIPlugin.getDefault().getWorkbench().getDecoratorManager().getLabelDecorator())); ILabelDecorator decorator = null;
if (PlatformUI.isWorkbenchRunning())
{
IWorkbench wb = PlatformUI.getWorkbench();
decorator = wb.getDecoratorManager().getLabelDecorator();
}
setLabelProvider(new DecoratingLabelProvider(lcProvider, decorator));
setContentProvider(lcProvider); setContentProvider(lcProvider);
} }

View file

@ -1915,7 +1915,17 @@ public class SystemRegistry implements ISystemRegistry, ISystemModelChangeEvents
{ {
if (clipboard == null) if (clipboard == null)
{ {
clipboard = new Clipboard(getShell().getDisplay()); Display display = null;
Shell shell = getShell();
if (shell == null)
{
display = Display.getDefault();
}
else
{
display = shell.getDisplay();
}
clipboard = new Clipboard(display);
} }
return clipboard; return clipboard;