/******************************************************************************* * Copyright (c) 2005, 2015 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.jface.fieldassist; import org.eclipse.swt.graphics.Image; /** * FieldDecoration is a simple data structure class for specifying a decoration * for a field. A decoration may be rendered in different ways depending on the * type of field it is used with. * * @see FieldDecorationRegistry * * @since 3.2 */ public class FieldDecoration { /* * The image to be shown in the decoration. */ private Image image; /* * The description to show in the decoration's hover. */ private String description; /** * Create a decoration for a field with the specified image and description * text. * * @param image * the image shown in the decoration. A <code>null</code> image * will result in a blank decoration, which may be used to * reserve space near the field. * @param description * the description shown when the user hovers over the * decoration. A <code>null</code> description indicates that * there will be no hover for the decoration. */ public FieldDecoration(Image image, String description) { this.image = image; this.description = description; } /** * Return the image shown in the decoration, or <code>null</code> if no * image is specified. * * @return the image shown in the decoration. A return value of * <code>null</code> signifies a blank decoration. */ public Image getImage() { return image; } /** * Set the image shown in the decoration, or <code>null</code> if no image * is specified. It is up to the caller to update any decorated fields that * are showing the description in order to display the new image. * * @param image * the image shown in the decoration. A value of * <code>null</code> signifies a blank decoration. */ public void setImage(Image image) { this.image = image; } /** * Return the description for the decoration shown when the user hovers over * the decoration. * * @return the String description of the decoration. A return value of * <code>null</code> indicates that no description will be shown. */ public String getDescription() { return description; } /** * Set the description for the decoration shown when the user hovers over * the decoration. It is up to the caller to update any decorated fields * showing the description. * * @param description * the String description of the decoration. A value of * <code>null</code> indicates that no description will be * shown. */ public void setDescription(String description) { this.description = description; } }