/******************************************************************************* * Copyright (c) 2004, 2005 Sybase, Inc. 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: * Sybase, Inc. - initial API and implementation *******************************************************************************/ package org.eclipse.jst.jsf.facesconfig.ui.pageflow.command; import org.eclipse.draw2d.geometry.Dimension; import org.eclipse.draw2d.geometry.Point; import org.eclipse.gef.commands.Command; import org.eclipse.jst.jsf.facesconfig.ui.pageflow.model.PageflowLink; /** * base class for bend point commands. * */ /*package*/ abstract class BendpointCommand extends Command { /** the index of the bend point */ protected int index; /** the location of the bendpoint */ protected Point location; /** the parent link */ protected PageflowLink link; /** relative dimension between the bendpoint with start point of the pflink */ private Dimension dimStart; /** relative dimension between the bendpoint with end point of the pflink */ private Dimension dimEnd; /** * @param label */ public BendpointCommand(String label) { super(label); } /** * get the dimension between the bendpoint and start point * * @return - the start dimension */ protected Dimension getFirstRelativeDimension() { return dimStart; } /** * get the dimension between the bendpoint and end point * * @return - the end dimension */ protected Dimension getSecondRelativeDimension() { return dimEnd; } /** * get the index of the bend point * * @return - the index */ protected int getIndex() { return index; } /** * get the location of the bend point * * @return - the index */ protected Point getLocation() { return location; } /** * get the parent link * * @return - parent link */ protected PageflowLink getPFLink() { return link; } /* * (non-Javadoc) * * @see Command#redo() */ public void redo() { execute(); } /** * set the relative dimensions of the bendpoint * * @param dim1 - * the dimension between the bendpoint and start point * @param dim2 - * the dimension between the bendpoint and end point */ public void setRelativeDimensions(Dimension dim1, Dimension dim2) { dimStart = dim1; dimEnd = dim2; } /** * set the index of the bendpoint in the bendpoint list * * @param i - * index */ public void setIndex(int i) { index = i; } /** * set the location of the bendpoing * * @param p - * new location */ public void setLocation(Point p) { location = p; } /** * set the parent link * * @param newLink - * new parent pflink */ public void setPFLink(PageflowLink newLink) { link = newLink; } }