mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-19 14:15:50 +02:00
[183772] need to pass existing names into the file wizard
This commit is contained in:
parent
275d4249da
commit
bf910f21f8
2 changed files with 80 additions and 3 deletions
|
@ -16,11 +16,15 @@
|
||||||
|
|
||||||
package org.eclipse.rse.internal.files.ui.wizards;
|
package org.eclipse.rse.internal.files.ui.wizards;
|
||||||
|
|
||||||
|
import java.util.Vector;
|
||||||
|
|
||||||
|
import org.eclipse.core.runtime.NullProgressMonitor;
|
||||||
import org.eclipse.jface.wizard.Wizard;
|
import org.eclipse.jface.wizard.Wizard;
|
||||||
import org.eclipse.rse.internal.files.ui.FileResources;
|
import org.eclipse.rse.internal.files.ui.FileResources;
|
||||||
import org.eclipse.rse.services.clientserver.messages.SystemMessage;
|
import org.eclipse.rse.services.clientserver.messages.SystemMessage;
|
||||||
import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile;
|
import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile;
|
||||||
import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFileSubSystem;
|
import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFileSubSystem;
|
||||||
|
import org.eclipse.rse.subsystems.files.core.subsystems.RemoteFileChildrenContentsType;
|
||||||
import org.eclipse.rse.ui.ISystemMessages;
|
import org.eclipse.rse.ui.ISystemMessages;
|
||||||
import org.eclipse.rse.ui.RSEUIPlugin;
|
import org.eclipse.rse.ui.RSEUIPlugin;
|
||||||
import org.eclipse.rse.ui.SystemWidgetHelpers;
|
import org.eclipse.rse.ui.SystemWidgetHelpers;
|
||||||
|
@ -123,7 +127,42 @@ public class SystemNewFileWizardMainPage
|
||||||
protected void initializeInput()
|
protected void initializeInput()
|
||||||
{
|
{
|
||||||
connectionName.setEditable(false);
|
connectionName.setEditable(false);
|
||||||
nameValidator = new ValidatorFileName();
|
|
||||||
|
// get existing names
|
||||||
|
if (parentFolders != null && parentFolders.length > 0)
|
||||||
|
{
|
||||||
|
IRemoteFile parentFolder = parentFolders[0];
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Object[] contents = null;
|
||||||
|
if (parentFolder.isStale())
|
||||||
|
{
|
||||||
|
contents = parentFolder.getParentRemoteFileSubSystem().resolveFilterString(new NullProgressMonitor(), parentFolder, "*");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
contents = parentFolder.getContents(RemoteFileChildrenContentsType.getInstance());
|
||||||
|
}
|
||||||
|
Vector names = new Vector();
|
||||||
|
for (int i = 0; i < contents.length; i++)
|
||||||
|
{
|
||||||
|
IRemoteFile child = (IRemoteFile)contents[i];
|
||||||
|
if (child.isFile())
|
||||||
|
{
|
||||||
|
names.add(child.getName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
nameValidator = new ValidatorFileName(names);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nameValidator = new ValidatorFileName();
|
||||||
|
}
|
||||||
|
|
||||||
if ((parentFolders == null) || (parentFolders.length == 0))
|
if ((parentFolders == null) || (parentFolders.length == 0))
|
||||||
{
|
{
|
||||||
|
|
|
@ -16,17 +16,21 @@
|
||||||
|
|
||||||
package org.eclipse.rse.internal.files.ui.wizards;
|
package org.eclipse.rse.internal.files.ui.wizards;
|
||||||
|
|
||||||
|
import java.util.Vector;
|
||||||
|
|
||||||
|
import org.eclipse.core.runtime.NullProgressMonitor;
|
||||||
import org.eclipse.jface.wizard.Wizard;
|
import org.eclipse.jface.wizard.Wizard;
|
||||||
import org.eclipse.rse.internal.files.ui.FileResources;
|
import org.eclipse.rse.internal.files.ui.FileResources;
|
||||||
import org.eclipse.rse.services.clientserver.messages.SystemMessage;
|
import org.eclipse.rse.services.clientserver.messages.SystemMessage;
|
||||||
import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile;
|
import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile;
|
||||||
import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFileSubSystem;
|
import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFileSubSystem;
|
||||||
|
import org.eclipse.rse.subsystems.files.core.subsystems.RemoteFileChildrenContentsType;
|
||||||
import org.eclipse.rse.ui.ISystemMessages;
|
import org.eclipse.rse.ui.ISystemMessages;
|
||||||
import org.eclipse.rse.ui.RSEUIPlugin;
|
import org.eclipse.rse.ui.RSEUIPlugin;
|
||||||
import org.eclipse.rse.ui.SystemWidgetHelpers;
|
import org.eclipse.rse.ui.SystemWidgetHelpers;
|
||||||
import org.eclipse.rse.ui.messages.ISystemMessageLine;
|
import org.eclipse.rse.ui.messages.ISystemMessageLine;
|
||||||
import org.eclipse.rse.ui.validators.ISystemValidator;
|
import org.eclipse.rse.ui.validators.ISystemValidator;
|
||||||
import org.eclipse.rse.ui.validators.ValidatorFolderName;
|
import org.eclipse.rse.ui.validators.ValidatorFileName;
|
||||||
import org.eclipse.rse.ui.validators.ValidatorUniqueString;
|
import org.eclipse.rse.ui.validators.ValidatorUniqueString;
|
||||||
import org.eclipse.rse.ui.wizards.AbstractSystemWizardPage;
|
import org.eclipse.rse.ui.wizards.AbstractSystemWizardPage;
|
||||||
import org.eclipse.swt.events.ModifyEvent;
|
import org.eclipse.swt.events.ModifyEvent;
|
||||||
|
@ -127,7 +131,41 @@ public class SystemNewFolderWizardMainPage
|
||||||
protected void initializeInput()
|
protected void initializeInput()
|
||||||
{
|
{
|
||||||
connectionName.setEditable(false);
|
connectionName.setEditable(false);
|
||||||
nameValidator = new ValidatorFolderName();
|
// get existing names
|
||||||
|
if (parentFolders != null && parentFolders.length > 0)
|
||||||
|
{
|
||||||
|
IRemoteFile parentFolder = parentFolders[0];
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Object[] contents = null;
|
||||||
|
if (parentFolder.isStale())
|
||||||
|
{
|
||||||
|
contents = parentFolder.getParentRemoteFileSubSystem().resolveFilterString(new NullProgressMonitor(), parentFolder, "*");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
contents = parentFolder.getContents(RemoteFileChildrenContentsType.getInstance());
|
||||||
|
}
|
||||||
|
Vector names = new Vector();
|
||||||
|
for (int i = 0; i < contents.length; i++)
|
||||||
|
{
|
||||||
|
IRemoteFile child = (IRemoteFile)contents[i];
|
||||||
|
if (!child.isFile())
|
||||||
|
{
|
||||||
|
names.add(child.getName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
nameValidator = new ValidatorFileName(names);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nameValidator = new ValidatorFileName();
|
||||||
|
}
|
||||||
if (parentFolders == null)
|
if (parentFolders == null)
|
||||||
{
|
{
|
||||||
folderName.setEditable(false);
|
folderName.setEditable(false);
|
||||||
|
|
Loading…
Add table
Reference in a new issue