Package eu.semberal.migmang.graphics

Source Code of eu.semberal.migmang.graphics.MoveHistoryDialog

package eu.semberal.migmang.graphics;

import eu.semberal.migmang.logic.Move;
import java.awt.Frame;
import javax.swing.DefaultListModel;

/**
*
* @author lukas.sembera
*/
class MoveHistoryDialog extends javax.swing.JDialog {
    private final Frame parent;
   
    public MoveHistoryDialog(java.awt.Frame parent, boolean modal) {
        super(parent, modal);
        this.parent = parent;
        initComponents();
        this.setLocation(parent.getX() + (parent.getWidth() - this.getWidth()) / 2, parent.getY() + (parent.getHeight() - this.getHeight()) / 2);
    }
   
    /**
     * Adds a move to the list
     */
    void addMove(Move t) {
        DefaultListModel list = (DefaultListModel)moveList.getModel();
        list.add(0, t);
    }
   
    /**
     * Removes last move from the list
     */
    void dropLastMove() {
        DefaultListModel list = (DefaultListModel)moveList.getModel();
        list.removeElementAt(0);
    }
   
    /**
     * Clears move history
     */
    void clearList() {
        ((DefaultListModel)moveList.getModel()).removeAllElements();
    }
   
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jScrollPane1 = new javax.swing.JScrollPane();
        moveList = new javax.swing.JList();
        closeDialogBtn = new javax.swing.JButton();

        setTitle("Move history");
        setLocationByPlatform(true);
        addComponentListener(new java.awt.event.ComponentAdapter() {
            public void componentShown(java.awt.event.ComponentEvent evt) {
                formComponentShown(evt);
            }
        });

        moveList.setModel(new DefaultListModel());
        moveList.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        jScrollPane1.setViewportView(moveList);

        closeDialogBtn.setText("Close");
        closeDialogBtn.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                closeDialogBtnActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 184, Short.MAX_VALUE)
                    .addComponent(closeDialogBtn, javax.swing.GroupLayout.DEFAULT_SIZE, 184, Short.MAX_VALUE))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 338, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(closeDialogBtn)
                .addContainerGap())
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void closeDialogBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_closeDialogBtnActionPerformed
        this.setVisible(false);
    }//GEN-LAST:event_closeDialogBtnActionPerformed

    private void formComponentShown(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_formComponentShown
        this.setLocation(parent.getX() + (parent.getWidth() - this.getWidth()) / 2, parent.getY() + (parent.getHeight() - this.getHeight()) / 2);
    }//GEN-LAST:event_formComponentShown

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton closeDialogBtn;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JList moveList;
    // End of variables declaration//GEN-END:variables
   
}
TOP

Related Classes of eu.semberal.migmang.graphics.MoveHistoryDialog

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.