/******************************************************************************* * Copyright (c) 2011 Google, Inc. * 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: * Google, Inc. - initial API and implementation *******************************************************************************/ package org.eclipse.wb.internal.core.model.property.table; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Shell; import org.eclipse.wb.internal.core.model.property.Property; /** * Implementation of {@link PropertyTooltipProvider} for text. * * @author scheglov_ke * @coverage core.model.property.table */ public abstract class PropertyTooltipTextProvider extends PropertyTooltipProvider { //////////////////////////////////////////////////////////////////////////// // // PropertyTooltipProvider // //////////////////////////////////////////////////////////////////////////// @Override public Control createTooltipControl(Property property, Composite parent, int availableWidth, IPropertyTooltipSite site) { // prepare header and content String header = null; String content = null; try { // BEGIN ADT MODIFICATIONS // was: header = property.getTitle(); header = property.getName(); // END ADT MODIFICATIONS content = getText(property); } catch (Throwable e) { } if (header == null || content == null) { return null; } // create tooltip Control return HtmlTooltipHelper.createTooltipControl(parent, header, content, 8); } @Override public void show(Shell shell) { // do nothing, Shell will be displayed when Browser will complete rendering } //////////////////////////////////////////////////////////////////////////// // // Text // //////////////////////////////////////////////////////////////////////////// /** * @return the text to show as tooltip. */ protected abstract String getText(Property property) throws Exception; }