]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.client.ui/src/org/argeo/slc/client/ui/wizards/ConfirmOverwriteWizard.java
Clarify SLC project structure.
[gpl/argeo-slc.git] / org.argeo.slc.client.ui / src / org / argeo / slc / client / ui / wizards / ConfirmOverwriteWizard.java
diff --git a/org.argeo.slc.client.ui/src/org/argeo/slc/client/ui/wizards/ConfirmOverwriteWizard.java b/org.argeo.slc.client.ui/src/org/argeo/slc/client/ui/wizards/ConfirmOverwriteWizard.java
deleted file mode 100644 (file)
index d766219..0000000
+++ /dev/null
@@ -1,211 +0,0 @@
-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;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.ISharedImages;
-
-public class ConfirmOverwriteWizard extends Wizard {
-
-       // Define widget here to simplify getters
-       private Button overwriteBtn, renameBtn;
-       private Text newNameTxt;
-       private Label newNameLbl;
-
-       // business object
-       private String sourceNodeName;
-       private Node targetParentNode;
-
-       private String newName;
-       private String parentRelPath;
-       private boolean overwrite;
-
-       public ConfirmOverwriteWizard(String sourceNodeName, Node targetParentNode) {
-               setWindowTitle("Confirm overwrite or define a new name");
-               this.sourceNodeName = sourceNodeName;
-               this.targetParentNode = targetParentNode;
-       }
-
-       @Override
-       public void addPages() {
-               try {
-                       addPage(new MyPage());
-               } catch (Exception e) {
-                       throw new SlcException("Cannot add page to wizard ", e);
-               }
-               getShell().setImage(
-                               ClientUiPlugin.getDefault().getWorkbench().getSharedImages()
-                                               .getImageDescriptor(ISharedImages.IMG_LCL_LINKTO_HELP)
-                                               .createImage());
-       }
-
-       // Expose info to the calling view
-       public boolean overwrite() {
-               return overwrite;
-       }
-
-       public String newName() {
-               return newName;
-       }
-
-       @Override
-       public boolean performFinish() {
-               boolean doFinish = false;
-
-               if (canFinish()) {
-                       if (overwriteBtn.getSelection())
-                               doFinish = MessageDialog.openConfirm(Display.getDefault()
-                                               .getActiveShell(), "CAUTION", "All data contained in ["
-                                               + (parentRelPath != null ? parentRelPath : "")
-                                               + "/"+ sourceNodeName
-                                               + "] are about to be definitively destroyed. \n "
-                                               + "Are you sure you want to proceed ?");
-                       else
-                               doFinish = true;
-                       // cache values
-               }
-               if (doFinish) {
-                       overwrite = overwriteBtn.getSelection();
-                       newName = newNameTxt.getText();
-               }
-               return doFinish;
-       }
-
-       class MyPage extends WizardPage implements ModifyListener {
-
-               public MyPage() {
-                       super("");
-                       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) {
-                       Composite composite = new Composite(parent, SWT.NONE);
-                       composite.setLayout(new GridLayout(2, false));
-
-                       // choose between overwrite and rename
-                       overwriteBtn = new Button(composite, SWT.RADIO);
-                       overwriteBtn.setText("Overwrite");
-                       GridData gd = new GridData();
-                       gd.horizontalIndent = 30;
-                       gd.horizontalSpan = 2;
-                       overwriteBtn.setLayoutData(gd);
-                       overwriteBtn.setSelection(true);
-
-                       renameBtn = new Button(composite, SWT.RADIO);
-                       renameBtn.setText("Rename");
-                       renameBtn.setSelection(false);
-                       renameBtn.setText("Rename");
-                       gd = new GridData();
-                       gd.horizontalIndent = 30;
-                       gd.horizontalSpan = 2;
-                       renameBtn.setLayoutData(gd);
-
-                       newNameLbl = new Label(composite, SWT.LEAD);
-                       newNameLbl.setText("New name");
-                       newNameLbl.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false,
-                                       false));
-                       newNameLbl.setEnabled(false);
-
-                       newNameTxt = new Text(composite, SWT.LEAD | SWT.BORDER);
-                       newNameTxt.setText(sourceNodeName);
-                       newNameTxt.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true,
-                                       false));
-                       if (newNameTxt != null)
-                               newNameTxt.addModifyListener(this);
-                       newNameTxt.setEnabled(false);
-
-                       SelectionAdapter sa = new SelectionAdapter() {
-                               public void widgetSelected(SelectionEvent e) {
-                                       updateSelection(overwriteBtn.getSelection());
-                               }
-                       };
-                       overwriteBtn.addSelectionListener(sa);
-                       renameBtn.addSelectionListener(sa);
-
-                       // Compulsory
-                       setControl(composite);
-               }
-
-               private void updateSelection(boolean overwrite) {
-                       newNameLbl.setEnabled(!overwrite);
-                       newNameTxt.setEnabled(!overwrite);
-                       if (overwrite)
-                               setPageComplete(true);
-                       else
-                               checkComplete();
-               }
-
-               protected String getTechName() {
-                       return newNameTxt.getText();
-               }
-
-               public void modifyText(ModifyEvent event) {
-                       checkComplete();
-               }
-
-               private void checkComplete() {
-                       try {
-
-                               String newName = newNameTxt.getText();
-                               if (newName == null || "".equals(newName.trim())) {
-                                       setMessage("Name cannot be blank or empty",
-                                                       WizardPage.ERROR);
-                                       setPageComplete(false);
-                               } else if (targetParentNode.hasNode(newName)) {
-                                       setMessage("An object with the same name already exists.",
-                                                       WizardPage.ERROR);
-                                       setPageComplete(false);
-                               } else {
-                                       setMessage("Complete", WizardPage.INFORMATION);
-                                       setPageComplete(true);
-                               }
-                       } catch (RepositoryException e) {
-                               throw new SlcException("Unexpected error while checking "
-                                               + "children node with same name", e);
-                       }
-               }
-       }
-}
\ No newline at end of file