FieldDecoration.java :  » IDE-Eclipse » jface » org » eclipse » jface » fieldassist » Java Open Source

Java Open Source » IDE Eclipse » jface 
jface » org » eclipse » jface » fieldassist » FieldDecoration.java
/*******************************************************************************
 * Copyright (c) 2005, 2007 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;
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.