/******************************************************************************* * Copyright (c) 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.draw2d; import org.eclipse.draw2d.geometry.Insets; /** * A special border which can paint both underneath and on top of a Figure. * Normal borders only paint on top of a figure and its children. A background * has the opportunity to paint both first, and optionally last. * <P> * WARNING: Experimental for 3.3. Clients should help validate the use cases * of this new function. * @since 3.3 */ public class AbstractBackground extends AbstractBorder { /** * {@inheritDoc} */ public Insets getInsets(IFigure figure) { return IFigure.NO_INSETS; } /** * {@inheritDoc} * By default, this method is stubbed out for backgrounds which only paint * underneath a figure. */ public void paint(IFigure figure, Graphics graphics, Insets insets) { } /** * Called when this Background should paint. If the background is being painted * inside another border or background, the insets indicate how far inside the * target figure the background should be painted. In most cases, the insets * will be all zero. * @param figure The figure on which the background is being painted * @param graphics The graphics * @param insets Amount to inset from the figure's bounds * @since 3.2 */ public void paintBackground(IFigure figure, Graphics graphics, Insets insets) { } }