package org.jzy3d.bridge.awt;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import org.jzy3d.bridge.IFrame;
import org.jzy3d.chart.Chart;
import org.jzy3d.maths.Rectangle;
public class FrameAWT extends java.awt.Frame implements IFrame {
// public constructor for easier construction by reflexion
public FrameAWT() {
}
public FrameAWT(Chart chart, Rectangle bounds, String title) {
initialize(chart, bounds, title);
}
public FrameAWT(Chart chart, Rectangle bounds, String title, String message) {
initialize(chart, bounds, title, message);
}
@Override
public void initialize(Chart chart, Rectangle bounds, String title) {
initialize(chart, bounds, title, "[Awt]");
}
@Override
public void initialize(Chart chart, Rectangle bounds, String title, String message) {
this.chart = chart;
if(message!=null){
this.setTitle(title + message);
}
else{
this.setTitle(title);
}
this.add((java.awt.Component) chart.getCanvas());
this.pack();
this.setBounds(bounds.x, bounds.y, bounds.width, bounds.height);
this.setVisible(true);
this.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
FrameAWT.this.remove((java.awt.Component) FrameAWT.this.chart
.getCanvas());
FrameAWT.this.chart.dispose();
FrameAWT.this.chart = null;
FrameAWT.this.dispose();
}
});
}
private Chart chart;
private static final long serialVersionUID = 1L;
}
Ads help maintain this website.