package biblioteka_gui;

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

/**
 * Klasa dziedziczaca po klasie JFrame, implementujaca interfejs ActionListener
 * <br>Wyswietla liste wszystkich czytelnikow w postaci tabeli
 * @author w21826
 *
 */
public class JFrListaCzytelnikow extends JFrame implements ActionListener
{
	private	JPanel		topPanel;
	private	JTable		table;
	private	JScrollPane scrollPane;

	/**
	 * Konstruktor bezparametrowy tworzacy nowe okno o tytule "Lista czytelnikow"
	 * definiujacy rozmiar, polozenie, widocznosc okna i dodajacy do okna obiekt klasy JTable o kolumnach: "Id", "Imię", "Nazwisko","Ulica","Nr domu","Nr mieszkania","Kod pocztowy","Miejscowość","#wypożyczonych książek"
	 *
	 */
	public JFrListaCzytelnikow()
	{
		// Set the frame characteristics
		setTitle( "Lista czytelników" );
		setSize( 300, 200 );
		setBackground( Color.gray );

		// Create a panel to hold all other components
		topPanel = new JPanel();
		topPanel.setLayout( new BorderLayout() );
		getContentPane().add( topPanel );

		// Create columns names
		String nazwy_kolumn[] = { "Id", "Imię", "Nazwisko","Ulica","Nr domu","Nr mieszkania","Kod pocztowy","Miejscowość","#wypożyczonych książek" };

		Object[][] dane = new Object[JFrGlowne.czytelnicy.size()][9];
		for(int i = 0; i < JFrGlowne.czytelnicy.size(); i++)
		{
			dane[i][0] = JFrGlowne.czytelnicy.get(i).nr_karty;
			dane[i][1] = JFrGlowne.czytelnicy.get(i).imie;
			dane[i][2] = JFrGlowne.czytelnicy.get(i).nazwisko;
			dane[i][3] = JFrGlowne.czytelnicy.get(i).ulica;
			dane[i][4] = JFrGlowne.czytelnicy.get(i).nr_domu;
			dane[i][5] = JFrGlowne.czytelnicy.get(i).nr_mieszkania;
			dane[i][6] = JFrGlowne.czytelnicy.get(i).kod;
			dane[i][7] = JFrGlowne.czytelnicy.get(i).miejscowosc;
			dane[i][8] = JFrGlowne.czytelnicy.get(i).wypożyczone.size();
		}

		
		table = new JTable( dane, nazwy_kolumn );
		// Add the table to a scrolling pane
		scrollPane = new JScrollPane( table );
		topPanel.add( scrollPane, BorderLayout.CENTER );
		JFrGlowne.log.info("Wyświetlono listę czytelników");
		
		this.setSize(800,600);
		this.setVisible(true);
	}

	public void actionPerformed(ActionEvent e)
	{
		
	}

}