psychopy 2024.2.5__py3-none-any.whl → 2025.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of psychopy might be problematic. Click here for more details.

Files changed (860) hide show
  1. psychopy/CHANGELOG.txt +4 -4
  2. psychopy/GIT_SHA +1 -1
  3. psychopy/LICENSE.txt +1 -1
  4. psychopy/VERSION +1 -1
  5. psychopy/__init__.py +10 -7
  6. psychopy/alerts/__init__.py +1 -1
  7. psychopy/alerts/_alerts.py +53 -17
  8. psychopy/alerts/_errorHandler.py +3 -4
  9. psychopy/alerts/alertsCatalogue/3210.yaml +27 -0
  10. psychopy/alerts/alertsCatalogue/3610.yaml +19 -0
  11. psychopy/alerts/alertsCatalogue/4130.yaml +19 -0
  12. psychopy/alerts/alertsCatalogue/alertCategories.yaml +8 -1
  13. psychopy/alerts/alertsCatalogue/alertmsg.py +1 -1
  14. psychopy/alerts/alerttools.py +0 -16
  15. psychopy/app/Resources/betasplash.png +0 -0
  16. psychopy/app/Resources/betasplash@2x.png +0 -0
  17. psychopy/app/Resources/classic/case.png +0 -0
  18. psychopy/app/Resources/classic/case@2x.png +0 -0
  19. psychopy/app/Resources/classic/fileaudio.png +0 -0
  20. psychopy/app/Resources/classic/fileaudio@2x.png +0 -0
  21. psychopy/app/Resources/classic/filecss.png +0 -0
  22. psychopy/app/Resources/classic/filecss@2x.png +0 -0
  23. psychopy/app/Resources/classic/filecsv.png +0 -0
  24. psychopy/app/Resources/classic/filecsv@2x.png +0 -0
  25. psychopy/app/Resources/classic/filedesign.png +0 -0
  26. psychopy/app/Resources/classic/filedesign@2x.png +0 -0
  27. psychopy/app/Resources/classic/filefont.png +0 -0
  28. psychopy/app/Resources/classic/filefont@2x.png +0 -0
  29. psychopy/app/Resources/classic/filegit.png +0 -0
  30. psychopy/app/Resources/classic/filegit@2x.png +0 -0
  31. psychopy/app/Resources/classic/filehtml.png +0 -0
  32. psychopy/app/Resources/classic/filehtml@2x.png +0 -0
  33. psychopy/app/Resources/classic/fileimage.png +0 -0
  34. psychopy/app/Resources/classic/fileimage@2x.png +0 -0
  35. psychopy/app/Resources/classic/fileinfo.png +0 -0
  36. psychopy/app/Resources/classic/fileinfo@2x.png +0 -0
  37. psychopy/app/Resources/classic/filejs.png +0 -0
  38. psychopy/app/Resources/classic/filejs@2x.png +0 -0
  39. psychopy/app/Resources/classic/filejson.png +0 -0
  40. psychopy/app/Resources/classic/filejson@2x.png +0 -0
  41. psychopy/app/Resources/classic/filepkg.png +0 -0
  42. psychopy/app/Resources/classic/filepkg@2x.png +0 -0
  43. psychopy/app/Resources/classic/filepsyexp.png +0 -0
  44. psychopy/app/Resources/classic/filepsyexp@2x.png +0 -0
  45. psychopy/app/Resources/classic/filepy.png +0 -0
  46. psychopy/app/Resources/classic/filepy@2x.png +0 -0
  47. psychopy/app/Resources/classic/filetxt.png +0 -0
  48. psychopy/app/Resources/classic/filetxt@2x.png +0 -0
  49. psychopy/app/Resources/classic/fileunknown.png +0 -0
  50. psychopy/app/Resources/classic/fileunknown@2x.png +0 -0
  51. psychopy/app/Resources/classic/filevideo.png +0 -0
  52. psychopy/app/Resources/classic/filevideo@2x.png +0 -0
  53. psychopy/app/Resources/classic/find.png +0 -0
  54. psychopy/app/Resources/classic/find@2x.png +0 -0
  55. psychopy/app/Resources/classic/loop.png +0 -0
  56. psychopy/app/Resources/classic/loop@2x.png +0 -0
  57. psychopy/app/Resources/classic/regex.png +0 -0
  58. psychopy/app/Resources/classic/regex@2x.png +0 -0
  59. psychopy/app/Resources/dark/case.png +0 -0
  60. psychopy/app/Resources/dark/case@2x.png +0 -0
  61. psychopy/app/Resources/dark/fileaudio.png +0 -0
  62. psychopy/app/Resources/dark/fileaudio@2x.png +0 -0
  63. psychopy/app/Resources/dark/filecss.png +0 -0
  64. psychopy/app/Resources/dark/filecss@2x.png +0 -0
  65. psychopy/app/Resources/dark/filecsv.png +0 -0
  66. psychopy/app/Resources/dark/filecsv@2x.png +0 -0
  67. psychopy/app/Resources/dark/filedesign.png +0 -0
  68. psychopy/app/Resources/dark/filedesign@2x.png +0 -0
  69. psychopy/app/Resources/dark/filefont.png +0 -0
  70. psychopy/app/Resources/dark/filefont@2x.png +0 -0
  71. psychopy/app/Resources/dark/filegit.png +0 -0
  72. psychopy/app/Resources/dark/filegit@2x.png +0 -0
  73. psychopy/app/Resources/dark/filehtml.png +0 -0
  74. psychopy/app/Resources/dark/filehtml@2x.png +0 -0
  75. psychopy/app/Resources/dark/fileimage.png +0 -0
  76. psychopy/app/Resources/dark/fileimage@2x.png +0 -0
  77. psychopy/app/Resources/dark/fileinfo.png +0 -0
  78. psychopy/app/Resources/dark/fileinfo@2x.png +0 -0
  79. psychopy/app/Resources/dark/filejs.png +0 -0
  80. psychopy/app/Resources/dark/filejs@2x.png +0 -0
  81. psychopy/app/Resources/dark/filejson.png +0 -0
  82. psychopy/app/Resources/dark/filejson@2x.png +0 -0
  83. psychopy/app/Resources/dark/filepkg.png +0 -0
  84. psychopy/app/Resources/dark/filepkg@2x.png +0 -0
  85. psychopy/app/Resources/dark/filepsyexp.png +0 -0
  86. psychopy/app/Resources/dark/filepsyexp@2x.png +0 -0
  87. psychopy/app/Resources/dark/filepy.png +0 -0
  88. psychopy/app/Resources/dark/filepy@2x.png +0 -0
  89. psychopy/app/Resources/dark/filetxt.png +0 -0
  90. psychopy/app/Resources/dark/filetxt@2x.png +0 -0
  91. psychopy/app/Resources/dark/fileunknown.png +0 -0
  92. psychopy/app/Resources/dark/fileunknown@2x.png +0 -0
  93. psychopy/app/Resources/dark/filevideo.png +0 -0
  94. psychopy/app/Resources/dark/filevideo@2x.png +0 -0
  95. psychopy/app/Resources/dark/find.png +0 -0
  96. psychopy/app/Resources/dark/find@2x.png +0 -0
  97. psychopy/app/Resources/dark/loop.png +0 -0
  98. psychopy/app/Resources/dark/loop@2x.png +0 -0
  99. psychopy/app/Resources/dark/regex.png +0 -0
  100. psychopy/app/Resources/dark/regex@2x.png +0 -0
  101. psychopy/app/Resources/light/case.png +0 -0
  102. psychopy/app/Resources/light/case@2x.png +0 -0
  103. psychopy/app/Resources/light/fileaudio.png +0 -0
  104. psychopy/app/Resources/light/fileaudio@2x.png +0 -0
  105. psychopy/app/Resources/light/filecss.png +0 -0
  106. psychopy/app/Resources/light/filecss@2x.png +0 -0
  107. psychopy/app/Resources/light/filecsv.png +0 -0
  108. psychopy/app/Resources/light/filecsv@2x.png +0 -0
  109. psychopy/app/Resources/light/filedesign.png +0 -0
  110. psychopy/app/Resources/light/filedesign@2x.png +0 -0
  111. psychopy/app/Resources/light/filefont.png +0 -0
  112. psychopy/app/Resources/light/filefont@2x.png +0 -0
  113. psychopy/app/Resources/light/filegit.png +0 -0
  114. psychopy/app/Resources/light/filegit@2x.png +0 -0
  115. psychopy/app/Resources/light/filehtml.png +0 -0
  116. psychopy/app/Resources/light/filehtml@2x.png +0 -0
  117. psychopy/app/Resources/light/fileimage.png +0 -0
  118. psychopy/app/Resources/light/fileimage@2x.png +0 -0
  119. psychopy/app/Resources/light/fileinfo.png +0 -0
  120. psychopy/app/Resources/light/fileinfo@2x.png +0 -0
  121. psychopy/app/Resources/light/filejs.png +0 -0
  122. psychopy/app/Resources/light/filejs@2x.png +0 -0
  123. psychopy/app/Resources/light/filejson.png +0 -0
  124. psychopy/app/Resources/light/filejson@2x.png +0 -0
  125. psychopy/app/Resources/light/filepkg.png +0 -0
  126. psychopy/app/Resources/light/filepkg@2x.png +0 -0
  127. psychopy/app/Resources/light/filepsyexp.png +0 -0
  128. psychopy/app/Resources/light/filepsyexp@2x.png +0 -0
  129. psychopy/app/Resources/light/filepy.png +0 -0
  130. psychopy/app/Resources/light/filepy@2x.png +0 -0
  131. psychopy/app/Resources/light/filetxt.png +0 -0
  132. psychopy/app/Resources/light/filetxt@2x.png +0 -0
  133. psychopy/app/Resources/light/fileunknown.png +0 -0
  134. psychopy/app/Resources/light/fileunknown@2x.png +0 -0
  135. psychopy/app/Resources/light/filevideo.png +0 -0
  136. psychopy/app/Resources/light/filevideo@2x.png +0 -0
  137. psychopy/app/Resources/light/find.png +0 -0
  138. psychopy/app/Resources/light/find@2x.png +0 -0
  139. psychopy/app/Resources/light/loop.png +0 -0
  140. psychopy/app/Resources/light/loop@2x.png +0 -0
  141. psychopy/app/Resources/light/regex.png +0 -0
  142. psychopy/app/Resources/light/regex@2x.png +0 -0
  143. psychopy/app/Resources/routine_templates/Basic.psyexp +0 -1
  144. psychopy/app/Resources/routine_templates/Misc.psyexp +0 -1
  145. psychopy/app/Resources/routine_templates/Online.psyexp +0 -2
  146. psychopy/app/Resources/routine_templates/Trials.psyexp +0 -1
  147. psychopy/app/Resources/splash.png +0 -0
  148. psychopy/app/Resources/splash@2x.png +0 -0
  149. psychopy/app/__init__.py +49 -8
  150. psychopy/app/__main__.py +3 -0
  151. psychopy/app/_psychopyApp.py +134 -125
  152. psychopy/app/builder/builder.py +42 -22
  153. psychopy/app/builder/dialogs/__init__.py +44 -11
  154. psychopy/app/builder/dialogs/dlgsCode.py +1 -1
  155. psychopy/app/builder/dialogs/dlgsConditions.py +1 -1
  156. psychopy/app/builder/dialogs/findDlg.py +106 -20
  157. psychopy/app/builder/dialogs/paramCtrls.py +42 -1
  158. psychopy/app/builder/validators.py +1 -1
  159. psychopy/app/coder/codeEditorBase.py +8 -8
  160. psychopy/app/coder/coder.py +32 -29
  161. psychopy/app/coder/fileBrowser.py +68 -22
  162. psychopy/app/coder/folding.py +1 -1
  163. psychopy/app/coder/psychoParser.py +1 -1
  164. psychopy/app/coder/repl.py +1 -1
  165. psychopy/app/coder/sourceTree.py +1 -1
  166. psychopy/app/connections/__init__.py +1 -1
  167. psychopy/app/connections/news.py +1 -1
  168. psychopy/app/connections/sendusage.py +1 -1
  169. psychopy/app/connections/updates.py +1 -1
  170. psychopy/app/console.py +1 -1
  171. psychopy/app/errorDlg.py +1 -1
  172. psychopy/app/frametracker.py +1 -1
  173. psychopy/app/idle.py +1 -1
  174. psychopy/app/jobs.py +5 -2
  175. psychopy/app/linuxconfig/__init__.py +1 -1
  176. psychopy/app/locale/ar_001/LC_MESSAGE/messages.mo +0 -0
  177. psychopy/app/locale/ar_001/LC_MESSAGE/messages.po +4 -4
  178. psychopy/app/locale/cs_CZ/LC_MESSAGE/messages.mo +0 -0
  179. psychopy/app/locale/da_DK/LC_MESSAGE/messages.mo +0 -0
  180. psychopy/app/locale/de_DE/LC_MESSAGE/messages.mo +0 -0
  181. psychopy/app/locale/de_DE/LC_MESSAGE/messages.po +3 -3
  182. psychopy/app/locale/el_GR/LC_MESSAGE/messages.mo +0 -0
  183. psychopy/app/locale/en_NZ/LC_MESSAGE/messages.mo +0 -0
  184. psychopy/app/locale/en_US/LC_MESSAGE/messages.mo +0 -0
  185. psychopy/app/locale/es_CO/LC_MESSAGE/messages.mo +0 -0
  186. psychopy/app/locale/es_CO/LC_MESSAGE/messages.po +4 -4
  187. psychopy/app/locale/es_ES/LC_MESSAGE/messages.mo +0 -0
  188. psychopy/app/locale/es_ES/LC_MESSAGE/messages.po +4 -4
  189. psychopy/app/locale/es_US/LC_MESSAGE/messages.mo +0 -0
  190. psychopy/app/locale/es_US/LC_MESSAGE/messages.po +4 -4
  191. psychopy/app/locale/et_EE/LC_MESSAGE/messages.mo +0 -0
  192. psychopy/app/locale/et_EE/LC_MESSAGE/messages.po +2 -2
  193. psychopy/app/locale/fa_IR/LC_MESSAGE/messages.mo +0 -0
  194. psychopy/app/locale/fa_IR/LC_MESSAGE/messages.po +1 -1
  195. psychopy/app/locale/fi_FI/LC_MESSAGE/messages.mo +0 -0
  196. psychopy/app/locale/fr_FR/LC_MESSAGE/messages.mo +0 -0
  197. psychopy/app/locale/fr_FR/LC_MESSAGE/messages.po +2 -2
  198. psychopy/app/locale/he_IL/LC_MESSAGE/messages.mo +0 -0
  199. psychopy/app/locale/he_IL/LC_MESSAGE/messages.po +2 -2
  200. psychopy/app/locale/hi_IN/LC_MESSAGE/messages.mo +0 -0
  201. psychopy/app/locale/hi_IN/LC_MESSAGE/messages.po +2 -2
  202. psychopy/app/locale/hu_HU/LC_MESSAGE/messages.mo +0 -0
  203. psychopy/app/locale/it_IT/LC_MESSAGE/messages.mo +0 -0
  204. psychopy/app/locale/it_IT/LC_MESSAGE/messages.po +2 -2
  205. psychopy/app/locale/ja_JP/LC_MESSAGE/messages.mo +0 -0
  206. psychopy/app/locale/ja_JP/LC_MESSAGE/messages.po +3421 -2396
  207. psychopy/app/locale/ko_KR/LC_MESSAGE/messages.mo +0 -0
  208. psychopy/app/locale/ms_MY/LC_MESSAGE/messages.mo +0 -0
  209. psychopy/app/locale/ms_MY/LC_MESSAGE/messages.po +2 -2
  210. psychopy/app/locale/nl_NL/LC_MESSAGE/messages.mo +0 -0
  211. psychopy/app/locale/nn_NO/LC_MESSAGE/messages.mo +0 -0
  212. psychopy/app/locale/pl_PL/LC_MESSAGE/messages.mo +0 -0
  213. psychopy/app/locale/pt_PT/LC_MESSAGE/messages.mo +0 -0
  214. psychopy/app/locale/pt_PT/LC_MESSAGE/messages.po +4 -4
  215. psychopy/app/locale/ro_RO/LC_MESSAGE/messages.mo +0 -0
  216. psychopy/app/locale/ru_RU/LC_MESSAGE/messages.mo +0 -0
  217. psychopy/app/locale/sv_SE/LC_MESSAGE/messages.mo +0 -0
  218. psychopy/app/locale/sv_SE/LC_MESSAGE/messages.po +2 -2
  219. psychopy/app/locale/tr_TR/LC_MESSAGE/messages.mo +0 -0
  220. psychopy/app/locale/tr_TR/LC_MESSAGE/messages.po +2 -2
  221. psychopy/app/locale/zh_CN/LC_MESSAGE/messages.mo +0 -0
  222. psychopy/app/locale/zh_CN/LC_MESSAGE/messages.po +3 -3
  223. psychopy/app/locale/zh_TW/LC_MESSAGE/messages.mo +0 -0
  224. psychopy/app/locale/zh_TW/LC_MESSAGE/messages.po +2 -2
  225. psychopy/app/{builder/localizedStrings.py → localizedStrings.py} +173 -26
  226. psychopy/app/pavlovia_ui/__init__.py +1 -1
  227. psychopy/app/pavlovia_ui/_base.py +1 -1
  228. psychopy/app/pavlovia_ui/functions.py +1 -1
  229. psychopy/app/pavlovia_ui/menu.py +1 -1
  230. psychopy/app/pavlovia_ui/project.py +1 -1
  231. psychopy/app/pavlovia_ui/search.py +1 -1
  232. psychopy/app/pavlovia_ui/sync.py +1 -1
  233. psychopy/app/pavlovia_ui/user.py +1 -1
  234. psychopy/app/plugin_manager/dialog.py +34 -96
  235. psychopy/app/plugin_manager/packages.py +10 -14
  236. psychopy/app/plugin_manager/plugins.py +64 -4
  237. psychopy/app/preferencesDlg.py +12 -37
  238. psychopy/app/psychopyApp.py +130 -44
  239. psychopy/app/ribbon.py +1 -0
  240. psychopy/app/runner/runner.py +19 -7
  241. psychopy/app/runner/scriptProcess.py +11 -6
  242. psychopy/app/stdout/stdOutRich.py +9 -2
  243. psychopy/app/themes/fonts.py +1 -1
  244. psychopy/app/themes/icons.py +2 -38
  245. psychopy/app/ui/__init__.py +1 -1
  246. psychopy/app/utils.py +3 -3
  247. psychopy/assets/default.mp3 +0 -0
  248. psychopy/assets/fonts/NotoSans-Bold.ttf +0 -0
  249. psychopy/assets/fonts/NotoSans-BoldItalic.ttf +0 -0
  250. psychopy/assets/fonts/NotoSans-Italic.ttf +0 -0
  251. psychopy/assets/fonts/NotoSans-Regular.ttf +0 -0
  252. psychopy/assets/voicekeyThresholdStim.wav +0 -0
  253. psychopy/clock.py +4 -1
  254. psychopy/colors.py +2 -0
  255. psychopy/core.py +1 -1
  256. psychopy/data/base.py +1 -1
  257. psychopy/data/experiment.py +151 -46
  258. psychopy/data/routine.py +27 -1
  259. psychopy/data/staircase.py +2 -1
  260. psychopy/data/trial.py +62 -14
  261. psychopy/data/utils.py +1 -1
  262. psychopy/demos/builder/Design Templates/branchedExperiment/branchedExperiment.psyexp +333 -218
  263. psychopy/demos/builder/Design Templates/psychophysicsStaircase/psychophysicsStaircase.psyexp +261 -239
  264. psychopy/demos/builder/Design Templates/psychophysicsStairsInterleaved/psychophysicsStaircaseInterleaved.psyexp +319 -180
  265. psychopy/demos/builder/Design Templates/randomisedBlocks/randomisedBlocks.psyexp +204 -116
  266. psychopy/demos/builder/Experiments/BART/assets/background.jpg +0 -0
  267. psychopy/demos/builder/Experiments/BART/assets/blueBalloon.png +0 -0
  268. psychopy/demos/builder/Experiments/BART/assets/greenBalloon.png +0 -0
  269. psychopy/demos/builder/Experiments/BART/assets/redBalloon.png +0 -0
  270. psychopy/demos/builder/Experiments/BART/bart.psyexp +779 -866
  271. psychopy/demos/builder/Experiments/BigFiveInventory/BFI.psyexp +242 -180
  272. psychopy/demos/builder/Experiments/GoNoGo/gng.psyexp +419 -406
  273. psychopy/demos/builder/Experiments/dragAndDrop/README.md +2 -37
  274. psychopy/demos/builder/Experiments/dragAndDrop/drag_and_drop.psyexp +460 -1204
  275. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/blank_grid.png +0 -0
  276. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/make_shapes.psyexp +221 -0
  277. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/readme.md +4 -0
  278. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_1.png +0 -0
  279. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_10.png +0 -0
  280. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_2.png +0 -0
  281. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_3.png +0 -0
  282. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_4.png +0 -0
  283. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_5.png +0 -0
  284. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_6.png +0 -0
  285. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_7.png +0 -0
  286. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_8.png +0 -0
  287. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_9.png +0 -0
  288. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solutions.xlsx +0 -0
  289. psychopy/demos/builder/Experiments/mentalRotation/MentalRotation.psyexp +583 -542
  290. psychopy/demos/builder/Experiments/navon/NavonTask.psyexp +458 -427
  291. psychopy/demos/builder/Experiments/sternberg/sternberg.psyexp +588 -550
  292. psychopy/demos/builder/Experiments/stroop/stroop.psyexp +303 -207
  293. psychopy/demos/builder/Experiments/stroopExtended/stroop.psyexp +390 -215
  294. psychopy/demos/builder/Experiments/stroopExtended/stroopReverse.psyexp +390 -215
  295. psychopy/demos/builder/Experiments/stroopVoice/stroopVoice.psyexp +357 -331
  296. psychopy/demos/builder/Feature Demos/buttonBox/buttonBoxDemo.psyexp +3 -2
  297. psychopy/demos/builder/Feature Demos/counterbalance/counterbalance.psyexp +287 -277
  298. psychopy/demos/builder/Feature Demos/gratings/gratings.psyexp +370 -320
  299. psychopy/demos/builder/Feature Demos/noise/noise.psyexp +452 -399
  300. psychopy/demos/builder/Feature Demos/panorama/panorama.psyexp +168 -133
  301. psychopy/demos/builder/Feature Demos/pilotMode/pilotMode.psyexp +4 -3
  302. psychopy/demos/builder/Feature Demos/progress/progressBar.psyexp +420 -392
  303. psychopy/demos/builder/Feature Demos/sliders/sliders.psyexp +917 -871
  304. psychopy/demos/builder/Feature Demos/visualValidator/readme.md +7 -0
  305. psychopy/demos/builder/Feature Demos/visualValidator/visualValidator.psyexp +200 -0
  306. psychopy/demos/builder/Hardware/EEG_parallel_component/EEG_triggers_parallel_comp.psyexp +25 -9
  307. psychopy/demos/builder/Hardware/EEG_serial_code/EEG_triggers_serial_code.psyexp +372 -361
  308. psychopy/demos/builder/Hardware/EEG_serial_component/EEG_triggers_serial_comp.psyexp +25 -9
  309. psychopy/demos/builder/Hardware/EGI_netstation/stroop.psyexp +320 -235
  310. psychopy/demos/builder/Hardware/Eyetracking_visual_search/visualSearch.psyexp +790 -651
  311. psychopy/demos/builder/Hardware/camera/camera.psyexp +326 -246
  312. psychopy/demos/builder/Hardware/eyetracking/eyetracking.psyexp +432 -327
  313. psychopy/demos/builder/Hardware/eyetracking_custom_cal/eyetracking_custom_cal.psyexp +440 -321
  314. psychopy/demos/builder/Hardware/fMRI/fMRI_demo.psyexp +190 -181
  315. psychopy/demos/builder/Hardware/lab_streaming_layer/lsl_triggers_demo.psyexp +323 -312
  316. psychopy/demos/builder/Hardware/lab_streaming_layer/lsl_triggers_demo_legacy.psyexp +360 -0
  317. psychopy/demos/builder/Hardware/lab_streaming_layer/lsl_triggers_demo_legacy_legacy.psyexp +312 -0
  318. psychopy/demos/builder/Hardware/lab_streaming_layer_legacy/lsl_triggers_demo_legacy.psyexp +329 -273
  319. psychopy/demos/builder/Hardware/lab_streaming_layer_legacy/lsl_triggers_demo_legacy_legacy.psyexp +360 -0
  320. psychopy/demos/builder/Hardware/lab_streaming_layer_legacy/lsl_triggers_demo_legacy_legacy_legacy.psyexp +312 -0
  321. psychopy/demos/builder/Hardware/microphone/microphone.psyexp +450 -404
  322. psychopy/demos/builder/Hardware/pump/pump.psyexp +593 -329
  323. psychopy/demos/builder/Helper Tools/achorVSalignment/FlowCircular-Regular.ttf +0 -0
  324. psychopy/demos/builder/Helper Tools/achorVSalignment/anchorAlignment.psyexp +336 -274
  325. psychopy/demos/builder/Helper Tools/clockFace/clockFace.psyexp +200 -149
  326. psychopy/demos/builder/Helper Tools/colors/colors.psyexp +300 -279
  327. psychopy/demos/builder/Helper Tools/drawPolygon/drawPolygon.psyexp +677 -564
  328. psychopy/demos/builder/Helper Tools/keyNameFinder/keyNameFinder.psyexp +214 -158
  329. psychopy/demos/builder/Helper Tools/spatialUnits/unitDemo.psyexp +195 -146
  330. psychopy/demos/coder/experiment control/runtimeInfo.py +1 -1
  331. psychopy/devices/__init__.py +1 -1
  332. psychopy/event.py +1 -1
  333. psychopy/exceptions.py +1 -1
  334. psychopy/experiment/__init__.py +1 -1
  335. psychopy/experiment/_experiment.py +30 -9
  336. psychopy/experiment/components/__init__.py +1 -6
  337. psychopy/experiment/components/_base.py +44 -19
  338. psychopy/experiment/components/aperture/__init__.py +1 -1
  339. psychopy/experiment/components/brush/__init__.py +2 -2
  340. psychopy/experiment/components/button/__init__.py +24 -28
  341. psychopy/experiment/components/camera/__init__.py +38 -39
  342. psychopy/experiment/components/code/__init__.py +1 -1
  343. psychopy/experiment/components/dots/__init__.py +1 -1
  344. psychopy/experiment/components/eyetracker_record/__init__.py +7 -3
  345. psychopy/experiment/components/form/__init__.py +3 -3
  346. psychopy/experiment/components/grating/__init__.py +1 -1
  347. psychopy/experiment/components/image/__init__.py +1 -1
  348. psychopy/experiment/components/joyButtons/__init__.py +2 -2
  349. psychopy/experiment/components/joyButtons/virtualJoyButtons.py +1 -1
  350. psychopy/experiment/components/joystick/__init__.py +3 -3
  351. psychopy/experiment/components/joystick/virtualJoystick.py +1 -1
  352. psychopy/experiment/components/keyboard/__init__.py +98 -122
  353. psychopy/experiment/components/microphone/__init__.py +54 -98
  354. psychopy/experiment/components/mouse/__init__.py +92 -93
  355. psychopy/experiment/components/movie/__init__.py +28 -50
  356. psychopy/experiment/components/parallelOut/__init__.py +3 -3
  357. psychopy/experiment/components/polygon/__init__.py +2 -3
  358. psychopy/experiment/components/roi/__init__.py +2 -2
  359. psychopy/experiment/components/routineSettings/__init__.py +2 -0
  360. psychopy/experiment/components/serialOut/__init__.py +7 -7
  361. psychopy/experiment/components/settings/__init__.py +317 -313
  362. psychopy/experiment/components/settings/eyetracking.py +108 -0
  363. psychopy/experiment/components/slider/__init__.py +5 -5
  364. psychopy/experiment/components/sound/__init__.py +168 -78
  365. psychopy/experiment/components/soundsensor/__init__.py +361 -0
  366. psychopy/experiment/components/soundsensor/classic/soundsensor.png +0 -0
  367. psychopy/experiment/components/soundsensor/classic/soundsensor@2x.png +0 -0
  368. psychopy/experiment/components/soundsensor/dark/soundsensor.png +0 -0
  369. psychopy/experiment/components/soundsensor/dark/soundsensor@2x.png +0 -0
  370. psychopy/experiment/components/soundsensor/light/soundsensor.png +0 -0
  371. psychopy/experiment/components/soundsensor/light/soundsensor@2x.png +0 -0
  372. psychopy/experiment/components/static/__init__.py +59 -33
  373. psychopy/experiment/components/text/__init__.py +2 -6
  374. psychopy/experiment/components/textbox/__init__.py +3 -7
  375. psychopy/experiment/components/unknown/__init__.py +2 -0
  376. psychopy/experiment/components/unknownPlugin/__init__.py +2 -0
  377. psychopy/experiment/exports.py +1 -1
  378. psychopy/experiment/flow.py +2 -2
  379. psychopy/experiment/localization.py +1 -1
  380. psychopy/experiment/loops.py +43 -10
  381. psychopy/experiment/params.py +6 -4
  382. psychopy/experiment/plugins.py +8 -1
  383. psychopy/experiment/py2js.py +1 -1
  384. psychopy/experiment/py2js_transpiler.py +1 -1
  385. psychopy/experiment/routines/__init__.py +1 -1
  386. psychopy/experiment/routines/_base.py +23 -24
  387. psychopy/experiment/routines/audioValidator/__init__.py +343 -0
  388. psychopy/experiment/routines/audioValidator/classic/audio_validator.png +0 -0
  389. psychopy/experiment/routines/audioValidator/classic/audio_validator@2x.png +0 -0
  390. psychopy/experiment/routines/audioValidator/dark/audio_validator.png +0 -0
  391. psychopy/experiment/routines/audioValidator/dark/audio_validator@2x.png +0 -0
  392. psychopy/experiment/routines/audioValidator/light/audio_validator.png +0 -0
  393. psychopy/experiment/routines/audioValidator/light/audio_validator@2x.png +0 -0
  394. psychopy/experiment/routines/eyetracker_calibrate/__init__.py +76 -17
  395. psychopy/experiment/routines/eyetracker_validate/__init__.py +1 -1
  396. psychopy/experiment/routines/unknown/__init__.py +2 -0
  397. psychopy/experiment/routines/{photodiodeValidator → visualValidator}/__init__.py +89 -120
  398. psychopy/experiment/routines/visualValidator/classic/visual_validator.png +0 -0
  399. psychopy/experiment/routines/visualValidator/classic/visual_validator@2x.png +0 -0
  400. psychopy/experiment/routines/visualValidator/dark/visual_validator.png +0 -0
  401. psychopy/experiment/routines/visualValidator/dark/visual_validator@2x.png +0 -0
  402. psychopy/experiment/routines/visualValidator/light/visual_validator.png +0 -0
  403. psychopy/experiment/routines/visualValidator/light/visual_validator@2x.png +0 -0
  404. psychopy/experiment/utils.py +1 -1
  405. psychopy/gui/__init__.py +1 -1
  406. psychopy/gui/qtgui.py +15 -6
  407. psychopy/gui/wxgui.py +1 -1
  408. psychopy/hardware/__init__.py +0 -1
  409. psychopy/hardware/base.py +147 -16
  410. psychopy/hardware/bbtk/__init__.py +10 -16
  411. psychopy/hardware/brainproducts.py +7 -13
  412. psychopy/hardware/button.py +21 -2
  413. psychopy/hardware/buttonbox/__init__.py +1 -1
  414. psychopy/hardware/camera/__init__.py +16 -3
  415. psychopy/hardware/cedrus.py +5 -16
  416. psychopy/hardware/crs/__init__.py +1 -1
  417. psychopy/hardware/crs/bits.py +36 -33
  418. psychopy/hardware/crs/colorcal.py +8 -11
  419. psychopy/hardware/crs/optical.py +7 -10
  420. psychopy/hardware/crs/shaders.py +18 -5
  421. psychopy/hardware/emotiv.py +1 -1
  422. psychopy/hardware/emulator.py +11 -5
  423. psychopy/hardware/exceptions.py +86 -0
  424. psychopy/hardware/forp.py +18 -23
  425. psychopy/hardware/gammasci.py +8 -3
  426. psychopy/hardware/iolab.py +8 -19
  427. psychopy/hardware/joystick/__init__.py +865 -266
  428. psychopy/hardware/joystick/_base.py +251 -0
  429. psychopy/hardware/joystick/backend_glfw.py +306 -0
  430. psychopy/hardware/joystick/backend_pyglet.py +309 -0
  431. psychopy/hardware/joystick/mappings.py +287 -0
  432. psychopy/hardware/keyboard.py +4 -2
  433. psychopy/hardware/labhackers.py +1 -1
  434. psychopy/hardware/labjacks.py +9 -13
  435. psychopy/hardware/{photodiode.py → lightsensor.py} +146 -203
  436. psychopy/hardware/listener.py +9 -8
  437. psychopy/hardware/manager.py +24 -35
  438. psychopy/hardware/microphone.py +534 -154
  439. psychopy/hardware/minolta.py +14 -4
  440. psychopy/hardware/mouse/__init__.py +1 -1
  441. psychopy/hardware/photometer/__init__.py +2 -2
  442. psychopy/hardware/pr.py +14 -4
  443. psychopy/hardware/qmix.py +18 -27
  444. psychopy/hardware/serialdevice.py +43 -12
  445. psychopy/hardware/soundsensor.py +473 -0
  446. psychopy/hardware/spatial/__init__.py +231 -0
  447. psychopy/hardware/speaker.py +298 -36
  448. psychopy/hardware/triggerbox/__init__.py +1 -1
  449. psychopy/hardware/triggerbox/base.py +1 -1
  450. psychopy/hardware/triggerbox/parallel.py +1 -1
  451. psychopy/info.py +1 -1
  452. psychopy/iohub/devices/eyetracker/__init__.py +10 -18
  453. psychopy/iohub/devices/eyetracker/calibration/procedure.py +15 -33
  454. psychopy/iohub/devices/eyetracker/hw/pupil_labs/neon/__init__.py +1 -0
  455. psychopy/iohub/devices/mouse/linux2.py +2 -1
  456. psychopy/layout.py +1 -1
  457. psychopy/liaison.py +91 -39
  458. psychopy/locale_setup.py +11 -1
  459. psychopy/localization/__init__.py +1 -1
  460. psychopy/localization/_localization.py +1 -1
  461. psychopy/localization/messages.pot +2 -2
  462. psychopy/logging.py +14 -12
  463. psychopy/microphone.py +4 -3
  464. psychopy/misc.py +1 -1
  465. psychopy/monitors/MonitorCenter.py +3 -3
  466. psychopy/monitors/__init__.py +1 -1
  467. psychopy/monitors/calibData.py +1 -1
  468. psychopy/monitors/calibTools.py +3 -2
  469. psychopy/platform_specific/__init__.py +1 -1
  470. psychopy/platform_specific/darwin.py +1 -1
  471. psychopy/platform_specific/linux.py +1 -1
  472. psychopy/platform_specific/win32.py +1 -1
  473. psychopy/plugins/__init__.py +26 -17
  474. psychopy/plugins/util.py +65 -0
  475. psychopy/preferences/Darwin.spec +11 -3
  476. psychopy/preferences/FreeBSD.spec +11 -3
  477. psychopy/preferences/Linux.spec +11 -3
  478. psychopy/preferences/Windows.spec +11 -3
  479. psychopy/preferences/__init__.py +1 -1
  480. psychopy/preferences/baseNoArch.spec +11 -3
  481. psychopy/preferences/hints.py +78 -61
  482. psychopy/preferences/preferences.py +82 -13
  483. psychopy/projects/__init__.py +1 -1
  484. psychopy/projects/pavlovia.py +29 -13
  485. psychopy/scripts/psyexpCompile.py +1 -1
  486. psychopy/session.py +81 -8
  487. psychopy/sound/__init__.py +25 -10
  488. psychopy/sound/_base.py +134 -34
  489. psychopy/sound/audioclip.py +38 -15
  490. psychopy/sound/audiodevice.py +1 -1
  491. psychopy/sound/backend_ptb.py +53 -321
  492. psychopy/sound/backend_pygame.py +7 -3
  493. psychopy/sound/backend_pyo.py +53 -22
  494. psychopy/sound/backend_pysound.py +10 -27
  495. psychopy/sound/backend_sounddevice.py +33 -21
  496. psychopy/sound/exceptions.py +1 -1
  497. psychopy/sound/microphone.py +83 -5
  498. psychopy/sound/transcribe.py +3 -3
  499. psychopy/tests/data/test_basic_run.py +1 -0
  500. psychopy/tests/data/test_sounds/default_16000.wav +0 -0
  501. psychopy/tests/data/test_sounds/default_192000.wav +0 -0
  502. psychopy/tests/data/test_sounds/default_22050.wav +0 -0
  503. psychopy/tests/data/test_sounds/default_32000.wav +0 -0
  504. psychopy/tests/data/test_sounds/default_44100.wav +0 -0
  505. psychopy/tests/data/test_sounds/default_48000.wav +0 -0
  506. psychopy/tests/data/test_sounds/default_8000.wav +0 -0
  507. psychopy/tests/data/test_sounds/default_96000.wav +0 -0
  508. psychopy/tests/test_alerts/test_alerttools.py +2 -1
  509. psychopy/tests/test_app/test_command_line.py +65 -0
  510. psychopy/tests/test_data/test_TrialHandler2.py +18 -7
  511. psychopy/tests/test_demos/test_builder_demos.py +1 -1
  512. psychopy/tests/test_experiment/needs_wx/componsTemplate.txt +5238 -4188
  513. psychopy/tests/test_experiment/needs_wx/test_components.py +1 -1
  514. psychopy/tests/test_experiment/test_components/test_RoutineSettingsComponent.py +16 -0
  515. psychopy/tests/test_experiment/test_components/test_all_components.py +1 -1
  516. psychopy/tests/test_experiment/test_components/test_base_components.py +26 -17
  517. psychopy/tests/test_experiment/test_loops.py +12 -4
  518. psychopy/tests/test_experiment/test_params.py +17 -4
  519. psychopy/tests/test_experiment/test_routines/test_PhotodiodeValidationRoutine.py +2 -2
  520. psychopy/tests/test_hardware/test_photodiode.py +66 -0
  521. psychopy/tests/test_liaison/test_Liaison.py +4 -4
  522. psychopy/tests/test_misc/test_clock.py +2 -0
  523. psychopy/tests/test_misc/test_color.py +2 -0
  524. psychopy/tests/test_misc/test_event.py +1 -0
  525. psychopy/tests/test_plugins/__init__.py +0 -0
  526. psychopy/tests/test_plugins/test_plugin_stubs.py +125 -0
  527. psychopy/tests/test_sound/test_sound.py +111 -40
  528. psychopy/tests/test_tools/test_colorspacetools.py +24 -23
  529. psychopy/tests/test_tools/test_mathtools.py +9 -9
  530. psychopy/tests/test_tools/test_viewtools.py +101 -0
  531. psychopy/tests/test_validators/__init__.py +0 -0
  532. psychopy/tests/test_validators/test_voicekeyValidator.py +95 -0
  533. psychopy/tests/test_visual/test_all_stimuli.py +2 -2
  534. psychopy/tests/test_visual/test_basevisual.py +37 -7
  535. psychopy/tests/test_visual/test_button.py +2 -2
  536. psychopy/tests/test_visual/test_circle.py +10 -2
  537. psychopy/tests/test_visual/test_dots.py +1 -1
  538. psychopy/tests/test_visual/test_form.py +13 -13
  539. psychopy/tests/test_visual/test_gamma.py +3 -3
  540. psychopy/tests/test_visual/test_image.py +2 -2
  541. psychopy/tests/test_visual/test_progress.py +2 -2
  542. psychopy/tests/test_visual/test_roi.py +8 -2
  543. psychopy/tests/test_visual/test_shape.py +2 -2
  544. psychopy/tests/test_visual/test_slider.py +2 -2
  545. psychopy/tests/test_visual/test_target.py +2 -2
  546. psychopy/tests/test_visual/test_textbox.py +6 -8
  547. psychopy/tests/test_visual/test_winScalePos.py +6 -5
  548. psychopy/tests/test_visual/test_window.py +17 -0
  549. psychopy/tests/utils.py +51 -1
  550. psychopy/tools/__init__.py +1 -1
  551. psychopy/tools/arraytools.py +2 -2
  552. psychopy/tools/attributetools.py +52 -1
  553. psychopy/tools/audiotools.py +4 -1
  554. psychopy/tools/colorspacetools.py +6 -4
  555. psychopy/tools/coordinatetools.py +1 -1
  556. psychopy/tools/fileerrortools.py +21 -9
  557. psychopy/tools/filetools.py +2 -2
  558. psychopy/tools/fontmanager.py +47 -28
  559. psychopy/tools/gltools.py +2964 -558
  560. psychopy/tools/imagetools.py +1 -1
  561. psychopy/tools/mathtools.py +997 -127
  562. psychopy/tools/monitorunittools.py +7 -1
  563. psychopy/tools/movietools.py +1 -2
  564. psychopy/tools/pkgtools.py +157 -127
  565. psychopy/tools/plottools.py +1 -1
  566. psychopy/tools/rifttools.py +1 -1
  567. psychopy/tools/stereotools.py +1 -1
  568. psychopy/tools/stimulustools.py +172 -2
  569. psychopy/tools/stringtools.py +22 -2
  570. psychopy/tools/systemtools.py +1 -1
  571. psychopy/tools/typetools.py +1 -1
  572. psychopy/tools/unittools.py +1 -1
  573. psychopy/tools/versionchooser.py +3 -1
  574. psychopy/tools/viewtools.py +54 -70
  575. psychopy/tools/wizard.py +2 -2
  576. psychopy/validation/__init__.py +6 -0
  577. psychopy/validation/audio.py +74 -0
  578. psychopy/validation/visual.py +115 -0
  579. psychopy/visual/__init__.py +1 -4
  580. psychopy/visual/aperture.py +9 -6
  581. psychopy/visual/backends/__init__.py +1 -1
  582. psychopy/visual/backends/_base.py +1 -1
  583. psychopy/visual/backends/gamma.py +1 -1
  584. psychopy/visual/backends/glfwbackend.py +8 -12
  585. psychopy/visual/backends/pygamebackend.py +1 -1
  586. psychopy/visual/backends/pygletbackend.py +32 -11
  587. psychopy/visual/basevisual.py +93 -13
  588. psychopy/visual/brush.py +1 -1
  589. psychopy/visual/bufferimage.py +90 -10
  590. psychopy/visual/button.py +1 -1
  591. psychopy/visual/circle.py +12 -20
  592. psychopy/visual/custommouse.py +1 -1
  593. psychopy/visual/dot.py +80 -14
  594. psychopy/visual/elementarray.py +84 -10
  595. psychopy/visual/filters.py +1 -1
  596. psychopy/visual/form.py +43 -28
  597. psychopy/visual/grating.py +105 -25
  598. psychopy/visual/helpers.py +1 -1
  599. psychopy/visual/image.py +98 -20
  600. psychopy/visual/line.py +15 -25
  601. psychopy/visual/movie.py +1 -1
  602. psychopy/visual/movie2.py +4 -3
  603. psychopy/visual/movie3.py +4 -3
  604. psychopy/visual/movies/__init__.py +1 -1
  605. psychopy/visual/movies/frame.py +1 -1
  606. psychopy/visual/movies/metadata.py +1 -1
  607. psychopy/visual/movies/players/__init__.py +1 -1
  608. psychopy/visual/movies/players/_base.py +1 -1
  609. psychopy/visual/movies/players/ffpyplayer_player.py +2 -3
  610. psychopy/visual/nnlvs.py +9 -6
  611. psychopy/visual/noise.py +4 -16
  612. psychopy/visual/patch.py +4 -3
  613. psychopy/visual/pie.py +3 -14
  614. psychopy/visual/polygon.py +21 -28
  615. psychopy/visual/radial.py +4 -18
  616. psychopy/visual/ratingscale.py +4 -3
  617. psychopy/visual/rect.py +16 -25
  618. psychopy/visual/rift.py +8 -2
  619. psychopy/visual/secondorder.py +4 -16
  620. psychopy/visual/shaders.py +620 -286
  621. psychopy/visual/shape.py +281 -90
  622. psychopy/visual/simpleimage.py +1 -1
  623. psychopy/visual/slider.py +78 -25
  624. psychopy/visual/stim3d.py +5 -608
  625. psychopy/visual/text.py +13 -3
  626. psychopy/visual/textbox2/textbox2.py +188 -56
  627. psychopy/visual/vlcmoviestim.py +1 -1
  628. psychopy/visual/window.py +373 -200
  629. psychopy/web.py +1 -1
  630. {psychopy-2024.2.5.dist-info → psychopy-2025.1.0.dist-info}/METADATA +9 -9
  631. {psychopy-2024.2.5.dist-info → psychopy-2025.1.0.dist-info}/RECORD +644 -621
  632. psychopy/.DS_Store +0 -0
  633. psychopy/__init__.py.orig +0 -65
  634. psychopy/app/.DS_Store +0 -0
  635. psychopy/app/Resources/.DS_Store +0 -0
  636. psychopy/app/Resources/classic/filecsv16.png +0 -0
  637. psychopy/app/Resources/classic/fileimage16.png +0 -0
  638. psychopy/app/Resources/classic/fileunknown16.png +0 -0
  639. psychopy/app/Resources/dark/filecsv16.png +0 -0
  640. psychopy/app/Resources/dark/filecsv16@2x.png +0 -0
  641. psychopy/app/Resources/dark/fileimage16.png +0 -0
  642. psychopy/app/Resources/dark/fileimage16@2x.png +0 -0
  643. psychopy/app/Resources/dark/fileunknown16.png +0 -0
  644. psychopy/app/Resources/dark/fileunknown16@2x.png +0 -0
  645. psychopy/app/Resources/fonts/OpenSans-Bold.ttf +0 -0
  646. psychopy/app/Resources/fonts/OpenSans-BoldItalic.ttf +0 -0
  647. psychopy/app/Resources/fonts/OpenSans-ExtraBold.ttf +0 -0
  648. psychopy/app/Resources/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  649. psychopy/app/Resources/fonts/OpenSans-Italic.ttf +0 -0
  650. psychopy/app/Resources/fonts/OpenSans-Light.ttf +0 -0
  651. psychopy/app/Resources/fonts/OpenSans-LightItalic.ttf +0 -0
  652. psychopy/app/Resources/fonts/OpenSans-Regular.ttf +0 -0
  653. psychopy/app/Resources/fonts/OpenSans-SemiBold.ttf +0 -0
  654. psychopy/app/Resources/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  655. psychopy/app/Resources/light/filecsv16.png +0 -0
  656. psychopy/app/Resources/light/filecsv16@2x.png +0 -0
  657. psychopy/app/Resources/light/fileimage16.png +0 -0
  658. psychopy/app/Resources/light/fileimage16@2x.png +0 -0
  659. psychopy/app/Resources/light/fileunknown16.png +0 -0
  660. psychopy/app/Resources/light/fileunknown16@2x.png +0 -0
  661. psychopy/app/Resources/psychopySplash.png +0 -0
  662. psychopy/app/Resources/psychopySplash@2x.png +0 -0
  663. psychopy/app/builder/builder.py.orig +0 -3932
  664. psychopy/app/builder/dialogs/__init__.py.orig +0 -1679
  665. psychopy/app/builder/dialogs/paramCtrls.py.orig +0 -713
  666. psychopy/app/colorpicker/__init__.py.orig +0 -411
  667. psychopy/app/locale/ar_001/.DS_Store +0 -0
  668. psychopy/app/locale/ar_001/LC_MESSAGE/.DS_Store +0 -0
  669. psychopy/core.py.orig +0 -169
  670. psychopy/demos/builder/.DS_Store +0 -0
  671. psychopy/demos/builder/Design Templates/randomisedBlocks/randomisedBlocks_lastrun.py +0 -330
  672. psychopy/demos/builder/Experiments/.DS_Store +0 -0
  673. psychopy/demos/builder/Experiments/dragAndDrop/archived_conditions.xlsx +0 -0
  674. psychopy/demos/builder/Experiments/dragAndDrop/draw grid stim.py +0 -61
  675. psychopy/demos/builder/Experiments/dragAndDrop/shapeMaker.psyexp +0 -91
  676. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_1.png +0 -0
  677. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_10.png +0 -0
  678. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_2.png +0 -0
  679. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_3.png +0 -0
  680. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_4.png +0 -0
  681. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_5.png +0 -0
  682. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_6.png +0 -0
  683. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_7.png +0 -0
  684. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_8.png +0 -0
  685. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_9.png +0 -0
  686. psychopy/demos/builder/Experiments/dragAndDrop/updated_conditions.xlsx +0 -0
  687. psychopy/demos/builder/Tools/.DS_Store +0 -0
  688. psychopy/demos/builder/Tools/gammaCalibration/.DS_Store +0 -0
  689. psychopy/demos/builder/Tools/gammaCalibration/data/.DS_Store +0 -0
  690. psychopy/demos/builder/Tools/gammaCalibration/data/_gamma_correction_visual_2022-05-18_14h18.29.439.csv +0 -38
  691. psychopy/demos/builder/Tools/gammaCalibration/data/_gamma_correction_visual_2022-05-18_14h18.29.439.log +0 -3418
  692. psychopy/demos/builder/Tools/gammaCalibration/data/_gamma_correction_visual_2022-05-18_14h18.29.439.psydat +0 -0
  693. psychopy/demos/builder/Tools/gammaCalibration/data/x1_gamma_correction_visual_2022-05-17_13h59.42.928.csv +0 -2
  694. psychopy/demos/builder/Tools/gammaCalibration/data/x1_gamma_correction_visual_2022-05-17_13h59.42.928.log +0 -15
  695. psychopy/demos/builder/Tools/gammaCalibration/data/x1_gamma_correction_visual_2022-05-17_13h59.42.928.psydat +0 -0
  696. psychopy/demos/builder/Tools/gammaCalibration/gamma_correction_visual_lastrun.py +0 -562
  697. psychopy/demos/coder/.DS_Store +0 -0
  698. psychopy/demos/coder/experiment control/info_gamma.pickle +0 -0
  699. psychopy/demos/coder/iohub/.iohpid +0 -1
  700. psychopy/demos/coder/iohub/eyetracking/.iohpid +0 -1
  701. psychopy/demos/coder/iohub/wintab/.DS_Store +0 -0
  702. psychopy/demos/coder/stimuli/.DS_Store +0 -0
  703. psychopy/experiment/_experiment.py.orig +0 -1032
  704. psychopy/experiment/components/.DS_Store +0 -0
  705. psychopy/experiment/components/_base.py.orig +0 -823
  706. psychopy/experiment/components/form/.DS_Store +0 -0
  707. psychopy/experiment/components/microphone/__init__.py.orig +0 -490
  708. psychopy/experiment/components/settings/__init__.py.orig +0 -1337
  709. psychopy/experiment/components/textbox/__init__.py.orig +0 -310
  710. psychopy/experiment/components/webcam/.DS_Store +0 -0
  711. psychopy/experiment/components/webcam/light/.DS_Store +0 -0
  712. psychopy/experiment/loops.py.orig +0 -829
  713. psychopy/experiment/params.py.orig +0 -408
  714. psychopy/experiment/routine.py.orig +0 -503
  715. psychopy/experiment/routines/photodiodeValidator/classic/photodiode_validator.png +0 -0
  716. psychopy/experiment/routines/photodiodeValidator/classic/photodiode_validator@2x.png +0 -0
  717. psychopy/experiment/routines/photodiodeValidator/dark/photodiode_validator.png +0 -0
  718. psychopy/experiment/routines/photodiodeValidator/dark/photodiode_validator@2x.png +0 -0
  719. psychopy/experiment/routines/photodiodeValidator/light/photodiode_validator.png +0 -0
  720. psychopy/experiment/routines/photodiodeValidator/light/photodiode_validator@2x.png +0 -0
  721. psychopy/hardware/.DS_Store +0 -0
  722. psychopy/hardware/brainproducts.py.orig +0 -680
  723. psychopy/hardware/iolab.py.orig +0 -238
  724. psychopy/iohub/datastore/__init__.py.orig +0 -443
  725. psychopy/iohub/datastore/util.py.orig +0 -692
  726. psychopy/iohub/devices/mouse/darwin.py.orig +0 -427
  727. psychopy/iohub/devices/mouse/linux2.py.orig +0 -198
  728. psychopy/preferences/.DS_Store +0 -0
  729. psychopy/projects/pavlovia.py.orig +0 -1295
  730. psychopy/tests/.DS_Store +0 -0
  731. psychopy/tests/data/.DS_Store +0 -0
  732. psychopy/tests/data/TestCircle_fill_local.png +0 -0
  733. psychopy/tests/data/aperture1_normHexbackground_local.png +0 -0
  734. psychopy/tests/data/aperture1_norm_local.png +0 -0
  735. psychopy/tests/data/aperture2_normHexbackground_local.png +0 -0
  736. psychopy/tests/data/beatandrcos_height_local.png +0 -0
  737. psychopy/tests/data/beatandrcos_normAddBlend_local.png +0 -0
  738. psychopy/tests/data/beatandrcos_normHexbackground_local.png +0 -0
  739. psychopy/tests/data/beatandrcos_norm_local.png +0 -0
  740. psychopy/tests/data/beatandrcos_stencil_local.png +0 -0
  741. psychopy/tests/data/blend_add_height_local.png +0 -0
  742. psychopy/tests/data/blend_add_normAddBlend_local.png +0 -0
  743. psychopy/tests/data/blend_add_normHexbackground_local.png +0 -0
  744. psychopy/tests/data/blend_add_normNoShade_local.png +0 -0
  745. psychopy/tests/data/blend_add_norm_local.png +0 -0
  746. psychopy/tests/data/blend_add_stencil_local.png +0 -0
  747. psychopy/tests/data/bufferimg_gabor_height_local.png +0 -0
  748. psychopy/tests/data/bufferimg_gabor_normAddBlend_local.png +0 -0
  749. psychopy/tests/data/bufferimg_gabor_normHexbackground_local.png +0 -0
  750. psychopy/tests/data/bufferimg_gabor_normNoShade_local.png +0 -0
  751. psychopy/tests/data/bufferimg_gabor_norm_local.png +0 -0
  752. psychopy/tests/data/bufferimg_gabor_stencil_local.png +0 -0
  753. psychopy/tests/data/circleHex_height_local.png +0 -0
  754. psychopy/tests/data/circleHex_normAddBlend_local.png +0 -0
  755. psychopy/tests/data/circleHex_normHexbackground_local.png +0 -0
  756. psychopy/tests/data/circleHex_normNoShade_local.png +0 -0
  757. psychopy/tests/data/circleHex_norm_local.png +0 -0
  758. psychopy/tests/data/circleHex_stencil_local.png +0 -0
  759. psychopy/tests/data/color_comparison_local.png +0 -0
  760. psychopy/tests/data/correctScript/.DS_Store +0 -0
  761. psychopy/tests/data/dots_height_local.png +0 -0
  762. psychopy/tests/data/dots_normAddBlend_local.png +0 -0
  763. psychopy/tests/data/dots_normHexbackground_local.png +0 -0
  764. psychopy/tests/data/dots_normNoShade_local.png +0 -0
  765. psychopy/tests/data/dots_norm_local.png +0 -0
  766. psychopy/tests/data/dots_stencil_local.png +0 -0
  767. psychopy/tests/data/elarray1_height_local.png +0 -0
  768. psychopy/tests/data/elarray1_normAddBlend_local.png +0 -0
  769. psychopy/tests/data/elarray1_normHexbackground_local.png +0 -0
  770. psychopy/tests/data/elarray1_norm_local.png +0 -0
  771. psychopy/tests/data/elarray1_stencil_local.png +0 -0
  772. psychopy/tests/data/envelopeandrcos_height_local.png +0 -0
  773. psychopy/tests/data/envelopeandrcos_normAddBlend_local.png +0 -0
  774. psychopy/tests/data/envelopeandrcos_normHexbackground_local.png +0 -0
  775. psychopy/tests/data/envelopeandrcos_norm_local.png +0 -0
  776. psychopy/tests/data/envelopeandrcos_stencil_local.png +0 -0
  777. psychopy/tests/data/envelopepowerandrcos_height_local.png +0 -0
  778. psychopy/tests/data/envelopepowerandrcos_normAddBlend_local.png +0 -0
  779. psychopy/tests/data/envelopepowerandrcos_normHexbackground_local.png +0 -0
  780. psychopy/tests/data/envelopepowerandrcos_norm_local.png +0 -0
  781. psychopy/tests/data/envelopepowerandrcos_stencil_local.png +0 -0
  782. psychopy/tests/data/gabor1_height_local.png +0 -0
  783. psychopy/tests/data/gabor1_normAddBlend_local.png +0 -0
  784. psychopy/tests/data/gabor1_normHexbackground_local.png +0 -0
  785. psychopy/tests/data/gabor1_normNoShade_local.png +0 -0
  786. psychopy/tests/data/gabor1_norm_local.png +0 -0
  787. psychopy/tests/data/gabor1_stencil_local.png +0 -0
  788. psychopy/tests/data/greyscale_normHexbackground_local.png +0 -0
  789. psychopy/tests/data/imageAndGauss_height_local.png +0 -0
  790. psychopy/tests/data/imageAndGauss_normAddBlend_local.png +0 -0
  791. psychopy/tests/data/imageAndGauss_normHexbackground_local.png +0 -0
  792. psychopy/tests/data/imageAndGauss_normNoShade_local.png +0 -0
  793. psychopy/tests/data/imageAndGauss_norm_local.png +0 -0
  794. psychopy/tests/data/imageAndGauss_stencil_local.png +0 -0
  795. psychopy/tests/data/movFrame1_stencil_local.png +0 -0
  796. psychopy/tests/data/noiseAndRcos_height_local.png +0 -0
  797. psychopy/tests/data/noiseAndRcos_normAddBlend_local.png +0 -0
  798. psychopy/tests/data/noiseAndRcos_normHexbackground_local.png +0 -0
  799. psychopy/tests/data/noiseAndRcos_normNoShade_local.png +0 -0
  800. psychopy/tests/data/noiseAndRcos_norm_local.png +0 -0
  801. psychopy/tests/data/noiseAndRcos_stencil_local.png +0 -0
  802. psychopy/tests/data/noiseFiltersAndRcos_height_local.png +0 -0
  803. psychopy/tests/data/noiseFiltersAndRcos_normAddBlend_local.png +0 -0
  804. psychopy/tests/data/noiseFiltersAndRcos_normHexbackground_local.png +0 -0
  805. psychopy/tests/data/noiseFiltersAndRcos_normNoShade_local.png +0 -0
  806. psychopy/tests/data/noiseFiltersAndRcos_norm_local.png +0 -0
  807. psychopy/tests/data/noiseFiltersAndRcos_stencil_local.png +0 -0
  808. psychopy/tests/data/numpyImage_height_local.png +0 -0
  809. psychopy/tests/data/numpyImage_normAddBlend_local.png +0 -0
  810. psychopy/tests/data/numpyImage_normHexbackground_local.png +0 -0
  811. psychopy/tests/data/numpyImage_normNoShade_local.png +0 -0
  812. psychopy/tests/data/numpyImage_norm_local.png +0 -0
  813. psychopy/tests/data/numpyImage_stencil_local.png +0 -0
  814. psychopy/tests/data/shape2_1_normAddBlend_local.png +0 -0
  815. psychopy/tests/data/shape2_1_normHexbackground_local.png +0 -0
  816. psychopy/tests/data/shape2_1_normNoShade_local.png +0 -0
  817. psychopy/tests/data/shape2_1_norm_local.png +0 -0
  818. psychopy/tests/data/shape2_1_stencil_local.png +0 -0
  819. psychopy/tests/data/text1_height_local.png +0 -0
  820. psychopy/tests/data/text1_normAddBlend_local.png +0 -0
  821. psychopy/tests/data/text1_normHexbackground_local.png +0 -0
  822. psychopy/tests/data/text1_norm_local.png +0 -0
  823. psychopy/tests/data/text1_stencil_local.png +0 -0
  824. psychopy/tests/data/wedge1_height_local.png +0 -0
  825. psychopy/tests/data/wedge1_normAddBlend_local.png +0 -0
  826. psychopy/tests/data/wedge1_normHexbackground_local.png +0 -0
  827. psychopy/tests/data/wedge1_normNoShade_local.png +0 -0
  828. psychopy/tests/data/wedge1_norm_local.png +0 -0
  829. psychopy/tests/data/wedge1_stencil_local.png +0 -0
  830. psychopy/tests/test_app/.DS_Store +0 -0
  831. psychopy/tests/test_app/test_builder/.DS_Store +0 -0
  832. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1206.log +0 -177
  833. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1206.psydat +0 -0
  834. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1206.xlsx +0 -0
  835. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1324.log +0 -168
  836. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1324.psydat +0 -0
  837. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1324.xlsx +0 -0
  838. psychopy/tests/test_data/.DS_Store +0 -0
  839. psychopy/tests/test_hardware/test_CRS_BitsSharp.py +0 -67
  840. psychopy/tests/test_hardware/test_CRS_BitsSharp.py.orig +0 -68
  841. psychopy/tests/test_hardware/test_CRS_bitsShaders.py +0 -110
  842. psychopy/tests/test_visual/test_image.py.orig +0 -219
  843. psychopy/visual/basevisual.py.orig +0 -1723
  844. psychopy/visual/form.py.orig +0 -1181
  845. psychopy/visual/text.py.orig +0 -752
  846. psychopy/visual/textbox2/textbox2.py.orig +0 -1315
  847. psychopy/visual/windowwarp.py.orig +0 -463
  848. /psychopy/{app/cortex.log → alerts/alertsCatalogue/3600.yaml} +0 -0
  849. /psychopy/{app/Resources → assets}/fonts/Arvo-Bold.ttf +0 -0
  850. /psychopy/{app/Resources → assets}/fonts/Arvo-BoldItalic.ttf +0 -0
  851. /psychopy/{app/Resources → assets}/fonts/Arvo-Italic.ttf +0 -0
  852. /psychopy/{app/Resources → assets}/fonts/Arvo-Regular.ttf +0 -0
  853. /psychopy/{app/Resources → assets}/fonts/DejaVuSerif.ttf +0 -0
  854. /psychopy/{app/Resources → assets}/fonts/IndieFlower-Regular.ttf +0 -0
  855. /psychopy/{app/Resources → assets}/fonts/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
  856. /psychopy/{app/Resources → assets}/fonts/JetBrainsMono-VariableFont_wght.ttf +0 -0
  857. /psychopy/demos/builder/Experiments/{GoNoGo → goNoGo}/readme.md +0 -0
  858. {psychopy-2024.2.5.dist-info → psychopy-2025.1.0.dist-info}/WHEEL +0 -0
  859. {psychopy-2024.2.5.dist-info → psychopy-2025.1.0.dist-info}/entry_points.txt +0 -0
  860. {psychopy-2024.2.5.dist-info → psychopy-2025.1.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,239 +1,354 @@
1
- <PsychoPy2experiment version="2021.1.0.dev3" encoding="utf-8">
1
+ <?xml version="1.0" ?>
2
+ <PsychoPy2experiment encoding="utf-8" version="2025.1.0">
2
3
  <Settings>
3
- <Param name="Audio latency priority" val="use prefs" valType="str" updates="None" />
4
- <Param name="Audio lib" val="use prefs" valType="str" updates="None" />
5
- <Param name="Completed URL" val="" valType="str" updates="None" />
6
- <Param name="Data file delimiter" val="auto" valType="str" updates="None" />
7
- <Param name="Data filename" val="u'data/%s_%s_%s' % (expInfo['participant'], expName, expInfo['date'])" valType="code" updates="None" />
8
- <Param name="Enable Escape" val="True" valType="bool" updates="None" />
9
- <Param name="Experiment info" val="{'participant': 'ID01', 'session': '001'}" valType="code" updates="None" />
10
- <Param name="Force stereo" val="True" valType="bool" updates="None" />
11
- <Param name="Full-screen window" val="True" valType="bool" updates="None" />
12
- <Param name="HTML path" val="html" valType="str" updates="None" />
13
- <Param name="Incomplete URL" val="" valType="str" updates="None" />
14
- <Param name="JS libs" val="packaged" valType="str" updates="None" />
15
- <Param name="Monitor" val="testMonitor" valType="str" updates="None" />
16
- <Param name="Resources" val="[]" valType="list" updates="None" />
17
- <Param name="Save csv file" val="False" valType="bool" updates="None" />
18
- <Param name="Save excel file" val="True" valType="bool" updates="None" />
19
- <Param name="Save log file" val="True" valType="bool" updates="None" />
20
- <Param name="Save psydat file" val="True" valType="bool" updates="None" />
21
- <Param name="Save wide csv file" val="True" valType="bool" updates="None" />
22
- <Param name="Saved data folder" val="" valType="code" updates="None" />
23
- <Param name="Screen" val="1" valType="num" updates="None" />
24
- <Param name="Show info dlg" val="True" valType="bool" updates="None" />
25
- <Param name="Show mouse" val="False" valType="bool" updates="None" />
26
- <Param name="Units" val="height" valType="str" updates="None" />
27
- <Param name="Use version" val="" valType="str" updates="None" />
28
- <Param name="Window size (pixels)" val="[1920, 1080]" valType="code" updates="None" />
29
- <Param name="blendMode" val="avg" valType="str" updates="None" />
30
- <Param name="color" val="$[0,0,0]" valType="str" updates="None" />
31
- <Param name="colorSpace" val="rgb" valType="str" updates="None" />
32
- <Param name="expName" val="branching" valType="str" updates="None" />
33
- <Param name="exportHTML" val="on Sync" valType="str" updates="None" />
34
- <Param name="logging level" val="warning" valType="code" updates="None" />
35
- <Param val="0" valType="code" updates="constant" name="runMode" /></Settings>
4
+ <Param val="use prefs" valType="str" updates="None" name="Audio latency priority"/>
5
+ <Param val="use prefs" valType="str" updates="None" name="Audio lib"/>
6
+ <Param val="" valType="str" updates="None" name="Completed URL"/>
7
+ <Param val="auto" valType="str" updates="None" name="Data file delimiter"/>
8
+ <Param val="u'data/%s_%s_%s' % (expInfo['participant'], expName, expInfo['date'])" valType="code" updates="None" name="Data filename"/>
9
+ <Param val="True" valType="bool" updates="None" name="Enable Escape"/>
10
+ <Param val="Thank you for your patience." valType="str" updates="None" name="End Message"/>
11
+ <Param val="{'participant': 'ID01', 'session': '001'}" valType="code" updates="None" name="Experiment info"/>
12
+ <Param val="True" valType="bool" updates="None" name="Force stereo"/>
13
+ <Param val="True" valType="bool" updates="None" name="Full-screen window"/>
14
+ <Param val="html" valType="str" updates="None" name="HTML path"/>
15
+ <Param val="" valType="str" updates="None" name="Incomplete URL"/>
16
+ <Param val="packaged" valType="str" updates="None" name="JS libs"/>
17
+ <Param val="testMonitor" valType="str" updates="None" name="Monitor"/>
18
+ <Param val="[]" valType="list" updates="None" name="Resources"/>
19
+ <Param val="False" valType="bool" updates="None" name="Save csv file"/>
20
+ <Param val="True" valType="bool" updates="None" name="Save excel file"/>
21
+ <Param val="False" valType="bool" updates="None" name="Save hdf5 file"/>
22
+ <Param val="True" valType="bool" updates="None" name="Save log file"/>
23
+ <Param val="True" valType="bool" updates="None" name="Save psydat file"/>
24
+ <Param val="True" valType="bool" updates="None" name="Save wide csv file"/>
25
+ <Param val="" valType="code" updates="None" name="Saved data folder"/>
26
+ <Param val="1" valType="num" updates="None" name="Screen"/>
27
+ <Param val="True" valType="bool" updates="None" name="Show info dlg"/>
28
+ <Param val="False" valType="bool" updates="None" name="Show mouse"/>
29
+ <Param val="height" valType="str" updates="None" name="Units"/>
30
+ <Param val="" valType="str" updates="None" name="Use version"/>
31
+ <Param val="[1920, 1080]" valType="code" updates="None" name="Window size (pixels)"/>
32
+ <Param val="none" valType="str" updates="None" name="backgroundFit"/>
33
+ <Param val="" valType="str" updates="None" name="backgroundImg"/>
34
+ <Param val="avg" valType="str" updates="None" name="blendMode"/>
35
+ <Param val="float" valType="str" updates="None" name="clockFormat"/>
36
+ <Param val="{'thisRow.t': 'priority.CRITICAL', 'expName': 'priority.LOW'}" valType="dict" updates="None" name="colPriority"/>
37
+ <Param val="$[0,0,0]" valType="str" updates="None" name="color"/>
38
+ <Param val="rgb" valType="str" updates="None" name="colorSpace"/>
39
+ <Param val="warning" valType="code" updates="None" name="consoleLoggingLevel"/>
40
+ <Param val="default" valType="str" updates="None" name="ecSampleRate"/>
41
+ <Param val="100.1.1.1" valType="str" updates="None" name="elAddress"/>
42
+ <Param val="FILTER_LEVEL_2" valType="str" updates="None" name="elDataFiltering"/>
43
+ <Param val="FILTER_LEVEL_OFF" valType="str" updates="None" name="elLiveFiltering"/>
44
+ <Param val="EYELINK 1000 DESKTOP" valType="str" updates="None" name="elModel"/>
45
+ <Param val="ELLIPSE_FIT" valType="str" updates="None" name="elPupilAlgorithm"/>
46
+ <Param val="PUPIL_AREA" valType="str" updates="None" name="elPupilMeasure"/>
47
+ <Param val="1000" valType="num" updates="None" name="elSampleRate"/>
48
+ <Param val="False" valType="bool" updates="None" name="elSimMode"/>
49
+ <Param val="RIGHT_EYE" valType="str" updates="None" name="elTrackEyes"/>
50
+ <Param val="PUPIL_CR_TRACKING" valType="str" updates="None" name="elTrackingMode"/>
51
+ <Param val="branching" valType="str" updates="None" name="expName"/>
52
+ <Param val="" valType="str" updates="None" name="expVersion"/>
53
+ <Param val="on Sync" valType="str" updates="None" name="exportHTML"/>
54
+ <Param val="None" valType="str" updates="None" name="eyetracker"/>
55
+ <Param val="" valType="code" updates="None" name="frameRate"/>
56
+ <Param val="Attempting to measure frame rate of screen, please wait..." valType="str" updates="None" name="frameRateMsg"/>
57
+ <Param val="127.0.0.1" valType="str" updates="None" name="gpAddress"/>
58
+ <Param val="4242" valType="num" updates="None" name="gpPort"/>
59
+ <Param val="PsychToolbox" valType="str" updates="None" name="keyboardBackend"/>
60
+ <Param val="warning" valType="code" updates="None" name="logging level"/>
61
+ <Param val="True" valType="bool" updates="None" name="measureFrameRate"/>
62
+ <Param val="MIDDLE_BUTTON" valType="list" updates="None" name="mgBlink"/>
63
+ <Param val="CONTINUOUS" valType="str" updates="None" name="mgMove"/>
64
+ <Param val="0.5" valType="num" updates="None" name="mgSaccade"/>
65
+ <Param val="neon.local" valType="str" updates="None" name="plCompanionAddress"/>
66
+ <Param val="8080" valType="num" updates="None" name="plCompanionPort"/>
67
+ <Param val="0.6" valType="num" updates="None" name="plConfidenceThreshold"/>
68
+ <Param val="" valType="str" updates="None" name="plPupilCaptureRecordingLocation"/>
69
+ <Param val="127.0.0.1" valType="str" updates="None" name="plPupilRemoteAddress"/>
70
+ <Param val="50020" valType="num" updates="None" name="plPupilRemotePort"/>
71
+ <Param val="1000" valType="num" updates="None" name="plPupilRemoteTimeoutMs"/>
72
+ <Param val="False" valType="bool" updates="None" name="plPupillometryOnly"/>
73
+ <Param val="psychopy_iohub_surface" valType="str" updates="None" name="plSurfaceName"/>
74
+ <Param val="0" valType="code" updates="constant" name="runMode"/>
75
+ <Param val="False" valType="bool" updates="None" name="rush"/>
76
+ <Param val="time" valType="str" updates="None" name="sortColumns"/>
77
+ <Param val="" valType="str" updates="None" name="tbLicenseFile"/>
78
+ <Param val="" valType="str" updates="None" name="tbModel"/>
79
+ <Param val="60" valType="num" updates="None" name="tbSampleRate"/>
80
+ <Param val="" valType="str" updates="None" name="tbSerialNo"/>
81
+ <Param val="pyglet" valType="str" updates="None" name="winBackend"/>
82
+ </Settings>
36
83
  <Routines>
37
84
  <Routine name="A">
38
- <TextboxComponent name="msgA">
39
- <Param name="anchor" val="center" valType="str" updates="constant" />
40
- <Param name="autoLog" val="True" valType="bool" updates="constant" />
41
- <Param name="bold" val="False" valType="bool" updates="constant" />
42
- <Param name="borderColor" val="None" valType="color" updates="constant" />
43
- <Param name="borderWidth" val="2" valType="num" updates="constant" />
44
- <Param name="color" val="$letterColor" valType="color" updates="set every repeat" />
45
- <Param name="colorSpace" val="rgb" valType="str" updates="constant" />
46
- <Param name="contrast" val="1" valType="num" updates="constant" />
47
- <Param name="disabled" val="False" valType="bool" updates="None" />
48
- <Param name="durationEstim" val="" valType="num" updates="None" />
49
- <Param name="editable" val="False" valType="bool" updates="constant" />
50
- <Param name="fillColor" val="None" valType="color" updates="constant" />
51
- <Param name="flipHoriz" val="False" valType="bool" updates="constant" />
52
- <Param name="flipVert" val="False" valType="bool" updates="constant" />
53
- <Param name="font" val="Open Sans" valType="str" updates="constant" />
54
- <Param name="italic" val="False" valType="bool" updates="constant" />
55
- <Param name="languageStyle" val="LTR" valType="str" updates="None" />
56
- <Param name="letterHeight" val="0.05" valType="num" updates="constant" />
57
- <Param name="lineSpacing" val="1.0" valType="num" updates="constant" />
58
- <Param name="name" val="msgA" valType="code" updates="None" />
59
- <Param name="opacity" val="1" valType="num" updates="constant" />
60
- <Param name="ori" val="0" valType="num" updates="constant" />
61
- <Param name="padding" val="" valType="num" updates="constant" />
62
- <Param name="pos" val="(0, 0)" valType="list" updates="constant" />
63
- <Param name="saveStartStop" val="True" valType="bool" updates="None" />
64
- <Param name="size" val="(0.8, 0.3)" valType="list" updates="constant" />
65
- <Param name="startEstim" val="" valType="num" updates="None" />
66
- <Param name="startType" val="time (s)" valType="str" updates="None" />
67
- <Param name="startVal" val="0.0" valType="num" updates="None" />
68
- <Param name="stopType" val="duration (s)" valType="str" updates="None" />
69
- <Param name="stopVal" val="1.0" valType="num" updates="constant" />
70
- <Param name="syncScreenRefresh" val="True" valType="bool" updates="None" />
71
- <Param name="text" val="You chose A (the blue pill?)" valType="str" updates="constant" />
72
- <Param name="units" val="from exp settings" valType="str" updates="None" />
85
+ <RoutineSettingsComponent name="A" plugin="None">
86
+ <Param val="none" valType="str" updates="None" name="backgroundFit"/>
87
+ <Param val="" valType="str" updates="None" name="backgroundImg"/>
88
+ <Param val="$[0,0,0]" valType="color" updates="None" name="color"/>
89
+ <Param val="rgb" valType="str" updates="None" name="colorSpace"/>
90
+ <Param val="" valType="str" updates="constant" name="desc"/>
91
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
92
+ <Param val="" valType="code" updates="None" name="durationEstim"/>
93
+ <Param val="False" valType="code" updates="None" name="forceNonSlip"/>
94
+ <Param val="A" valType="code" updates="None" name="name"/>
95
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
96
+ <Param val="" valType="code" updates="constant" name="skipIf"/>
97
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
98
+ <Param val="" valType="code" updates="constant" name="stopVal"/>
99
+ <Param val="False" valType="bool" updates="None" name="useWindowParams"/>
100
+ </RoutineSettingsComponent>
101
+ <TextboxComponent name="msgA" plugin="None">
102
+ <Param val="center" valType="str" updates="constant" name="alignment"/>
103
+ <Param val="center" valType="str" updates="constant" name="anchor"/>
104
+ <Param val="True" valType="bool" updates="constant" name="autoLog"/>
105
+ <Param val="False" valType="bool" updates="constant" name="bold"/>
106
+ <Param val="None" valType="color" updates="constant" name="borderColor"/>
107
+ <Param val="2" valType="num" updates="constant" name="borderWidth"/>
108
+ <Param val="$letterColor" valType="color" updates="set every repeat" name="color"/>
109
+ <Param val="rgb" valType="str" updates="constant" name="colorSpace"/>
110
+ <Param val="1" valType="num" updates="constant" name="contrast"/>
111
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
112
+ <Param val="False" valType="code" updates="constant" name="draggable"/>
113
+ <Param val="" valType="num" updates="None" name="durationEstim"/>
114
+ <Param val="False" valType="bool" updates="constant" name="editable"/>
115
+ <Param val="None" valType="color" updates="constant" name="fillColor"/>
116
+ <Param val="False" valType="bool" updates="constant" name="flipHoriz"/>
117
+ <Param val="False" valType="bool" updates="constant" name="flipVert"/>
118
+ <Param val="Arial" valType="str" updates="constant" name="font"/>
119
+ <Param val="False" valType="bool" updates="constant" name="italic"/>
120
+ <Param val="LTR" valType="str" updates="None" name="languageStyle"/>
121
+ <Param val="0.05" valType="num" updates="constant" name="letterHeight"/>
122
+ <Param val="1.0" valType="num" updates="constant" name="lineSpacing"/>
123
+ <Param val="msgA" valType="code" updates="None" name="name"/>
124
+ <Param val="1" valType="num" updates="constant" name="opacity"/>
125
+ <Param val="0" valType="num" updates="constant" name="ori"/>
126
+ <Param val="visible" valType="str" updates="constant" name="overflow"/>
127
+ <Param val="" valType="num" updates="constant" name="padding"/>
128
+ <Param val="Type here..." valType="str" updates="constant" name="placeholder"/>
129
+ <Param val="(0, 0)" valType="list" updates="constant" name="pos"/>
130
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
131
+ <Param val="(0.8, 0.3)" valType="list" updates="constant" name="size"/>
132
+ <Param val="" valType="list" updates="constant" name="speechPoint"/>
133
+ <Param val="" valType="num" updates="None" name="startEstim"/>
134
+ <Param val="time (s)" valType="str" updates="None" name="startType"/>
135
+ <Param val="0.0" valType="num" updates="None" name="startVal"/>
136
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
137
+ <Param val="1.0" valType="num" updates="constant" name="stopVal"/>
138
+ <Param val="True" valType="bool" updates="None" name="syncScreenRefresh"/>
139
+ <Param val="You chose A (the blue pill?)" valType="str" updates="constant" name="text"/>
140
+ <Param val="from exp settings" valType="str" updates="None" name="units"/>
141
+ <Param val="" valType="code" updates="None" name="validator"/>
73
142
  </TextboxComponent>
74
143
  </Routine>
75
144
  <Routine name="B">
76
- <TextboxComponent name="msgB">
77
- <Param name="anchor" val="center" valType="str" updates="constant" />
78
- <Param name="autoLog" val="True" valType="bool" updates="constant" />
79
- <Param name="bold" val="False" valType="bool" updates="constant" />
80
- <Param name="borderColor" val="None" valType="color" updates="constant" />
81
- <Param name="borderWidth" val="2" valType="num" updates="constant" />
82
- <Param name="color" val="$letterColor" valType="color" updates="set every repeat" />
83
- <Param name="colorSpace" val="rgb" valType="str" updates="constant" />
84
- <Param name="contrast" val="1" valType="num" updates="constant" />
85
- <Param name="disabled" val="False" valType="bool" updates="None" />
86
- <Param name="durationEstim" val="" valType="num" updates="None" />
87
- <Param name="editable" val="False" valType="bool" updates="constant" />
88
- <Param name="fillColor" val="None" valType="color" updates="constant" />
89
- <Param name="flipHoriz" val="False" valType="bool" updates="constant" />
90
- <Param name="flipVert" val="False" valType="bool" updates="constant" />
91
- <Param name="font" val="Open Sans" valType="str" updates="constant" />
92
- <Param name="italic" val="False" valType="bool" updates="constant" />
93
- <Param name="languageStyle" val="LTR" valType="str" updates="None" />
94
- <Param name="letterHeight" val="0.05" valType="num" updates="constant" />
95
- <Param name="lineSpacing" val="1.0" valType="num" updates="constant" />
96
- <Param name="name" val="msgB" valType="code" updates="None" />
97
- <Param name="opacity" val="1" valType="num" updates="constant" />
98
- <Param name="ori" val="0" valType="num" updates="constant" />
99
- <Param name="padding" val="" valType="num" updates="constant" />
100
- <Param name="pos" val="(0, 0)" valType="list" updates="constant" />
101
- <Param name="saveStartStop" val="True" valType="bool" updates="None" />
102
- <Param name="size" val="(0.8, 0.3)" valType="list" updates="constant" />
103
- <Param name="startEstim" val="" valType="num" updates="None" />
104
- <Param name="startType" val="time (s)" valType="str" updates="None" />
105
- <Param name="startVal" val="0.0" valType="num" updates="None" />
106
- <Param name="stopType" val="duration (s)" valType="str" updates="None" />
107
- <Param name="stopVal" val="1.0" valType="num" updates="constant" />
108
- <Param name="syncScreenRefresh" val="True" valType="bool" updates="None" />
109
- <Param name="text" val="You chose B (the red pill?)" valType="str" updates="constant" />
110
- <Param name="units" val="from exp settings" valType="str" updates="None" />
145
+ <RoutineSettingsComponent name="B" plugin="None">
146
+ <Param val="none" valType="str" updates="None" name="backgroundFit"/>
147
+ <Param val="" valType="str" updates="None" name="backgroundImg"/>
148
+ <Param val="$[0,0,0]" valType="color" updates="None" name="color"/>
149
+ <Param val="rgb" valType="str" updates="None" name="colorSpace"/>
150
+ <Param val="" valType="str" updates="constant" name="desc"/>
151
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
152
+ <Param val="" valType="code" updates="None" name="durationEstim"/>
153
+ <Param val="False" valType="code" updates="None" name="forceNonSlip"/>
154
+ <Param val="B" valType="code" updates="None" name="name"/>
155
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
156
+ <Param val="" valType="code" updates="constant" name="skipIf"/>
157
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
158
+ <Param val="" valType="code" updates="constant" name="stopVal"/>
159
+ <Param val="False" valType="bool" updates="None" name="useWindowParams"/>
160
+ </RoutineSettingsComponent>
161
+ <TextboxComponent name="msgB" plugin="None">
162
+ <Param val="center" valType="str" updates="constant" name="alignment"/>
163
+ <Param val="center" valType="str" updates="constant" name="anchor"/>
164
+ <Param val="True" valType="bool" updates="constant" name="autoLog"/>
165
+ <Param val="False" valType="bool" updates="constant" name="bold"/>
166
+ <Param val="None" valType="color" updates="constant" name="borderColor"/>
167
+ <Param val="2" valType="num" updates="constant" name="borderWidth"/>
168
+ <Param val="$letterColor" valType="color" updates="set every repeat" name="color"/>
169
+ <Param val="rgb" valType="str" updates="constant" name="colorSpace"/>
170
+ <Param val="1" valType="num" updates="constant" name="contrast"/>
171
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
172
+ <Param val="False" valType="code" updates="constant" name="draggable"/>
173
+ <Param val="" valType="num" updates="None" name="durationEstim"/>
174
+ <Param val="False" valType="bool" updates="constant" name="editable"/>
175
+ <Param val="None" valType="color" updates="constant" name="fillColor"/>
176
+ <Param val="False" valType="bool" updates="constant" name="flipHoriz"/>
177
+ <Param val="False" valType="bool" updates="constant" name="flipVert"/>
178
+ <Param val="Arial" valType="str" updates="constant" name="font"/>
179
+ <Param val="False" valType="bool" updates="constant" name="italic"/>
180
+ <Param val="LTR" valType="str" updates="None" name="languageStyle"/>
181
+ <Param val="0.05" valType="num" updates="constant" name="letterHeight"/>
182
+ <Param val="1.0" valType="num" updates="constant" name="lineSpacing"/>
183
+ <Param val="msgB" valType="code" updates="None" name="name"/>
184
+ <Param val="1" valType="num" updates="constant" name="opacity"/>
185
+ <Param val="0" valType="num" updates="constant" name="ori"/>
186
+ <Param val="visible" valType="str" updates="constant" name="overflow"/>
187
+ <Param val="" valType="num" updates="constant" name="padding"/>
188
+ <Param val="Type here..." valType="str" updates="constant" name="placeholder"/>
189
+ <Param val="(0, 0)" valType="list" updates="constant" name="pos"/>
190
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
191
+ <Param val="(0.8, 0.3)" valType="list" updates="constant" name="size"/>
192
+ <Param val="" valType="list" updates="constant" name="speechPoint"/>
193
+ <Param val="" valType="num" updates="None" name="startEstim"/>
194
+ <Param val="time (s)" valType="str" updates="None" name="startType"/>
195
+ <Param val="0.0" valType="num" updates="None" name="startVal"/>
196
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
197
+ <Param val="1.0" valType="num" updates="constant" name="stopVal"/>
198
+ <Param val="True" valType="bool" updates="None" name="syncScreenRefresh"/>
199
+ <Param val="You chose B (the red pill?)" valType="str" updates="constant" name="text"/>
200
+ <Param val="from exp settings" valType="str" updates="None" name="units"/>
201
+ <Param val="" valType="code" updates="None" name="validator"/>
111
202
  </TextboxComponent>
112
203
  </Routine>
113
204
  <Routine name="instr">
114
- <TextboxComponent name="textbox">
115
- <Param name="anchor" val="center" valType="str" updates="constant" />
116
- <Param name="autoLog" val="True" valType="bool" updates="constant" />
117
- <Param name="bold" val="False" valType="bool" updates="constant" />
118
- <Param name="borderColor" val="None" valType="color" updates="constant" />
119
- <Param name="borderWidth" val="2" valType="num" updates="constant" />
120
- <Param name="color" val="white" valType="color" updates="constant" />
121
- <Param name="colorSpace" val="rgb" valType="str" updates="constant" />
122
- <Param name="contrast" val="1" valType="num" updates="constant" />
123
- <Param name="disabled" val="False" valType="bool" updates="None" />
124
- <Param name="durationEstim" val="" valType="num" updates="None" />
125
- <Param name="editable" val="False" valType="bool" updates="constant" />
126
- <Param name="fillColor" val="None" valType="color" updates="constant" />
127
- <Param name="flipHoriz" val="False" valType="bool" updates="constant" />
128
- <Param name="flipVert" val="False" valType="bool" updates="constant" />
129
- <Param name="font" val="Open Sans" valType="str" updates="constant" />
130
- <Param name="italic" val="False" valType="bool" updates="constant" />
131
- <Param name="languageStyle" val="LTR" valType="str" updates="None" />
132
- <Param name="letterHeight" val="0.05" valType="num" updates="constant" />
133
- <Param name="lineSpacing" val="1.0" valType="num" updates="constant" />
134
- <Param name="name" val="textbox" valType="code" updates="None" />
135
- <Param name="opacity" val="1" valType="num" updates="constant" />
136
- <Param name="ori" val="0" valType="num" updates="constant" />
137
- <Param name="padding" val="" valType="num" updates="constant" />
138
- <Param name="pos" val="(0, 0)" valType="list" updates="constant" />
139
- <Param name="saveStartStop" val="True" valType="bool" updates="None" />
140
- <Param name="size" val="(0.8, 0.5)" valType="list" updates="constant" />
141
- <Param name="startEstim" val="" valType="num" updates="None" />
142
- <Param name="startType" val="time (s)" valType="str" updates="None" />
143
- <Param name="startVal" val="0.0" valType="num" updates="None" />
144
- <Param name="stopType" val="duration (s)" valType="str" updates="None" />
145
- <Param name="stopVal" val="" valType="num" updates="constant" />
146
- <Param name="syncScreenRefresh" val="True" valType="bool" updates="None" />
147
- <Param name="text" val="If you press 'a' you'll get 3 trials of Routine A&amp;#10;&amp;#10;If you press 'b' you'll get 3 trials of Routine B" valType="str" updates="constant" />
148
- <Param name="units" val="from exp settings" valType="str" updates="None" />
205
+ <RoutineSettingsComponent name="instr" plugin="None">
206
+ <Param val="none" valType="str" updates="None" name="backgroundFit"/>
207
+ <Param val="" valType="str" updates="None" name="backgroundImg"/>
208
+ <Param val="$[0,0,0]" valType="color" updates="None" name="color"/>
209
+ <Param val="rgb" valType="str" updates="None" name="colorSpace"/>
210
+ <Param val="" valType="str" updates="constant" name="desc"/>
211
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
212
+ <Param val="" valType="code" updates="None" name="durationEstim"/>
213
+ <Param val="False" valType="code" updates="None" name="forceNonSlip"/>
214
+ <Param val="instr" valType="code" updates="None" name="name"/>
215
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
216
+ <Param val="" valType="code" updates="constant" name="skipIf"/>
217
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
218
+ <Param val="" valType="code" updates="constant" name="stopVal"/>
219
+ <Param val="False" valType="bool" updates="None" name="useWindowParams"/>
220
+ </RoutineSettingsComponent>
221
+ <TextboxComponent name="textbox" plugin="None">
222
+ <Param val="center" valType="str" updates="constant" name="alignment"/>
223
+ <Param val="center" valType="str" updates="constant" name="anchor"/>
224
+ <Param val="True" valType="bool" updates="constant" name="autoLog"/>
225
+ <Param val="False" valType="bool" updates="constant" name="bold"/>
226
+ <Param val="None" valType="color" updates="constant" name="borderColor"/>
227
+ <Param val="2" valType="num" updates="constant" name="borderWidth"/>
228
+ <Param val="white" valType="color" updates="constant" name="color"/>
229
+ <Param val="rgb" valType="str" updates="constant" name="colorSpace"/>
230
+ <Param val="1" valType="num" updates="constant" name="contrast"/>
231
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
232
+ <Param val="False" valType="code" updates="constant" name="draggable"/>
233
+ <Param val="" valType="num" updates="None" name="durationEstim"/>
234
+ <Param val="False" valType="bool" updates="constant" name="editable"/>
235
+ <Param val="None" valType="color" updates="constant" name="fillColor"/>
236
+ <Param val="False" valType="bool" updates="constant" name="flipHoriz"/>
237
+ <Param val="False" valType="bool" updates="constant" name="flipVert"/>
238
+ <Param val="Arial" valType="str" updates="constant" name="font"/>
239
+ <Param val="False" valType="bool" updates="constant" name="italic"/>
240
+ <Param val="LTR" valType="str" updates="None" name="languageStyle"/>
241
+ <Param val="0.05" valType="num" updates="constant" name="letterHeight"/>
242
+ <Param val="1.0" valType="num" updates="constant" name="lineSpacing"/>
243
+ <Param val="textbox" valType="code" updates="None" name="name"/>
244
+ <Param val="1" valType="num" updates="constant" name="opacity"/>
245
+ <Param val="0" valType="num" updates="constant" name="ori"/>
246
+ <Param val="visible" valType="str" updates="constant" name="overflow"/>
247
+ <Param val="" valType="num" updates="constant" name="padding"/>
248
+ <Param val="Type here..." valType="str" updates="constant" name="placeholder"/>
249
+ <Param val="(0, 0)" valType="list" updates="constant" name="pos"/>
250
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
251
+ <Param val="(0.8, 0.5)" valType="list" updates="constant" name="size"/>
252
+ <Param val="" valType="list" updates="constant" name="speechPoint"/>
253
+ <Param val="" valType="num" updates="None" name="startEstim"/>
254
+ <Param val="time (s)" valType="str" updates="None" name="startType"/>
255
+ <Param val="0.0" valType="num" updates="None" name="startVal"/>
256
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
257
+ <Param val="" valType="num" updates="constant" name="stopVal"/>
258
+ <Param val="True" valType="bool" updates="None" name="syncScreenRefresh"/>
259
+ <Param val="If you press 'a' you'll get 3 trials of Routine A&amp;#10;&amp;#10;If you press 'b' you'll get 3 trials of Routine B" valType="str" updates="constant" name="text"/>
260
+ <Param val="from exp settings" valType="str" updates="None" name="units"/>
261
+ <Param val="" valType="code" updates="None" name="validator"/>
149
262
  </TextboxComponent>
150
- <KeyboardComponent name="resp">
151
- <Param name="allowedKeys" val="['a', 'b']" valType="code" updates="constant" />
152
- <Param name="correctAns" val="" valType="str" updates="constant" />
153
- <Param name="disabled" val="False" valType="bool" updates="None" />
154
- <Param name="discard previous" val="True" valType="bool" updates="constant" />
155
- <Param name="durationEstim" val="" valType="code" updates="None" />
156
- <Param name="forceEndRoutine" val="True" valType="bool" updates="constant" />
157
- <Param name="name" val="resp" valType="code" updates="None" />
158
- <Param name="saveStartStop" val="True" valType="bool" updates="None" />
159
- <Param name="startEstim" val="" valType="code" updates="None" />
160
- <Param name="startType" val="time (s)" valType="str" updates="None" />
161
- <Param name="startVal" val="0.0" valType="code" updates="None" />
162
- <Param name="stopType" val="duration (s)" valType="str" updates="None" />
163
- <Param name="stopVal" val="" valType="code" updates="constant" />
164
- <Param name="store" val="last key" valType="str" updates="constant" />
165
- <Param name="storeCorrect" val="False" valType="bool" updates="constant" />
166
- <Param name="syncScreenRefresh" val="True" valType="bool" updates="constant" />
263
+ <KeyboardComponent name="resp" plugin="None">
264
+ <Param val="['a', 'b']" valType="list" updates="constant" name="allowedKeys"/>
265
+ <Param val="" valType="str" updates="constant" name="correctAns"/>
266
+ <Param val="" valType="str" updates="None" name="deviceLabel"/>
267
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
268
+ <Param val="True" valType="bool" updates="constant" name="discard previous"/>
269
+ <Param val="" valType="code" updates="None" name="durationEstim"/>
270
+ <Param val="True" valType="bool" updates="constant" name="forceEndRoutine"/>
271
+ <Param val="resp" valType="code" updates="None" name="name"/>
272
+ <Param val="press" valType="str" updates="constant" name="registerOn"/>
273
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
274
+ <Param val="" valType="code" updates="None" name="startEstim"/>
275
+ <Param val="time (s)" valType="str" updates="None" name="startType"/>
276
+ <Param val="0.0" valType="code" updates="None" name="startVal"/>
277
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
278
+ <Param val="" valType="code" updates="constant" name="stopVal"/>
279
+ <Param val="last key" valType="str" updates="constant" name="store"/>
280
+ <Param val="False" valType="bool" updates="constant" name="storeCorrect"/>
281
+ <Param val="True" valType="bool" updates="constant" name="syncScreenRefresh"/>
167
282
  </KeyboardComponent>
168
- <VariableComponent name="nRepsA">
169
- <Param name="disabled" val="False" valType="bool" updates="None" />
170
- <Param name="durationEstim" val="" valType="num" updates="None" />
171
- <Param name="name" val="nRepsA" valType="code" updates="None" />
172
- <Param name="saveEndExp" val="False" valType="bool" updates="constant" />
173
- <Param name="saveEndRoutine" val="True" valType="bool" updates="constant" />
174
- <Param name="saveFrameValue" val="never" valType="str" updates="constant" />
175
- <Param name="saveStartExp" val="False" valType="bool" updates="constant" />
176
- <Param name="saveStartRoutine" val="False" valType="bool" updates="constant" />
177
- <Param name="saveStartStop" val="True" valType="bool" updates="None" />
178
- <Param name="startEstim" val="" valType="num" updates="None" />
179
- <Param name="startExpValue" val="" valType="code" updates="constant" />
180
- <Param name="startFrameValue" val="int(resp.keys == 'a') * 3 # 3 if a was pressed, 0 otherwise" valType="code" updates="None" />
181
- <Param name="startRoutineValue" val="" valType="code" updates="constant" />
182
- <Param name="startType" val="time (s)" valType="str" updates="None" />
183
- <Param name="startVal" val="" valType="num" updates="None" />
184
- <Param name="stopType" val="duration (s)" valType="str" updates="None" />
185
- <Param name="stopVal" val="" valType="num" updates="constant" />
186
- <Param name="syncScreenRefresh" val="False" valType="bool" updates="None" />
283
+ <VariableComponent name="nRepsA" plugin="None">
284
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
285
+ <Param val="" valType="num" updates="None" name="durationEstim"/>
286
+ <Param val="nRepsA" valType="code" updates="None" name="name"/>
287
+ <Param val="False" valType="bool" updates="constant" name="saveEndExp"/>
288
+ <Param val="True" valType="bool" updates="constant" name="saveEndRoutine"/>
289
+ <Param val="never" valType="str" updates="constant" name="saveFrameValue"/>
290
+ <Param val="False" valType="bool" updates="constant" name="saveStartExp"/>
291
+ <Param val="False" valType="bool" updates="constant" name="saveStartRoutine"/>
292
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
293
+ <Param val="" valType="num" updates="None" name="startEstim"/>
294
+ <Param val="" valType="code" updates="constant" name="startExpValue"/>
295
+ <Param val="int(resp.keys == 'a') * 3 # 3 if a was pressed, 0 otherwise" valType="code" updates="None" name="startFrameValue"/>
296
+ <Param val="" valType="code" updates="constant" name="startRoutineValue"/>
297
+ <Param val="time (s)" valType="str" updates="None" name="startType"/>
298
+ <Param val="" valType="num" updates="None" name="startVal"/>
299
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
300
+ <Param val="" valType="num" updates="constant" name="stopVal"/>
301
+ <Param val="False" valType="bool" updates="None" name="syncScreenRefresh"/>
187
302
  </VariableComponent>
188
- <VariableComponent name="nRepsB">
189
- <Param name="disabled" val="False" valType="bool" updates="None" />
190
- <Param name="durationEstim" val="" valType="num" updates="None" />
191
- <Param name="name" val="nRepsB" valType="code" updates="None" />
192
- <Param name="saveEndExp" val="False" valType="bool" updates="constant" />
193
- <Param name="saveEndRoutine" val="True" valType="bool" updates="constant" />
194
- <Param name="saveFrameValue" val="never" valType="str" updates="constant" />
195
- <Param name="saveStartExp" val="False" valType="bool" updates="constant" />
196
- <Param name="saveStartRoutine" val="False" valType="bool" updates="constant" />
197
- <Param name="saveStartStop" val="True" valType="bool" updates="None" />
198
- <Param name="startEstim" val="" valType="num" updates="None" />
199
- <Param name="startExpValue" val="" valType="code" updates="constant" />
200
- <Param name="startFrameValue" val="int(resp.keys == 'b') * 3 # 3 if b was pressed, 0 otherwise" valType="code" updates="None" />
201
- <Param name="startRoutineValue" val="" valType="code" updates="constant" />
202
- <Param name="startType" val="time (s)" valType="str" updates="None" />
203
- <Param name="startVal" val="" valType="num" updates="None" />
204
- <Param name="stopType" val="duration (s)" valType="str" updates="None" />
205
- <Param name="stopVal" val="" valType="num" updates="constant" />
206
- <Param name="syncScreenRefresh" val="False" valType="bool" updates="None" />
303
+ <VariableComponent name="nRepsB" plugin="None">
304
+ <Param val="False" valType="bool" updates="None" name="disabled"/>
305
+ <Param val="" valType="num" updates="None" name="durationEstim"/>
306
+ <Param val="nRepsB" valType="code" updates="None" name="name"/>
307
+ <Param val="False" valType="bool" updates="constant" name="saveEndExp"/>
308
+ <Param val="True" valType="bool" updates="constant" name="saveEndRoutine"/>
309
+ <Param val="never" valType="str" updates="constant" name="saveFrameValue"/>
310
+ <Param val="False" valType="bool" updates="constant" name="saveStartExp"/>
311
+ <Param val="False" valType="bool" updates="constant" name="saveStartRoutine"/>
312
+ <Param val="True" valType="bool" updates="None" name="saveStartStop"/>
313
+ <Param val="" valType="num" updates="None" name="startEstim"/>
314
+ <Param val="" valType="code" updates="constant" name="startExpValue"/>
315
+ <Param val="int(resp.keys == 'b') * 3 # 3 if b was pressed, 0 otherwise" valType="code" updates="None" name="startFrameValue"/>
316
+ <Param val="" valType="code" updates="constant" name="startRoutineValue"/>
317
+ <Param val="time (s)" valType="str" updates="None" name="startType"/>
318
+ <Param val="" valType="num" updates="None" name="startVal"/>
319
+ <Param val="duration (s)" valType="str" updates="None" name="stopType"/>
320
+ <Param val="" valType="num" updates="constant" name="stopVal"/>
321
+ <Param val="False" valType="bool" updates="None" name="syncScreenRefresh"/>
207
322
  </VariableComponent>
208
323
  </Routine>
209
324
  </Routines>
210
325
  <Flow>
211
- <Routine name="instr" />
326
+ <Routine name="instr"/>
212
327
  <LoopInitiator loopType="TrialHandler" name="repsA">
213
- <Param name="Selected rows" val="" valType="str" updates="None" />
214
- <Param name="conditions" val="[{'letterColor': 'red'}, {'letterColor': 'green'}, {'letterColor': 'blue'}]" valType="str" updates="None" />
215
- <Param name="conditionsFile" val="trialTypes.xlsx" valType="str" updates="None" />
216
- <Param name="endPoints" val="[0, 1]" valType="num" updates="None" />
217
- <Param name="isTrials" val="True" valType="bool" updates="None" />
218
- <Param name="loopType" val="random" valType="str" updates="None" />
219
- <Param name="nReps" val="nRepsA" valType="code" updates="None" />
220
- <Param name="name" val="repsA" valType="code" updates="None" />
221
- <Param name="random seed" val="" valType="code" updates="None" />
328
+ <Param name="Selected rows" updates="None" val="" valType="str"/>
329
+ <Param name="conditions" updates="None" val="[{'letterColor': 'red'}, {'letterColor': 'green'}, {'letterColor': 'blue'}]" valType="str"/>
330
+ <Param name="conditionsFile" updates="None" val="trialTypes.xlsx" valType="str"/>
331
+ <Param name="endPoints" updates="None" val="[0, 1]" valType="num"/>
332
+ <Param name="isTrials" updates="None" val="True" valType="bool"/>
333
+ <Param name="loopType" updates="None" val="random" valType="str"/>
334
+ <Param name="nReps" updates="None" val="nRepsA" valType="code"/>
335
+ <Param name="name" updates="None" val="repsA" valType="code"/>
336
+ <Param name="random seed" updates="None" val="" valType="code"/>
222
337
  </LoopInitiator>
223
- <Routine name="A" />
224
- <LoopTerminator name="repsA" />
338
+ <Routine name="A"/>
339
+ <LoopTerminator name="repsA"/>
225
340
  <LoopInitiator loopType="TrialHandler" name="repsB">
226
- <Param name="Selected rows" val="" valType="str" updates="None" />
227
- <Param name="conditions" val="[{'letterColor': 'red'}, {'letterColor': 'green'}, {'letterColor': 'blue'}]" valType="str" updates="None" />
228
- <Param name="conditionsFile" val="trialTypes.xlsx" valType="str" updates="None" />
229
- <Param name="endPoints" val="[0, 1]" valType="num" updates="None" />
230
- <Param name="isTrials" val="True" valType="bool" updates="None" />
231
- <Param name="loopType" val="random" valType="str" updates="None" />
232
- <Param name="nReps" val="nRepsB" valType="code" updates="None" />
233
- <Param name="name" val="repsB" valType="code" updates="None" />
234
- <Param name="random seed" val="" valType="code" updates="None" />
341
+ <Param name="Selected rows" updates="None" val="" valType="str"/>
342
+ <Param name="conditions" updates="None" val="[{'letterColor': 'red'}, {'letterColor': 'green'}, {'letterColor': 'blue'}]" valType="str"/>
343
+ <Param name="conditionsFile" updates="None" val="trialTypes.xlsx" valType="str"/>
344
+ <Param name="endPoints" updates="None" val="[0, 1]" valType="num"/>
345
+ <Param name="isTrials" updates="None" val="True" valType="bool"/>
346
+ <Param name="loopType" updates="None" val="random" valType="str"/>
347
+ <Param name="nReps" updates="None" val="nRepsB" valType="code"/>
348
+ <Param name="name" updates="None" val="repsB" valType="code"/>
349
+ <Param name="random seed" updates="None" val="" valType="code"/>
235
350
  </LoopInitiator>
236
- <Routine name="B" />
237
- <LoopTerminator name="repsB" />
351
+ <Routine name="B"/>
352
+ <LoopTerminator name="repsB"/>
238
353
  </Flow>
239
- </PsychoPy2experiment>
354
+ </PsychoPy2experiment>