X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=plugins%2Forg.argeo.slc.client.ui%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fclient%2Fui%2Fwizards%2FConfirmOverwriteWizard.java;h=3fa15f9bfb10d32770269c7fd86d6a51a9cc35ae;hb=e797ab69fbb9d6a4abe901155108ab8155ceba5b;hp=3ec3530c72fdbf6f6d13239cae9d2280e4878a67;hpb=2bdb18c75fc87cd78ed18843149c469c180f3830;p=gpl%2Fargeo-slc.git diff --git a/plugins/org.argeo.slc.client.ui/src/main/java/org/argeo/slc/client/ui/wizards/ConfirmOverwriteWizard.java b/plugins/org.argeo.slc.client.ui/src/main/java/org/argeo/slc/client/ui/wizards/ConfirmOverwriteWizard.java index 3ec3530c7..3fa15f9bf 100644 --- a/plugins/org.argeo.slc.client.ui/src/main/java/org/argeo/slc/client/ui/wizards/ConfirmOverwriteWizard.java +++ b/plugins/org.argeo.slc.client.ui/src/main/java/org/argeo/slc/client/ui/wizards/ConfirmOverwriteWizard.java @@ -1,10 +1,28 @@ +/* + * Copyright (C) 2007-2012 Argeo GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package org.argeo.slc.client.ui.wizards; import javax.jcr.Node; import javax.jcr.RepositoryException; +import javax.jcr.Session; import org.argeo.slc.SlcException; import org.argeo.slc.client.ui.ClientUiPlugin; +import org.argeo.slc.client.ui.SlcUiConstants; +import org.argeo.slc.jcr.SlcJcrResultUtils; import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.jface.wizard.Wizard; import org.eclipse.jface.wizard.WizardPage; @@ -34,6 +52,7 @@ public class ConfirmOverwriteWizard extends Wizard { private Node targetParentNode; private String newName; + private String parentRelPath; private boolean overwrite; public ConfirmOverwriteWizard(String sourceNodeName, Node targetParentNode) { @@ -72,7 +91,8 @@ public class ConfirmOverwriteWizard extends Wizard { if (overwriteBtn.getSelection()) doFinish = MessageDialog.openConfirm(Display.getDefault() .getActiveShell(), "CAUTION", "All data contained in [" - + sourceNodeName + + (parentRelPath != null ? parentRelPath : "") + + "/"+ sourceNodeName + "] are about to be definitively destroyed. \n " + "Are you sure you want to proceed ?"); else @@ -90,8 +110,30 @@ public class ConfirmOverwriteWizard extends Wizard { public MyPage() { super(""); - setTitle("An object with same name (" + sourceNodeName - + ") already exists"); + String msg = "An object with same name (" + sourceNodeName + + ") already exists at chosen target path"; + + // Add target rel path to the message + Session session; + String relPath; + try { + session = targetParentNode.getSession(); + relPath = targetParentNode.getPath(); + String basePath = SlcJcrResultUtils + .getMyResultsBasePath(session); + if (relPath.startsWith(basePath)) + relPath = relPath.substring(basePath.length()); + // FIXME currently add the default base label + parentRelPath = SlcUiConstants.DEFAULT_MY_RESULTS_FOLDER_LABEL + + relPath; + } catch (RepositoryException e) { + throw new SlcException("Unexpected error while defining " + + "target parent node rel path", e); + } + msg = msg + (parentRelPath == null ? "." : ": \n" + parentRelPath); + + // Set Title + setTitle(msg); } public void createControl(Composite parent) { @@ -181,4 +223,4 @@ public class ConfirmOverwriteWizard extends Wizard { } } } -} +} \ No newline at end of file