package cz.muni.fi.bronchus.gui; /* * Tests.java * * Created on May 6, 2004, 9:59 AM */ import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; import javax.swing.event.*; import javax.swing.text.html.*; import javax.swing.table.*; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; import javax.swing.text.*; import java.text.*; import java.io.File; import cz.muni.fi.bronchusio.loader.Loader; import cz.muni.fi.bronchusio.loader.CreatedByOtherToolException; import cz.muni.fi.bronchusio.saver.SaveErrorException; import cz.muni.fi.bronchusio.saver.Saver; import cz.muni.fi.bronchus.questions.*; import java.net.URL; /** * * @author xudrzal */ public class Tests extends MyCentralizedJFrame implements FocusListener { private Vector answerLetters; private static String appName = "Bronchus"; // private static final Color Table_Selection_Background_COLOR_normal = new Color(102, 102, 255); private static final Color Table_Selection_Background_COLOR_normal = new Color(153, 153, 203); private static final Color Table_Header_Background_COLOR = new Color(238, 238, 238); private static final Color Table_Selection_Background_COLOR_modify = new Color(255, 255, 0); private static int[] colwidths={30,150,120,261}; //jQuestionTableList private static int[] colwidthsweighted={30,150,321,60}; //jWeightedTable private static int[] colwidthsSAO4={30,150,341,40}; //jSAOTable4 private static int[] colwidthsSAO5={30,150,291,40,50}; //jSAOTable5 private static int[] colwidthsSAO8_2={291,80,80}; //jSAOTable8_2 private static int[] colwidthsdurations1={30,140,311,60}; //jDurationTable1 private static int[] colwidthsdurations2={240,100,101,100}; //jDurationTable2 private static int[] colwidthsexamfeedbacks={120,440}; //jEFTable private boolean settinguptable5; private boolean settinguptable8_2; // private boolean rozpracovano=false; private boolean questionsHasChanged=false; private boolean loadingfile=false; private int ASSESSMENT=0; private int OBJECT_BANK=1; private int typeOfDocument=ASSESSMENT; //ktera komponenta byla naposledy aktivni -> pro tlacitka emtext, audio, video, image, TeX private Component lastFocusedComponent=null; private Component actualGainedComponent=null; private FocusListener myFocusListener; private KeyListener myKeyListener; private MouseMotionAdapter myMouseMotionAdapter; // private MyTextPaneCellRenderer2 myTextPaneCellRenderer; // private JTextPane prevodni=new JTextPane(); private java.io.File lastDirectory; int activeCard=1; int activeMainCard=1; int countOfQuestions=0; int maxquestion=0; ArrayList questions; MyUtilities myUtilities; MyResources myResources; InfoDialog infoDialog; AdvancedOptionsDialog AOD; ImportQuestionsDialog IQD; RewriteDialog rewriteDialog; PropertiesDialog propertiesDialog; NewFileDialog newFileDialog; MoveQuestionDialog moveQuestionDialog; InsertQuestionDialog insertQuestionDialog; DeleteQuestionDialog deleteQuestionDialog; Question modifyingQuestion=null; Assessment assessment; ObjectBank objectBank; /** Creates new form Tests */ public Tests(Locale locale) { myResources=new MyResources(locale); // if (locale!=null) // setLocale(locale); assessment=new Assessment(); objectBank = new ObjectBank(); questions=new ArrayList(); myUtilities=new MyUtilities(myResources); initComponents(); myInitComponents(); centerInScreen(); infoDialog = new InfoDialog(this,true,myResources); AOD = new AdvancedOptionsDialog(this,true,null,myResources); IQD = new ImportQuestionsDialog(this,true,myResources); rewriteDialog = new RewriteDialog(this,true,myResources); propertiesDialog = new PropertiesDialog(this,true,myResources); newFileDialog = new NewFileDialog(this,true,myResources); moveQuestionDialog = new MoveQuestionDialog(this,true,myResources); insertQuestionDialog = new InsertQuestionDialog(this,true,myResources); deleteQuestionDialog = new DeleteQuestionDialog(this,true,myResources); setTitle(appName + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_-_Assessment")); setSteps(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() {//GEN-BEGIN:initComponents buttonGroup1 = new javax.swing.ButtonGroup(); SAOButtonGroup = new javax.swing.ButtonGroup(); FIBbuttonGroup2 = new javax.swing.ButtonGroup(); jMainPanel = new javax.swing.JPanel(); jAssessmentPanel = new javax.swing.JPanel(); jLabel8 = new javax.swing.JLabel(); jTextField1 = new javax.swing.JTextField(); jPanel2 = new javax.swing.JPanel(); jFeedbacksCheckBox1 = new javax.swing.JCheckBox(); jHintsCheckBox2 = new javax.swing.JCheckBox(); jSolutionsCheckBox3 = new javax.swing.JCheckBox(); jLabel11 = new javax.swing.JLabel(); jLabel12 = new javax.swing.JLabel(); jPanel3 = new javax.swing.JPanel(); jScrollPane4 = new javax.swing.JScrollPane(); jList1 = new javax.swing.JList(); jScrollPane6 = new javax.swing.JScrollPane(); jTextArea3 = new javax.swing.JTextArea(); jPanel4 = new javax.swing.JPanel(); jCheckBox6 = new javax.swing.JCheckBox(); jCheckBox7 = new javax.swing.JCheckBox(); jScrollPane10 = new javax.swing.JScrollPane(); jList3 = new javax.swing.JList(); jLabel29 = new javax.swing.JLabel(); jLabel30 = new javax.swing.JLabel(); jLabel31 = new javax.swing.JLabel(); jScrollPane12 = new javax.swing.JScrollPane(); jSAOTextArea = new javax.swing.JTextArea(); jScrollPane13 = new javax.swing.JScrollPane(); jSAOExampleTextArea = new javax.swing.JTextArea(); jLabel3 = new javax.swing.JLabel(); jEditQuestionsPanel = new javax.swing.JPanel(); jEQPanel = new javax.swing.JPanel(); jTrueFalseButton = new javax.swing.JButton(); jMultipleChoiceButton = new javax.swing.JButton(); jMultipleResponseButton = new javax.swing.JButton(); jFillInBlankButton = new javax.swing.JButton(); jShortAnswerButton = new javax.swing.JButton(); jOrderingObjectsButton = new javax.swing.JButton(); jCombinedButton = new javax.swing.JButton(); jScrollPane1 = new javax.swing.JScrollPane(); jQuestionListTable = new javax.swing.JTable(); jQuestionTitlePanel = new javax.swing.JPanel(); jQuestionTitleLabel = new javax.swing.JLabel(); jPanel1 = new javax.swing.JPanel(); jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jScrollPane2 = new javax.swing.JScrollPane(); jQuestionWordingTextArea = new javax.swing.JTextPane(); jClearFormButton = new javax.swing.JButton(); jQuestionTitleTextField = new javax.swing.JTextField(); QuestionCard = new javax.swing.JPanel(); TrueFalsePanel = new javax.swing.JPanel(); jLabel40 = new javax.swing.JLabel(); jTrueButton1 = new javax.swing.JRadioButton(); jFalseButton1 = new javax.swing.JRadioButton(); jLabel6 = new javax.swing.JLabel(); jComboBox2 = new javax.swing.JComboBox(); jShuffleCheckBox1 = new javax.swing.JCheckBox(); jScrollPane25 = new javax.swing.JScrollPane(); jTextField15 = new javax.swing.JTextPane(); jScrollPane26 = new javax.swing.JScrollPane(); jTextField16 = new javax.swing.JTextPane(); MultipleChoicePanel = new javax.swing.JPanel(); jLabel41 = new javax.swing.JLabel(); jLabel42 = new javax.swing.JLabel(); jComboBox5 = new javax.swing.JComboBox(); jScrollPane14 = new javax.swing.JScrollPane(); jMCAnswerList = new javax.swing.JTable(); jShuffleCheckBox2 = new javax.swing.JCheckBox(); MultipleResponsePanel = new javax.swing.JPanel(); jLabel43 = new javax.swing.JLabel(); jScrollPane15 = new javax.swing.JScrollPane(); jMRAnswerList = new javax.swing.JTable(); jShuffleCheckBox3 = new javax.swing.JCheckBox(); FillInBlankPanel = new javax.swing.JPanel(); jLabel4 = new javax.swing.JLabel(); jScrollPane3 = new javax.swing.JScrollPane(); jFIBTextPane = new javax.swing.JTextPane(); jComboBox1 = new javax.swing.JComboBox(); jLabel7 = new javax.swing.JLabel(); jRadioButton6 = new javax.swing.JRadioButton(); jRadioButton5 = new javax.swing.JRadioButton(); jRadioButton4 = new javax.swing.JRadioButton(); jButton1 = new javax.swing.JButton(); jLabel28 = new javax.swing.JLabel(); ShortAnswerPanel = new javax.swing.JPanel(); jLabel44 = new javax.swing.JLabel(); jComboBox6 = new javax.swing.JComboBox(); jComboBox7 = new javax.swing.JComboBox(); jLabel45 = new javax.swing.JLabel(); OrderingObjectsPanel = new javax.swing.JPanel(); jLabel46 = new javax.swing.JLabel(); jLabel47 = new javax.swing.JLabel(); jComboBox8 = new javax.swing.JComboBox(); jScrollPane16 = new javax.swing.JScrollPane(); jOOItemList = new javax.swing.JTable(); jShuffleCheckBox4 = new javax.swing.JCheckBox(); ConnectingObjectsPanel = new javax.swing.JPanel(); jLabel49 = new javax.swing.JLabel(); jScrollPane11 = new javax.swing.JScrollPane(); jCOItemList1 = new javax.swing.JTable(); jScrollPane17 = new javax.swing.JScrollPane(); jCOItemList2 = new javax.swing.JTable(); jShuffleCheckBox5 = new javax.swing.JCheckBox(); CombinedPanel = new javax.swing.JPanel(); jLabel50 = new javax.swing.JLabel(); jLabel51 = new javax.swing.JLabel(); jComboBox9 = new javax.swing.JComboBox(); jScrollPane18 = new javax.swing.JScrollPane(); jCombAnswerList = new javax.swing.JTable(); jLabel20 = new javax.swing.JLabel(); jComboBox3 = new javax.swing.JComboBox(); jShuffleCheckBox6 = new javax.swing.JCheckBox(); jModifyPanel = new javax.swing.JPanel(); jModifyPanel1 = new javax.swing.JPanel(); jAddIntoListButton = new javax.swing.JButton(); jAddToEndButton = new javax.swing.JButton(); jModifyPanel2 = new javax.swing.JPanel(); jButton4 = new javax.swing.JButton(); jButton5 = new javax.swing.JButton(); jAutomaticResprocessingCB = new javax.swing.JCheckBox(); jImportButton = new javax.swing.JButton(); jDeleteQuestionButton = new javax.swing.JButton(); jMoveQuestionButton = new javax.swing.JButton(); jQuestionInfoButton = new javax.swing.JButton(); jConnectingObjectsButton = new javax.swing.JButton(); jToolBarPanel = new javax.swing.JPanel(); jItalicButton = new javax.swing.JButton(); jImageButton = new javax.swing.JButton(); jAudioButton = new javax.swing.JButton(); jVideoButton = new javax.swing.JButton(); jTeXButton = new javax.swing.JButton(); jAlgPanel = new javax.swing.JPanel(); jWeightedAlgPanel = new javax.swing.JPanel(); jLabel27 = new javax.swing.JLabel(); jLabel32 = new javax.swing.JLabel(); jScrollPane21 = new javax.swing.JScrollPane(); jWeightedTable = new javax.swing.JTable(); jButton11 = new javax.swing.JButton(); jBestKOfNPanel = new javax.swing.JPanel(); jLabel33 = new javax.swing.JLabel(); jLabel34 = new javax.swing.JLabel(); jLabel35 = new javax.swing.JLabel(); jLabel36 = new javax.swing.JLabel(); jFormattedTextField3 = new javax.swing.JFormattedTextField(); jSelectionAndOrderingPanel = new javax.swing.JPanel(); jPanel10 = new javax.swing.JPanel(); jSAODescriptionLabel = new javax.swing.JLabel(); jSAOPanel = new javax.swing.JPanel(); jSAOPanel123 = new javax.swing.JPanel(); jLabel9 = new javax.swing.JLabel(); jScrollPane5 = new javax.swing.JScrollPane(); jSAOTable123 = new javax.swing.JTable(); jLabel5 = new javax.swing.JLabel(); jFormattedTextField1 = new javax.swing.JFormattedTextField(); jSAOPanel4 = new javax.swing.JPanel(); jLabel10 = new javax.swing.JLabel(); jScrollPane7 = new javax.swing.JScrollPane(); jSAOTable4 = new javax.swing.JTable(); jSAOPanel5 = new javax.swing.JPanel(); jLabel13 = new javax.swing.JLabel(); jScrollPane8 = new javax.swing.JScrollPane(); jSAOTable5 = new javax.swing.JTable(); jSAOPanel67 = new javax.swing.JPanel(); jLabel14 = new javax.swing.JLabel(); jScrollPane9 = new javax.swing.JScrollPane(); jSAOTable67 = new javax.swing.JTable(); jLabel16 = new javax.swing.JLabel(); jSAO67CB = new javax.swing.JComboBox(); jFormattedTextField2 = new javax.swing.JFormattedTextField(); jLabel17 = new javax.swing.JLabel(); jLabel19 = new javax.swing.JLabel(); jCountTopicItemsLabel = new javax.swing.JLabel(); jSAOPanel8 = new javax.swing.JPanel(); jLabel15 = new javax.swing.JLabel(); jScrollPane19 = new javax.swing.JScrollPane(); jSAOTable8 = new javax.swing.JTable(); jLabel18 = new javax.swing.JLabel(); jScrollPane20 = new javax.swing.JScrollPane(); jSAOTable8_2 = new javax.swing.JTable(); jButton7 = new javax.swing.JButton(); jButton8 = new javax.swing.JButton(); jButton9 = new javax.swing.JButton(); jPanel6 = new javax.swing.JPanel(); jSAOLabel = new javax.swing.JLabel(); jDurationPanel = new javax.swing.JPanel(); jAssessmentDurPanel = new javax.swing.JPanel(); jLabel37 = new javax.swing.JLabel(); jPanel5 = new javax.swing.JPanel(); jLabel38 = new javax.swing.JLabel(); jFormattedTextField4 = new javax.swing.JFormattedTextField(); jScrollPane22 = new javax.swing.JScrollPane(); jDurationTable1 = new javax.swing.JTable(); jScrollPane23 = new javax.swing.JScrollPane(); jDurationTable2 = new javax.swing.JTable(); jObjectBankDurPanel = new javax.swing.JPanel(); jLabel39 = new javax.swing.JLabel(); jScrollPane27 = new javax.swing.JScrollPane(); jDurObjectBankTable = new javax.swing.JTable(); jExamFeedbacksPanel = new javax.swing.JPanel(); jLabel52 = new javax.swing.JLabel(); jLabel53 = new javax.swing.JLabel(); jEFTerm1CB = new javax.swing.JComboBox(); jEFTerm1FTF = new javax.swing.JFormattedTextField(); jLabel54 = new javax.swing.JLabel(); jEFLabel2 = new javax.swing.JLabel(); jEFTerm2CB = new javax.swing.JComboBox(); jEFTerm2FTF = new javax.swing.JFormattedTextField(); jEFOperatorCB = new javax.swing.JComboBox(); jLabel56 = new javax.swing.JLabel(); jLabel57 = new javax.swing.JLabel(); jEFAddConditionButton = new javax.swing.JButton(); jScrollPane24 = new javax.swing.JScrollPane(); jEFTable = new javax.swing.JTable(); jDeleteEFButton = new javax.swing.JButton(); jButtonPanel = new javax.swing.JPanel(); jNextButton = new javax.swing.JButton(); jBackButton = new javax.swing.JButton(); jStepsLabel = new javax.swing.JLabel(); jHelpTabButton = new javax.swing.JButton(); jMainMenu = new javax.swing.JMenuBar(); jMenu1 = new javax.swing.JMenu(); jNewMenuItem = new javax.swing.JMenuItem(); jOpenMenuItem = new javax.swing.JMenuItem(); jSaveMenuItem = new javax.swing.JMenuItem(); jSeparator1 = new javax.swing.JSeparator(); jExitMenuItem = new javax.swing.JMenuItem(); getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); setTitle(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Tests")); setName("MainFrame"); setResizable(false); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { exitForm(evt); } }); jMainPanel.setLayout(new java.awt.CardLayout()); jMainPanel.setPreferredSize(new java.awt.Dimension(600, 510)); jAssessmentPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jAssessmentPanel.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Assessment"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jAssessmentPanel.setPreferredSize(new java.awt.Dimension(600, 510)); jLabel8.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel8.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "1._Title_of_Exam")); jAssessmentPanel.add(jLabel8, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 30, -1, -1)); jTextField1.setFont(new java.awt.Font("Dialog", 0, 11)); jTextField1.addFocusListener(new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent evt) { jTextField1FocusLost(evt); } }); jAssessmentPanel.add(jTextField1, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 27, 470, -1)); jPanel2.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jPanel2.setBorder(new javax.swing.border.TitledBorder(null, " Questions Setup ", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jFeedbacksCheckBox1.setFont(new java.awt.Font("Dialog", 0, 11)); jFeedbacksCheckBox1.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Feedbacks")); jFeedbacksCheckBox1.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent evt) { jFeedbacksCheckBox1StateChanged(evt); } }); jPanel2.add(jFeedbacksCheckBox1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 20, -1, -1)); jHintsCheckBox2.setFont(new java.awt.Font("Dialog", 0, 11)); jHintsCheckBox2.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Hints")); jHintsCheckBox2.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent evt) { jFeedbacksCheckBox1StateChanged(evt); } }); jPanel2.add(jHintsCheckBox2, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 40, -1, -1)); jSolutionsCheckBox3.setFont(new java.awt.Font("Dialog", 0, 11)); jSolutionsCheckBox3.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Solutions")); jSolutionsCheckBox3.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent evt) { jFeedbacksCheckBox1StateChanged(evt); } }); jPanel2.add(jSolutionsCheckBox3, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 60, -1, -1)); jAssessmentPanel.add(jPanel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 50, 270, 90)); jLabel11.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel11.setText("2."); jAssessmentPanel.add(jLabel11, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 50, -1, -1)); jLabel12.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel12.setText("3."); jAssessmentPanel.add(jLabel12, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 145, -1, -1)); jPanel3.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jPanel3.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Built-In-Algorithms"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 0, 11))); jPanel3.setEnabled(false); jList1.setFont(new java.awt.Font("Dialog", 0, 11)); jList1.setModel(new javax.swing.AbstractListModel() { String[] strings = { "NumberCorrect", "NumberCorrectAttempted", "WeightedNumberCorrect", "WeightedNumberCorrectAttempted", "PercentCorrect", "SumOfScores", "SumOfScoresAttempted", "WeightedSumOfScores", "WeightedSumOfScoresAttempted", "BestKofN" }; public int getSize() { return strings.length; } public Object getElementAt(int i) { return strings[i]; } }); jList1.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION); jList1.addListSelectionListener(new javax.swing.event.ListSelectionListener() { public void valueChanged(javax.swing.event.ListSelectionEvent evt) { jList1ValueChanged(evt); } }); jScrollPane4.setViewportView(jList1); jPanel3.add(jScrollPane4, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 20, 210, 80)); jTextArea3.setEditable(false); jTextArea3.setFont(new java.awt.Font("Dialog", 0, 11)); jTextArea3.setLineWrap(true); jTextArea3.setWrapStyleWord(true); jScrollPane6.setViewportView(jTextArea3); jPanel3.add(jScrollPane6, new org.netbeans.lib.awtextra.AbsoluteConstraints(230, 20, 310, 80)); jAssessmentPanel.add(jPanel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 160, 550, 110)); jPanel4.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jPanel4.setBorder(new javax.swing.border.TitledBorder(null, " Exam Setup ", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jCheckBox6.setFont(new java.awt.Font("Dialog", 0, 11)); jCheckBox6.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Time_restrictions_-_Durations")); jCheckBox6.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent evt) { jCheckBox6StateChanged(evt); } }); jPanel4.add(jCheckBox6, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 20, -1, -1)); jCheckBox7.setFont(new java.awt.Font("Dialog", 0, 11)); jCheckBox7.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Exam_Feedbacks")); jCheckBox7.setEnabled(false); jCheckBox7.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent evt) { jCheckBox6StateChanged(evt); } }); jPanel4.add(jCheckBox7, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 40, -1, -1)); jAssessmentPanel.add(jPanel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 50, 270, 90)); jList3.setFont(new java.awt.Font("Dialog", 0, 11)); jList3.setModel(new javax.swing.AbstractListModel() { String[] strings = { myResources.getBundle("cz/muni/fi/bronchus/bundles/MyUtilitiesBundle", "Sequential_from_all"), myResources.getBundle("cz/muni/fi/bronchus/bundles/MyUtilitiesBundle", "Random_from_all"), myResources.getBundle("cz/muni/fi/bronchus/bundles/MyUtilitiesBundle", "Random_'X'_from_all"), myResources.getBundle("cz/muni/fi/bronchus/bundles/MyUtilitiesBundle", "Random_from_all_+_fixed_positions"), myResources.getBundle("cz/muni/fi/bronchus/bundles/MyUtilitiesBundle", "Random_'X'_from_all_+_fixed_positions"), myResources.getBundle("cz/muni/fi/bronchus/bundles/MyUtilitiesBundle", "Random_from_all_with_specified_Topic"), myResources.getBundle("cz/muni/fi/bronchus/bundles/MyUtilitiesBundle", "Random_'X'_from_all_with_specified_Topic"), myResources.getBundle("cz/muni/fi/bronchus/bundles/MyUtilitiesBundle", "Grouping_into_Sections_according_to_Topic;_Random_'X'_from_'Y'_selection")}; public int getSize() { return strings.length; } public Object getElementAt(int i) { return strings[i]; } }); jList3.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION); jList3.addListSelectionListener(new javax.swing.event.ListSelectionListener() { public void valueChanged(javax.swing.event.ListSelectionEvent evt) { jList3ValueChanged(evt); } }); jScrollPane10.setViewportView(jList3); jAssessmentPanel.add(jScrollPane10, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 290, 550, 70)); jLabel29.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel29.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "4._Select_the_type_of_Selection_and_Order_if_Items")); jAssessmentPanel.add(jLabel29, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 270, -1, -1)); jLabel30.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel30.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Example")); jAssessmentPanel.add(jLabel30, new org.netbeans.lib.awtextra.AbsoluteConstraints(320, 360, -1, -1)); jLabel31.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel31.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Description")); jAssessmentPanel.add(jLabel31, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 360, -1, -1)); jSAOTextArea.setEditable(false); jSAOTextArea.setFont(new java.awt.Font("Dialog", 0, 11)); jSAOTextArea.setLineWrap(true); jSAOTextArea.setWrapStyleWord(true); jScrollPane12.setViewportView(jSAOTextArea); jAssessmentPanel.add(jScrollPane12, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 380, 280, 120)); jSAOExampleTextArea.setEditable(false); jSAOExampleTextArea.setFont(new java.awt.Font("Dialog", 0, 11)); jSAOExampleTextArea.setLineWrap(true); jSAOExampleTextArea.setWrapStyleWord(true); jScrollPane13.setViewportView(jSAOExampleTextArea); jAssessmentPanel.add(jScrollPane13, new org.netbeans.lib.awtextra.AbsoluteConstraints(320, 380, 260, 120)); jLabel3.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel3.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Select_the_Outcomes_Processing_Algorithm")); jAssessmentPanel.add(jLabel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 145, -1, -1)); jMainPanel.add(jAssessmentPanel, "card1"); jEditQuestionsPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jEditQuestionsPanel.setPreferredSize(new java.awt.Dimension(600, 510)); jEQPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jEQPanel.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Editing_Questions"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jEQPanel.setMinimumSize(new java.awt.Dimension(0, 0)); jEQPanel.setPreferredSize(new java.awt.Dimension(600, 480)); jTrueFalseButton.setBackground(new java.awt.Color(153, 153, 203)); jTrueFalseButton.setFont(new java.awt.Font("Dialog", 0, 11)); jTrueFalseButton.setMnemonic(KeyEvent.VK_T); jTrueFalseButton.setText("True/False"); jTrueFalseButton.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); jTrueFalseButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jTrueFalseButton.setMaximumSize(new java.awt.Dimension(116, 24)); jTrueFalseButton.setMinimumSize(new java.awt.Dimension(116, 24)); jTrueFalseButton.setPreferredSize(new java.awt.Dimension(116, 24)); jTrueFalseButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jTrueFalseButtonActionPerformed(evt); } }); jEQPanel.add(jTrueFalseButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 20, -1, -1)); jMultipleChoiceButton.setBackground(new java.awt.Color(153, 153, 203)); jMultipleChoiceButton.setFont(new java.awt.Font("Dialog", 0, 11)); jMultipleChoiceButton.setMnemonic(KeyEvent.VK_C); jMultipleChoiceButton.setText("Multiple Choice"); jMultipleChoiceButton.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); jMultipleChoiceButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jMultipleChoiceButton.setMaximumSize(new java.awt.Dimension(116, 24)); jMultipleChoiceButton.setMinimumSize(new java.awt.Dimension(116, 24)); jMultipleChoiceButton.setPreferredSize(new java.awt.Dimension(116, 24)); jMultipleChoiceButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jMultipleChoiceButtonActionPerformed(evt); } }); jEQPanel.add(jMultipleChoiceButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 44, -1, -1)); jMultipleResponseButton.setBackground(new java.awt.Color(153, 153, 203)); jMultipleResponseButton.setFont(new java.awt.Font("Dialog", 0, 11)); jMultipleResponseButton.setMnemonic(KeyEvent.VK_R); jMultipleResponseButton.setText("Multiple Response"); jMultipleResponseButton.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); jMultipleResponseButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jMultipleResponseButton.setMaximumSize(new java.awt.Dimension(116, 24)); jMultipleResponseButton.setMinimumSize(new java.awt.Dimension(116, 24)); jMultipleResponseButton.setPreferredSize(new java.awt.Dimension(116, 24)); jMultipleResponseButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jMultipleResponseButtonActionPerformed(evt); } }); jEQPanel.add(jMultipleResponseButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 68, -1, -1)); jFillInBlankButton.setBackground(new java.awt.Color(153, 153, 203)); jFillInBlankButton.setFont(new java.awt.Font("Dialog", 0, 11)); jFillInBlankButton.setMnemonic(KeyEvent.VK_F); jFillInBlankButton.setText("Fill-in-blank"); jFillInBlankButton.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); jFillInBlankButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jFillInBlankButton.setMaximumSize(new java.awt.Dimension(116, 24)); jFillInBlankButton.setMinimumSize(new java.awt.Dimension(116, 24)); jFillInBlankButton.setPreferredSize(new java.awt.Dimension(116, 24)); jFillInBlankButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jFillInBlankButtonActionPerformed(evt); } }); jEQPanel.add(jFillInBlankButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 92, -1, -1)); jShortAnswerButton.setBackground(new java.awt.Color(153, 153, 203)); jShortAnswerButton.setFont(new java.awt.Font("Dialog", 0, 11)); jShortAnswerButton.setMnemonic(KeyEvent.VK_S); jShortAnswerButton.setText("Short Answer"); jShortAnswerButton.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); jShortAnswerButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jShortAnswerButton.setMaximumSize(new java.awt.Dimension(116, 24)); jShortAnswerButton.setMinimumSize(new java.awt.Dimension(116, 24)); jShortAnswerButton.setPreferredSize(new java.awt.Dimension(116, 24)); jShortAnswerButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jShortAnswerButtonActionPerformed(evt); } }); jEQPanel.add(jShortAnswerButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 116, -1, -1)); jOrderingObjectsButton.setBackground(new java.awt.Color(153, 153, 203)); jOrderingObjectsButton.setFont(new java.awt.Font("Dialog", 0, 11)); jOrderingObjectsButton.setMnemonic(KeyEvent.VK_O); jOrderingObjectsButton.setText("Ordering Objects"); jOrderingObjectsButton.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); jOrderingObjectsButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jOrderingObjectsButton.setMaximumSize(new java.awt.Dimension(116, 24)); jOrderingObjectsButton.setMinimumSize(new java.awt.Dimension(116, 24)); jOrderingObjectsButton.setPreferredSize(new java.awt.Dimension(116, 24)); jOrderingObjectsButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jOrderingObjectsButtonActionPerformed(evt); } }); jEQPanel.add(jOrderingObjectsButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 140, -1, -1)); jCombinedButton.setBackground(new java.awt.Color(153, 153, 203)); jCombinedButton.setFont(new java.awt.Font("Dialog", 0, 11)); jCombinedButton.setMnemonic(KeyEvent.VK_M); jCombinedButton.setText("Combined"); jCombinedButton.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); jCombinedButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jCombinedButton.setMaximumSize(new java.awt.Dimension(116, 24)); jCombinedButton.setMinimumSize(new java.awt.Dimension(116, 24)); jCombinedButton.setPreferredSize(new java.awt.Dimension(116, 24)); jCombinedButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jCombinedButtonActionPerformed(evt); } }); jEQPanel.add(jCombinedButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 188, -1, -1)); jScrollPane1.setVerticalScrollBarPolicy(javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS); jScrollPane1.setPreferredSize(new java.awt.Dimension(580, 130)); jQuestionListTable.setBorder(new javax.swing.border.TitledBorder("")); jQuestionListTable.setFont(new java.awt.Font("Dialog", 0, 11)); jQuestionListTable.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Format"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording") } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.String.class }; boolean[] canEdit = new boolean [] { false, false, false, false }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jQuestionListTable.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jQuestionListTable.setMaximumSize(new java.awt.Dimension(560, 130)); jQuestionListTable.setMinimumSize(new java.awt.Dimension(560, 130)); jQuestionListTable.setPreferredSize(new java.awt.Dimension(561, 0)); jQuestionListTable.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jQuestionListTableKeyPressed(evt); } }); jQuestionListTable.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jQuestionListTableMouseClicked(evt); } }); jScrollPane1.setViewportView(jQuestionListTable); jEQPanel.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 340, -1, -1)); jQuestionTitlePanel.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.CENTER, 1, 0)); jQuestionTitlePanel.setOpaque(false); jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(135, 15)); jQuestionTitleLabel.setFont(new java.awt.Font("Dialog", 0, 11)); jQuestionTitleLabel.setIcon(new javax.swing.ImageIcon(getClass().getResource("/cz/muni/fi/bronchus/resources/otaznik.gif"))); jQuestionTitleLabel.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "True/False Question")); jQuestionTitleLabel.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT); jQuestionTitleLabel.setOpaque(true); jQuestionTitleLabel.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jQuestionTitleLabelMouseClicked(evt); } }); jQuestionTitlePanel.add(jQuestionTitleLabel); jEQPanel.add(jQuestionTitlePanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(140, 12, -1, -1)); jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jPanel1.setBorder(new javax.swing.border.LineBorder(javax.swing.UIManager.getDefaults().getColor("Button.disabledText"))); jPanel1.setPreferredSize(new java.awt.Dimension(455, 315)); jLabel1.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel1.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title of Question")); jPanel1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 15, -1, -1)); jLabel2.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel2.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording")); jPanel1.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 40, -1, -1)); jScrollPane2.setMaximumSize(new java.awt.Dimension(425, 50)); jScrollPane2.setMinimumSize(new java.awt.Dimension(425, 50)); jScrollPane2.setPreferredSize(new java.awt.Dimension(425, 50)); jQuestionWordingTextArea.setName("jQuestionWordingTextArea"); jQuestionWordingTextArea.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jQuestionWordingTextAreaKeyPressed(evt); } }); jQuestionWordingTextArea.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() { public void mouseMoved(java.awt.event.MouseEvent evt) { jQuestionWordingTextAreaMouseMoved(evt); } }); jScrollPane2.setViewportView(jQuestionWordingTextArea); jPanel1.add(jScrollPane2, new org.netbeans.lib.awtextra.AbsoluteConstraints(22, 60, -1, -1)); jClearFormButton.setFont(new java.awt.Font("Dialog", 0, 11)); jClearFormButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Clear Form")); jClearFormButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jClearFormButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jClearFormButtonActionPerformed(evt); } }); jPanel1.add(jClearFormButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(380, 285, -1, -1)); jQuestionTitleTextField.setFont(new java.awt.Font("Dialog", 0, 11)); jQuestionTitleTextField.setPreferredSize(new java.awt.Dimension(300, 18)); jPanel1.add(jQuestionTitleTextField, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 12, 340, 20)); QuestionCard.setLayout(new java.awt.CardLayout()); QuestionCard.setPreferredSize(new java.awt.Dimension(445, 167)); TrueFalsePanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel40.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel40.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Select Correct Answer")); TrueFalsePanel.add(jLabel40, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 5, -1, -1)); buttonGroup1.add(jTrueButton1); jTrueButton1.setFont(new java.awt.Font("Dialog", 0, 11)); jTrueButton1.setText("A:"); TrueFalsePanel.add(jTrueButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 30, -1, -1)); buttonGroup1.add(jFalseButton1); jFalseButton1.setFont(new java.awt.Font("Dialog", 0, 11)); jFalseButton1.setText("B:"); TrueFalsePanel.add(jFalseButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 70, -1, -1)); jLabel6.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel6.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answer Adjustment")); TrueFalsePanel.add(jLabel6, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 110, -1, -1)); jComboBox2.setFont(new java.awt.Font("Dialog", 0, 11)); jComboBox2.setModel(new javax.swing.DefaultComboBoxModel( new String[] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Vertically"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Horizontally") })); TrueFalsePanel.add(jComboBox2, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 105, -1, -1)); jShuffleCheckBox1.setFont(new java.awt.Font("Dialog", 0, 11)); jShuffleCheckBox1.setSelected(true); jShuffleCheckBox1.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answers Shuffle")); TrueFalsePanel.add(jShuffleCheckBox1, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 105, -1, -1)); jTextField15.setName("jTextField15"); jTextField15.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jQuestionWordingTextAreaKeyPressed(evt); } }); jTextField15.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() { public void mouseMoved(java.awt.event.MouseEvent evt) { jQuestionWordingTextAreaMouseMoved(evt); } }); jScrollPane25.setViewportView(jTextField15); TrueFalsePanel.add(jScrollPane25, new org.netbeans.lib.awtextra.AbsoluteConstraints(50, 27, 390, 24)); jTextField16.setName("jTextField16"); jTextField16.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jQuestionWordingTextAreaKeyPressed(evt); } }); jTextField16.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() { public void mouseMoved(java.awt.event.MouseEvent evt) { jQuestionWordingTextAreaMouseMoved(evt); } }); jScrollPane26.setViewportView(jTextField16); TrueFalsePanel.add(jScrollPane26, new org.netbeans.lib.awtextra.AbsoluteConstraints(50, 70, 390, 24)); QuestionCard.add(TrueFalsePanel, "card1"); MultipleChoicePanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel41.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel41.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answers")); MultipleChoicePanel.add(jLabel41, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 5, -1, -1)); jLabel42.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel42.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Select Correct Answer")); MultipleChoicePanel.add(jLabel42, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 145, -1, -1)); jComboBox5.setFont(new java.awt.Font("Dialog", 0, 11)); jComboBox5.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" })); MultipleChoicePanel.add(jComboBox5, new org.netbeans.lib.awtextra.AbsoluteConstraints(150, 140, -1, -1)); jScrollPane14.setMaximumSize(new java.awt.Dimension(425, 110)); jScrollPane14.setMinimumSize(new java.awt.Dimension(425, 110)); jScrollPane14.setPreferredSize(new java.awt.Dimension(425, 110)); jMCAnswerList.setFont(new java.awt.Font("Dialog", 0, 11)); jMCAnswerList.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {"A", null}, {"B", null}, {"C", null}, {"D", null}, {"E", null}, {"F", null}, {"G", null}, {"H", null}, {"I", null}, {"J", null}, {"K", null}, {"L", null}, {"M", null}, {"N", null}, {"O", null}, {"P", null}, {"Q", null}, {"R", null}, {"S", null}, {"T", null}, {"U", null}, {"V", null}, {"W", null}, {"X", null}, {"Y", null}, {"Z", null} }, new String [] { "", "" } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.Object.class }; boolean[] canEdit = new boolean [] { false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jMCAnswerList.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jMCAnswerList.setFocusCycleRoot(true); jMCAnswerList.setName("jMCAnswerList"); jMCAnswerList.setPreferredSize(new java.awt.Dimension(407, 832)); jMCAnswerList.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jMCAnswerListKeyPressed(evt); } }); jMCAnswerList.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() { public void mouseMoved(java.awt.event.MouseEvent evt) { jMCAnswerListMouseMoved(evt); } }); jScrollPane14.setViewportView(jMCAnswerList); MultipleChoicePanel.add(jScrollPane14, new org.netbeans.lib.awtextra.AbsoluteConstraints(17, 25, -1, -1)); jShuffleCheckBox2.setFont(new java.awt.Font("Dialog", 0, 11)); jShuffleCheckBox2.setSelected(true); jShuffleCheckBox2.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answers Shuffle")); MultipleChoicePanel.add(jShuffleCheckBox2, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 140, -1, -1)); QuestionCard.add(MultipleChoicePanel, "card2"); MultipleResponsePanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel43.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel43.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Enter Answers (And choose the correct answers)")); MultipleResponsePanel.add(jLabel43, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 5, -1, -1)); jScrollPane15.setPreferredSize(new java.awt.Dimension(425, 110)); jMRAnswerList.setFont(new java.awt.Font("Dialog", 0, 11)); jMRAnswerList.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {"A", null, null}, {"B", null, null}, {"C", null, null}, {"D", null, null}, {"E", null, null}, {"F", null, null}, {"G", null, null}, {"H", null, null}, {"I", null, null}, {"J", null, null}, {"K", null, null}, {"L", null, null}, {"M", null, null}, {"N", null, null}, {"O", null, null}, {"P", null, null}, {"Q", null, null}, {"R", null, null}, {"S", null, null}, {"T", null, null}, {"U", null, null}, {"V", null, null}, {"W", null, null}, {"X", null, null}, {"Y", null, null}, {"Z", null, null} }, new String [] { "", "", "" } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.Boolean.class, java.lang.Object.class }; boolean[] canEdit = new boolean [] { false, true, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jMRAnswerList.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jMRAnswerList.setPreferredSize(new java.awt.Dimension(407, 832)); jMRAnswerList.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jMCAnswerListKeyPressed(evt); } }); jScrollPane15.setViewportView(jMRAnswerList); MultipleResponsePanel.add(jScrollPane15, new org.netbeans.lib.awtextra.AbsoluteConstraints(17, 25, -1, -1)); jShuffleCheckBox3.setFont(new java.awt.Font("Dialog", 0, 11)); jShuffleCheckBox3.setSelected(true); jShuffleCheckBox3.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answers Shuffle")); MultipleResponsePanel.add(jShuffleCheckBox3, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 140, -1, -1)); QuestionCard.add(MultipleResponsePanel, "card3"); FillInBlankPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel4.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel4.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answer Wording")); FillInBlankPanel.add(jLabel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 5, -1, -1)); jScrollPane3.setPreferredSize(new java.awt.Dimension(425, 100)); jFIBTextPane.setName("jFIBTextPane"); jFIBTextPane.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jQuestionWordingTextAreaKeyPressed(evt); } public void keyTyped(java.awt.event.KeyEvent evt) { jFIBTextPaneKeyTyped(evt); } }); jFIBTextPane.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() { public void mouseMoved(java.awt.event.MouseEvent evt) { jQuestionWordingTextAreaMouseMoved(evt); } }); jScrollPane3.setViewportView(jFIBTextPane); FillInBlankPanel.add(jScrollPane3, new org.netbeans.lib.awtextra.AbsoluteConstraints(17, 25, -1, 80)); jComboBox1.setFont(new java.awt.Font("Dialog", 0, 11)); jComboBox1.setModel(new javax.swing.DefaultComboBoxModel( new String[] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "1 Char"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "2 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "3 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "4 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "5 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "6 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "7 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "8 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "9 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "10 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "15 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "20 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "25 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "30 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "35 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "40 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "45 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "50 Chars") })); FillInBlankPanel.add(jComboBox1, new org.netbeans.lib.awtextra.AbsoluteConstraints(180, 140, -1, -1)); jLabel7.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel7.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Expected data type:")); FillInBlankPanel.add(jLabel7, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 113, -1, -1)); FIBbuttonGroup2.add(jRadioButton6); jRadioButton6.setFont(new java.awt.Font("Dialog", 0, 11)); jRadioButton6.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Decimal")); FillInBlankPanel.add(jRadioButton6, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 110, -1, -1)); FIBbuttonGroup2.add(jRadioButton5); jRadioButton5.setFont(new java.awt.Font("Dialog", 0, 11)); jRadioButton5.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Integer")); FillInBlankPanel.add(jRadioButton5, new org.netbeans.lib.awtextra.AbsoluteConstraints(230, 110, -1, -1)); FIBbuttonGroup2.add(jRadioButton4); jRadioButton4.setFont(new java.awt.Font("Dialog", 0, 11)); jRadioButton4.setSelected(true); jRadioButton4.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "String")); FillInBlankPanel.add(jRadioButton4, new org.netbeans.lib.awtextra.AbsoluteConstraints(140, 110, -1, -1)); jButton1.setFont(new java.awt.Font("Dialog", 0, 11)); jButton1.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Insert new Input line")); jButton1.setMargin(new java.awt.Insets(2, 2, 2, 2)); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); FillInBlankPanel.add(jButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(280, 140, 160, -1)); jLabel28.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel28.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Max number of characters:")); FillInBlankPanel.add(jLabel28, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 145, -1, -1)); QuestionCard.add(FillInBlankPanel, "card4"); ShortAnswerPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel44.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel44.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Select the size of the answer window")); jLabel44.setPreferredSize(new java.awt.Dimension(210, 14)); ShortAnswerPanel.add(jLabel44, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 5, -1, -1)); jComboBox6.setFont(new java.awt.Font("Dialog", 0, 11)); jComboBox6.setModel(new javax.swing.DefaultComboBoxModel( new String[] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "1 Line"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "2 Lines"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "3 Lines"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "4 Lines"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "5 Lines"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "6 Lines"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "7 Lines"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "8 Lines"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "9 Lines"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "10 Lines") })); ShortAnswerPanel.add(jComboBox6, new org.netbeans.lib.awtextra.AbsoluteConstraints(225, 1, -1, -1)); jComboBox7.setFont(new java.awt.Font("Dialog", 0, 11)); jComboBox7.setModel(new javax.swing.DefaultComboBoxModel( new String[] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "5 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "10 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "15 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "20 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "25 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "30 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "35 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "40 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "45 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "50 Chars") })); ShortAnswerPanel.add(jComboBox7, new org.netbeans.lib.awtextra.AbsoluteConstraints(345, 1, -1, -1)); jLabel45.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel45.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "and")); ShortAnswerPanel.add(jLabel45, new org.netbeans.lib.awtextra.AbsoluteConstraints(315, 5, -1, -1)); QuestionCard.add(ShortAnswerPanel, "card5"); OrderingObjectsPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel46.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel46.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Fill right column with items and middle column with their order (number 1-26)")); OrderingObjectsPanel.add(jLabel46, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 5, -1, -1)); jLabel47.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel47.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Item Adjustment")); OrderingObjectsPanel.add(jLabel47, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 145, -1, -1)); jComboBox8.setFont(new java.awt.Font("Dialog", 0, 11)); jComboBox8.setModel(new javax.swing.DefaultComboBoxModel( new String[] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Vertically"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Horizontally") })); jComboBox8.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jComboBox8ActionPerformed(evt); } }); OrderingObjectsPanel.add(jComboBox8, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 141, -1, -1)); jScrollPane16.setMaximumSize(new java.awt.Dimension(425, 110)); jScrollPane16.setMinimumSize(new java.awt.Dimension(425, 110)); jScrollPane16.setPreferredSize(new java.awt.Dimension(425, 110)); jOOItemList.setFont(new java.awt.Font("Dialog", 0, 11)); jOOItemList.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {"A", null, null}, {"B", null, null}, {"C", null, null}, {"D", null, null}, {"E", null, null}, {"F", null, null}, {"G", null, null}, {"H", null, null}, {"I", null, null}, {"J", null, null}, {"K", null, null}, {"L", null, null}, {"M", null, null}, {"N", null, null}, {"O", null, null}, {"P", null, null}, {"Q", null, null}, {"R", null, null}, {"S", null, null}, {"T", null, null}, {"U", null, null}, {"V", null, null}, {"W", null, null}, {"X", null, null}, {"Y", null, null}, {"Z", null, null} }, new String [] { "", "", "" } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.Object.class, java.lang.Object.class }; boolean[] canEdit = new boolean [] { false, true, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jOOItemList.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jOOItemList.setPreferredSize(new java.awt.Dimension(407, 832)); jOOItemList.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jMCAnswerListKeyPressed(evt); } }); jScrollPane16.setViewportView(jOOItemList); OrderingObjectsPanel.add(jScrollPane16, new org.netbeans.lib.awtextra.AbsoluteConstraints(17, 25, -1, -1)); jShuffleCheckBox4.setFont(new java.awt.Font("Dialog", 0, 11)); jShuffleCheckBox4.setSelected(true); jShuffleCheckBox4.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answers Shuffle")); OrderingObjectsPanel.add(jShuffleCheckBox4, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 140, -1, -1)); QuestionCard.add(OrderingObjectsPanel, "card6"); ConnectingObjectsPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel49.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel49.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Items (see help)")); jLabel49.setHorizontalTextPosition(javax.swing.SwingConstants.LEADING); jLabel49.setVerticalTextPosition(javax.swing.SwingConstants.TOP); ConnectingObjectsPanel.add(jLabel49, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 0, -1, -1)); jCOItemList1.setFont(new java.awt.Font("Dialog", 0, 11)); jCOItemList1.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {"A", null, null}, {"B", null, null}, {"C", null, null}, {"D", null, null}, {"E", null, null}, {"F", null, null}, {"G", null, null}, {"H", null, null}, {"I", null, null}, {"J", null, null}, {"K", null, null}, {"L", null, null}, {"M", null, null}, {"N", null, null}, {"O", null, null}, {"P", null, null}, {"Q", null, null}, {"R", null, null}, {"S", null, null}, {"T", null, null}, {"U", null, null}, {"V", null, null}, {"W", null, null}, {"X", null, null}, {"Y", null, null}, {"Z", null, null} }, new String [] { "", "", "" } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.Integer.class, java.lang.Object.class }; boolean[] canEdit = new boolean [] { false, true, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jCOItemList1.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jCOItemList1.setPreferredSize(new java.awt.Dimension(192, 832)); jCOItemList1.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jMCAnswerListKeyPressed(evt); } }); jScrollPane11.setViewportView(jCOItemList1); ConnectingObjectsPanel.add(jScrollPane11, new org.netbeans.lib.awtextra.AbsoluteConstraints(17, 15, 210, 120)); jCOItemList2.setFont(new java.awt.Font("Dialog", 0, 11)); jCOItemList2.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {new Integer(1), null}, {new Integer(2), null}, {new Integer(3), null}, {new Integer(4), null}, {new Integer(5), null}, {new Integer(6), null}, {new Integer(7), null}, {new Integer(8), null}, {new Integer(9), null}, {new Integer(10), null}, {new Integer(11), null}, {new Integer(12), null}, {new Integer(13), null}, {new Integer(14), null}, {new Integer(15), null}, {new Integer(16), null}, {new Integer(17), null}, {new Integer(18), null}, {new Integer(19), null}, {new Integer(20), null}, {new Integer(21), null}, {new Integer(22), null}, {new Integer(23), null}, {new Integer(24), null}, {new Integer(25), null}, {new Integer(26), null} }, new String [] { "", "" } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.Object.class }; boolean[] canEdit = new boolean [] { false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jCOItemList2.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jCOItemList2.setPreferredSize(new java.awt.Dimension(192, 832)); jCOItemList2.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jMCAnswerListKeyPressed(evt); } }); jCOItemList2.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jCOItemList2MouseClicked(evt); } }); jScrollPane17.setViewportView(jCOItemList2); ConnectingObjectsPanel.add(jScrollPane17, new org.netbeans.lib.awtextra.AbsoluteConstraints(232, 15, 210, 120)); jShuffleCheckBox5.setFont(new java.awt.Font("Dialog", 0, 11)); jShuffleCheckBox5.setSelected(true); jShuffleCheckBox5.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answers Shuffle")); ConnectingObjectsPanel.add(jShuffleCheckBox5, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 140, -1, -1)); QuestionCard.add(ConnectingObjectsPanel, "card7"); CombinedPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel50.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel50.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answers")); CombinedPanel.add(jLabel50, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 5, -1, -1)); jLabel51.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel51.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Select Correct Answer")); CombinedPanel.add(jLabel51, new org.netbeans.lib.awtextra.AbsoluteConstraints(190, 5, -1, -1)); jComboBox9.setFont(new java.awt.Font("Dialog", 0, 11)); jComboBox9.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z=Fill-In-Blank" })); jComboBox9.setPreferredSize(new java.awt.Dimension(80, 23)); CombinedPanel.add(jComboBox9, new org.netbeans.lib.awtextra.AbsoluteConstraints(333, 0, 110, -1)); jScrollPane18.setMaximumSize(new java.awt.Dimension(425, 110)); jScrollPane18.setMinimumSize(new java.awt.Dimension(425, 110)); jScrollPane18.setPreferredSize(new java.awt.Dimension(425, 110)); jCombAnswerList.setFont(new java.awt.Font("Dialog", 0, 11)); jCombAnswerList.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {"A", null}, {"B", null}, {"C", null}, {"D", null}, {"E", null}, {"F", null}, {"G", null}, {"H", null}, {"I", null}, {"J", null}, {"K", null}, {"L", null}, {"M", null}, {"N", null}, {"O", null}, {"P", null}, {"Q", null}, {"R", null}, {"S", null}, {"T", null}, {"U", null}, {"V", null}, {"W", null}, {"X", null}, {"Y", null}, {"Z", null} }, new String [] { "", "" } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.Object.class }; boolean[] canEdit = new boolean [] { false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jCombAnswerList.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jCombAnswerList.setFocusCycleRoot(true); jCombAnswerList.setName("jMCAnswerList"); jCombAnswerList.setPreferredSize(new java.awt.Dimension(407, 832)); jCombAnswerList.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { jMCAnswerListKeyPressed(evt); } }); jScrollPane18.setViewportView(jCombAnswerList); CombinedPanel.add(jScrollPane18, new org.netbeans.lib.awtextra.AbsoluteConstraints(17, 25, -1, -1)); jLabel20.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel20.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Fill-In-Blank Answer - input line size")); CombinedPanel.add(jLabel20, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 145, -1, -1)); jComboBox3.setFont(new java.awt.Font("Dialog", 0, 11)); jComboBox3.setModel(new javax.swing.DefaultComboBoxModel( new String[] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "1 Char"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "2 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "3 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "4 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "5 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "6 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "7 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "8 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "9 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "10 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "15 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "20 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "25 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "30 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "35 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "40 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "45 Chars"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "50 Chars") })); CombinedPanel.add(jComboBox3, new org.netbeans.lib.awtextra.AbsoluteConstraints(220, 140, -1, -1)); jShuffleCheckBox6.setFont(new java.awt.Font("Dialog", 0, 11)); jShuffleCheckBox6.setSelected(true); jShuffleCheckBox6.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Answers Shuffle")); jShuffleCheckBox6.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT); CombinedPanel.add(jShuffleCheckBox6, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 140, -1, -1)); QuestionCard.add(CombinedPanel, "card8"); jPanel1.add(QuestionCard, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 115, -1, -1)); jModifyPanel.setLayout(new java.awt.CardLayout()); jModifyPanel.setPreferredSize(new java.awt.Dimension(180, 30)); jModifyPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jModifyPanel1.setPreferredSize(new java.awt.Dimension(190, 30)); jAddIntoListButton.setFont(new java.awt.Font("Dialog", 0, 11)); jAddIntoListButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Insert")); jAddIntoListButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jAddIntoListButton.setPreferredSize(new java.awt.Dimension(60, 24)); jAddIntoListButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jAddIntoListButtonActionPerformed(evt); } }); jModifyPanel1.add(jAddIntoListButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 3, -1, -1)); jAddToEndButton.setFont(new java.awt.Font("Dialog", 0, 11)); jAddToEndButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Add to End of List")); jAddToEndButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jAddToEndButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jAddToEndButtonActionPerformed(evt); } }); jModifyPanel1.add(jAddToEndButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(3, 3, 105, -1)); jModifyPanel.add(jModifyPanel1, "normal"); jModifyPanel2.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jButton4.setBackground(new java.awt.Color(153, 153, 203)); jButton4.setFont(new java.awt.Font("Dialog", 0, 11)); jButton4.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Save changes")); jButton4.setMargin(new java.awt.Insets(2, 2, 2, 2)); jButton4.setPreferredSize(new java.awt.Dimension(105, 24)); jButton4.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton4ActionPerformed(evt); } }); jModifyPanel2.add(jButton4, new org.netbeans.lib.awtextra.AbsoluteConstraints(3, 3, -1, -1)); jButton5.setBackground(new java.awt.Color(153, 153, 203)); jButton5.setFont(new java.awt.Font("Dialog", 0, 11)); jButton5.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Discard")); jButton5.setMargin(new java.awt.Insets(2, 2, 2, 2)); jButton5.setPreferredSize(new java.awt.Dimension(60, 24)); jButton5.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton5ActionPerformed(evt); } }); jModifyPanel2.add(jButton5, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 3, -1, -1)); jModifyPanel.add(jModifyPanel2, "modify"); jPanel1.add(jModifyPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 282, -1, -1)); jAutomaticResprocessingCB.setFont(new java.awt.Font("Dialog", 0, 11)); jAutomaticResprocessingCB.setSelected(true); jAutomaticResprocessingCB.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "automatic resprocessing")); jPanel1.add(jAutomaticResprocessingCB, new org.netbeans.lib.awtextra.AbsoluteConstraints(190, 287, -1, -1)); jEQPanel.add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(135, 18, -1, -1)); jImportButton.setFont(new java.awt.Font("Dialog", 0, 11)); jImportButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Import Questions")); jImportButton.setToolTipText(""); jImportButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jImportButton.setPreferredSize(new java.awt.Dimension(120, 25)); jImportButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jImportButtonActionPerformed(evt); } }); jEQPanel.add(jImportButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 280, 120, -1)); jDeleteQuestionButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/cz/muni/fi/bronchus/resources/delete.gif"))); jDeleteQuestionButton.setMargin(new java.awt.Insets(4, 14, 2, 14)); jDeleteQuestionButton.setPreferredSize(new java.awt.Dimension(54, 25)); jDeleteQuestionButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jDeleteQuestionButtonActionPerformed(evt); } }); jEQPanel.add(jDeleteQuestionButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(75, 310, 25, 25)); jMoveQuestionButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/cz/muni/fi/bronchus/resources/sipky.gif"))); jMoveQuestionButton.setPreferredSize(new java.awt.Dimension(54, 25)); jMoveQuestionButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jMoveQuestionButtonActionPerformed(evt); } }); jEQPanel.add(jMoveQuestionButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(105, 310, 25, 25)); jQuestionInfoButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/cz/muni/fi/bronchus/resources/info.gif"))); jQuestionInfoButton.setMargin(new java.awt.Insets(4, 14, 2, 14)); jQuestionInfoButton.setPreferredSize(new java.awt.Dimension(54, 25)); jQuestionInfoButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jQuestionInfoButtonActionPerformed(evt); } }); jEQPanel.add(jQuestionInfoButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(45, 310, 25, 25)); jConnectingObjectsButton.setBackground(new java.awt.Color(153, 153, 203)); jConnectingObjectsButton.setFont(new java.awt.Font("Dialog", 0, 11)); jConnectingObjectsButton.setMnemonic(KeyEvent.VK_N); jConnectingObjectsButton.setText("Connecting Objects"); jConnectingObjectsButton.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); jConnectingObjectsButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jConnectingObjectsButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jConnectingObjectsButtonActionPerformed(evt); } }); jEQPanel.add(jConnectingObjectsButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 164, -1, -1)); jEditQuestionsPanel.add(jEQPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 30, -1, -1)); jToolBarPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jToolBarPanel.setBorder(new javax.swing.border.EtchedBorder()); jToolBarPanel.setPreferredSize(new java.awt.Dimension(600, 30)); jItalicButton.setFont(new java.awt.Font("Dialog", 2, 11)); jItalicButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Italic")); jItalicButton.setMargin(new java.awt.Insets(0, 0, 0, 0)); jItalicButton.setName("ToolBarButton"); jItalicButton.setPreferredSize(new java.awt.Dimension(40, 24)); jItalicButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jItalicButtonActionPerformed(evt); } }); jToolBarPanel.add(jItalicButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 3, -1, -1)); jImageButton.setFont(new java.awt.Font("Dialog", 0, 11)); jImageButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Image")); jImageButton.setMargin(new java.awt.Insets(0, 0, 0, 0)); jImageButton.setName("ToolBarButton"); jImageButton.setPreferredSize(new java.awt.Dimension(40, 24)); jImageButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jImageButtonActionPerformed(evt); } }); jToolBarPanel.add(jImageButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(50, 3, 55, -1)); jAudioButton.setFont(new java.awt.Font("Dialog", 0, 11)); jAudioButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Audio")); jAudioButton.setMargin(new java.awt.Insets(0, 0, 0, 0)); jAudioButton.setName("ToolBarButton"); jAudioButton.setPreferredSize(new java.awt.Dimension(40, 24)); jAudioButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jAudioButtonActionPerformed(evt); } }); jToolBarPanel.add(jAudioButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 3, -1, -1)); jVideoButton.setFont(new java.awt.Font("Dialog", 0, 11)); jVideoButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Video")); jVideoButton.setMargin(new java.awt.Insets(0, 0, 0, 0)); jVideoButton.setName("ToolBarButton"); jVideoButton.setPreferredSize(new java.awt.Dimension(40, 24)); jVideoButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jVideoButtonActionPerformed(evt); } }); jToolBarPanel.add(jVideoButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(155, 3, -1, -1)); jTeXButton.setFont(new java.awt.Font("Dialog", 0, 11)); jTeXButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "TeX")); jTeXButton.setMargin(new java.awt.Insets(0, 0, 0, 0)); jTeXButton.setName("ToolBarButton"); jTeXButton.setPreferredSize(new java.awt.Dimension(40, 24)); jTeXButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jTeXButtonActionPerformed(evt); } }); jToolBarPanel.add(jTeXButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(200, 3, -1, -1)); jEditQuestionsPanel.add(jToolBarPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, -1, -1)); jMainPanel.add(jEditQuestionsPanel, "card2"); jAlgPanel.setLayout(new java.awt.CardLayout()); jAlgPanel.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Setting_Alg_properties"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jWeightedAlgPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel27.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel27.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "You have selected an algorithm with weighted...")); jLabel27.setPreferredSize(new java.awt.Dimension(500, 15)); jWeightedAlgPanel.add(jLabel27, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, 580, 30)); jLabel32.setFont(new java.awt.Font("Dialog", 1, 11)); jLabel32.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "List of Questions")); jWeightedAlgPanel.add(jLabel32, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 50, -1, -1)); jWeightedTable.setFont(new java.awt.Font("Dialog", 0, 11)); jWeightedTable.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Weight") } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.Float.class }; boolean[] canEdit = new boolean [] { false, false, false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jWeightedTable.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jWeightedTableMouseClicked(evt); } }); jScrollPane21.setViewportView(jWeightedTable); jWeightedAlgPanel.add(jScrollPane21, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 70, 570, 170)); jButton11.setFont(new java.awt.Font("Dialog", 0, 11)); jButton11.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Reset Weights")); jButton11.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton11ActionPerformed(evt); } }); jWeightedAlgPanel.add(jButton11, new org.netbeans.lib.awtextra.AbsoluteConstraints(463, 250, 120, -1)); jAlgPanel.add(jWeightedAlgPanel, "cardweighted"); jBestKOfNPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel33.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel33.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "You have selected algorithm Best K of N...")); jBestKOfNPanel.add(jLabel33, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1)); jLabel34.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel34.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Count of questions:")); jBestKOfNPanel.add(jLabel34, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 40, -1, -1)); jLabel35.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel35.setText("K:"); jBestKOfNPanel.add(jLabel35, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 60, -1, -1)); jLabel36.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel36.setText("0"); jBestKOfNPanel.add(jLabel36, new org.netbeans.lib.awtextra.AbsoluteConstraints(150, 40, -1, -1)); jFormattedTextField3.setFont(new java.awt.Font("Dialog", 0, 11)); jBestKOfNPanel.add(jFormattedTextField3, new org.netbeans.lib.awtextra.AbsoluteConstraints(150, 57, 50, -1)); jAlgPanel.add(jBestKOfNPanel, "cardbestkofn"); jMainPanel.add(jAlgPanel, "card3"); jSelectionAndOrderingPanel.setLayout(new java.awt.BorderLayout()); jSelectionAndOrderingPanel.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Selection_&_Ordering_tab"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jSelectionAndOrderingPanel.setPreferredSize(new java.awt.Dimension(600, 510)); jPanel10.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jSAODescriptionLabel.setFont(new java.awt.Font("Dialog", 0, 11)); jSAODescriptionLabel.setText("Popis Selection & Ordering"); jSAODescriptionLabel.setVerticalAlignment(javax.swing.SwingConstants.TOP); jPanel10.add(jSAODescriptionLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, 570, 50)); jSAOPanel.setLayout(new java.awt.CardLayout()); jSAOPanel123.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel9.setFont(new java.awt.Font("Dialog", 1, 11)); jLabel9.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "List of Questions")); jSAOPanel123.add(jLabel9, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1)); jScrollPane5.setPreferredSize(new java.awt.Dimension(580, 180)); jSAOTable123.setFont(new java.awt.Font("Dialog", 0, 11)); jSAOTable123.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Format"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording") } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.String.class }; boolean[] canEdit = new boolean [] { false, false, false, false }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jSAOTable123.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jSAOTable123.setEnabled(false); jSAOTable123.setPreferredSize(new java.awt.Dimension(561, 0)); jSAOTable123.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jSAOTable123MouseClicked(evt); } }); jScrollPane5.setViewportView(jSAOTable123); jSAOPanel123.add(jScrollPane5, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 30, -1, -1)); jLabel5.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel5.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Select count of random items:")); jSAOPanel123.add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 220, -1, -1)); jFormattedTextField1.setFont(new java.awt.Font("Dialog", 0, 11)); jFormattedTextField1.setPreferredSize(new java.awt.Dimension(40, 19)); jSAOPanel123.add(jFormattedTextField1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 240, -1, -1)); jSAOPanel.add(jSAOPanel123, "card123"); jSAOPanel4.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel10.setFont(new java.awt.Font("Dialog", 1, 11)); jLabel10.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "List of Questions")); jSAOPanel4.add(jLabel10, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1)); jScrollPane7.setPreferredSize(new java.awt.Dimension(580, 180)); jSAOTable4.setFont(new java.awt.Font("Dialog", 0, 11)); jSAOTable4.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Fixed") } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.Boolean.class }; boolean[] canEdit = new boolean [] { false, false, false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jSAOTable4.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jSAOTable4.setPreferredSize(new java.awt.Dimension(561, 32)); jSAOTable4.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jSAOTable4MouseClicked(evt); } }); jScrollPane7.setViewportView(jSAOTable4); jSAOPanel4.add(jScrollPane7, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 30, -1, -1)); jSAOPanel.add(jSAOPanel4, "card4"); jSAOPanel5.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel13.setFont(new java.awt.Font("Dialog", 1, 11)); jLabel13.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "List of Questions")); jSAOPanel5.add(jLabel13, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1)); jScrollPane8.setPreferredSize(new java.awt.Dimension(580, 180)); jSAOTable5.setFont(new java.awt.Font("Dialog", 0, 11)); jSAOTable5.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Fixed"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Random") } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.Boolean.class, java.lang.Integer.class }; boolean[] canEdit = new boolean [] { false, false, false, true, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jSAOTable5.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jSAOTable5.setPreferredSize(new java.awt.Dimension(561, 32)); jSAOTable5.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jSAOTable5MouseClicked(evt); } }); jScrollPane8.setViewportView(jSAOTable5); jSAOPanel5.add(jScrollPane8, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 30, -1, -1)); jSAOPanel.add(jSAOPanel5, "card5"); jSAOPanel67.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel14.setFont(new java.awt.Font("Dialog", 1, 11)); jLabel14.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "List of Questions")); jSAOPanel67.add(jLabel14, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1)); jScrollPane9.setPreferredSize(new java.awt.Dimension(580, 180)); jSAOTable67.setFont(new java.awt.Font("Dialog", 0, 11)); jSAOTable67.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Format"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording") } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.String.class }; boolean[] canEdit = new boolean [] { false, false, false, false }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jSAOTable67.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jSAOTable67.setEnabled(false); jSAOTable67.setPreferredSize(new java.awt.Dimension(561, 0)); jSAOTable67.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jSAOTable67MouseClicked(evt); } }); jScrollPane9.setViewportView(jSAOTable67); jSAOPanel67.add(jScrollPane9, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 30, -1, -1)); jLabel16.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel16.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Topic = Title of Question...")); jSAOPanel67.add(jLabel16, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 220, -1, -1)); jSAO67CB.setFont(new java.awt.Font("Dialog", 0, 11)); jSAO67CB.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jSAO67CBActionPerformed(evt); } }); jSAOPanel67.add(jSAO67CB, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 240, -1, -1)); jFormattedTextField2.setFont(new java.awt.Font("Dialog", 0, 11)); jFormattedTextField2.setPreferredSize(new java.awt.Dimension(40, 19)); jSAOPanel67.add(jFormattedTextField2, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 287, -1, -1)); jLabel17.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel17.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Select count of random items:")); jSAOPanel67.add(jLabel17, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 290, -1, -1)); jLabel19.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel19.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Count of items of the selected topic:")); jSAOPanel67.add(jLabel19, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 270, -1, -1)); jCountTopicItemsLabel.setFont(new java.awt.Font("Dialog", 0, 11)); jCountTopicItemsLabel.setText("0"); jSAOPanel67.add(jCountTopicItemsLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 270, -1, -1)); jSAOPanel.add(jSAOPanel67, "card67"); jSAOPanel8.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel15.setFont(new java.awt.Font("Dialog", 1, 11)); jLabel15.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "List of Questions")); jSAOPanel8.add(jLabel15, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1)); jScrollPane19.setPreferredSize(new java.awt.Dimension(580, 180)); jSAOTable8.setFont(new java.awt.Font("Dialog", 0, 11)); jSAOTable8.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Format"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording") } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.String.class }; boolean[] canEdit = new boolean [] { false, false, false, false }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jSAOTable8.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); jSAOTable8.setEnabled(false); jSAOTable8.setPreferredSize(new java.awt.Dimension(561, 0)); jSAOTable8.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jSAOTable8MouseClicked(evt); } }); jScrollPane19.setViewportView(jSAOTable8); jSAOPanel8.add(jScrollPane19, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 30, -1, -1)); jLabel18.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel18.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Topic = Title of Question. For each topic...")); jSAOPanel8.add(jLabel18, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 220, -1, -1)); jSAOTable8_2.setFont(new java.awt.Font("Dialog", 0, 11)); jSAOTable8_2.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Topic=Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "# of Items"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "# to display") } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class }; boolean[] canEdit = new boolean [] { true, false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jSAOTable8_2.setPreferredSize(new java.awt.Dimension(451, 0)); jScrollPane20.setViewportView(jSAOTable8_2); jSAOPanel8.add(jScrollPane20, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 240, 470, 140)); jButton7.setFont(new java.awt.Font("Dialog", 0, 11)); jButton7.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Add row")); jButton7.setMargin(new java.awt.Insets(2, 2, 2, 2)); jButton7.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton7ActionPerformed(evt); } }); jSAOPanel8.add(jButton7, new org.netbeans.lib.awtextra.AbsoluteConstraints(490, 270, 90, -1)); jButton8.setFont(new java.awt.Font("Dialog", 0, 11)); jButton8.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Remove row")); jButton8.setMargin(new java.awt.Insets(2, 2, 2, 2)); jButton8.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton8ActionPerformed(evt); } }); jSAOPanel8.add(jButton8, new org.netbeans.lib.awtextra.AbsoluteConstraints(490, 300, 90, -1)); jButton9.setFont(new java.awt.Font("Dialog", 0, 11)); jButton9.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Clear all")); jButton9.setMargin(new java.awt.Insets(2, 2, 2, 2)); jButton9.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton9ActionPerformed(evt); } }); jSAOPanel8.add(jButton9, new org.netbeans.lib.awtextra.AbsoluteConstraints(490, 330, 90, -1)); jSAOPanel.add(jSAOPanel8, "card8"); jPanel10.add(jSAOPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 66, 590, 390)); jSelectionAndOrderingPanel.add(jPanel10, java.awt.BorderLayout.CENTER); jPanel6.setBackground(javax.swing.UIManager.getDefaults().getColor("Button.focus")); jPanel6.setBorder(new javax.swing.border.EtchedBorder(javax.swing.border.EtchedBorder.RAISED)); jPanel6.setPreferredSize(new java.awt.Dimension(14, 30)); jSAOLabel.setText("Nazev Selection & Ordering"); jPanel6.add(jSAOLabel); jSelectionAndOrderingPanel.add(jPanel6, java.awt.BorderLayout.NORTH); jMainPanel.add(jSelectionAndOrderingPanel, "card4"); jDurationPanel.setLayout(new java.awt.CardLayout()); jDurationPanel.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Time_restrictions_-_Durations"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jAssessmentDurPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel37.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel37.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "You can assign durations...")); jLabel37.setPreferredSize(new java.awt.Dimension(425, 14)); jAssessmentDurPanel.add(jLabel37, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 580, 130)); jPanel5.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jPanel5.setBorder(new javax.swing.border.TitledBorder(null, "Selection & Ordering - ", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jLabel38.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel38.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Assessment duration:")); jPanel5.add(jLabel38, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 20, -1, -1)); jFormattedTextField4.setFont(new java.awt.Font("Dialog", 0, 11)); jPanel5.add(jFormattedTextField4, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 18, 50, -1)); jDurationTable1.setFont(new java.awt.Font("Dialog", 0, 11)); jDurationTable1.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Duration") } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.Integer.class }; boolean[] canEdit = new boolean [] { false, false, false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jDurationTable1.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jDurObjectBankTableMouseClicked(evt); } }); jScrollPane22.setViewportView(jDurationTable1); jPanel5.add(jScrollPane22, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 40, 560, 170)); jDurationTable2.setFont(new java.awt.Font("Dialog", 0, 11)); jDurationTable2.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {null, null, null, null}, {null, null, null, null}, {null, null, null, null}, {null, null, null, null} }, new String [] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Section"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "# of Items"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "# to display"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Duration") } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.Integer.class }; boolean[] canEdit = new boolean [] { false, false, false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jScrollPane23.setViewportView(jDurationTable2); jPanel5.add(jScrollPane23, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 220, 560, 110)); jAssessmentDurPanel.add(jPanel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 140, 580, 340)); jDurationPanel.add(jAssessmentDurPanel, "card0"); jObjectBankDurPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel39.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel39.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Here you can assing durations for Questions...")); jObjectBankDurPanel.add(jLabel39, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1)); jDurObjectBankTable.setFont(new java.awt.Font("Dialog", 0, 11)); jDurObjectBankTable.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { "#", myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Title"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Question Wording"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Duration") } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.Integer.class }; boolean[] canEdit = new boolean [] { false, false, false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jDurObjectBankTable.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jDurObjectBankTableMouseClicked(evt); } }); jScrollPane27.setViewportView(jDurObjectBankTable); jObjectBankDurPanel.add(jScrollPane27, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 30, 570, 230)); jDurationPanel.add(jObjectBankDurPanel, "card1"); jMainPanel.add(jDurationPanel, "card5"); jExamFeedbacksPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jExamFeedbacksPanel.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Exam_Feedbacks"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 1, 11))); jLabel52.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel52.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Here you can set up feedbacks for exam...")); jLabel52.setPreferredSize(new java.awt.Dimension(300, 14)); jExamFeedbacksPanel.add(jLabel52, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 20, 580, 130)); jLabel53.setFont(new java.awt.Font("Dialog", 1, 14)); jLabel53.setText("A"); jExamFeedbacksPanel.add(jLabel53, new org.netbeans.lib.awtextra.AbsoluteConstraints(140, 160, -1, -1)); jEFTerm1CB.setFont(new java.awt.Font("Dialog", 0, 11)); jEFTerm1CB.setModel(new javax.swing.DefaultComboBoxModel(new String[] { ">", ">=", "<", "<=", "==", "!=" })); jExamFeedbacksPanel.add(jEFTerm1CB, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 157, -1, -1)); jEFTerm1FTF.setFont(new java.awt.Font("Dialog", 0, 11)); jEFTerm1FTF.setPreferredSize(new java.awt.Dimension(50, 18)); jExamFeedbacksPanel.add(jEFTerm1FTF, new org.netbeans.lib.awtextra.AbsoluteConstraints(220, 160, -1, -1)); jLabel54.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel54.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "1. Create Condition")); jExamFeedbacksPanel.add(jLabel54, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 160, -1, -1)); jEFLabel2.setFont(new java.awt.Font("Dialog", 1, 14)); jEFLabel2.setText("A"); jExamFeedbacksPanel.add(jEFLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(460, 160, 10, -1)); jEFTerm2CB.setFont(new java.awt.Font("Dialog", 0, 11)); jEFTerm2CB.setModel(new javax.swing.DefaultComboBoxModel(new String[] { ">", ">=", "<", "<=", "==", "!=" })); jExamFeedbacksPanel.add(jEFTerm2CB, new org.netbeans.lib.awtextra.AbsoluteConstraints(480, 157, -1, -1)); jEFTerm2FTF.setFont(new java.awt.Font("Dialog", 0, 11)); jEFTerm2FTF.setPreferredSize(new java.awt.Dimension(50, 18)); jExamFeedbacksPanel.add(jEFTerm2FTF, new org.netbeans.lib.awtextra.AbsoluteConstraints(540, 160, -1, -1)); jEFOperatorCB.setFont(new java.awt.Font("Dialog", 0, 11)); jEFOperatorCB.setModel(new javax.swing.DefaultComboBoxModel(new String[] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "one-term_condition"), "&&", "||" })); jEFOperatorCB.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jEFOperatorCBActionPerformed(evt); } }); jExamFeedbacksPanel.add(jEFOperatorCB, new org.netbeans.lib.awtextra.AbsoluteConstraints(300, 157, -1, -1)); jLabel56.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel56.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "You can crete one-term condition...")); jLabel56.setPreferredSize(new java.awt.Dimension(400, 14)); jExamFeedbacksPanel.add(jLabel56, new org.netbeans.lib.awtextra.AbsoluteConstraints(50, 190, 540, 30)); jLabel57.setFont(new java.awt.Font("Dialog", 0, 11)); jLabel57.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "2. Add Condition into table and enter the feedback for it")); jExamFeedbacksPanel.add(jLabel57, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 230, -1, -1)); jEFAddConditionButton.setFont(new java.awt.Font("Dialog", 0, 11)); jEFAddConditionButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Add_Condition")); jEFAddConditionButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jEFAddConditionButtonActionPerformed(evt); } }); jExamFeedbacksPanel.add(jEFAddConditionButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(460, 225, -1, -1)); jEFTable.setFont(new java.awt.Font("Dialog", 0, 11)); jEFTable.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { }, new String [] { myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Condition"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Feedback") } ) { Class[] types = new Class [] { java.lang.String.class, java.lang.String.class }; boolean[] canEdit = new boolean [] { false, true }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jScrollPane24.setViewportView(jEFTable); jExamFeedbacksPanel.add(jScrollPane24, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 260, 580, 150)); jDeleteEFButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/cz/muni/fi/bronchus/resources/delete.gif"))); jDeleteEFButton.setMargin(new java.awt.Insets(4, 14, 2, 14)); jDeleteEFButton.setPreferredSize(new java.awt.Dimension(54, 25)); jDeleteEFButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jDeleteEFButtonActionPerformed(evt); } }); jExamFeedbacksPanel.add(jDeleteEFButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(565, 415, 25, 25)); jMainPanel.add(jExamFeedbacksPanel, "card6"); getContentPane().add(jMainPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, -1, -1)); jButtonPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jButtonPanel.setPreferredSize(new java.awt.Dimension(600, 40)); jButtonPanel.setRequestFocusEnabled(false); jNextButton.setFont(new java.awt.Font("Dialog", 0, 11)); jNextButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Next_>")); jNextButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jNextButton.setPreferredSize(new java.awt.Dimension(70, 25)); jNextButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jNextButtonActionPerformed(evt); } }); jButtonPanel.add(jNextButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(505, 7, 80, -1)); jBackButton.setFont(new java.awt.Font("Dialog", 0, 11)); jBackButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "<_Back")); jBackButton.setEnabled(false); jBackButton.setPreferredSize(new java.awt.Dimension(70, 25)); jBackButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jBackButtonActionPerformed(evt); } }); jButtonPanel.add(jBackButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(410, 7, 80, -1)); jStepsLabel.setFont(new java.awt.Font("Dialog", 0, 11)); jStepsLabel.setText("Step 1 of 1"); jButtonPanel.add(jStepsLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, -1, -1)); jHelpTabButton.setFont(new java.awt.Font("Dialog", 0, 11)); jHelpTabButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "Help")); jHelpTabButton.setMargin(new java.awt.Insets(2, 2, 2, 2)); jHelpTabButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jHelpTabButtonActionPerformed(evt); } }); jButtonPanel.add(jHelpTabButton, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 7, 80, -1)); getContentPane().add(jButtonPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 510, -1, -1)); jMainMenu.setBorder(null); jMenu1.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "File_menu")); jMenu1.setFont(new java.awt.Font("Dialog", 0, 11)); jNewMenuItem.setFont(new java.awt.Font("Dialog", 0, 11)); jNewMenuItem.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "File_menu_new")); jNewMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jNewMenuItemActionPerformed(evt); } }); jMenu1.add(jNewMenuItem); jOpenMenuItem.setFont(new java.awt.Font("Dialog", 0, 11)); jOpenMenuItem.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "File_menu_open")); jOpenMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jOpenMenuItemActionPerformed(evt); } }); jMenu1.add(jOpenMenuItem); jSaveMenuItem.setFont(new java.awt.Font("Dialog", 0, 11)); jSaveMenuItem.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "File_menu_save")); jSaveMenuItem.setEnabled(false); jSaveMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jSaveMenuItemActionPerformed(evt); } }); jMenu1.add(jSaveMenuItem); jMenu1.add(jSeparator1); jExitMenuItem.setFont(new java.awt.Font("Dialog", 0, 11)); jExitMenuItem.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle", "File_menu_exit")); jExitMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jExitMenuItemActionPerformed(evt); } }); jMenu1.add(jExitMenuItem); jMainMenu.add(jMenu1); setJMenuBar(jMainMenu); pack(); }//GEN-END:initComponents private void jConnectingObjectsButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jConnectingObjectsButtonActionPerformed // TODO add your handling code here: setActiveCard(7); }//GEN-LAST:event_jConnectingObjectsButtonActionPerformed private void jHelpTabButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jHelpTabButtonActionPerformed // TODO add your handling code here: infoDialog.setBorderTitle(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Help")); String source="/dokumentace/out/"; if (typeOfDocument==ASSESSMENT) source="/dokumentace/out/ch02s0"+String.valueOf(activeMainCard+1)+".html"; else source="/dokumentace/out/ch03.html"; URL url = Tests.class.getResource(source); infoDialog.setInnerHTML(url); infoDialog.centerInParent(); infoDialog.setVisible(true); }//GEN-LAST:event_jHelpTabButtonActionPerformed private void jComboBox8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBox8ActionPerformed // TODO add your handling code here: }//GEN-LAST:event_jComboBox8ActionPerformed private void jDurObjectBankTableMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jDurObjectBankTableMouseClicked // TODO add your handling code here: if (evt.getClickCount()==2) { int aktualizedItem=(evt.getY())/16; Question q=(Question)questions.get(aktualizedItem); showProperties(q, aktualizedItem); } }//GEN-LAST:event_jDurObjectBankTableMouseClicked private void jItalicButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jItalicButtonActionPerformed // TODO add your handling code here: JTextPane textpane=getLastFocusedTextPane(); if (textpane!=null) textpane.requestFocusInWindow(); }//GEN-LAST:event_jItalicButtonActionPerformed private String getDocumentToolTip(HTMLDocument doc, int pos) { if (doc!=null && pos >= 0) { Element el = doc.getCharacterElement(pos); AttributeSet as = el.getAttributes(); Object name = as.getAttribute(StyleConstants.NameAttribute); if ((name != null) && (name instanceof HTML.Tag)) { HTML.Tag htmlTag = (HTML.Tag) name; String toolTipText = null; if (htmlTag.toString().equalsIgnoreCase("img")) { String typ = (String) as.getAttribute("typ"); if (!typ.equalsIgnoreCase("input")) { String umisteni = as.getAttribute(HTML.Attribute.ALT).toString(); toolTipText = "" + typ + ": " + umisteni + ""; } else { String data = as.getAttribute(HTML.Attribute.DATA).toString(); String localedata=data; if (data.compareTo("String")==0) localedata=myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","String"); if (data.compareTo("Integer")==0) localedata=myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Integer"); if (data.compareTo("Decimal")==0) localedata=myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Decimal"); String velikost = (String) as.getAttribute("velikost"); toolTipText = "Data: " + localedata + "
Size: " + velikost +""; } } return toolTipText; } else return null; } return null; } private void jMCAnswerListMouseMoved(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jMCAnswerListMouseMoved // TODO add your handling code here: /* JTable table = (JTable) evt.getComponent(); if (evt.getX()>20) { int i=(evt.getY()/16); HTMLDocument doc=(HTMLDocument)table.getValueAt(i,1); Point p=new Point(evt.getX()-20,evt.getY()%16); if (doc!=null) { setHTMLKit(prevodni, "", false); prevodni.setDocument(doc); System.out.println(prevodni.getText()); int pos = prevodni.viewToModel(p); System.out.println(p.getX()+" "+p.getY()+" "+pos); table.setToolTipText(getDocumentToolTip(doc, pos)); } }*/ }//GEN-LAST:event_jMCAnswerListMouseMoved private void jQuestionWordingTextAreaMouseMoved(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jQuestionWordingTextAreaMouseMoved // TODO add your handling code here: Component comp = evt.getComponent(); JTextPane textPane = (JTextPane) comp; int pos = textPane.viewToModel(evt.getPoint()); HTMLDocument doc = (HTMLDocument)textPane.getDocument(); textPane.setToolTipText(getDocumentToolTip(doc, pos)); }//GEN-LAST:event_jQuestionWordingTextAreaMouseMoved private void jImportButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jImportButtonActionPerformed // TODO add your handling code here: final JFileChooser fc = new JFileChooser(); String[] xml={"xml"}; // File dir=new File("/home/xudrzal/public_html/diplomka/out/save_load"); fc.setCurrentDirectory(lastDirectory); fc.setFileFilter(new MyFileFilter(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","XML_files"), xml)); fc.setAcceptAllFileFilterUsed(false); fc.setDialogTitle(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Open file")); int val=fc.showOpenDialog(this); if (val==fc.APPROVE_OPTION) { // OK, zvolil se soubor k otevreni java.io.File file=fc.getSelectedFile(); lastDirectory = file.getParentFile(); IQD.centerInParent(); if (IQD.showDialog(file)==IQD.IMPORT_OPTION) { ArrayList imported = IQD.getImportedQuestions(); ((DefaultTableModel)jQuestionListTable.getModel()).setRowCount(jQuestionListTable.getRowCount()+imported.size()); for (int i=0; i(.*)"); try { String text = doc.getText(0, doc.getLength()); System.out.println(text); Matcher matcher = pat.matcher(text); if ((!matcher.find() || matcher.group(1).trim().equals(""))) return true; else return false; } catch (BadLocationException e) { e.printStackTrace(); return true; } if (doc==null) return true; try { System.out.println(doc.getText(0, doc.getLength())); return emptyString(doc.getText(0, doc.getLength())); } catch (BadLocationException e) { e.printStackTrace(); return true; } // if (doc==null) // return true; // else { // setHTMLKit(prevodni, "",false); // prevodni.setDocument(doc); //return isTextPaneEmpty(prevodni); return isHTMLEmpty(doc); // } } */ private boolean isHTMLEmpty(String html) { if (html!=null) { final Pattern pat = Pattern.compile("(?i)(?s)
(.*)
"); Matcher matcher = pat.matcher(html); if ((!matcher.find() || matcher.group(1).trim().equals(""))) return true; else return false; } else return true; } private boolean isTextPaneEmpty(JTextPane textpane) { return isHTMLEmpty(textpane.getText()); /* final Pattern pat = Pattern.compile("(?i)(?s)
(.*)
"); // try { // String text = doc.getText(0, doc.getLength()); String text = textpane.getText(); Matcher matcher = pat.matcher(text); // System.out.println(text+" "+matcher.find()+" "+matcher.group(1).trim().equals("")); if ((!matcher.find() || matcher.group(1).trim().equals(""))) return true; else return false;*/ // } catch (BadLocationException e) { // e.printStackTrace(); // return true; // } // System.out.println(textpane.getText()); // return isEmptyHTMLDocument((HTMLDocument)textpane.getDocument()); } private void insertIconIntoTextPane(String typ, String iconfilename, JTextPane textpane, java.io.File file) { if (textpane!=null) { /* System.out.println(textpane); if (textpane instanceof JTextPane) System.out.println("BUM - textpane"); System.out.println(textpane.getText());*/ HTMLDocument doc=(HTMLDocument)textpane.getDocument(); HTMLEditorKit htmlKit = (HTMLEditorKit)textpane.getEditorKit(); textpane.replaceSelection(""); java.net.URL url=Tests.class.getResource("/cz/muni/fi/bronchus/resources/"+iconfilename); /* System.out.println(file.getAbsolutePath());*/ int offset=textpane.getCaretPosition(); // System.out.println(offset+textpane.getText()); try { /* Element e=doc.getElement("telo"); doc.insertAfterStart(e, "\""+file.getAbsolutePath()+"\""); htmlKit.insertHTML(doc, offset, "\""+file.getAbsolutePath()+"\"", 0, 0, HTML.Tag.IMG); */ if (offset < 2) { int position = offset + 1; doc.insertString(position - 1, " ", null); htmlKit.insertHTML(doc, position, "\""+file.getAbsolutePath()+"\"", 0, 0, HTML.Tag.IMG); doc.remove(position - 1, 1); } else htmlKit.insertHTML(doc, offset, "\""+file.getAbsolutePath()+"\"", 0, 0, HTML.Tag.IMG); } catch (Exception e) { e.printStackTrace(); } } } private JTextPane getLastFocusedTextPane() { /* if (jMCAnswerList.isEditing()) { TableCellEditor c=jMCAnswerList.getColumnModel().getColumn(1).getCellEditor(); return (MyTextPaneCellEditor)c; } if (lastFocusedComponent!=null) { String name=lastFocusedComponent.getName(); lastFocusedComponent=null; if ("jQuestionWordingTextArea".equals(name)) return jQuestionWordingTextArea; if ("jTextField15".equals(name)) return jTextField15; if ("jTextField16".equals(name)) return jTextField16; }*/ if (lastFocusedComponent!=null) { if (lastFocusedComponent instanceof JTextPane) { return (JTextPane) lastFocusedComponent; } /* else { if (jMCAnswerList.isEditing()) { TableCellEditor c=jMCAnswerList.getColumnModel().getColumn(1).getCellEditor(); return (MyTextPaneCellEditor)c; } }*/ } return null; } private void jImageButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jImageButtonActionPerformed // TODO add your handling code here: JTextPane textpane=getLastFocusedTextPane(); if (textpane!=null) { lastFocusedComponent=null; final JFileChooser fc = new JFileChooser(); fc.setCurrentDirectory(lastDirectory); String[] imagefiles={"gif","jpg","jpeg","png"}; fc.addChoosableFileFilter(new MyFileFilter(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","GIFJPGPNG_files"), imagefiles)); fc.setAcceptAllFileFilterUsed(false); int val=fc.showOpenDialog(this); if (val==fc.APPROVE_OPTION) { java.io.File file=fc.getSelectedFile(); lastDirectory = file.getParentFile(); insertIconIntoTextPane("image","image.gif", textpane, file); } textpane.requestFocusInWindow(); } else showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Your_cursor_should...")); }//GEN-LAST:event_jImageButtonActionPerformed private void jAudioButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jAudioButtonActionPerformed // TODO add your handling code here: JTextPane textpane=getLastFocusedTextPane(); if (textpane!=null) { lastFocusedComponent=null; final JFileChooser fc = new JFileChooser(); fc.setCurrentDirectory(lastDirectory); String[] wav={"wav","mp3"}; fc.addChoosableFileFilter(new MyFileFilter(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","WAVMP3_files"), wav)); fc.setAcceptAllFileFilterUsed(false); int val=fc.showOpenDialog(this); if (val==fc.APPROVE_OPTION) { java.io.File file=fc.getSelectedFile(); lastDirectory = file.getParentFile(); insertIconIntoTextPane("audio","audio.gif", textpane, file); } textpane.requestFocusInWindow(); } else showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Your_cursor_should...")); }//GEN-LAST:event_jAudioButtonActionPerformed private void jTeXButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTeXButtonActionPerformed // TODO add your handling code here: JTextPane textpane=getLastFocusedTextPane(); if (textpane!=null) { lastFocusedComponent=null; final JFileChooser fc = new JFileChooser(); fc.setCurrentDirectory(lastDirectory); String[] ps={"ps", "eps"}; fc.addChoosableFileFilter(new MyFileFilter(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","PostScript_files"), ps)); fc.setAcceptAllFileFilterUsed(false); int val=fc.showOpenDialog(this); if (val==fc.APPROVE_OPTION) { java.io.File file=fc.getSelectedFile(); lastDirectory = file.getParentFile(); insertIconIntoTextPane("image","tex.gif", textpane, file); } textpane.requestFocusInWindow(); } else showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Your_cursor_should...")); }//GEN-LAST:event_jTeXButtonActionPerformed private void jVideoButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jVideoButtonActionPerformed // TODO add your handling code here: JTextPane textpane=getLastFocusedTextPane(); if (textpane!=null) { lastFocusedComponent=null; final JFileChooser fc = new JFileChooser(); fc.setCurrentDirectory(lastDirectory); String[] mpg={"mpg","mpeg","avi"}; fc.addChoosableFileFilter(new MyFileFilter(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","MPGAVI_files"), mpg)); fc.setAcceptAllFileFilterUsed(false); int val=fc.showOpenDialog(this); if (val==fc.APPROVE_OPTION) { java.io.File file=fc.getSelectedFile(); lastDirectory = file.getParentFile(); insertIconIntoTextPane("video","video.gif", textpane, file); } textpane.requestFocusInWindow(); } else showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Your_cursor_should...")); }//GEN-LAST:event_jVideoButtonActionPerformed private void jDeleteEFButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jDeleteEFButtonActionPerformed // TODO add your handling code here: if (jEFTable.getSelectedRowCount()!=0) { int[] rows=jEFTable.getSelectedRows(); for (int i=rows.length; i>0; i--) ((DefaultTableModel)jEFTable.getModel()).removeRow(rows[i-1]); } }//GEN-LAST:event_jDeleteEFButtonActionPerformed private boolean checkEFFTFfields() { try { jEFTerm1FTF.commitEdit(); } catch (ParseException e) { } if (jEFTerm1FTF.getValue()==null) { return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_enter_value(s)_for_variable_A")); } if (jEFOperatorCB.getSelectedIndex()>0) { try { jEFTerm2FTF.commitEdit(); } catch (ParseException e) { } if (jEFTerm2FTF.getValue()==null) { return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_enter_value(s)_for_variable_A")); } } return true; } private void jEFAddConditionButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jEFAddConditionButtonActionPerformed // TODO add your handling code here: if (checkEFFTFfields()) { Object i1=jEFTerm1FTF.getValue(); Object i2=jEFTerm2FTF.getValue(); StringBuffer sb=new StringBuffer("A"); sb.append((String)jEFTerm1CB.getSelectedItem()); sb.append(i1.toString()); if (jEFOperatorCB.getSelectedIndex()>0) { sb.append(" ").append((String)jEFOperatorCB.getSelectedItem()).append(" A"); sb.append((String)jEFTerm2CB.getSelectedItem()); sb.append(i2.toString()); } ((DefaultTableModel)jEFTable.getModel()).setRowCount(jEFTable.getRowCount()+1); jEFTable.setValueAt(sb.toString(),jEFTable.getRowCount()-1, 0); jEFTable.setValueAt("",jEFTable.getRowCount()-1, 1); } }//GEN-LAST:event_jEFAddConditionButtonActionPerformed private void jEFOperatorCBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jEFOperatorCBActionPerformed // TODO add your handling code here: int i=jEFOperatorCB.getSelectedIndex(); if (i<1) { jEFLabel2.setVisible(false); jEFTerm2CB.setVisible(false); jEFTerm2FTF.setVisible(false); } else { jEFLabel2.setVisible(true); jEFTerm2CB.setVisible(true); jEFTerm2FTF.setVisible(true); } }//GEN-LAST:event_jEFOperatorCBActionPerformed private void setSteps() { StringBuffer sb=new StringBuffer(); sb.append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Step_")); int actual=0; int max=3; if (typeOfDocument==ASSESSMENT) { int i=getAlgorithmType(); boolean showalgtab=false; if (i==2 || i==3 || i==7 || i==8 || i==9) showalgtab=true; if (activeMainCard==1 || activeMainCard==2 || activeMainCard==3) actual=activeMainCard; if (activeMainCard==4 && showalgtab==false) actual=3; if (activeMainCard==4 && showalgtab==true) actual=4; if (activeMainCard==5) { if (showalgtab==false) actual=4; if (showalgtab==true) actual=5; } if (activeMainCard==6) { if (showalgtab==false) actual=4; if (showalgtab==true) actual=5; if (assessment.isDurationsEnabled()) actual++; } if (showalgtab) max++; if (assessment.isDurationsEnabled()) max++; if (assessment.isExamFeedbacksEnabled()) max++; } if (typeOfDocument==OBJECT_BANK) { actual=(activeMainCard==2) ? 1 : 2; max=2; } sb.append(actual).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_of_")).append(max); jStepsLabel.setText(sb.toString()); } private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton11ActionPerformed // TODO add your handling code here: for (int i=0; i=0; i--) ((DefaultTableModel)jSAOTable8_2.getModel()).removeRow(rows[i]); jSAOTable8_2.clearSelection(); jSAOTable8_2.setPreferredSize(new Dimension(451, jSAOTable8_2.getRowCount()*16)); } }//GEN-LAST:event_jButton8ActionPerformed private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton7ActionPerformed // TODO add your handling code here: ((DefaultTableModel)jSAOTable8_2.getModel()).setRowCount(jSAOTable8_2.getRowCount()+1); jSAOTable8_2.setPreferredSize(new java.awt.Dimension(451, 16*(jSAOTable8_2.getRowCount()))); }//GEN-LAST:event_jButton7ActionPerformed private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton9ActionPerformed // TODO add your handling code here: ((DefaultTableModel)jSAOTable8_2.getModel()).setRowCount(0); jSAOTable8_2.setPreferredSize(new java.awt.Dimension(451, 16*(jSAOTable8_2.getRowCount()))); }//GEN-LAST:event_jButton9ActionPerformed private void jSAOTable5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jSAOTable5MouseClicked // TODO add your handling code here: jSAOTable5.repaint(); int aktualizedItem=(evt.getY())/16; if (evt.getClickCount()==2) { Question q=(Question)questions.get(aktualizedItem); showProperties(q, aktualizedItem); } if (jSAOTable5.getSelectedColumn()==3) { settinguptable5=true; if (isFixedRow(jSAOTable5,aktualizedItem,3)) { int topindex=0; int bottomindex=0; int i=aktualizedItem-1; while (!isFixedRow(jSAOTable5,i,3)) i--; topindex=i; i=aktualizedItem+1; while (!isFixedRow(jSAOTable5,i,3)) i++; bottomindex=i; for (i=topindex+1; i=0)&&(aktualizedItem!=move-1)) { //zpracovani otazek v Arraylist Question q2=(Question)questions.remove(aktualizedItem); if (aktualizedItem=aktualizedItem)&&(move>0)) { move--; } ((DefaultTableModel)jQuestionListTable.getModel()) .moveRow(aktualizedItem, aktualizedItem, move); questionsHasChanged=true; } } private void jMoveQuestionButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMoveQuestionButtonActionPerformed // TODO add your handling code here: if (jQuestionListTable.getSelectedRowCount()>0) { // MoveQuestionDialog MD=new MoveQuestionDialog(this,true); ArrayList list=new ArrayList(); int aktualizedItem=0; for (int i=0; i 0 && i < s.length() - 1) { ext = s.substring(i+1).toLowerCase(); } return ext; } /* kdyz to bude u cizich, tak po sortu kdyz nebude prvni isGenerated, tak musim z nastavenych odpovedi vygenerovat novou, porovnat, jestli se shoduje s jednou z conditions, kdyz ne tak pridat do seznamu a nastavit jako isGenerated, kdyz jo, tak jenom nastavim ji na isGenerated, setridim seznam (aby se dostala na prvni misto) a problem nezahlasim. */ private StringBuffer getRespConditionsErrors(Question q, String qerr, String gen) { StringBuffer errorList = new StringBuffer(); Vector conditions = q.getRespConditions(); java.util.List tmpConditions = new ArrayList(conditions); Collections.sort(tmpConditions); //pokud je v seznamu isGenerated, tak se dostane na prvni misto ResProcessingItem crc1 = (ResProcessingItem)tmpConditions.get(0); if (crc1.isGenerated() && crc1.getCondition().compareTo(gen)!=0) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Entered_answers_don't_correspond_with_generated_resprocessing_condition")).append("\n"); if (!crc1.isGenerated()) { int nalezena=-1; for (int i=0; i_fixed_(new_generated_from_entered_answers)")).append("\n"); } else { ((ResProcessingItem)conditions.get(nalezena)).setGenerated(true); errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_generated_resprocessing_condition_=>_fixed_(old_found,_set_as_generated)")).append("\n"); } Collections.sort(conditions); } return (errorList.length()!=0) ? errorList : null; } private StringBuffer finalCheckAll() { /* TrueFalseQuestion q1 = new TrueFalseQuestion(); q1.setTitle("aa"); q1.setWording("
ddd
"); q1.setAnswer1Wording("
ddd
"); q1.setAnswer2Wording("
ddd
"); ColoredRespCondition c1 = new ColoredRespCondition("A==true",1,true); q1.addRespCondition(c1); // questions.add(q1); // countOfQuestions++; MultipleChoiceQuestion q2 = new MultipleChoiceQuestion(); q2.setTitle("aa"); q2.setWording("
ddd
"); q2.addAnswer("
ddd
"); q2.addAnswer("
ddd
"); q2.addAnswer("
ddd
"); q2.setCorrectAnswer("B"); ColoredRespCondition c2 = new ColoredRespCondition("B==true",1,true); q2.addRespCondition(c2); // questions.add(q2); // countOfQuestions++; MultipleResponseQuestion q3 = new MultipleResponseQuestion(); q3.setTitle("aa"); q3.setWording("
ddd
"); q3.addAnswer("
ddd
", false); q3.addAnswer("
ddd
", false); q3.addAnswer("
ddd
", false); ColoredRespCondition c3 = new ColoredRespCondition("A==false && B==false && C==false",1,true); q3.addRespCondition(c3); // questions.add(q3); // countOfQuestions++; FillInBlankQuestion q4 = new FillInBlankQuestion(); q4.setTitle("aa"); q4.setWording("
ddd
"); ColoredRespCondition c4 = new ColoredRespCondition("A==true",1,true); q4.addRespCondition(c4); // questions.add(q4); // countOfQuestions++; ShortAnswerQuestion q5 = new ShortAnswerQuestion(); q5.setTitle("aa"); q5.setWording("
ddd
"); // questions.add(q5); // countOfQuestions++; OrderingObjectsQuestion q6 = new OrderingObjectsQuestion(); q6.setTitle("aa"); q6.setWording("
ddd
"); q6.addAnswer("a1"); q6.addAnswerOrder("3"); q6.addAnswer("a2"); q6.addAnswerOrder("2"); q6.addAnswer("a3"); q6.addAnswerOrder("1"); ColoredRespCondition c3_1 = new ColoredRespCondition("A==1 && B==false && C==false",1,false); ColoredRespCondition c3_2 = new ColoredRespCondition("A==false && B==false && C==false",1,false); ColoredRespCondition c3_3 = new ColoredRespCondition("A==#3 && B==#2 && C==#1",0,true); q6.addRespCondition(c3_1); q6.addRespCondition(c3_2); q6.addRespCondition(c3_3); // questions.add(q6); // countOfQuestions++; ConnectingObjectsQuestion q7 = new ConnectingObjectsQuestion(); q7.setTitle("aa"); q7.setWording("
ddd
"); questions.add(q7); countOfQuestions++; CombinedQuestion q8 = new CombinedQuestion(); q8.setTitle("aa"); q8.setWording("
ddd
"); // questions.add(q8); // countOfQuestions++; */ /* duration - NE exam feedbacks - NE feedbacks - NE hints - NE solutions - NE algorithms properties - weighting - ANO (kdyz to vyzaduje algoritmus) algorithms properties - bestkofn - ANO (kdyz to vyzaduje algoritmus) questions - title - ANO questions - wording - ANO questions - answers - ANO questions - resprocessing - ANO */ StringBuffer errorList = new StringBuffer(); if (typeOfDocument==ASSESSMENT) { int algorithm = assessment.getAlgorithm(); String bestk = assessment.getBestK(); if (algorithm==9 && emptyString(bestk)) errorList.append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Algorithm_BestKofN_have_no_assigned_K_value")).append("\n"); if (algorithm==9 && !emptyString(bestk)) { int intbestk=Integer.valueOf(bestk).intValue(); if (intbestk<1 || intbestk>countOfQuestions) errorList.append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Algorithm_BestKofN's_value_K_must_be_from_<1,_countOfQuestions>")).append("\n"); } } for (int i=0; i0) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Algorithm_requires_weighting_from_<0.01,_10>")).append("\n"); } } //kontrola otazky - title String title = q.getTitle(); if (emptyString(title)) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Empty_Title")).append("\n"); //kontrola otazky - wording String wording = q.getWording(); if (isHTMLEmpty(wording)) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Empty_Wording")).append("\n"); //kontrola odpovedi if (q instanceof TrueFalseQuestion) { TrueFalseQuestion question = (TrueFalseQuestion)q; String ans1 = question.getAnswer1Wording(); String ans2 = question.getAnswer2Wording(); int ans = question.getCorrectAnswerIndex(); if (isHTMLEmpty(ans1)) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Answer_A_is_empty")).append("\n"); if (isHTMLEmpty(ans2)) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Answer_B_is_empty")).append("\n"); if (ans!=0 && ans!=1) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_correct_answer_selected")).append("\n"); } if (q instanceof MultipleChoiceQuestion) { MultipleChoiceQuestion question = (MultipleChoiceQuestion)q; if (question.getAnswers().size()==0) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_answers_typed")).append("\n"); else if (emptyString(question.getCorrectAnswer())) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_correct_answer_selected")).append("\n"); else { int index=answerLetters.indexOf(question.getCorrectAnswer()); if (index<0 || index>question.getAnswers().size()) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Selected_correct_answer_is_empty")).append("\n"); } } if (q instanceof MultipleResponseQuestion) { MultipleResponseQuestion question = (MultipleResponseQuestion)q; if (question.getAnswersWording().size()==0) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_answers_typed")).append("\n"); else if (question.getAnswersWording().size()!=question.getAnswersTruth().size()) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Number_of_answers's_wording_doesn't_correspond_with_number_or_answers's_trueness")).append("\n"); } if (q instanceof FillInBlankQuestion) { FillInBlankQuestion question = (FillInBlankQuestion)q; if (getCountFIBInputs(question.getAnswer())<=0) errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_fill-in-blank_input_in_answer_")).append("\n"); } if (q instanceof ShortAnswerQuestion) { //kontrola netreba } if (q instanceof OrderingObjectsQuestion) { OrderingObjectsQuestion question = (OrderingObjectsQuestion)q; // boolean chybka=false; if (question.getAnswers().size()==0) { errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_answers_typed")).append("\n"); // chybka=true; } if (question.getOrders().size()==0) { errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_answers's_orders_typed")).append("\n"); // chybka=true; } if (question.getOrders().size()!=question.getAnswers().size()) { errorList.append(qerr).append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Number_of_answers_doesn't_correspond_with_number_of_their_orders")).append("\n"); // chybka=true; } /* if (!chybka) { Vector ans = question.getAnswers(); Vector ord = question.getOrders(); for (int i=0; i=0) { boolean savedok=false; try { if (typeOfDocument==ASSESSMENT) errorList = saver.save(assessment, file, rewrite); if (typeOfDocument==OBJECT_BANK) { ObjectBank bank = new ObjectBank(); bank.addAll(questions); errorList = saver.save(bank, file, rewrite); } savedok=true; } catch (SaveErrorException e) { // e.printStackTrace(); myUtilities.showMessageDialog(this, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Save_file"), e.getMessage(), JOptionPane.ERROR_MESSAGE); } if (errorList != null) { StringBuffer errbuffer=new StringBuffer(); errbuffer.append(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","File_was_saved,_but_with_following_errors:")).append("\n\n"); Set fileNames = errorList.keySet(); for (Iterator i = fileNames.iterator(); i.hasNext(); ) { String fileName = (String) i.next(); Exception err = (Exception) errorList.get(fileName); errbuffer.append(fileName).append(": ").append(err.getMessage()).append("\n\n"); } myUtilities.showErrorDialog(this, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Save_file"), errbuffer.toString()); } else { myUtilities.showMessageDialog(this, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Save_file"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","File_was_successfully_saved"), JOptionPane.INFORMATION_MESSAGE); } if (savedok) { clearAssessmentTab(); assessment=new Assessment(); typeOfDocument=ASSESSMENT; questions.clear(); clearQuestionForm(activeCard); countOfQuestions=0; maxquestion=0; ((DefaultTableModel)jQuestionListTable.getModel()).setRowCount(0); jQuestionListTable.setPreferredSize(new Dimension(jQuestionListTable.getWidth(),0)); jList1.clearSelection(); activeMainCard=1; setActiveMainCard(1); questionsHasChanged=false; setTitle(appName + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_-_Assessment")); jSaveMenuItem.setEnabled(false); closeModifyPanel(); } } } } } private void jSaveMenuItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jSaveMenuItemActionPerformed // TODO add your handling code here: //SAVE action if (activeMainCard==5) { saveDurations(); // System.out.println("OK, ukladam do XML"); saveAlltoXML(); } if (activeMainCard==4) { if (checkSAOValues()) { saveSAO(); // System.out.println("SAO ulozeno"); // System.out.println("OK, ukladam do XML"); saveAlltoXML(); } } }//GEN-LAST:event_jSaveMenuItemActionPerformed private void loadQuestionsToTable() { ((DefaultTableModel)jQuestionListTable.getModel()).setRowCount(countOfQuestions); for (int i=0; i"); Matcher matcher = pat.matcher(text); int pocet=0; while (matcher.find()) pocet++; if (pocet==0) return -1; else return pocet; } else { return -1; } } /* private String getCharInfo(int i) { String output=""; StyledDocument doc = jTextPane1.getStyledDocument(); Element e=doc.getCharacterElement(i); AttributeSet a=e.getAttributes(); Object attr = a.getAttribute("name"); if (((String)attr).compareTo("input")==0) { Object attr2=a.getAttribute("size"); Object attr3=a.getAttribute("datatype"); output+="TYP: \n"; } else { output+="TYP: char\n"; } // for (Enumeration en = a.getAttributeNames() ; en.hasMoreElements() ;) { // Object s1=en.nextElement(); // Object s2=a.getAttribute(s1); // output+=s1+": "+s2+"\n"; // } // output+="==================\n"; return output; }*/ private void jFIBTextPaneKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jFIBTextPaneKeyTyped // TODO add your handling code here: /* StyledDocument doc = jTextPane1.getStyledDocument(); Character c = new Character(evt.getKeyChar()); char keyHit = evt.getKeyChar(); int keyCode = evt.getKeyCode(); // do not attempt to validate control characters if (!Character.isISOControl(keyHit)){ if (jTextPane1.getCaretPosition()!=doc.getLength()) { //neboli kdyz nejsem na konci dokumentu, pak evt.consume(); try { Style s=myUtilities.getCharStyle(jTextPane1.getStyledDocument(),jTextPane1.getCaretPosition()); if (s.getName().compareTo("input")!=0) { doc.insertString(jTextPane1.getCaretPosition(),c.toString(), s); doc.setCharacterAttributes(jTextPane1.getCaretPosition()-1,1,s,true); } else { //jsem pred inputem if (jTextPane1.getCaretPosition()!=0) { s=myUtilities.getCharStyle(jTextPane1.getStyledDocument(),jTextPane1.getCaretPosition()-1); doc.insertString(jTextPane1.getCaretPosition(),c.toString(), s); doc.setCharacterAttributes(jTextPane1.getCaretPosition()-2,1,s,true); } else { Style regular = doc.addStyle("normal", null); StyleConstants.setFontFamily(regular, "SansSerif"); regular.addAttribute("name", "normal"); try { doc.insertString(0,c.toString(),regular); } catch (Exception ex){ ex.printStackTrace(); } } } } catch (Exception ex) { ex.printStackTrace(); } } else { //jsem na konci dokumentu, pak evt.consume(); Style regular = doc.addStyle("normal", null); StyleConstants.setFontFamily(regular, "SansSerif"); regular.addAttribute("name", "normal"); try { doc.insertString(doc.getLength(),c.toString(),regular); } catch (Exception ex){ ex.printStackTrace(); } } }*/ }//GEN-LAST:event_jFIBTextPaneKeyTyped private void jFeedbacksCheckBox1StateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_jFeedbacksCheckBox1StateChanged // TODO add your handling code here: if (!loadingfile) { AOD.setFHS(jFeedbacksCheckBox1.isSelected(), jHintsCheckBox2.isSelected(), jSolutionsCheckBox3.isSelected()); assessment.setFeedbacksEnabled(jFeedbacksCheckBox1.isSelected()); assessment.setHintsEnabled(jHintsCheckBox2.isSelected()); assessment.setSolutionsEnabled(jSolutionsCheckBox3.isSelected()); } }//GEN-LAST:event_jFeedbacksCheckBox1StateChanged private void jList3ValueChanged(javax.swing.event.ListSelectionEvent evt) {//GEN-FIRST:event_jList3ValueChanged // TODO add your handling code here: if (jList3.getSelectedIndex()!=-1) { jSAOTextArea.setText(myUtilities.getSAODesc(jList3.getSelectedIndex())); jSAOExampleTextArea.setText(myUtilities.getSAOExample(jList3.getSelectedIndex())); } else { jSAOTextArea.setText(""); jSAOExampleTextArea.setText(""); } if (!loadingfile) { assessment.setOrdering(jList3.getSelectedIndex()); assessment.clearItems(); } questionsHasChanged=true; setActiveSAOCard(assessment.getOrdering()); setSteps(); jList3.ensureIndexIsVisible(jList3.getSelectedIndex()); }//GEN-LAST:event_jList3ValueChanged private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed // TODO add your handling code here: if (checkInsertedValues(activeCard)) addQuestion(activeCard,2); }//GEN-LAST:event_jButton4ActionPerformed private void closeModifyPanel() { modifyingQuestion=null; ((CardLayout)jModifyPanel.getLayout()).show(jModifyPanel,"normal"); jQuestionListTable.setSelectionBackground(Table_Selection_Background_COLOR_normal); jQuestionListTable.setEnabled(true); } private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed // TODO add your handling code here: closeModifyPanel(); }//GEN-LAST:event_jButton5ActionPerformed private void jQuestionTitleLabelMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jQuestionTitleLabelMouseClicked // TODO add your handling code here: if ((evt.getButton()==evt.BUTTON1)&&(evt.getX()>jQuestionTitleLabel.getWidth()-14)) { //ukaz napovedu k otazce infoDialog.setBorderTitle(jQuestionTitleLabel.getText()); URL url = Tests.class.getResource("/dokumentace/out/ch04s0"+activeCard+".html"); infoDialog.setInnerHTML(url); infoDialog.centerInParent(); infoDialog.setVisible(true); } }//GEN-LAST:event_jQuestionTitleLabelMouseClicked private void jList1ValueChanged(javax.swing.event.ListSelectionEvent evt) {//GEN-FIRST:event_jList1ValueChanged // TODO add your handling code here: // if (!loadingfile) { if (jList1.getSelectedIndex()!=-1) { jTextArea3.setText(myUtilities.getAlgDesc(jList1.getSelectedIndex())); jCheckBox7.setEnabled(true); } else { jTextArea3.setText(""); jCheckBox7.setSelected(false); jCheckBox7.setEnabled(false); } assessment.setAlgorithm(jList1.getSelectedIndex()); AOD.setAlgorithm(jList1.getSelectedIndex()); setSteps(); jList1.ensureIndexIsVisible(jList1.getSelectedIndex()); // } }//GEN-LAST:event_jList1ValueChanged private void clearAssessmentTab() { jTextField1.setText(""); jFeedbacksCheckBox1.setSelected(false); jHintsCheckBox2.setSelected(false); jSolutionsCheckBox3.setSelected(false); jCheckBox6.setSelected(false); jCheckBox7.setSelected(false); jList1.setSelectedIndex(-1); jList3.setSelectedIndex(0); AOD.setFHS(false,false,false); AOD.setAlgorithm(-1); } private void showNFD() { // NewFileDialog NFD=new NewFileDialog(this,true); newFileDialog.centerInParent(); int choice=newFileDialog.showDialog(); if (choice!=-1) { if (choice==newFileDialog.ObjectBank_OPTION) { clearAssessmentTab(); objectBank = new ObjectBank(); typeOfDocument=OBJECT_BANK; setTitle(appName + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_-_Object Bank")); } if (choice==newFileDialog.AssessmentBasic_OPTION) { clearAssessmentTab(); assessment=new Assessment(); jList1.clearSelection(); typeOfDocument=ASSESSMENT; setTitle(appName + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_-_Assessment")); } if (choice==newFileDialog.Assessment_SEQ_SUM_OPTION) { clearAssessmentTab(); assessment=new Assessment(); jList1.setSelectedIndex(5); jList3.setSelectedIndex(0); typeOfDocument=ASSESSMENT; setTitle(appName + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_-_Assessment")); } if (choice==newFileDialog.Assessment_RAND_SUM_OPTION) { clearAssessmentTab(); assessment=new Assessment(); jList1.setSelectedIndex(5); jList3.setSelectedIndex(1); typeOfDocument=ASSESSMENT; setTitle(appName + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_-_Assessment")); } if (choice==newFileDialog.Assessment_SEQ_NUM_OPTION) { clearAssessmentTab(); assessment=new Assessment(); jList1.setSelectedIndex(0); jList3.setSelectedIndex(0); typeOfDocument=ASSESSMENT; setTitle(appName + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_-_Assessment")); } if (choice==newFileDialog.Assessment_RAND_NUM_OPTION) { clearAssessmentTab(); assessment=new Assessment(); jList1.setSelectedIndex(0); jList3.setSelectedIndex(1); typeOfDocument=ASSESSMENT; setTitle(appName + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_-_Assessment")); } // rozpracovano=true; clearQuestionForm(activeCard); questions.clear(); countOfQuestions=0; maxquestion = 0; ((DefaultTableModel)jQuestionListTable.getModel()).setRowCount(0); jQuestionListTable.setPreferredSize(new Dimension(jQuestionListTable.getWidth(),0)); activeCard=1; activeMainCard = (typeOfDocument==ASSESSMENT) ? 1 : 2; closeModifyPanel(); setActiveCard(activeCard); setActiveMainCard(activeMainCard); if (typeOfDocument==OBJECT_BANK) { AOD.setFHS(true,true,true); AOD.setAlgorithm(5); } } } private void jNewMenuItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jNewMenuItemActionPerformed // TODO add your handling code here: //NEW action // if (rozpracovano) { if (myUtilities.showAnswerDialog(this, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Warning"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_are_creating_Assessment_or_Object_Bank.
") + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","If_you_choose_OK,_your_changes_will_be_lost,_") + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","do_you_want_to_continue?"))==JOptionPane.OK_OPTION) showNFD(); // } else { // showNFD(); // } }//GEN-LAST:event_jNewMenuItemActionPerformed private void jBackButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBackButtonActionPerformed // TODO add your handling code here: //TLACITKO BACK if (activeMainCard==4) { int type=getSAOType(); if ((type==3 && jSAOTable4.getRowCount()!=0) || (type==4 && jSAOTable5.getRowCount()!=0) || (type==7 && jSAOTable8_2.getRowCount()!=0)) { int i=myUtilities.showAnswerDialog(this, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Confirm_Changes"), myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Changes_could_be_lost,_do_you_want_to_continue?")); if (i==JOptionPane.NO_OPTION) return; } } if (activeMainCard==2) { jBackButton.setEnabled(false); jNextButton.setEnabled(true); activeMainCard=1; } if (activeMainCard==3) { activeMainCard=2; questionsHasChanged=false; } if (activeMainCard==4) { jNextButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Next_>")); jSaveMenuItem.setEnabled(false); int i=getAlgorithmType(); if (i!=2 && i!=3 && i!=7 && i!=8 && i!=9) { activeMainCard=2; questionsHasChanged=false; } else activeMainCard=3; } if (activeMainCard==5) { if (typeOfDocument==ASSESSMENT) { //Assessent jNextButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Next_>")); jSaveMenuItem.setEnabled(false); activeMainCard=4; } else { //Object Bank jNextButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Next_>")); jBackButton.setEnabled(false); jSaveMenuItem.setEnabled(false); activeMainCard=2; } } if (activeMainCard==6) { jNextButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Next_>")); jSaveMenuItem.setEnabled(false); if (jCheckBox6.isSelected()) activeMainCard=5; else activeMainCard=4; } setActiveMainCard(activeMainCard); }//GEN-LAST:event_jBackButtonActionPerformed //nahraje otazky z QuestionListTable do cilove tabulky (SAOTable123, 6 nebo 7) private void loadAllQuestionToSAO(JTable table) { /* TableModel model=jQuestionListTable.getModel(); table.setModel(model); for (int i=0; i<4; i++) table.getColumnModel().getColumn(i).setPreferredWidth(colwidths[i]); DefaultTableCellRenderer cr=new DefaultTableCellRenderer(); cr.setHorizontalAlignment(SwingConstants.CENTER); cr.setBackground(Table_Header_Background_COLOR); table.getColumnModel().getColumn(0).setCellRenderer(cr); table.setPreferredSize(new Dimension(560, 16*(countOfQuestions)));*/ // table.repaint(); ((DefaultTableModel)table.getModel()).setRowCount(countOfQuestions); for (int row=0; row0) for (int i=0; i=n) return ((cz.muni.fi.bronchus.questions.Section)aaa).getCountOfRandomItems(); } else { counter++; } } return 0; } private void setActiveSAOCard(int type) { if (type==0 || type==1 || type==2) ((CardLayout)jSAOPanel.getLayout()).show(jSAOPanel,"card123"); if (type==3) ((CardLayout)jSAOPanel.getLayout()).show(jSAOPanel,"card4"); if (type==4) ((CardLayout)jSAOPanel.getLayout()).show(jSAOPanel,"card5"); if (type==5 || type==6) ((CardLayout)jSAOPanel.getLayout()).show(jSAOPanel,"card67"); if (type==7) ((CardLayout)jSAOPanel.getLayout()).show(jSAOPanel,"card8"); } private void setSAO() { // System.out.println("setSAO"); int type=getSAOType(); jSAODescriptionLabel.setText(""+myUtilities.getSAODesc(type)+""); Vector assdata=assessment.getData(); boolean tryload=false; if (assdata.isEmpty()==false) tryload=true; if (type==0 || type==1 || type==2) { loadAllQuestionToSAO(jSAOTable123); if (type==0 || type==1) { jLabel5.setVisible(false); jFormattedTextField1.setVisible(false); } else { jLabel5.setVisible(true); jFormattedTextField1.setVisible(true); if (tryload) { cz.muni.fi.bronchus.questions.Section sekcemain=(cz.muni.fi.bronchus.questions.Section)assessment.getData().get(0); int random=sekcemain.getCountOfRandomItems(); if (random!=-1) jFormattedTextField1.setText(String.valueOf(random)); } } } if (type==3) { ((DefaultTableModel)jSAOTable4.getModel()).setRowCount(countOfQuestions); for (int i=0; i0) { counter++; Question aaa2 = (Question) ((cz.muni.fi.bronchus.questions.Section)aaa).getData().get(0); String title=aaa2.getTitle(); if (!emptyString(title)) { ((DefaultTableModel)jSAOTable8_2.getModel()).setRowCount(counter); jSAOTable8_2.setValueAt(title, counter-1, 0); jSAOTable8_2.setValueAt(Integer.valueOf(getTitleItems(title)), counter-1, 1); jSAOTable8_2.setValueAt(Integer.valueOf(randomcount), counter-1, 2); } } } } jSAOTable8_2.setPreferredSize(new java.awt.Dimension(451, 16*(jSAOTable8_2.getRowCount()))); } } setActiveSAOCard(type); } private int getCountOfFixed(JTable table, int column) { int count=0; for (int i=0; i0 && i.intValue()<=countOfQuestions)) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Count_of_random_items_must_be_from_1_to_")+String.valueOf(countOfQuestions)); } break; case 3: if (getCountOfFixed(jSAOTable4, 3)==0) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_either_select_some_fixed_items_or_choose_the_
") + ""+myUtilities.getSAO(1)+myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_type_of_Selection_&_Ordering")); if (getCountOfFixed(jSAOTable4, 3)==countOfQuestions) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","All_items_cannot_be_marked_as_fixed._Choose_the_
") + ""+myUtilities.getSAO(0)+myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_type_of_Selection_&_Ordering")); break; case 4: if (getCountOfFixed(jSAOTable5, 3)==0) { return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_either_select_some_fixed_items_or_choose_the_
") + ""+myUtilities.getSAO(2)+myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_type_of_Selection_&_Ordering")); } else if (getCountOfFixed(jSAOTable5, 3)==countOfQuestions) { return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","All_items_cannot_be_marked_as_fixed._Choose_the_
") + ""+myUtilities.getSAO(0)+myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_type_of_Selection_&_Ordering")); } else { int lastfixed=-1; for (int j=0; j<=jSAOTable5.getRowCount(); j++) { if (isFixedRow(jSAOTable5,j,3)) { if (j-lastfixed!=1) { if (j-lastfixed==2) { if (((Integer)jSAOTable5.getValueAt(j-1, 4)).intValue()!=1) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Error_filling_the_table._See_help")); } else { for (int k=lastfixed+2; k0 && value.intValue()<=items)) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Count_of_random_items_must_be_from_1_to_")+String.valueOf(items)); } break; case 7: int count=getDistinctTitlesCount(); if (countYou_didn't_fill_the_count_of_random_items_to_display
(rightmost_column_in_") + myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","table_with_topics)")); String a1=(String)jSAOTable8_2.getValueAt(j,0); for (int k=0; k0 && i.intValue()<=countOfQuestions)) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Count_of_random_items_must_be_from_1_to_")+String.valueOf(countOfQuestions)); } } return true; } private void setDurations() { if (typeOfDocument==ASSESSMENT) { ((TitledBorder)jPanel5.getBorder()).setTitle(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Selection_&_Ordering_-_")+myUtilities.getSAO(assessment.getOrdering())); String ad=assessment.getDuration(); if (!(emptyString(ad))) jFormattedTextField4.setText(ad); ((DefaultTableModel)jDurationTable1.getModel()).setRowCount(countOfQuestions); for (int i=0; i=0; i--) { questions.remove(rows[i]); ((DefaultTableModel)jQuestionListTable.getModel()).removeRow(rows[i]); countOfQuestions--; } jQuestionListTable.clearSelection(); jQuestionListTable.setPreferredSize( new Dimension(560, jQuestionListTable.getRowCount()*16)); setNextButton(); questionsHasChanged=true; } } } private void jQuestionListTableKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jQuestionListTableKeyPressed // Add your handling code here: if (evt.getKeyCode()==evt.VK_DELETE) { deleteRows(); } }//GEN-LAST:event_jQuestionListTableKeyPressed private int getQuestionIndex(Question q) { int tmp=0; if (q instanceof TrueFalseQuestion) tmp=1; if (q instanceof MultipleChoiceQuestion) tmp=2; if (q instanceof MultipleResponseQuestion) tmp=3; if (q instanceof FillInBlankQuestion) tmp=4; if (q instanceof ShortAnswerQuestion) tmp=5; if (q instanceof OrderingObjectsQuestion) tmp=6; if (q instanceof ConnectingObjectsQuestion) tmp=7; if (q instanceof CombinedQuestion) tmp=8; return tmp; } private void showProperties(Question q, int aktualizedItem) { // PropertiesDialog PD=new PropertiesDialog(this,true,q); propertiesDialog.loadQuestion(q); if (modifyingQuestion!=null || activeMainCard==4 || activeMainCard==3 || activeMainCard==5) { propertiesDialog.isModifying(true); } else { propertiesDialog.isModifying(false); } propertiesDialog.centerInParent(); int choice=propertiesDialog.showDialog(); if (choice==propertiesDialog.DELETE_OPTION) { int i=questions.indexOf(q); ((DefaultTableModel)jQuestionListTable.getModel()).removeRow(i); countOfQuestions--; jQuestionListTable.clearSelection(); jQuestionListTable.setPreferredSize( new Dimension(560, jQuestionListTable.getRowCount()*16)); questions.remove(i); questionsHasChanged=true; setNextButton(); } if (choice==propertiesDialog.MOVE_OPTION) { // MoveQuestionDialog MD=new MoveQuestionDialog(this,true); ArrayList list=new ArrayList(); for (int i=0; i=0)&&(aktualizedItem!=move-1)) { //zpracovani otazek v Arraylist Question q2=(Question)questions.remove(aktualizedItem); if (aktualizedItem=aktualizedItem)&&(move>0)) { move--; } ((DefaultTableModel)jQuestionListTable.getModel()) .moveRow(aktualizedItem, aktualizedItem, move); }*/ if (move!=-1) jQuestionListTable.clearSelection(); } if (choice==propertiesDialog.USEASBASIS_OPTION) { setActiveCard(getQuestionIndex(q)); clearQuestionForm(activeCard); showQuestion(q); } if (choice==propertiesDialog.MODIFY_OPTION) { if (jQuestionListTable.getSelectedRowCount()!=1) { showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_select_only_one_question_in_the_table")); } else { modifyingQuestion=q; setActiveCard(getQuestionIndex(q)); clearQuestionForm(activeCard); showQuestion(q); jQuestionListTable.setEnabled(false); ((CardLayout)jModifyPanel.getLayout()).show(jModifyPanel,"modify"); jQuestionListTable.setSelectionBackground(Table_Selection_Background_COLOR_modify); } } if (choice==propertiesDialog.SHOW_RESPROCESSING) { AOD.setupQuestion(q); AOD.centerInParent(); AOD.showResprocessing(); AOD.showDialog(true); } } private void jQuestionListTableMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jQuestionListTableMouseClicked // Add your handling code here: if (evt.getClickCount()==2) { int aktualizedItem=(evt.getY())/16; Question q=(Question)questions.get(aktualizedItem); showProperties(q, aktualizedItem); } }//GEN-LAST:event_jQuestionListTableMouseClicked private boolean emptyString(String s) { if ((s==null)||(s.trim().compareTo("")==0)||(s.length()==0)) { return true; } else { return false; } } private boolean emptyInteger(Integer s) { if ((s==null)||(s.intValue()==0)) { return true; } else { return false; } } private boolean showError(String msg) { myUtilities.showMessageDialog(this, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Missing_value"), msg, JOptionPane.ERROR_MESSAGE); return false; } private boolean isUnique(Vector v) { boolean ok=true; for (int i=0; i26)) { return false; } } return ok; } private boolean areLetters(Vector v) { boolean ok=true; for (int i=0; iChecking_the_LEFT_table..
")+err2+""; if (typ==72) err2=myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Checking_the_RIGHT_table..
")+err2+""; return showError(err2); } int w2=maxrows-1; if (typ==6) { if (column==2) while ((isHTMLEmpty((String)t.getValueAt(w2,column))==true)&&(w2>0)) { w2--; } else while ((emptyString((String)t.getValueAt(w2,column))==true)&&(w2>0)) { w2--; } } else while ((isHTMLEmpty((String)t.getValueAt(w2,column))==true)&&(w2>0)) { w2--; } if (w1!=w2+1) { String err=myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Error:_in_the_set_of_the_answers_cannot_be_the_empty_item,
") +myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","row_")+myUtilities.answerLetters[w1]+myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle",",_column_")+String.valueOf(column+1)+myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_is_empty"); if (typ<10) { err=""+err; } if (typ==71) { err=myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Checking_the_LEFT_table..
")+err; } if (typ==72) { err=myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Checking_the_RIGHT_table..
")+err; } return showError(err); } return true; } private boolean checkInsertedValues(int activeCard) { if (emptyString(jQuestionTitleTextField.getText())) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_fill_Title_of_Question")); // System.out.println(jQuestionWordingTextArea.getText()); if (isTextPaneEmpty(jQuestionWordingTextArea)) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_fill_Question_Wording")); switch (activeCard) { case 1: if ((jTrueButton1.isSelected()==false)&&(jFalseButton1.isSelected()==false)) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Select_the_correct_answer_please")); // System.out.println(jTextField15.getText()); if (isTextPaneEmpty(jTextField15)) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_fill_Answer_Wording_for_answer_A")); if (isTextPaneEmpty(jTextField16)) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_fill_Answer_Wording_for_answer_B")); break; case 2: stopTableEditing(jMCAnswerList, 1); // System.out.println("checking MCAnswerList"); // System.out.println(jMCAnswerList.getValueAt(0,1)); if (checkItems(jMCAnswerList,1,2)==false) return false; if (isHTMLEmpty((String)jMCAnswerList.getValueAt(jComboBox5.getSelectedIndex(),1))) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Selected_correct_answer_")+(String)jComboBox5.getSelectedItem()+myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_is_empty")); break; case 3: stopTableEditing(jMRAnswerList, 1); if (checkItems(jMRAnswerList,2,3)==false) return false; if (isHTMLEmpty((String)jMRAnswerList.getValueAt(0,2))) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","No_answers_typed")); break; case 4: if (isTextPaneEmpty(jFIBTextPane)) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","You_have_to_fill_Answer_Wording")); if (getCountFIBInputs(jFIBTextPane.getText())==-1) return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Answer_Wording_doesn't_contain_any_Input_Line")); // for (int i=0; inum) { return showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Error:_Order_")+String.valueOf(x) +myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","._is_greater_than_the_number_of_items")); } } break; case 7: stopTableEditing(jCOItemList1, 1); stopTableEditing(jCOItemList2, 1); // if (checkItems(jCOItemList1,1,71)==false) return false; if (checkItems(jCOItemList1,2,71)==false) return false; if (checkItems(jCOItemList2,1,72)==false) return false; int n1=0; //pocet vyplnenych poli leveho seznamu praveho sloupce while (isHTMLEmpty((String)jCOItemList1.getValueAt(n1,2))==false) n1++; int n2=0; //pocet vyplnenych poli leveho seznamu prostredniho sloupce while (emptyInteger((Integer)jCOItemList1.getValueAt(n2,1))==false) n2++; int n3=0; //pocet vyplnenych poli praveho seznamu praveho sloupce while (isHTMLEmpty((String)jCOItemList2.getValueAt(n3,1))==false) n3++; Vector j2=new Vector(); int n2empty=0; //pocet prazdych poli leveho seznamu prostredniho sloupce //muze mit hodnotu maximalne "n1" for (int i=0; i=n3)) { //druhy pripad "se zadavanim poradi" viz manual ok=true; //ok, ale jeste otestovat spravne odkazovani mezi seznamy for (int i=0; i", 0, 0, HTML.Tag.IMG); // htmlKit.insertHTML(doc, position, "", 0, 0, HTML.Tag.INPUT); doc.remove(position - 1, 1); } else htmlKit.insertHTML(doc, offset, "", 0, 0, HTML.Tag.IMG); // htmlKit.insertHTML(doc, offset, "", 0, 0, HTML.Tag.INPUT); } catch (Exception e) { e.printStackTrace(); } jFIBTextPane.requestFocusInWindow(); } else { showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Maximum_number_of_Inputs_is_26")); } /* StyledDocument doc = jTextPane1.getStyledDocument(); if (getCountFIBInputs(doc)<26) { Style s = doc.addStyle("input", null); StyleConstants.setAlignment(s, StyleConstants.ALIGN_CENTER); ImageIcon soundIcon = createImageIcon("input.gif", "sound icon"); JLabel label=new JLabel(""); label.setPreferredSize(new Dimension(50,20)); //33.15 label.setIcon(soundIcon); String datatype=""; if (jRadioButton4.isSelected()) datatype="String"; if (jRadioButton5.isSelected()) datatype="Integer"; if (jRadioButton6.isSelected()) datatype="Decimal"; String size=(String)jComboBox1.getSelectedItem(); label.setToolTipText("Data: "+datatype+"
Size: "+size+""); label.setVerticalAlignment(SwingConstants.TOP); StyleConstants.setComponent(s, label); s.addAttribute("name", "input"); s.addAttribute("size", size); s.addAttribute("datatype", datatype); try { doc.insertString(jTextPane1.getCaretPosition(), "~", s); } catch (BadLocationException ble) { System.err.println("Couldn't insert icon into text pane."); } } else { showError("Maximum number of Inputs is 26"); }*/ }//GEN-LAST:event_jButton1ActionPerformed private void jCOItemList2MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jCOItemList2MouseClicked // Add your handling code here: if ((evt.getClickCount()==2)&&(evt.getX()<20)) { int i=(evt.getY()/jCOItemList1.getRowHeight()); Integer s=(Integer)jCOItemList2.getValueAt(i,0); if (jCOItemList1.isEditing()) { int i1=jCOItemList1.getEditingRow(); int i2=jCOItemList1.getEditingColumn(); MyTextPaneCellEditor editor=(MyTextPaneCellEditor)jCOItemList1.getCellEditor(); editor.stopCellEditing(); jCOItemList1.setValueAt(s,i1, 1); } else if (jCOItemList1.getSelectedRow()!=-1) { jCOItemList1.setValueAt(s, jCOItemList1.getSelectedRow(), 1); } } }//GEN-LAST:event_jCOItemList2MouseClicked private void clearQuestionForm(int active) { jQuestionTitleTextField.setText(""); setHTMLKit(jQuestionWordingTextArea, "", false); switch (active) { case 1: /*jTrueButton1.setSelected(false); jTrueButton1.setText("True"); jFalseButton1.setSelected(false); jFalseButton1.setText("False");*/ jTrueButton1.setSelected(false); jFalseButton1.setSelected(false); setHTMLKit(jTextField15, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","True"), false); setHTMLKit(jTextField16, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","False"), false); jComboBox2.setSelectedIndex(0); jShuffleCheckBox1.setSelected(true); break; case 2: stopTableEditing(jMCAnswerList, 1); for (int i=0; i<26; i++) jMCAnswerList.setValueAt(null, i,1); jComboBox5.setSelectedIndex(0); jShuffleCheckBox2.setSelected(true); break; case 3: stopTableEditing(jMRAnswerList, 1); for (int i=0; i<26; i++) { jMRAnswerList.setValueAt(Boolean.FALSE,i,1); jMRAnswerList.setValueAt(null,i,2); } jShuffleCheckBox3.setSelected(true); break; case 4: setHTMLKit(jFIBTextPane, "", false); jComboBox1.setSelectedIndex(4); jRadioButton4.setSelected(true); break; case 5: jComboBox6.setSelectedIndex(4); jComboBox7.setSelectedIndex(5); break; case 6: stopTableEditing(jOOItemList, 6); for (int i=0; i<26; i++) { jOOItemList.setValueAt(null, i,1); jOOItemList.setValueAt(null, i,2); } jComboBox8.setSelectedIndex(0); jShuffleCheckBox4.setSelected(true); break; case 7: stopTableEditing(jCOItemList1, 7); for (int i=0; i<26; i++) { jCOItemList1.setValueAt(null, i,1); jCOItemList1.setValueAt(null, i,2); } stopTableEditing(jCOItemList2, 1); for (int i=0; i<26; i++) jCOItemList2.setValueAt(null, i,1); jShuffleCheckBox5.setSelected(true); break; case 8: stopTableEditing(jCombAnswerList, 1); for (int i=0; i<26; i++) jCombAnswerList.setValueAt(null, i,1); jComboBox3.setSelectedIndex(0); jComboBox9.setSelectedIndex(0); jShuffleCheckBox6.setSelected(true); break; } } private void jClearFormButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jClearFormButtonActionPerformed // Add your handling code here: clearQuestionForm(activeCard); }//GEN-LAST:event_jClearFormButtonActionPerformed private void setActiveDurationCard(int x) { CardLayout c=(CardLayout)jDurationPanel.getLayout(); c.show(jDurationPanel, "card"+String.valueOf(x)); } private void setActiveMainCard(int x) { CardLayout c=(CardLayout)jMainPanel.getLayout(); c.show(jMainPanel, "card"+String.valueOf(x)); setSteps(); if (x==1 && typeOfDocument==ASSESSMENT) { jNextButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Next_>")); jNextButton.setEnabled(true); jBackButton.setEnabled(false); } if (x==2 && typeOfDocument==OBJECT_BANK) { jNextButton.setText(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Next_>")); jNextButton.setEnabled( (countOfQuestions>0) ? true : false ); jBackButton.setEnabled(false); } /* if (x==2) { TitledBorder border = (TitledBorder)jEQPanel.getBorder(); String typ= (typeOfDocument==ASSESSMENT) ? "Assessment" : "Object Bank"; border.setTitle(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Editing_Questions_-_")+typ); jEQPanel.repaint(); }*/ } private void setActiveCard(int x) { if (x!=activeCard) { CardLayout cl=(CardLayout)QuestionCard.getLayout(); activeCard=x; cl.show(QuestionCard, "card"+String.valueOf(activeCard)); switch (x) { case 1: jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(135, 15)); break; case 2: jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(160, 15)); break; case 3: jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(175, 15)); break; case 4: jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(140, 15)); break; case 5: jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(150, 15)); break; case 6: jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(170, 15)); break; case 7: jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(185, 15)); break; case 8: jQuestionTitlePanel.setPreferredSize(new java.awt.Dimension(135, 15)); break; } jQuestionTitleLabel.setText(myUtilities.QuestionType[x-1]+myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","_Question")); } } private void jCombinedButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCombinedButtonActionPerformed // Add your handling code here: setActiveCard(8); }//GEN-LAST:event_jCombinedButtonActionPerformed private void jOrderingObjectsButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jOrderingObjectsButtonActionPerformed // Add your handling code here: setActiveCard(6); }//GEN-LAST:event_jOrderingObjectsButtonActionPerformed private void jShortAnswerButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jShortAnswerButtonActionPerformed // Add your handling code here: setActiveCard(5); }//GEN-LAST:event_jShortAnswerButtonActionPerformed private void jFillInBlankButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jFillInBlankButtonActionPerformed // Add your handling code here: setActiveCard(4); }//GEN-LAST:event_jFillInBlankButtonActionPerformed private void jMultipleResponseButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMultipleResponseButtonActionPerformed // Add your handling code here: setActiveCard(3); }//GEN-LAST:event_jMultipleResponseButtonActionPerformed private void jMultipleChoiceButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMultipleChoiceButtonActionPerformed // Add your handling code here: setActiveCard(2); }//GEN-LAST:event_jMultipleChoiceButtonActionPerformed private void jTrueFalseButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTrueFalseButtonActionPerformed // Add your handling code here: setActiveCard(1); }//GEN-LAST:event_jTrueFalseButtonActionPerformed //vrati pocet otazek, ktere maji titul "title" private int getTitleItems(String title) { int count=0; for (int i=0; i
"+begin+"
"); textpane.setCaretPosition(doc.getLength()); /* MutableAttributeSet attr = new SimpleAttributeSet(); try { StyleConstants.setFontFamily(attr, "Dialog"); StyleConstants.setFontSize(attr, 11); } catch (Exception e) { e.printStackTrace(); } */ // doc.setCharacterAttributes(0, doc.getLength(), attr, true); // MutableAttributeSet inputAttributes = htmlKit.getInputAttributes(); // inputAttributes.addAttributes(attr); } private void myInitComponents() { jList1.setSelectedIndex(-1); javax.swing.border.TitledBorder b1=new javax.swing.border.TitledBorder("Edit Questions"); b1.setTitleFont(new java.awt.Font("Dialog", 0, 11)); jEditQuestionsPanel.setBorder(b1); // jTextPane1.setFont(new java.awt.Font("Dialog", 0, 11)); //QuestionList table for (int i=0; i0) { Integer value=(Integer)jSAOTable5.getValueAt(row,4); if (col == 4 && !emptyInteger(value)) { settinguptable5=true; if (isFixedRow(jSAOTable5,row,3)) { jSAOTable5.setValueAt(null, row, 4); } else { int topindex=0; int bottomindex=0; int i=row; while (!isFixedRow(jSAOTable5,i,3)) i--; topindex=i; i=row; while (!isFixedRow(jSAOTable5,i,3)) i++; bottomindex=i; if (!(value.intValue()<=bottomindex-topindex-1 && value.intValue()>0)) { showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Count_of_random_questions_should_be_from_interval_1_to_")+String.valueOf(bottomindex-topindex-1)); value=null; } for (i=topindex+1; i0 || i1.intValue()<=0) { showError(myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Value_must_be_from_interval_from_1_to_")+imax.toString()); jSAOTable8_2.setValueAt(null,row,2); } } settinguptable8_2=false; } } }); //Duration table 1 for (int i=0; i<4; i++) jDurationTable1.getColumnModel().getColumn(i).setPreferredWidth(colwidthsdurations1[i]); jDurationTable1.getColumnModel().getColumn(0).setCellRenderer(cr); jDurationTable1.getTableHeader().setReorderingAllowed(false); jDurationTable1.getTableHeader().setFont(new java.awt.Font("Dialog", 0, 11)); //Duration table 2 for (int i=0; i<4; i++) jDurationTable2.getColumnModel().getColumn(i).setPreferredWidth(colwidthsdurations2[i]); jDurationTable2.getColumnModel().getColumn(0).setCellRenderer(cr); jDurationTable2.getTableHeader().setReorderingAllowed(false); jDurationTable2.getTableHeader().setFont(new java.awt.Font("Dialog", 0, 11)); //Exam feedbacks table for (int i=0; i<2; i++) jEFTable.getColumnModel().getColumn(i).setPreferredWidth(colwidthsexamfeedbacks[i]); jEFTable.getColumnModel().getColumn(0).setCellRenderer(cr); jEFTable.getTableHeader().setReorderingAllowed(false); jEFTable.getTableHeader().setFont(new java.awt.Font("Dialog", 0, 11)); //Multiple Choice table jMCAnswerList.setRowHeight(32); TableColumn col1=jMCAnswerList.getColumnModel().getColumn(0); col1.setResizable(true); col1.setMinWidth(20); col1.setMaxWidth(20); col1.setWidth(20); col1.setPreferredWidth(20); DefaultTableCellRenderer cr2=new DefaultTableCellRenderer(); cr2.setHorizontalAlignment(SwingConstants.CENTER); cr2.setBackground(Table_Header_Background_COLOR); col1.setCellRenderer(cr2); TableColumn colMC=jMCAnswerList.getColumnModel().getColumn(1); // myTextPaneCellRenderer=new MyTextPaneCellRenderer2(); // colMC.setCellRenderer(myTextPaneCellRenderer); MyTextPaneCellEditor ce=new MyTextPaneCellEditor(jMCAnswerList); ce.setName("MyTextPaneCellEditor"); myFocusListener = new FocusListener() { public void focusGained(FocusEvent e) { // System.out.println("Focus GAINED "+e.getComponent().getName()); actualGainedComponent=e.getComponent(); } public void focusLost(FocusEvent e) { // System.out.println("Focus LOST "+e.getComponent().getName()); if (e.getOppositeComponent()!=null) { String opposite=e.getOppositeComponent().getName(); if (opposite!=null && opposite.equals("ToolBarButton")) lastFocusedComponent=e.getComponent(); else lastFocusedComponent=null; } } }; ce.addFocusListener(myFocusListener); myKeyListener = new KeyListener(){ public void keyPressed(KeyEvent e) { if (e.getKeyCode()==e.VK_HOME) { e.consume(); } if (e.getKeyCode()==e.VK_LEFT) { if (actualGainedComponent instanceof JTextPane) if (((JTextPane)actualGainedComponent).getCaretPosition()==1) e.consume(); } } public void keyReleased(KeyEvent e) { } public void keyTyped(KeyEvent e) { } }; ce.addKeyListener(myKeyListener); myMouseMotionAdapter = new MouseMotionAdapter(){ public void mouseMoved(java.awt.event.MouseEvent evt) { jQuestionWordingTextAreaMouseMoved(evt); } }; ce.addMouseMotionListener(myMouseMotionAdapter); colMC.setCellEditor(ce); //Multiple Response table jMRAnswerList.setRowHeight(32); TableColumn col2=jMRAnswerList.getColumnModel().getColumn(0); col2.setResizable(true); col2.setMinWidth(20); col2.setMaxWidth(20); col2.setWidth(20); col2.setPreferredWidth(20); DefaultTableCellRenderer cr3=new DefaultTableCellRenderer(); cr3.setHorizontalAlignment(SwingConstants.CENTER); cr3.setBackground(Table_Header_Background_COLOR); col2.setCellRenderer(cr3); TableColumn col3=jMRAnswerList.getColumnModel().getColumn(1); col3.setResizable(true); col3.setMinWidth(20); col3.setMaxWidth(20); col3.setWidth(20); col3.setPreferredWidth(20); TableColumn colMR=jMRAnswerList.getColumnModel().getColumn(2); // colMR.setCellRenderer(myTextPaneCellRenderer); MyTextPaneCellEditor ceMR=new MyTextPaneCellEditor(jMRAnswerList); ceMR.setName("MyTextPaneCellEditor"); ceMR.addFocusListener(myFocusListener); ceMR.addKeyListener(myKeyListener); ceMR.addMouseMotionListener(myMouseMotionAdapter); colMR.setCellEditor(ceMR); //Connecting Objects table1 jCOItemList1.setRowHeight(32); TableColumn col4=jCOItemList1.getColumnModel().getColumn(0); col4.setResizable(true); col4.setMinWidth(20); col4.setMaxWidth(20); col4.setWidth(20); col4.setPreferredWidth(20); DefaultTableCellRenderer cr4=new DefaultTableCellRenderer(); cr4.setHorizontalAlignment(SwingConstants.CENTER); cr4.setBackground(Table_Header_Background_COLOR); col4.setCellRenderer(cr4); TableColumn col5=jCOItemList1.getColumnModel().getColumn(1); col5.setResizable(true); col5.setMinWidth(20); col5.setMaxWidth(20); col5.setWidth(20); col5.setPreferredWidth(20); DefaultTableCellRenderer cr5=new DefaultTableCellRenderer(); cr5.setHorizontalAlignment(SwingConstants.CENTER); col5.setCellRenderer(cr5); TableColumn colCO1=jCOItemList1.getColumnModel().getColumn(2); // colCO1.setCellRenderer(myTextPaneCellRenderer); MyTextPaneCellEditor ceCO1=new MyTextPaneCellEditor(jCOItemList1); ceCO1.setName("MyTextPaneCellEditor"); ceCO1.addFocusListener(myFocusListener); ceCO1.addKeyListener(myKeyListener); ceCO1.addMouseMotionListener(myMouseMotionAdapter); colCO1.setCellEditor(ceCO1); //Connecting Cbjects table2 jCOItemList2.setRowHeight(32); TableColumn col6=jCOItemList2.getColumnModel().getColumn(0); col6.setResizable(true); col6.setMinWidth(20); col6.setMaxWidth(20); col6.setWidth(20); col6.setPreferredWidth(20); DefaultTableCellRenderer cr6=new DefaultTableCellRenderer(); cr6.setHorizontalAlignment(SwingConstants.CENTER); cr6.setBackground(Table_Header_Background_COLOR); col6.setCellRenderer(cr6); TableColumn colCO2=jCOItemList2.getColumnModel().getColumn(1); // colCO2.setCellRenderer(myTextPaneCellRenderer); MyTextPaneCellEditor ceCO2=new MyTextPaneCellEditor(jCOItemList2); ceCO2.setName("MyTextPaneCellEditor"); ceCO2.addFocusListener(myFocusListener); ceCO2.addKeyListener(myKeyListener); ceCO2.addMouseMotionListener(myMouseMotionAdapter); colCO2.setCellEditor(ceCO2); //Ordering Objects table jOOItemList.setRowHeight(32); TableColumn col7=jOOItemList.getColumnModel().getColumn(0); col7.setResizable(true); col7.setMinWidth(20); col7.setMaxWidth(20); col7.setWidth(20); col7.setPreferredWidth(20); DefaultTableCellRenderer cr7=new DefaultTableCellRenderer(); cr7.setHorizontalAlignment(SwingConstants.CENTER); cr7.setBackground(Table_Header_Background_COLOR); col7.setCellRenderer(cr7); TableColumn col8=jOOItemList.getColumnModel().getColumn(1); col8.setResizable(true); col8.setMinWidth(20); col8.setMaxWidth(20); col8.setWidth(20); col8.setPreferredWidth(20); DefaultTableCellRenderer cr8=new DefaultTableCellRenderer(); cr8.setHorizontalAlignment(SwingConstants.CENTER); col8.setCellRenderer(cr8); TableColumn colOO=jOOItemList.getColumnModel().getColumn(2); // colOO.setCellRenderer(myTextPaneCellRenderer); MyTextPaneCellEditor ceOO=new MyTextPaneCellEditor(jOOItemList); ceOO.setName("MyTextPaneCellEditor"); ceOO.addFocusListener(myFocusListener); ceOO.addKeyListener(myKeyListener); ceOO.addMouseMotionListener(myMouseMotionAdapter); colOO.setCellEditor(ceOO); //Combined table jCombAnswerList.setRowHeight(32); TableColumn col9=jCombAnswerList.getColumnModel().getColumn(0); col9.setResizable(true); col9.setMinWidth(20); col9.setMaxWidth(20); col9.setWidth(20); col9.setPreferredWidth(20); DefaultTableCellRenderer cr9=new DefaultTableCellRenderer(); cr9.setHorizontalAlignment(SwingConstants.CENTER); cr9.setBackground(Table_Header_Background_COLOR); col9.setCellRenderer(cr9); TableColumn colComb=jCombAnswerList.getColumnModel().getColumn(1); // colComb.setCellRenderer(myTextPaneCellRenderer); MyTextPaneCellEditor ceComb=new MyTextPaneCellEditor(jCombAnswerList); ceComb.setName("MyTextPaneCellEditor"); ceComb.addFocusListener(myFocusListener); ceComb.addKeyListener(myKeyListener); ceComb.addMouseMotionListener(myMouseMotionAdapter); colComb.setCellEditor(ceComb); NumberFormat integerFormat = NumberFormat.getIntegerInstance(); NumberFormat numberFormat = NumberFormat.getNumberInstance(); DefaultFormatterFactory dffInteger = new DefaultFormatterFactory( new NumberFormatter(integerFormat), new NumberFormatter(integerFormat), new NumberFormatter(integerFormat)); DefaultFormatterFactory dffNumber = new DefaultFormatterFactory( new NumberFormatter(numberFormat), new NumberFormatter(numberFormat), new NumberFormatter(numberFormat)); jFormattedTextField1.setFormatterFactory(dffInteger); jFormattedTextField2.setFormatterFactory(dffInteger); jFormattedTextField3.setFormatterFactory(dffInteger); jFormattedTextField4.setFormatterFactory(dffInteger); jEFTerm1FTF.setFormatterFactory(dffNumber); jEFTerm2FTF.setFormatterFactory(dffNumber); /* //SAO 123 NumberFormat f=NumberFormat.getIntegerInstance(); jFormattedTextField1.setFormatterFactory(new DefaultFormatterFactory( new NumberFormatter(f), new NumberFormatter(f), new NumberFormatter(f))); //SAO 67 NumberFormat f2=NumberFormat.getIntegerInstance(); jFormattedTextField2.setFormatterFactory(new DefaultFormatterFactory( new NumberFormatter(f2), new NumberFormatter(f2), new NumberFormatter(f2))); NumberFormat f3=NumberFormat.getIntegerInstance(); jFormattedTextField3.setFormatterFactory(new DefaultFormatterFactory( new NumberFormatter(f3), new NumberFormatter(f3), new NumberFormatter(f3))); NumberFormat f4=NumberFormat.getIntegerInstance(); jFormattedTextField4.setFormatterFactory(new DefaultFormatterFactory( new NumberFormatter(f4), new NumberFormatter(f4), new NumberFormatter(f4))); NumberFormat f5=NumberFormat.getNumberInstance(); jEFTerm1FTF.setFormatterFactory(new DefaultFormatterFactory( new NumberFormatter(f5), new NumberFormatter(f5), new NumberFormatter(f5))); NumberFormat f6=NumberFormat.getNumberInstance(); jEFTerm2FTF.setFormatterFactory(new DefaultFormatterFactory( new NumberFormatter(f6), new NumberFormatter(f6), new NumberFormatter(f6))); */ jEFLabel2.setVisible(false); jEFTerm2CB.setVisible(false); jEFTerm2FTF.setVisible(false); // jTextArea3.setText(myUtilities.algDesc[0]); jPanel2.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Questions_Setup"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 0, 11))); jPanel4.setBorder(new javax.swing.border.TitledBorder(null, myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","Exam_Setup"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 0, 11))); jSAOTextArea.setText(myUtilities.getSAODesc(0)); jSAOExampleTextArea.setText(myUtilities.getSAOExample(0)); // StyledDocument doc = jTextPane1.getStyledDocument(); // // Style regular = doc.addStyle("normal", null); // StyleConstants.setFontFamily(regular, "SansSerif"); // regular.addAttribute("name", "normal"); // try { // doc.insertString(0," ",regular); // } catch (BadLocationException ex) { // ex.printStackTrace(); // } Action action = new StyledEditorKit.ItalicAction(); action.putValue(Action.NAME, "Italic"); jItalicButton.setAction(action); setHTMLKit(jQuestionWordingTextArea,"",false); setHTMLKit(jTextField15,myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","True"),false); setHTMLKit(jTextField16,myResources.getBundle("cz/muni/fi/bronchus/bundles/TestsBundle","False"),false); setHTMLKit(jFIBTextPane,"",false); jQuestionWordingTextArea.addFocusListener(this); jTextField15.addFocusListener(this); jTextField16.addFocusListener(this); jFIBTextPane.addFocusListener(this); // jQuestionWordingTextArea.setFont(new java.awt.Font("Dialog", 0, 11)); // jQuestionWordingTextArea.setContentType("text/html"); // jQuestionWordingTextArea.setText(""); answerLetters=new Vector(); answerLetters.add("A");answerLetters.add("B");answerLetters.add("C"); answerLetters.add("D");answerLetters.add("E");answerLetters.add("F"); answerLetters.add("G");answerLetters.add("H");answerLetters.add("I"); answerLetters.add("J");answerLetters.add("K");answerLetters.add("L"); answerLetters.add("M");answerLetters.add("N");answerLetters.add("O"); answerLetters.add("P");answerLetters.add("Q");answerLetters.add("R"); answerLetters.add("S");answerLetters.add("T");answerLetters.add("U"); answerLetters.add("V");answerLetters.add("W");answerLetters.add("X"); answerLetters.add("Y");answerLetters.add("Z"); } private void jExitMenuItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jExitMenuItemActionPerformed // Add your handling code here: System.exit(0); }//GEN-LAST:event_jExitMenuItemActionPerformed /** Exit the Application */ private void exitForm(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_exitForm System.exit(0); }//GEN-LAST:event_exitForm /** * @param args the command line arguments */ public static void main(String args[]) { Locale locale=null; if (args.length==2 && args[0].compareTo("-locale")==0) locale = new Locale(args[1]); Tests tests = new Tests(locale); tests.setVisible(true); // new Tests().setVisible(true); } public void focusGained(FocusEvent e) { // System.out.println("Focus GAINED "+e.getComponent().getName()); actualGainedComponent=e.getComponent(); } public void focusLost(FocusEvent e) { if (e.getOppositeComponent()!=null) { String opposite=e.getOppositeComponent().getName(); if (opposite!=null && opposite.equals("ToolBarButton")) lastFocusedComponent=e.getComponent(); else lastFocusedComponent=null; } // System.out.println("Focus LOST "+lastFocusedComponent.getName()); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JPanel CombinedPanel; private javax.swing.JPanel ConnectingObjectsPanel; private javax.swing.ButtonGroup FIBbuttonGroup2; private javax.swing.JPanel FillInBlankPanel; private javax.swing.JPanel MultipleChoicePanel; private javax.swing.JPanel MultipleResponsePanel; private javax.swing.JPanel OrderingObjectsPanel; private javax.swing.JPanel QuestionCard; private javax.swing.ButtonGroup SAOButtonGroup; private javax.swing.JPanel ShortAnswerPanel; private javax.swing.JPanel TrueFalsePanel; private javax.swing.ButtonGroup buttonGroup1; private javax.swing.JButton jAddIntoListButton; private javax.swing.JButton jAddToEndButton; private javax.swing.JPanel jAlgPanel; private javax.swing.JPanel jAssessmentDurPanel; private javax.swing.JPanel jAssessmentPanel; private javax.swing.JButton jAudioButton; private javax.swing.JCheckBox jAutomaticResprocessingCB; private javax.swing.JButton jBackButton; private javax.swing.JPanel jBestKOfNPanel; private javax.swing.JButton jButton1; private javax.swing.JButton jButton11; private javax.swing.JButton jButton4; private javax.swing.JButton jButton5; private javax.swing.JButton jButton7; private javax.swing.JButton jButton8; private javax.swing.JButton jButton9; private javax.swing.JPanel jButtonPanel; private javax.swing.JTable jCOItemList1; private javax.swing.JTable jCOItemList2; private javax.swing.JCheckBox jCheckBox6; private javax.swing.JCheckBox jCheckBox7; private javax.swing.JButton jClearFormButton; private javax.swing.JTable jCombAnswerList; private javax.swing.JButton jCombinedButton; private javax.swing.JComboBox jComboBox1; private javax.swing.JComboBox jComboBox2; private javax.swing.JComboBox jComboBox3; private javax.swing.JComboBox jComboBox5; private javax.swing.JComboBox jComboBox6; private javax.swing.JComboBox jComboBox7; private javax.swing.JComboBox jComboBox8; private javax.swing.JComboBox jComboBox9; private javax.swing.JButton jConnectingObjectsButton; private javax.swing.JLabel jCountTopicItemsLabel; private javax.swing.JButton jDeleteEFButton; private javax.swing.JButton jDeleteQuestionButton; private javax.swing.JTable jDurObjectBankTable; private javax.swing.JPanel jDurationPanel; private javax.swing.JTable jDurationTable1; private javax.swing.JTable jDurationTable2; private javax.swing.JButton jEFAddConditionButton; private javax.swing.JLabel jEFLabel2; private javax.swing.JComboBox jEFOperatorCB; private javax.swing.JTable jEFTable; private javax.swing.JComboBox jEFTerm1CB; private javax.swing.JFormattedTextField jEFTerm1FTF; private javax.swing.JComboBox jEFTerm2CB; private javax.swing.JFormattedTextField jEFTerm2FTF; private javax.swing.JPanel jEQPanel; private javax.swing.JPanel jEditQuestionsPanel; private javax.swing.JPanel jExamFeedbacksPanel; private javax.swing.JMenuItem jExitMenuItem; private javax.swing.JTextPane jFIBTextPane; private javax.swing.JRadioButton jFalseButton1; private javax.swing.JCheckBox jFeedbacksCheckBox1; private javax.swing.JButton jFillInBlankButton; private javax.swing.JFormattedTextField jFormattedTextField1; private javax.swing.JFormattedTextField jFormattedTextField2; private javax.swing.JFormattedTextField jFormattedTextField3; private javax.swing.JFormattedTextField jFormattedTextField4; private javax.swing.JButton jHelpTabButton; private javax.swing.JCheckBox jHintsCheckBox2; private javax.swing.JButton jImageButton; private javax.swing.JButton jImportButton; private javax.swing.JButton jItalicButton; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel10; private javax.swing.JLabel jLabel11; private javax.swing.JLabel jLabel12; private javax.swing.JLabel jLabel13; private javax.swing.JLabel jLabel14; private javax.swing.JLabel jLabel15; private javax.swing.JLabel jLabel16; private javax.swing.JLabel jLabel17; private javax.swing.JLabel jLabel18; private javax.swing.JLabel jLabel19; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel20; private javax.swing.JLabel jLabel27; private javax.swing.JLabel jLabel28; private javax.swing.JLabel jLabel29; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel30; private javax.swing.JLabel jLabel31; private javax.swing.JLabel jLabel32; private javax.swing.JLabel jLabel33; private javax.swing.JLabel jLabel34; private javax.swing.JLabel jLabel35; private javax.swing.JLabel jLabel36; private javax.swing.JLabel jLabel37; private javax.swing.JLabel jLabel38; private javax.swing.JLabel jLabel39; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel40; private javax.swing.JLabel jLabel41; private javax.swing.JLabel jLabel42; private javax.swing.JLabel jLabel43; private javax.swing.JLabel jLabel44; private javax.swing.JLabel jLabel45; private javax.swing.JLabel jLabel46; private javax.swing.JLabel jLabel47; private javax.swing.JLabel jLabel49; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel50; private javax.swing.JLabel jLabel51; private javax.swing.JLabel jLabel52; private javax.swing.JLabel jLabel53; private javax.swing.JLabel jLabel54; private javax.swing.JLabel jLabel56; private javax.swing.JLabel jLabel57; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JLabel jLabel8; private javax.swing.JLabel jLabel9; private javax.swing.JList jList1; private javax.swing.JList jList3; private javax.swing.JTable jMCAnswerList; private javax.swing.JTable jMRAnswerList; private javax.swing.JMenuBar jMainMenu; private javax.swing.JPanel jMainPanel; private javax.swing.JMenu jMenu1; private javax.swing.JPanel jModifyPanel; private javax.swing.JPanel jModifyPanel1; private javax.swing.JPanel jModifyPanel2; private javax.swing.JButton jMoveQuestionButton; private javax.swing.JButton jMultipleChoiceButton; private javax.swing.JButton jMultipleResponseButton; private javax.swing.JMenuItem jNewMenuItem; private javax.swing.JButton jNextButton; private javax.swing.JTable jOOItemList; private javax.swing.JPanel jObjectBankDurPanel; private javax.swing.JMenuItem jOpenMenuItem; private javax.swing.JButton jOrderingObjectsButton; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel10; private javax.swing.JPanel jPanel2; private javax.swing.JPanel jPanel3; private javax.swing.JPanel jPanel4; private javax.swing.JPanel jPanel5; private javax.swing.JPanel jPanel6; private javax.swing.JButton jQuestionInfoButton; private javax.swing.JTable jQuestionListTable; private javax.swing.JLabel jQuestionTitleLabel; private javax.swing.JPanel jQuestionTitlePanel; private javax.swing.JTextField jQuestionTitleTextField; private javax.swing.JTextPane jQuestionWordingTextArea; private javax.swing.JRadioButton jRadioButton4; private javax.swing.JRadioButton jRadioButton5; private javax.swing.JRadioButton jRadioButton6; private javax.swing.JComboBox jSAO67CB; private javax.swing.JLabel jSAODescriptionLabel; private javax.swing.JTextArea jSAOExampleTextArea; private javax.swing.JLabel jSAOLabel; private javax.swing.JPanel jSAOPanel; private javax.swing.JPanel jSAOPanel123; private javax.swing.JPanel jSAOPanel4; private javax.swing.JPanel jSAOPanel5; private javax.swing.JPanel jSAOPanel67; private javax.swing.JPanel jSAOPanel8; private javax.swing.JTable jSAOTable123; private javax.swing.JTable jSAOTable4; private javax.swing.JTable jSAOTable5; private javax.swing.JTable jSAOTable67; private javax.swing.JTable jSAOTable8; private javax.swing.JTable jSAOTable8_2; private javax.swing.JTextArea jSAOTextArea; private javax.swing.JMenuItem jSaveMenuItem; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JScrollPane jScrollPane10; private javax.swing.JScrollPane jScrollPane11; private javax.swing.JScrollPane jScrollPane12; private javax.swing.JScrollPane jScrollPane13; private javax.swing.JScrollPane jScrollPane14; private javax.swing.JScrollPane jScrollPane15; private javax.swing.JScrollPane jScrollPane16; private javax.swing.JScrollPane jScrollPane17; private javax.swing.JScrollPane jScrollPane18; private javax.swing.JScrollPane jScrollPane19; private javax.swing.JScrollPane jScrollPane2; private javax.swing.JScrollPane jScrollPane20; private javax.swing.JScrollPane jScrollPane21; private javax.swing.JScrollPane jScrollPane22; private javax.swing.JScrollPane jScrollPane23; private javax.swing.JScrollPane jScrollPane24; private javax.swing.JScrollPane jScrollPane25; private javax.swing.JScrollPane jScrollPane26; private javax.swing.JScrollPane jScrollPane27; private javax.swing.JScrollPane jScrollPane3; private javax.swing.JScrollPane jScrollPane4; private javax.swing.JScrollPane jScrollPane5; private javax.swing.JScrollPane jScrollPane6; private javax.swing.JScrollPane jScrollPane7; private javax.swing.JScrollPane jScrollPane8; private javax.swing.JScrollPane jScrollPane9; private javax.swing.JPanel jSelectionAndOrderingPanel; private javax.swing.JSeparator jSeparator1; private javax.swing.JButton jShortAnswerButton; private javax.swing.JCheckBox jShuffleCheckBox1; private javax.swing.JCheckBox jShuffleCheckBox2; private javax.swing.JCheckBox jShuffleCheckBox3; private javax.swing.JCheckBox jShuffleCheckBox4; private javax.swing.JCheckBox jShuffleCheckBox5; private javax.swing.JCheckBox jShuffleCheckBox6; private javax.swing.JCheckBox jSolutionsCheckBox3; private javax.swing.JLabel jStepsLabel; private javax.swing.JButton jTeXButton; private javax.swing.JTextArea jTextArea3; private javax.swing.JTextField jTextField1; private javax.swing.JTextPane jTextField15; private javax.swing.JTextPane jTextField16; private javax.swing.JPanel jToolBarPanel; private javax.swing.JRadioButton jTrueButton1; private javax.swing.JButton jTrueFalseButton; private javax.swing.JButton jVideoButton; private javax.swing.JPanel jWeightedAlgPanel; private javax.swing.JTable jWeightedTable; // End of variables declaration//GEN-END:variables }