| /******************************************************************************* |
| * Copyright (c) 2005, 2012 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.bpel.ui.editparts; |
| |
| import org.eclipse.bpel.common.ui.tray.TrayAccessibleEditPart; |
| import org.eclipse.bpel.common.ui.tray.TrayEditPart; |
| import org.eclipse.bpel.ui.adapters.ILabeledElement; |
| import org.eclipse.bpel.ui.util.BPELUtil; |
| import org.eclipse.swt.accessibility.AccessibleEvent; |
| |
| |
| public class BPELTrayAccessibleEditPart extends TrayAccessibleEditPart { |
| |
| public BPELTrayAccessibleEditPart(TrayEditPart part) { |
| super(part); |
| } |
| |
| @Override |
| public void getName(AccessibleEvent e) { |
| String childType = null; |
| String displayName = null; |
| ILabeledElement labeledElement = BPELUtil.adapt(part.getModel(), ILabeledElement.class); |
| if (labeledElement != null) { |
| childType = labeledElement.getTypeLabel(part.getModel()); |
| displayName = labeledElement.getLabel(part.getModel()); |
| // bug 327644 |
| // prevent possible NPE |
| if (childType != null && childType.equals(displayName)) { |
| childType = null; |
| } |
| } else { |
| e.result = null; |
| return; |
| } |
| |
| // return something reasonable (type followed by name if any) |
| // or nothing at all |
| |
| StringBuffer concat = new StringBuffer(); |
| if (childType != null && childType.length() > 0) |
| concat.append(childType); |
| if (concat.length() > 0) |
| concat.append(" "); //$NON-NLS-1$ |
| if (displayName != null && displayName.length() > 0) |
| concat.append(displayName); |
| if (concat.length() > 0) |
| e.result = concat.toString(); |
| else |
| e.result = null; |
| return; |
| } |
| } |