/** * @param element Object the Object * @return Image an Image */ public Image getImage(Object element) { Image image = null; if (element instanceof IComponentNamePO) { image = IconConstants.LOGICAL_NAME_IMAGE; } else if (element instanceof IObjectMappingAssoziationPO) { int status = getQualitySeverity(((IObjectMappingAssoziationPO) element).getCompIdentifier()); switch (status) { case IStatus.OK: image = IconConstants.TECH_NAME_OK_IMAGE; break; case IStatus.WARNING: image = IconConstants.TECH_NAME_WARNING_IMAGE; break; case IStatus.ERROR: image = IconConstants.TECH_NAME_ERROR_IMAGE; break; default: image = IconConstants.TECHNICAL_NAME_IMAGE; break; } } else if (element instanceof IObjectMappingCategoryPO) { image = IconConstants.CATEGORY_IMAGE; } else if (element instanceof String) { // Missing Component Name image = IconConstants.LOGICAL_NAME_IMAGE; } else { String elementType = element != null ? element.getClass().getName() : "null"; // $NON-NLS-1$ StringBuilder msg = new StringBuilder(); msg.append(Messages.ElementType) .append(StringConstants.SPACE) .append(StringConstants.APOSTROPHE) .append(elementType) .append(StringConstants.APOSTROPHE) .append(StringConstants.SPACE) .append(Messages.NotSupported) .append(StringConstants.DOT); Assert.notReached(msg.toString()); return null; } Object cbContents = m_clipboard.getContents(LocalSelectionClipboardTransfer.getInstance()); if (cbContents instanceof IStructuredSelection) { IStructuredSelection sel = (IStructuredSelection) cbContents; if (sel.toList().contains(element)) { image = Plugin.getCutImage(image); } } return image; }
/** {@inheritDoc} */ public Object execute(ExecutionEvent event) { AbstractJBEditor jbe = (AbstractJBEditor) Plugin.getActiveEditor(); LocalSelectionClipboardTransfer transfer = LocalSelectionClipboardTransfer.getInstance(); if (!(jbe.getEditorHelper().getClipboard().getContents(transfer) instanceof IStructuredSelection)) { return null; } IStructuredSelection pasteSelection = (IStructuredSelection) jbe.getEditorHelper().getClipboard().getContents(transfer); if (pasteSelection != null && jbe.getSelection() instanceof IStructuredSelection) { // Paste will always occur at the most recently selected node. IStructuredSelection selection = (IStructuredSelection) jbe.getSelection(); Object[] selArray = selection.toArray(); INodePO target; if (jbe.getSelection().isEmpty()) { target = (INodePO) jbe.getTreeViewer().getTree().getTopItem().getData(); } else { target = (INodePO) selArray[selArray.length - 1]; } if (!transfer.getIsItCut()) { if (jbe instanceof TestCaseEditor) { TCEditorDndSupport.copyPaste((TestCaseEditor) jbe, pasteSelection, target); } else if (jbe instanceof TestSuiteEditor) { new TSEditorDndSupport().copyPaste((TestSuiteEditor) jbe, pasteSelection, target); } else if (jbe instanceof TestJobEditor) { TJEditorDndSupport.copyPaste(jbe, pasteSelection, target); } } else if (jbe instanceof AbstractTestCaseEditor) { if (TCEditorDndSupport.performDrop( (AbstractTestCaseEditor) jbe, pasteSelection, target, ViewerDropAdapter.LOCATION_ON)) { jbe.getEditorHelper().getClipboard().clearContents(); transfer.setSelection(null, null, false); } } } return null; }