package com.himamis.retex.renderer.share;
import java.util.ArrayList;
import com.himamis.retex.renderer.share.platform.FactoryProvider;
import com.himamis.retex.renderer.share.platform.geom.Rectangle2D;
import com.himamis.retex.renderer.share.platform.graphics.Color;
import com.himamis.retex.renderer.share.platform.graphics.Graphics2DInterface;
public class TableBox extends Box {
private Box content;
private ArrayList<Rectangle2D> rectangles;
private ArrayList<Color> colors;
public TableBox(Box content, ArrayList<Rectangle2D> arr,
ArrayList<Color> colors) {
this.content = content;
this.rectangles = arr;
this.colors = colors;
this.children.add(content);
this.width = content.width;
this.height = content.height;
this.depth = content.depth;
}
@Override
public void draw(Graphics2DInterface g2, double x, double y) {
if (rectangles != null) {
Color old = g2.getColor();
for (int i = 0; i < rectangles.size(); i++) {
if (colors.get(i) == null) {
continue;
}
g2.setColor(colors.get(i));
Rectangle2D rect = FactoryProvider.getInstance()
.getGeomFactory()
.createRectangle2D(
rectangles.get(i).getX() + x,
rectangles.get(i).getY() + y - (height + depth)
/ 2, rectangles.get(i).getWidth(),
rectangles.get(i).getHeight());
g2.fill(rect);
}
g2.setColor(old);
}
content.draw(g2, x, y);
}
@Override
public int getLastFontId() {
return content.getLastFontId();
}
}