001 /* BEE - Book Editing Environment for PAVLOV 002 * Copyright (C) 2004 T.J. Willis 003 * 004 * This program is free software; you can redistribute it and/or 005 * modify it under the terms of the GNU General Public License 006 * as published by the Free Software Foundation; either version 2 007 * of the License, or (at your option) any later version. 008 * 009 * This program is distributed in the hope that it will be useful, 010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 012 * GNU General Public License for more details. 013 * 014 * You should have received a copy of the GNU General Public License 015 * along with this program; if not, write to the Free Software 016 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. 017 * 018 * $Header: /cvsroot/pavlov/net/sourceforge/bee/InsertMultipleFrame.java,v 1.3 2004/07/01 05:50:19 tj_willis Exp $ 019 */ 020 package net.sourceforge.bee; 021 022 import javax.swing.*; 023 import java.awt.*; 024 import java.awt.event.*; 025 import net.sourceforge.pavlov.library.*; 026 import java.util.*; 027 028 /** 029 * Inserts multiple blank questions into the chapter being editied. 030 * 031 * @author <a href="mailto:"></a> 032 * @version $Id: InsertMultipleFrame.java,v 1.3 2004/07/01 05:50:19 tj_willis Exp $ 033 */ 034 public class InsertMultipleFrame 035 extends JInternalFrame 036 implements ActionListener 037 { 038 private JLabel lNumber;//, lRandomAnswers;//lDefault 039 private JTextField fNumber;//, fDefault; 040 private JButton bGenerate; 041 //private JRadioButton rRandomAnswers; 042 private ChapterEditor cpan; 043 044 /** 045 * Creates a new <code>InsertMultipleFrame</code> instance. 046 * 047 * @param cPan a <code>ChapterEditor</code> value 048 */ 049 public InsertMultipleFrame(ChapterEditor cPan) 050 { 051 super("Add Blank Questions"); 052 setClosable(true); 053 setDefaultCloseOperation(HIDE_ON_CLOSE); 054 055 cpan = cPan; 056 Container content = getContentPane(); 057 GridLayout g = new GridLayout(4,2); 058 content.setLayout(g); 059 060 lNumber = new JLabel("Number of Questions:"); 061 fNumber = new JTextField("1"); 062 content.add(lNumber); 063 content.add(fNumber); 064 065 // lDefault = new JLabel("Default Question Text:"); 066 // fDefault = new JTextField(); 067 // content.add(lDefault); 068 // content.add(fDefault); 069 070 // rRandomAnswers = new JRadioButton(); 071 // lRandomAnswers = new JLabel("Generate Random Wrong Answers"); 072 // content.add(rRandomAnswers); 073 // content.add(lRandomAnswers); 074 075 bGenerate= new JButton("Generate"); 076 bGenerate.addActionListener(this); 077 content.add(bGenerate); 078 079 pack(); 080 } 081 082 private void generate() 083 { 084 Vector<Question> generated = new Vector<Question>(); 085 try { 086 String s = fNumber.getText(); 087 int n = Integer.parseInt(s); 088 //String d = fDefault.getText(); 089 for(int i=0;i<n;i++) 090 { 091 Question q = Question.makeBlankQuestion(); 092 q.setText(new String("")); 093 q.setId(new String("NOID")); 094 q.setWrongAnswer(new String(""),0); 095 q.setWrongAnswer(new String(""),1); 096 q.setWrongAnswer(new String(""),2); 097 generated.add(q); 098 } 099 cpan.addGenerated(generated); 100 } catch (Exception e) { 101 System.out.println(e); 102 return; 103 } 104 } 105 106 107 /** 108 * Listens for the generate button. 109 * 110 * @param e an <code>ActionEvent</code> value 111 */ 112 public void actionPerformed(ActionEvent e) 113 { 114 if(e.getSource().equals(bGenerate)) 115 generate(); 116 } 117 118 } 119 120 121 122 123 124 125