package gradertool.gradebook;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

/**
 * SISDisplay
 */
public class SISDisplay extends JFrame {
   /**
    * Construct this, per the design explained in the class comment.
    */
   public SISDisplay() {
      JPanel outerBox = new JPanel();
      Box box = Box.createVerticalBox();
      
      box.setPreferredSize(new Dimension(200, 150));
      
      setContentPane(outerBox);
            
      // set up user box
      JLabel line1 = new JLabel("Importing classes from SIS,", JLabel.CENTER);
      line1.setForeground(Color.black);
      
      JLabel line2 = new JLabel("this may take some time,", JLabel.CENTER);
      line2.setForeground(Color.black);
      
      JLabel line3 = new JLabel("please be patient", JLabel.CENTER);
      line3.setForeground(Color.black);
      
      JProgressBar progressBar = new JProgressBar();
      progressBar.setIndeterminate(true);
      
      box.add(Box.createVerticalStrut(25));
      box.add(line1);
      box.add(line2);
      box.add(line3);
      box.add(Box.createVerticalStrut(10));
      box.add(progressBar);
      box.add(Box.createVerticalStrut(25));
      
      // set up outer box (top to bottom)
      outerBox.add(Box.createHorizontalStrut(20));
      outerBox.add(box);
      outerBox.add(Box.createHorizontalStrut(20));

      
      setTitle("Importing from SIS");
      
      pack();
   }
   
   public void start() {
      Timer timer = new Timer(7000, new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            setVisible(false);
            
            GradeSpreadsheetUI gSheet = new GradeSpreadsheetUI();
            gSheet.getGradeSpreadsheetDisplay().setVisible(true);
         }
      });
      timer.setRepeats(false);
      timer.start();
   }
}