JPnlLog.java 3.66 KB
package org.emercit.components;

import java.awt.Color;

import javax.swing.JLabel;
import javax.swing.JButton;

import java.awt.BasicStroke;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GridLayout;
import java.awt.Font;
import java.awt.RenderingHints;
import java.util.ArrayList;
import java.util.Random;
import java.util.TimerTask;
import java.io.*;
import java.awt.Color;

import javax.swing.JLabel;
import javax.swing.JButton;
import javax.swing.JTable;

import java.awt.BasicStroke;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GridLayout;
import java.awt.Font;
import java.awt.RenderingHints;
import java.util.Random;
import java.util.TimerTask;
import java.io.*;

import javax.swing.BorderFactory;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.border.Border;

import org.emercit.model.*;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.util.*;
import java.awt.Toolkit;
import java.net.URL;
import java.nio.*;
import java.net.*;
import java.awt.EventQueue;

import javax.swing.SwingWorker;


import java.awt.GridBagLayout;
import java.awt.GridBagConstraints;
import java.awt.Insets;



import javax.swing.SwingWorker;
import javax.swing.table.TableModel;

import org.emercit.szsterminal.*;

public class JPnlLog extends RoundedPanel3 {

	private JButton btnDown = new JButton();
	private JButton btnUp = new JButton();

	TableModel model = new EventTableModel();

	public JButton btnBtndown = new JButton();
	public JTable table = new JTable(model);

	private int start = 0;
	private int end = 7;

	private void Update() {

		EventTableModel model = (EventTableModel) SZSTerminal.jpnllog.table
				.getModel();
		model.Update(start, end);
		SZSTerminal.jpnllog.table.updateUI();
	}

	private void Up() {

		if (start - 7 <= 0) {
			start = 0;
			end = 7;
			btnUp.setEnabled(false);
		} else {
			end = start;
			start = start - 7;
		}
		Update();
	}

	private void Down() {

		EventTableModel model = (EventTableModel) SZSTerminal.jpnllog.table
				.getModel();
		int valsize = model.getSize();

		if (end + 7 > valsize) {
			start = end;
			end = valsize;
			btnDown.setEnabled(false);
		} else {
			start = end;
			end += 7;
		}

		Update();
	}

	public JPnlLog() {

		btnUp.setEnabled(false);
		this.setBackground(new Color(168, 181, 224));
		this.setLayout(null);

		table.setBounds(5, 5, 760, 350);
		table.setDefaultRenderer(MdlEvent.class, new EventCellRenderer());
		table.setRowHeight(40);
		table.setBackground(new Color(168, 181, 224));

		this.add(table);

		ImageIcon imgUp = new ImageIcon(getClass().getResource("/top.png"));

		btnUp.setIcon(imgUp);

		btnUp.setBounds(5, 355, 370, 100);

		btnUp.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				SwingUtilities.invokeLater(new Runnable() {
					public void run() {
						btnDown.setEnabled(true);
						Up();
					}
				});
			}

		});
		add(btnUp);

		ImageIcon imgDown = new ImageIcon(getClass().getResource("/bottom.png"));
		btnDown.setIcon(imgDown);
		btnDown.setBounds(385, 355, 370, 100);
		btnDown.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {

				SwingUtilities.invokeLater(new Runnable() {
					public void run() {
						btnUp.setEnabled(true);
						Down();
					}
				});
			}
		});

		add(btnDown);
	}

}