blob: 9f172c1cd4dc070643a6d4d9129b771a6b330946 [file] [log] [blame]
/*******************************************************************************
* Copyright 2005, CHISEL Group, University of Victoria, Victoria, BC, Canada.
* 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: The Chisel Group, University of Victoria
*******************************************************************************/
package org.eclipse.zest.layouts;
import org.eclipse.zest.layouts.constraints.LayoutConstraint;
/**
* This represents a single entity, providing the layout algorithms with
* a common interface to run on.
*
* @author Casey Best
* @author Ian Bull
* @author Chris Bennett
*/
public interface LayoutEntity extends Comparable, LayoutItem {
public final static String ATTR_PREFERRED_WIDTH = "tree-preferred-width";
public final static String ATTR_PREFERRED_HEIGHT = "tree-preferred-height";
public void setLocationInLayout(double x, double y);
public void setSizeInLayout(double width, double height);
public double getXInLayout();
public double getYInLayout();
public double getWidthInLayout();
public double getHeightInLayout();
public Object getLayoutInformation();
public void setLayoutInformation(Object internalEntity);
/**
* Classes should update the specified layout constraint if recognized
* @return
*/
public void populateLayoutConstraint(LayoutConstraint constraint);
}