comparison ExperimentController.java @ 23:9fc8683b8fed

Fixed GUI button presses, had their background change as feedback and added ability to record responses for a probe tone at the end of a sequence
author JShulver
date Wed, 07 Nov 2012 18:22:01 +0000
parents 284c23df4652
children c5db34797ff3
comparison
equal deleted inserted replaced
22:5c54f5213f3d 23:9fc8683b8fed
115 if (exp.getAskFamiliarity()) { 115 if (exp.getAskFamiliarity()) {
116 String answer1 = (String)(sp.getQ1Box().getSelectedItem()); 116 String answer1 = (String)(sp.getQ1Box().getSelectedItem());
117 block.addMelodyQA("known", answer1); 117 block.addMelodyQA("known", answer1);
118 } else 118 } else
119 block.addMelodyQA("known", "-1"); 119 block.addMelodyQA("known", "-1");
120
121 if (exp.getAskLiking()) { 120 if (exp.getAskLiking()) {
122 String answer2 = (String)(sp.getQ2Box().getSelectedItem()); 121 String answer2 = (String)(sp.getQ2Box().getSelectedItem());
123 block.addMelodyQA("liked", answer2); 122 block.addMelodyQA("liked", answer2);
124 } else 123 } else
125 block.addMelodyQA("liked", "-1"); 124 block.addMelodyQA("liked", "-1");
126
127 block.storeMelodyResult(); 125 block.storeMelodyResult();
128 results.writeResults(); 126 results.writeResults();
129 // close the midi player 127 // close the midi player
130 block.getMidiPlayer().stop(); 128 block.getMidiPlayer().stop();
131 // proceed to ... 129 // proceed to ...
130
132 String nextFile = block.nextFile(); 131 String nextFile = block.nextFile();
133 if (nextFile == null) { 132 if (nextFile == null) {
134 boolean nb = exp.nextBlock(); 133 boolean nb = exp.nextBlock();
135 if (nb) { 134 if (nb) {
136 // ... next block of trials 135 // ... next block of trials
137 gui.getInterBlockPanel().setText(); 136 gui.getInterBlockPanel().setText();
138 gui.getInterBlockPanel().updateMessageDisplay(); 137 gui.getInterBlockPanel().updateMessageDisplay();
139 gui.showCard("interblock"); 138 gui.showCard("interblock");
139 sp.resetButtonBackgrounds();
140 } else { 140 } else {
141 // ... write results and subject questionnaire 141 // ... write results and subject questionnaire
142 results.writeResults(); 142 results.writeResults();
143 gui.showCard("subject"); 143 gui.showCard("subject");
144 } 144 }
145 } else { 145 } else {
146 // ... next melody within block 146 // ... next melody within block
147 sp.resetButtonBackgrounds();
147 sp.setSongNumberText(); 148 sp.setSongNumberText();
148 sp.defaultAnswers(); 149 sp.defaultAnswers();
149 gui.setAcceptingResponses(false); 150 gui.setAcceptingResponses(false);
150 block.initialiseBlock(); 151 block.initialiseBlock();
151 exp.runExperiment(); 152 exp.runExperiment();
153
152 } 154 }
153 } 155 }
154 } else { 156 } else {
155 JButton[] rButtons = sp.getResponseButtons(); 157 JButton[] rButtons = sp.getResponseButtons();
156 for (int i = 0; i < rButtons.length; i++) { 158 for (int i = 0; i < rButtons.length; i++) {
159 System.out.println("getAcceptingResponses: " + gui.getAcceptingResponses());
157 if (source == rButtons[i] && (exp.isRunning() || exp.hasRun()) && gui.getAcceptingResponses()) { 160 if (source == rButtons[i] && (exp.isRunning() || exp.hasRun()) && gui.getAcceptingResponses()) {
158 block.addResponse(i+1, time); 161 block.addResponse(i+1, time);
159 gui.setAcceptingResponses(false); 162 gui.setAcceptingResponses(false);
163 rButtons[i].setBackground(Color.red);
160 } 164 }
161 } 165 }
162 } 166 }
163 } 167 }
164 168