Package de.juwimm.torstats

Source Code of de.juwimm.torstats.MainGUI

package de.juwimm.torstats;

import de.juwimm.torstats.model.EffectType;
import de.juwimm.torstats.util.FileParser;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.util.EnumMap;
import javax.swing.*;
import javax.swing.border.EmptyBorder;

public class MainGUI extends JFrame {

    private JPanel startPane;
    private JPanel resultsPane;
    private File file;
    /**
     * Create the frame.
     */
    public MainGUI() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 100, 450, 300);
        startPane = new JPanel();
        startPane.setBorder(new EmptyBorder(5, 5, 5, 5));
        startPane.setLayout(new BorderLayout(0, 0));
        setContentPane(startPane);
       
       

        JButton btnTest = new JButton("Test");
       
        btnTest.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent arg0) {
                EventQueue.invokeLater(new Runnable() {

                    @Override
                    public void run() {
                        FileParser reader = new FileParser(file);
                        reader.process();
                        resultsPane = new JPanel();
                        resultsPane.setBorder(new EmptyBorder(5, 5, 5, 5));
                        resultsPane.setLayout(new BorderLayout(0, 0));
                        EnumMap<EffectType, Integer> damageMap = reader.getDamage();
                       
                        Object[][] data = new Object[damageMap.size()][2];
                        int i = 0;
                        for(EffectType eftTyp : damageMap.keySet()){ 
                                                       
                            data[i][0]=eftTyp.getName();
                            data[i][1]=damageMap.get(eftTyp);
                            i++;
                        }
                       
                        String[] columnNames = {"Type","Amount"};
                       
                        JTable table = new JTable(data, columnNames);
                        resultsPane.add(table, BorderLayout.CENTER);
                        setContentPane(resultsPane);
                    }
                });
            }
        });

        final JFileChooser fc = new JFileChooser();
       
        JButton btnOpen = new JButton("Open File");
        btnOpen.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent arg0) {
                EventQueue.invokeLater(new Runnable() {

                    @Override
                    public void run() {
                        int returnVal = fc.showOpenDialog(MainGUI.this);

                        if (returnVal == JFileChooser.APPROVE_OPTION) {
                            file = fc.getSelectedFile();
                          
                        } else {
                          
                        }
                    }
                });
            }
        });

        startPane.add(btnTest, BorderLayout.CENTER);
        startPane.add(btnOpen, BorderLayout.NORTH);
    }
}
TOP

Related Classes of de.juwimm.torstats.MainGUI

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.