/*******************************************************************************
* Copyright (c) 2000, 2005 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 com.example.layout;
import java.util.Iterator;
import org.eclipse.draw2d.FreeformLayout;
import org.eclipse.draw2d.IFigure;
import org.eclipse.draw2d.geometry.Point;
/**
* A layout for {@link org.eclipse.draw2d.FreeformFigure FreeformFigures}.
*/
public class FreeformLayout2
extends FreeformLayout
{
int colum;
int width;
public FreeformLayout2(int colum, int width) {
this.colum = colum;
this.width = width;
}
public void layout(IFigure parent) {
// parent.set
System.out.println(parent.getClass().toString());
//parent.getBounds().x=10;
//parent.getBounds().y=20;
int x = parent.getBounds().x;
int y = parent.getBounds().y;
/*
int ph = parent.getBounds().height;
int pw = parent.getBounds().width;
int h = parent.getBounds().height / this.rows;
int w = parent.getBounds().width / this.colum;*/
Iterator children = parent.getChildren().iterator();
System.out.println(x+" "+y);
IFigure f;
int cx =x, cy =y;
int count=0;
while (children.hasNext()) {
count++;
//System.out.println(pw);
f = (IFigure) children.next();
f.setLocation(new Point(cx, cy));
f.setSize(width, width);
cx +=width;
if (count>=colum) {
cx = 0;
cy +=width;
count=0;
}
}
}
}