/******************************************************************************* * 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; } }