JPnlCurrent.java 3.79 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.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 java.util.Comparator;

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 java.util.*;

public class JPnlCurrent extends RoundedPanel3 {

	public class EventComparator1 implements Comparator<MdlEvent> {

	//	@Override
		public int compare(MdlEvent a, MdlEvent b) {

			return Integer.valueOf(a.getIdStatus()).compareTo(
					Integer.valueOf(b.getIdStatus()));
		}
	}
	
	private JButton btnDown = new JButton();
	private JButton btnUp = new JButton();
	private JPanel panel = new JPanel();

	private int start = 0;
	private int end = 9;

	private List<MdlEvent> lstevent;
	
	private EventComparator1 eventComparator1=new EventComparator1();

	public void setListEventCurrent(List<MdlEvent> lstevent)  {
		this.lstevent = lstevent;
		try {
		Update();
		}
		catch(Exception e) {
			
		}
	}



	private void Update()throws Exception {

			Collections.sort(lstevent, eventComparator1);

			panel.removeAll();
			
			int x = 0;
			int y = 10;
			for (int i = start; i < end; i++) {
				
				try {
				
				JPnlAgk agk = new JPnlAgk(lstevent.get(i));

				agk.setBounds(x, y, 240, 105);
				panel.add(agk);
				x += 250;
				if (x > 500) {
					x = 0;
					y += 105;
				}
				}
				catch(Exception e) {
					
				}

			}

		panel.updateUI();
	}

	private void Up() throws Exception {

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

		Update();
	}

	private void Down() throws Exception {

		if (end + 9 > lstevent.size()) {
			start = end;
			end = lstevent.size();
			btnDown.setEnabled(false);

		} else {

			start = end;
			end += 9;
		}

		Update();
	}

	public JPnlCurrent() {

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

		panel.setBounds(5, 5, 740, 350);
		panel.setLayout(null);
		panel.setBackground(new Color(168, 181, 224));

		this.add(panel);

		panel.updateUI();

		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() {
						try {
							btnDown.setEnabled(true);
							Up();
						}
						catch(Exception e) {
							
						}
					}
				});
			}

		});
		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() {
						try { 
							btnUp.setEnabled(true);
							Down();
						}
						catch(Exception e) {
							
						}
					}
				});
			}

		});
		add(btnDown);

	}

}