diff options
author | Kevin Macguire | 2002-05-29 02:22:55 +0000 |
---|---|---|
committer | Kevin Macguire | 2002-05-29 02:22:55 +0000 |
commit | cfbab849dc9d1ad9a780e2791f9f1091fbd26620 (patch) | |
tree | a660a6971fe151d10b82b7db33520488c8495de8 /bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target | |
parent | 107de8e09dbb1bfe44aaaa9de4d8ee42a1e558e2 (diff) | |
download | eclipse.platform.team-cfbab849dc9d1ad9a780e2791f9f1091fbd26620.tar.gz eclipse.platform.team-cfbab849dc9d1ad9a780e2791f9f1091fbd26620.tar.xz eclipse.platform.team-cfbab849dc9d1ad9a780e2791f9f1091fbd26620.zip |
16925: Folder creation dialog should select NewFolder
Diffstat (limited to 'bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target')
3 files changed, 23 insertions, 13 deletions
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/CreateNewFolderAction.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/CreateNewFolderAction.java index df2e88a77..f9b9ead06 100644 --- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/CreateNewFolderAction.java +++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/CreateNewFolderAction.java @@ -104,19 +104,22 @@ public class CreateNewFolderAction extends TargetAction { } protected static String getSuggestedFolderName(IRemoteTargetResource parent, IProgressMonitor monitor, String defaultName) throws TeamException { - String suggestedFolderName = defaultName; IRemoteResource[] members; monitor.subTask(Policy.bind("CreateNewFolderAction.suggestedNameProgress")); //$NON-NLS-1$ members = parent.members(monitor); - int numNewFolders = 0; - for (int i = 0; i < members.length; i++) { - if(members[i].getName().equals(defaultName)) { - numNewFolders++; - } - } - if(numNewFolders != 0) { - suggestedFolderName = Policy.bind("CreateNewFolderAction.suggestedNameConcat", defaultName, String.valueOf(numNewFolders)); //$NON-NLS-1$ + + String suggestedFolderName = defaultName; + + while(true) { + boolean nameUsed = false; + for (int i = 0; i < members.length && !nameUsed; i++) { + if(members[i].getName().equals(suggestedFolderName)) { + nameUsed = true; + } + } + if(!nameUsed) + return suggestedFolderName; + suggestedFolderName = Policy.bind("CreateNewFolderAction.suggestedNameConcat", suggestedFolderName, String.valueOf(1)); //$NON-NLS-1$ } - return suggestedFolderName; } }
\ No newline at end of file diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/MappingSelectionPage.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/MappingSelectionPage.java index d936b73a7..9368c8fc4 100644 --- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/MappingSelectionPage.java +++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/MappingSelectionPage.java @@ -95,11 +95,14 @@ public class MappingSelectionPage extends TargetWizardPage { if (newFolder == null) return; + RemoteResourceElement newFolderUIElement = new RemoteResourceElement(newFolder); + viewer.refresh(currentSelection); viewer.setExpandedState(currentSelection, true); - viewer.setSelection(new StructuredSelection(currentSelection)); + viewer.setSelection(new StructuredSelection(newFolderUIElement)); } catch (TeamException e) { TeamUIPlugin.handle(e); + return; } } }); diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/SiteExplorerView.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/SiteExplorerView.java index f98800c68..47299022e 100644 --- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/SiteExplorerView.java +++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/target/SiteExplorerView.java @@ -261,10 +261,14 @@ public class SiteExplorerView extends ViewPart implements ISiteListener { final IRemoteTargetResource selectedFolder = getSelectedRemoteFolder(selection)[0]; IRemoteTargetResource newFolder = CreateNewFolderAction.createDir(shell, selectedFolder, Policy.bind("CreateNewFolderAction.newFolderName")); - if (newFolder == null) return; + if (newFolder == null) + return; + + RemoteResourceElement newFolderUIElement = new RemoteResourceElement(newFolder); + treeViewer.refresh(currentSelection); expandInTreeCurrentSelection(new StructuredSelection(currentSelection), false); - treeViewer.setSelection(new StructuredSelection(currentSelection)); + treeViewer.setSelection(new StructuredSelection(newFolderUIElement)); } catch (TeamException e) { TeamUIPlugin.handle(e); return; |