view EndBlockPanel.java @ 52:76e99859bdb4 tip

Add class files for previous changes.
author Marcus Pearce <marcus.pearce@eecs.qmul.ac.uk>
date Wed, 25 Feb 2015 10:11:04 +0000
parents be66ee2fe9fe
children
line wrap: on
line source
/*=============================================================================
 * File:       EndBlockPanel.java
 * Author:     Carl Bussey <c.bussey@se10.qmul.ac.uk>
 * Created:    <2013-06-13 17:32>
 *=============================================================================
 */

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

abstract class EndBlockPanel extends JPanel {

/* variables */
protected JButton continueButton;
protected String continueButtonText;
protected JLabel message;
protected Experiment exp;
protected StringBuffer sb;

/* accessors */
public JButton getContinueButton() { return continueButton; }

/* constructor */
public EndBlockPanel(Experiment e) {
    exp = e;
    sb = new StringBuffer();
}

public void updateMessageDisplay() {
    message.setText(formatMessage());
}

abstract protected String formatMessage();

public void addContinueButtonListener(ActionListener al) {
    continueButton.addActionListener(al);
}

    public void setUp(String buttonText){
        continueButton = new JButton(buttonText);
        JPanel continuePane = new JPanel();
        continuePane.add(continueButton);
        
        message = new JLabel();
        message.setHorizontalAlignment(JLabel.CENTER);
        updateMessageDisplay();
        JPanel messagePane = new JPanel(new FlowLayout(FlowLayout.CENTER));
        messagePane.setBorder(BorderFactory.createEmptyBorder(10,10,10,10));
        messagePane.add(message);
        
        this.setLayout(new BorderLayout());
        this.add(messagePane, BorderLayout.CENTER);
        this.add(continuePane, BorderLayout.SOUTH);
    }
    
}