blob: 06fe4fdbb105e046f43f3bec0d69238181dfc10a [file] [log] [blame]
//------------------------------------------------------------------------------
// Copyright (c) 2005, 2006 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 implementation
//------------------------------------------------------------------------------
package org.eclipse.epf.authoring.gef.figures;
import org.eclipse.draw2d.Graphics;
import org.eclipse.draw2d.Shape;
import org.eclipse.draw2d.geometry.PointList;
import org.eclipse.draw2d.geometry.Rectangle;
/**
* A figure for diamond shape.
* @author Phong Nguyen Le
* @since 1.0
*/
public class Diamond extends Shape {
private PointList diamond = new PointList(4);
/**
* @see Shape#fillShape(Graphics)
*/
protected void fillShape(Graphics g) {
g.fillPolygon(diamond);
}
/**
* @see Shape#outlineShape(Graphics)
*/
protected void outlineShape(Graphics g) {
g.drawPolygon(diamond);
}
/**
* @see org.eclipse.draw2d.Figure#validate()
*/
public void validate() {
Rectangle r = getBounds().getCopy();
r.crop(getInsets());
r.resize(-1, -1);
diamond.removeAllPoints();
diamond.addPoint(r.getTop());
diamond.addPoint(r.getRight());
diamond.addPoint(r.getBottom());
diamond.addPoint(r.getLeft());
}
/**
* @see org.eclipse.draw2d.Polyline#primTranslate(int, int)
*/
public void primTranslate(int x, int y) {
super.primTranslate(x, y);
diamond.translate(x, y);
}
public PointList getPoints() {
return diamond;
}
}