package uk.ac.cam.cstibhotel.otcanalyser.gui;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
public class AnalysisSummary extends JPanel {
private static final long serialVersionUID = 1L;
TradeDisplayer analysisInfo = new TradeDisplayer();
private JLabel mostTraded = new JLabel("Most Traded Underlying Asset: N/A");
private JLabel numberOfTrades = new JLabel("Number of Trades: 0");
public JButton help = new JButton("Help"); //this help button opens the help documentation
private static AnalysisSummary analysisSummary;
public static AnalysisSummary getInstance() {
if (analysisSummary == null) {
analysisSummary = new AnalysisSummary();
}
return analysisSummary;
}
AnalysisSummary() {
this.setBorder(BorderFactory.createCompoundBorder(new EmptyBorder(0,5,0,5), BorderFactory.createEtchedBorder()));
GridLayout layout = new GridLayout(1,3);
layout.minimumLayoutSize(this);
this.setLayout(layout);
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.add(help,BorderLayout.WEST);
add(panel);
help.addActionListener(new HelpListener());
add(mostTraded);
add(numberOfTrades);
setVisible(true);
}
public void UpdateWindow(String mostTradedAsset, int numTrades) {
remove(mostTraded);
remove(numberOfTrades);
if (numTrades > 0) {
mostTraded = new CenteredJLabel("Most Traded Underlying Asset: " + mostTradedAsset);
} else {
mostTraded = new CenteredJLabel("Most Traded Underlying Asset: N/A");
}
mostTraded.setBorder(new EmptyBorder(1,5,1,5));
numberOfTrades = new CenteredJLabel("Number of Trades: " + numTrades);
numberOfTrades.setBorder(new EmptyBorder(1,5,1,5));
add(mostTraded);
add(numberOfTrades);
setVisible(true);
repaint();
}
}