/* Research Project: Graphical Database for Category Theory J. Bradbury, Dr. R. Rosebrugh, I. Rutherford Mount Allison University 2001 File: BugFrame.java Description: This file contains contact information for bugs encountered during the operation of the Graphical Database for Category Theory program */ //import statements import java.applet.Applet; import java.awt.*; class BugFrame extends Frame { int check_enter = 0; Button exit = new Button(); Panel button_panel = new Panel(); BorderLayout borderLayout1 = new BorderLayout(); public BugFrame() { setTitle("GDCT: Bug Report"); exit.setLabel("OK"); this.setLayout(borderLayout1); button_panel.add(exit); this.add("South",button_panel); this.setBackground(new Color(192,192,192)); resize(400, 500); } public void paint(Graphics g) { g.drawImage(getToolkit().getImage("images/bug.jpg"), 10, 30, this); Font font1 = new Font("TimesRoman", Font.BOLD, 12); g.setFont(font1); g.drawString("This is the first publicly released version of GDCT", 190, 50); g.drawString("and there are still a few bugs and problems that have", 190, 70); g.drawString("not been corrected.", 190, 90); g.drawString("If you notice any abnormal behavior or incorrect", 190, 110); g.drawString("behavior on the part of the program please check to", 190, 130); g.drawString("see if this is a known bug on the GDCT webpage at", 190, 150); g.setColor(Color.blue); g.drawString("http://cs.mta.ca/research/rosebrugh/gdct/bugs.htm", 190, 170); g.drawLine(190, 172, 445, 172); g.setColor(Color.black); g.drawString("If you do not see your problem listed please click", 190, 190); g.drawString("the Report Bug button on that page and fill out", 190, 210); g.drawString("the provided online form.", 190, 230); g.drawString("Thank you for helping to improve the quality of ", 190, 250); g.drawString("the Graphical Database for Category Theory", 190, 270); g.drawString("software.", 190, 290); // g.drawLine(10, 380, 465, 380); Font font2 = new Font("TimesRoman", Font.PLAIN, 14); g.setFont(font2); } public boolean handleEvent(Event e) { if ((e.id == Event.WINDOW_DESTROY) || (e.id == Event.ACTION_EVENT)) { hide(); //hide frame dispose(); //free resources return true; } if (e.key == Event.ENTER) { if (check_enter == 0) check_enter++; else { hide(); //hide frame dispose(); //free resources } return true; } return super.handleEvent(e); } public boolean action(Event e, Object o) { if ((e.target == exit) || (e.key == Event.ENTER)) { hide(); //hide frame dispose(); //free resources return true; } return false; } }