package org.hwo.ui; import java.awt.Dimension; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import javax.swing.JComponent; import javax.swing.JPanel; import org.hwo.ui.diagram.Diagram; public class JDiagram extends JPanel { private Diagram diagram; public JDiagram(){ setMinimumSize(new Dimension(80, 80)); diagram = new Diagram(); diagram.setFont( getFont() ); } @Override public void paint(Graphics g) { this.diagram.plot((Graphics2D)g, this.getWidth(), this.getHeight()); } public Diagram getDiagram() { return diagram; } public void setDiagram(Diagram diagram) { this.diagram = diagram; } public int getNumLabels(){ return this.diagram.getNumLabels(); } public void setNumLabels(int nLabels){ this.diagram.setNumLabels(nLabels); } public String getLabelFormatSpec(){ return this.diagram.getLabelFormatSpec(); } public void setLabelFormatSpec(String spec){ this.diagram.setLabelFormatSpec(spec); } @Override public Font getFont() { return super.getFont(); } @Override public void setFont(Font font) { if (diagram != null) diagram.setFont(font); super.setFont(font); } }