package gradertool.admin; import javax.swing.*; import java.awt.*; import java.awt.event.*; import gradertool.gradebook.NewClassDisplay; import gradertool.gradebook.NewClassUI; import gradertool.gradebook.GradeSpreadsheetUI; /**** * * Quick Launch display is a quick protyotype of the quick launch menu for the * instructor. It is intended to be displayed in a top-level screen window, it extends * JFrame. */ public class QuickLaunchDisplay extends JFrame { /** * Constructor for the Quick Launch display. */ public QuickLaunchDisplay() { setSize(200, 100); Panel box = new Panel(); Panel outerBox = new Panel(); box.setPreferredSize(new Dimension(200, 400)); box.setLayout(new BoxLayout(box, BoxLayout.Y_AXIS)); outerBox.setLayout(new BoxLayout(outerBox, BoxLayout.X_AXIS)); setContentPane(outerBox); box.add(Box.createHorizontalStrut(3)); Button buttonNewClass = new Button("New Class"); //buttonNewClass.setPreferredSize(new Dimension(200, 100)); box.add(buttonNewClass); box.add(Box.createHorizontalStrut(3)); //box.add(Box.createRigidArea(new Dimension(10,10))); Button buttonOpenClass = new Button("Open Class"); box.add(buttonOpenClass); box.add(Box.createHorizontalStrut(3)); Button buttonRecentClass = new Button("Recent Class"); box.add(buttonRecentClass); box.add(Box.createHorizontalStrut(3)); Button buttonGradeTrends = new Button("Grade Trends"); box.add(buttonGradeTrends); box.add(Box.createHorizontalStrut(3)); outerBox.add(Box.createRigidArea(new Dimension(50,50))); outerBox.add(box); outerBox.add(Box.createRigidArea(new Dimension(100,50))); setTitle("Quick Launch"); newButtonAction(buttonNewClass); openButtonAction(buttonOpenClass); recentButtonAction(buttonRecentClass); gradeTrendsButtonAction(buttonGradeTrends); pack(); } /** * Add the 'New Class' button to the Quick Launch window. */ protected void newButtonAction(Button buttonNewClass) { buttonNewClass.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { NewClassUI newClassUI = new NewClassUI(); newClassUI.getNewClassDisplay().setVisible(true); setVisible(false); } } ); } /** * Add the 'Open Class' button to the Quick Launch window. */ protected void openButtonAction(Button buttonOpenClass) { final Button item = buttonOpenClass; // Used by JFileChooser for placement buttonOpenClass.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { JFileChooser chooser = new JFileChooser(); chooser.showOpenDialog(item); GradeSpreadsheetUI gSheet = new GradeSpreadsheetUI(); gSheet.getGradeSpreadsheetDisplay().setVisible(true); } } ); } /** * Add the 'Recent Classes' button to the Quick Launch window. */ protected void recentButtonAction(Button buttonRecentClass) { buttonRecentClass.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { /* * Print a message */ System.out.println("Show list of Recent Classes."); } } ); } /** * Add the 'Grade Trends Class' button to the Quick Launch window. */ protected void gradeTrendsButtonAction(Button buttonGradeTrends) { buttonGradeTrends.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { /* * Print a message */ System.out.println("Show Grade Trends."); } } ); } }