boris-behav-obs 8.9.16__py3-none-any.whl → 9.7.6__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 boris-behav-obs might be problematic. Click here for more details.

Files changed (129) hide show
  1. boris/__init__.py +1 -1
  2. boris/__main__.py +1 -1
  3. boris/about.py +36 -39
  4. boris/add_modifier.py +122 -109
  5. boris/add_modifier_ui.py +239 -135
  6. boris/advanced_event_filtering.py +81 -45
  7. boris/analysis_plugins/__init__.py +0 -0
  8. boris/analysis_plugins/_latency.py +59 -0
  9. boris/analysis_plugins/irr_cohen_kappa.py +109 -0
  10. boris/analysis_plugins/irr_cohen_kappa_with_modifiers.py +112 -0
  11. boris/analysis_plugins/irr_weighted_cohen_kappa.py +157 -0
  12. boris/analysis_plugins/irr_weighted_cohen_kappa_with_modifiers.py +162 -0
  13. boris/analysis_plugins/list_of_dataframe_columns.py +22 -0
  14. boris/analysis_plugins/number_of_occurences.py +22 -0
  15. boris/analysis_plugins/number_of_occurences_by_independent_variable.py +54 -0
  16. boris/analysis_plugins/time_budget.py +61 -0
  17. boris/behav_coding_map_creator.py +228 -229
  18. boris/behavior_binary_table.py +33 -50
  19. boris/behaviors_coding_map.py +17 -18
  20. boris/boris_cli.py +6 -25
  21. boris/cmd_arguments.py +12 -1
  22. boris/coding_pad.py +42 -49
  23. boris/config.py +161 -77
  24. boris/config_file.py +63 -83
  25. boris/connections.py +112 -57
  26. boris/converters.py +13 -37
  27. boris/converters_ui.py +187 -110
  28. boris/cooccurence.py +250 -0
  29. boris/core.py +2511 -1824
  30. boris/core_qrc.py +15895 -10185
  31. boris/core_ui.py +946 -792
  32. boris/db_functions.py +21 -41
  33. boris/dev.py +134 -0
  34. boris/dialog.py +505 -244
  35. boris/duration_widget.py +15 -20
  36. boris/edit_event.py +84 -28
  37. boris/edit_event_ui.py +214 -78
  38. boris/event_operations.py +517 -415
  39. boris/events_cursor.py +25 -17
  40. boris/events_snapshots.py +36 -82
  41. boris/exclusion_matrix.py +4 -9
  42. boris/export_events.py +213 -583
  43. boris/export_observation.py +98 -611
  44. boris/external_processes.py +156 -97
  45. boris/geometric_measurement.py +652 -287
  46. boris/gui_utilities.py +91 -14
  47. boris/image_overlay.py +9 -9
  48. boris/import_observations.py +190 -98
  49. boris/ipc_mpv.py +325 -0
  50. boris/irr.py +26 -63
  51. boris/latency.py +34 -25
  52. boris/measurement_widget.py +14 -18
  53. boris/media_file.py +52 -84
  54. boris/menu_options.py +17 -6
  55. boris/modifier_coding_map_creator.py +1013 -0
  56. boris/modifiers_coding_map.py +7 -9
  57. boris/mpv.py +1 -0
  58. boris/mpv2.py +732 -705
  59. boris/observation.py +655 -310
  60. boris/observation_operations.py +1036 -404
  61. boris/observation_ui.py +584 -356
  62. boris/observations_list.py +71 -53
  63. boris/otx_parser.py +74 -80
  64. boris/param_panel.py +31 -16
  65. boris/param_panel_ui.py +254 -138
  66. boris/player_dock_widget.py +90 -60
  67. boris/plot_data_module.py +43 -46
  68. boris/plot_events.py +127 -90
  69. boris/plot_events_rt.py +17 -31
  70. boris/plot_spectrogram_rt.py +95 -30
  71. boris/plot_waveform_rt.py +32 -21
  72. boris/plugins.py +431 -0
  73. boris/portion/__init__.py +18 -8
  74. boris/portion/const.py +35 -18
  75. boris/portion/dict.py +5 -5
  76. boris/portion/func.py +2 -2
  77. boris/portion/interval.py +21 -41
  78. boris/portion/io.py +41 -32
  79. boris/preferences.py +306 -83
  80. boris/preferences_ui.py +685 -228
  81. boris/project.py +448 -293
  82. boris/project_functions.py +689 -254
  83. boris/project_import_export.py +213 -222
  84. boris/project_ui.py +674 -438
  85. boris/qrc_boris.py +6 -3
  86. boris/qrc_boris5.py +6 -3
  87. boris/select_modifiers.py +74 -48
  88. boris/select_observations.py +20 -199
  89. boris/select_subj_behav.py +67 -39
  90. boris/state_events.py +53 -37
  91. boris/subjects_pad.py +6 -9
  92. boris/synthetic_time_budget.py +45 -28
  93. boris/time_budget_functions.py +171 -171
  94. boris/time_budget_widget.py +84 -114
  95. boris/transitions.py +41 -47
  96. boris/utilities.py +766 -266
  97. boris/version.py +3 -3
  98. boris/video_equalizer.py +16 -14
  99. boris/video_equalizer_ui.py +199 -130
  100. boris/video_operations.py +125 -28
  101. boris/view_df.py +104 -0
  102. boris/view_df_ui.py +75 -0
  103. boris/write_event.py +538 -0
  104. boris_behav_obs-9.7.6.dist-info/METADATA +139 -0
  105. boris_behav_obs-9.7.6.dist-info/RECORD +109 -0
  106. {boris_behav_obs-8.9.16.dist-info → boris_behav_obs-9.7.6.dist-info}/WHEEL +1 -1
  107. boris_behav_obs-9.7.6.dist-info/entry_points.txt +2 -0
  108. boris/README.TXT +0 -22
  109. boris/add_modifier.ui +0 -323
  110. boris/boris_ui.py +0 -886
  111. boris/converters.ui +0 -289
  112. boris/core.qrc +0 -35
  113. boris/core.ui +0 -1543
  114. boris/edit_event.ui +0 -175
  115. boris/icons/logo_eye.ico +0 -0
  116. boris/map_creator.py +0 -850
  117. boris/observation.ui +0 -773
  118. boris/param_panel.ui +0 -379
  119. boris/preferences.ui +0 -537
  120. boris/project.ui +0 -1069
  121. boris/project_server.py +0 -236
  122. boris/vlc.py +0 -10343
  123. boris/vlc_local.py +0 -90
  124. boris_behav_obs-8.9.16.dist-info/LICENSE.TXT +0 -674
  125. boris_behav_obs-8.9.16.dist-info/METADATA +0 -129
  126. boris_behav_obs-8.9.16.dist-info/RECORD +0 -108
  127. boris_behav_obs-8.9.16.dist-info/entry_points.txt +0 -2
  128. {boris → boris_behav_obs-9.7.6.dist-info/licenses}/LICENSE.TXT +0 -0
  129. {boris_behav_obs-8.9.16.dist-info → boris_behav_obs-9.7.6.dist-info}/top_level.txt +0 -0
boris/preferences.ui DELETED
@@ -1,537 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <ui version="4.0">
3
- <class>prefDialog</class>
4
- <widget class="QDialog" name="prefDialog">
5
- <property name="windowModality">
6
- <enum>Qt::WindowModal</enum>
7
- </property>
8
- <property name="geometry">
9
- <rect>
10
- <x>0</x>
11
- <y>0</y>
12
- <width>719</width>
13
- <height>554</height>
14
- </rect>
15
- </property>
16
- <property name="windowTitle">
17
- <string>Preferences</string>
18
- </property>
19
- <layout class="QGridLayout" name="gridLayout">
20
- <item row="0" column="0">
21
- <layout class="QVBoxLayout" name="verticalLayout_2">
22
- <item>
23
- <widget class="QTabWidget" name="tabWidget">
24
- <property name="enabled">
25
- <bool>true</bool>
26
- </property>
27
- <property name="currentIndex">
28
- <number>0</number>
29
- </property>
30
- <widget class="QWidget" name="tab">
31
- <attribute name="title">
32
- <string>Project</string>
33
- </attribute>
34
- <layout class="QVBoxLayout" name="verticalLayout_5">
35
- <item>
36
- <layout class="QHBoxLayout" name="horizontalLayout_14">
37
- <item>
38
- <widget class="QLabel" name="label">
39
- <property name="text">
40
- <string>Default project time format</string>
41
- </property>
42
- </widget>
43
- </item>
44
- <item>
45
- <widget class="QComboBox" name="cbTimeFormat">
46
- <item>
47
- <property name="text">
48
- <string>seconds</string>
49
- </property>
50
- </item>
51
- <item>
52
- <property name="text">
53
- <string>hh:mm:ss.mss</string>
54
- </property>
55
- </item>
56
- </widget>
57
- </item>
58
- </layout>
59
- </item>
60
- <item>
61
- <layout class="QHBoxLayout" name="horizontalLayout_15">
62
- <item>
63
- <widget class="QLabel" name="label_6">
64
- <property name="text">
65
- <string>Auto-save project every (minutes)</string>
66
- </property>
67
- </widget>
68
- </item>
69
- <item>
70
- <widget class="QSpinBox" name="sbAutomaticBackup">
71
- <property name="minimum">
72
- <number>-10000</number>
73
- </property>
74
- <property name="maximum">
75
- <number>10000</number>
76
- </property>
77
- <property name="value">
78
- <number>10</number>
79
- </property>
80
- </widget>
81
- </item>
82
- </layout>
83
- </item>
84
- <item>
85
- <layout class="QHBoxLayout" name="horizontalLayout_13">
86
- <item>
87
- <widget class="QLabel" name="label_3">
88
- <property name="text">
89
- <string>Separator for behavioural strings (events export)</string>
90
- </property>
91
- </widget>
92
- </item>
93
- <item>
94
- <widget class="QLineEdit" name="leSeparator">
95
- <property name="text">
96
- <string>|</string>
97
- </property>
98
- </widget>
99
- </item>
100
- </layout>
101
- </item>
102
- <item>
103
- <widget class="QCheckBox" name="cbCheckForNewVersion">
104
- <property name="text">
105
- <string>Check for new version and news</string>
106
- </property>
107
- </widget>
108
- </item>
109
- <item>
110
- <layout class="QHBoxLayout" name="horizontalLayout_11">
111
- <item>
112
- <widget class="QLabel" name="lb_hwdec">
113
- <property name="text">
114
- <string>MPV player hardware video decoding</string>
115
- </property>
116
- </widget>
117
- </item>
118
- <item>
119
- <widget class="QComboBox" name="cb_hwdec"/>
120
- </item>
121
- </layout>
122
- </item>
123
- <item>
124
- <layout class="QHBoxLayout" name="horizontalLayout_9">
125
- <item>
126
- <widget class="QLabel" name="lb_hwdec_2">
127
- <property name="text">
128
- <string>MPV player hardware video decoding</string>
129
- </property>
130
- </widget>
131
- </item>
132
- <item>
133
- <widget class="QComboBox" name="combo_project_file_indentation"/>
134
- </item>
135
- </layout>
136
- </item>
137
- <item>
138
- <spacer name="verticalSpacer_2">
139
- <property name="orientation">
140
- <enum>Qt::Vertical</enum>
141
- </property>
142
- <property name="sizeHint" stdset="0">
143
- <size>
144
- <width>20</width>
145
- <height>40</height>
146
- </size>
147
- </property>
148
- </spacer>
149
- </item>
150
- </layout>
151
- </widget>
152
- <widget class="QWidget" name="tab_results">
153
- <attribute name="title">
154
- <string>Observations</string>
155
- </attribute>
156
- <layout class="QVBoxLayout" name="verticalLayout">
157
- <item>
158
- <layout class="QHBoxLayout" name="horizontalLayout_4">
159
- <item>
160
- <widget class="QLabel" name="label_4">
161
- <property name="text">
162
- <string>Fast forward/backward value (seconds)</string>
163
- </property>
164
- </widget>
165
- </item>
166
- <item>
167
- <widget class="QSpinBox" name="sbffSpeed">
168
- <property name="minimum">
169
- <number>0</number>
170
- </property>
171
- <property name="maximum">
172
- <number>10000</number>
173
- </property>
174
- <property name="value">
175
- <number>10</number>
176
- </property>
177
- </widget>
178
- </item>
179
- </layout>
180
- </item>
181
- <item>
182
- <widget class="QCheckBox" name="cb_adapt_fast_jump">
183
- <property name="text">
184
- <string>Adapt the fast forward/backward jump to playback speed</string>
185
- </property>
186
- </widget>
187
- </item>
188
- <item>
189
- <layout class="QHBoxLayout" name="horizontalLayout_5">
190
- <item>
191
- <widget class="QLabel" name="label_5">
192
- <property name="text">
193
- <string>Playback speed step value</string>
194
- </property>
195
- </widget>
196
- </item>
197
- <item>
198
- <widget class="QDoubleSpinBox" name="sbSpeedStep">
199
- <property name="decimals">
200
- <number>1</number>
201
- </property>
202
- <property name="minimum">
203
- <double>0.100000000000000</double>
204
- </property>
205
- <property name="maximum">
206
- <double>10.000000000000000</double>
207
- </property>
208
- <property name="singleStep">
209
- <double>0.100000000000000</double>
210
- </property>
211
- <property name="value">
212
- <double>0.100000000000000</double>
213
- </property>
214
- </widget>
215
- </item>
216
- </layout>
217
- </item>
218
- <item>
219
- <layout class="QHBoxLayout" name="horizontalLayout_6">
220
- <item>
221
- <widget class="QLabel" name="label_2">
222
- <property name="text">
223
- <string>Time offset for video/audio reposition (seconds)</string>
224
- </property>
225
- </widget>
226
- </item>
227
- <item>
228
- <widget class="QSpinBox" name="sbRepositionTimeOffset">
229
- <property name="minimum">
230
- <number>-10000</number>
231
- </property>
232
- <property name="maximum">
233
- <number>10000</number>
234
- </property>
235
- <property name="value">
236
- <number>-3</number>
237
- </property>
238
- </widget>
239
- </item>
240
- </layout>
241
- </item>
242
- <item>
243
- <widget class="QCheckBox" name="cbConfirmSound">
244
- <property name="text">
245
- <string>Play sound when a key is pressed</string>
246
- </property>
247
- </widget>
248
- </item>
249
- <item>
250
- <widget class="QCheckBox" name="cbCloseSameEvent">
251
- <property name="text">
252
- <string>Close the same current event independently of modifiers</string>
253
- </property>
254
- </widget>
255
- </item>
256
- <item>
257
- <layout class="QHBoxLayout" name="horizontalLayout_8">
258
- <item>
259
- <widget class="QLabel" name="label_8">
260
- <property name="text">
261
- <string>Beep every (seconds)</string>
262
- </property>
263
- </widget>
264
- </item>
265
- <item>
266
- <widget class="QSpinBox" name="sbBeepEvery"/>
267
- </item>
268
- </layout>
269
- </item>
270
- <item>
271
- <widget class="QCheckBox" name="cb_display_subtitles">
272
- <property name="text">
273
- <string>Display subtitles</string>
274
- </property>
275
- </widget>
276
- </item>
277
- <item>
278
- <widget class="QCheckBox" name="cbTrackingCursorAboveEvent">
279
- <property name="text">
280
- <string>Tracking cursor above current event</string>
281
- </property>
282
- </widget>
283
- </item>
284
- <item>
285
- <widget class="QCheckBox" name="cbAlertNoFocalSubject">
286
- <property name="text">
287
- <string>Alert if focal subject is not set</string>
288
- </property>
289
- </widget>
290
- </item>
291
- <item>
292
- <widget class="QCheckBox" name="cb_pause_before_addevent">
293
- <property name="text">
294
- <string>Pause media before &quot;Add event&quot; command</string>
295
- </property>
296
- </widget>
297
- </item>
298
- <item>
299
- <spacer name="verticalSpacer_4">
300
- <property name="orientation">
301
- <enum>Qt::Vertical</enum>
302
- </property>
303
- <property name="sizeHint" stdset="0">
304
- <size>
305
- <width>20</width>
306
- <height>391</height>
307
- </size>
308
- </property>
309
- </spacer>
310
- </item>
311
- </layout>
312
- </widget>
313
- <widget class="QWidget" name="tab_2">
314
- <attribute name="title">
315
- <string>FFmpeg framework</string>
316
- </attribute>
317
- <layout class="QVBoxLayout" name="verticalLayout_4">
318
- <item>
319
- <layout class="QVBoxLayout" name="verticalLayout_3">
320
- <item>
321
- <widget class="QLabel" name="lbFFmpegPath">
322
- <property name="text">
323
- <string>FFmpeg path:</string>
324
- </property>
325
- <property name="scaledContents">
326
- <bool>false</bool>
327
- </property>
328
- <property name="wordWrap">
329
- <bool>true</bool>
330
- </property>
331
- </widget>
332
- </item>
333
- <item>
334
- <layout class="QHBoxLayout" name="horizontalLayout"/>
335
- </item>
336
- <item>
337
- <layout class="QHBoxLayout" name="horizontalLayout_3">
338
- <item>
339
- <widget class="QLabel" name="lbFFmpegCacheDir">
340
- <property name="text">
341
- <string>FFmpeg cache directory</string>
342
- </property>
343
- </widget>
344
- </item>
345
- <item>
346
- <widget class="QLineEdit" name="leFFmpegCacheDir"/>
347
- </item>
348
- <item>
349
- <widget class="QPushButton" name="pbBrowseFFmpegCacheDir">
350
- <property name="text">
351
- <string>...</string>
352
- </property>
353
- </widget>
354
- </item>
355
- </layout>
356
- </item>
357
- <item>
358
- <spacer name="verticalSpacer">
359
- <property name="orientation">
360
- <enum>Qt::Vertical</enum>
361
- </property>
362
- <property name="sizeHint" stdset="0">
363
- <size>
364
- <width>20</width>
365
- <height>40</height>
366
- </size>
367
- </property>
368
- </spacer>
369
- </item>
370
- </layout>
371
- </item>
372
- </layout>
373
- </widget>
374
- <widget class="QWidget" name="tab_4">
375
- <attribute name="title">
376
- <string>Spectrogram/Wave form</string>
377
- </attribute>
378
- <layout class="QVBoxLayout" name="verticalLayout_8">
379
- <item>
380
- <layout class="QHBoxLayout" name="horizontalLayout_7">
381
- <item>
382
- <widget class="QLabel" name="label_7">
383
- <property name="text">
384
- <string>Spectrogram color map</string>
385
- </property>
386
- </widget>
387
- </item>
388
- <item>
389
- <widget class="QComboBox" name="cbSpectrogramColorMap"/>
390
- </item>
391
- </layout>
392
- </item>
393
- <item>
394
- <layout class="QHBoxLayout" name="horizontalLayout_10">
395
- <item>
396
- <widget class="QLabel" name="label_12">
397
- <property name="text">
398
- <string>Default time interval (s)</string>
399
- </property>
400
- </widget>
401
- </item>
402
- <item>
403
- <widget class="QSpinBox" name="sb_time_interval">
404
- <property name="minimum">
405
- <number>2</number>
406
- </property>
407
- <property name="maximum">
408
- <number>360</number>
409
- </property>
410
- <property name="value">
411
- <number>10</number>
412
- </property>
413
- </widget>
414
- </item>
415
- </layout>
416
- </item>
417
- <item>
418
- <spacer name="verticalSpacer_3">
419
- <property name="orientation">
420
- <enum>Qt::Vertical</enum>
421
- </property>
422
- <property name="sizeHint" stdset="0">
423
- <size>
424
- <width>20</width>
425
- <height>319</height>
426
- </size>
427
- </property>
428
- </spacer>
429
- </item>
430
- </layout>
431
- </widget>
432
- <widget class="QWidget" name="tab_5">
433
- <attribute name="title">
434
- <string>Plot colors</string>
435
- </attribute>
436
- <layout class="QVBoxLayout" name="verticalLayout_10">
437
- <item>
438
- <layout class="QHBoxLayout" name="horizontalLayout_12">
439
- <item>
440
- <layout class="QVBoxLayout" name="verticalLayout_6">
441
- <item>
442
- <widget class="QLabel" name="label_10">
443
- <property name="text">
444
- <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;List of colors for behaviors. See &lt;a href=&quot;https://matplotlib.org/api/colors_api.html&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;matplotlib colors&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
445
- </property>
446
- <property name="openExternalLinks">
447
- <bool>true</bool>
448
- </property>
449
- </widget>
450
- </item>
451
- <item>
452
- <widget class="QPlainTextEdit" name="te_behav_colors"/>
453
- </item>
454
- <item>
455
- <widget class="QPushButton" name="pb_reset_behav_colors">
456
- <property name="text">
457
- <string>Reset colors to default</string>
458
- </property>
459
- </widget>
460
- </item>
461
- </layout>
462
- </item>
463
- <item>
464
- <layout class="QVBoxLayout" name="verticalLayout_9">
465
- <item>
466
- <widget class="QLabel" name="label_11">
467
- <property name="text">
468
- <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;List of colors for behavioral categories. See &lt;a href=&quot;https://matplotlib.org/api/colors_api.html&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;matplotlib colors&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
469
- </property>
470
- <property name="openExternalLinks">
471
- <bool>true</bool>
472
- </property>
473
- </widget>
474
- </item>
475
- <item>
476
- <widget class="QPlainTextEdit" name="te_category_colors"/>
477
- </item>
478
- <item>
479
- <widget class="QPushButton" name="pb_reset_category_colors">
480
- <property name="text">
481
- <string>Reset colors to default</string>
482
- </property>
483
- </widget>
484
- </item>
485
- </layout>
486
- </item>
487
- </layout>
488
- </item>
489
- </layout>
490
- </widget>
491
- </widget>
492
- </item>
493
- <item>
494
- <layout class="QHBoxLayout" name="horizontalLayout_2">
495
- <item>
496
- <spacer name="horizontalSpacer">
497
- <property name="orientation">
498
- <enum>Qt::Horizontal</enum>
499
- </property>
500
- <property name="sizeHint" stdset="0">
501
- <size>
502
- <width>241</width>
503
- <height>20</height>
504
- </size>
505
- </property>
506
- </spacer>
507
- </item>
508
- <item>
509
- <widget class="QPushButton" name="pb_refresh">
510
- <property name="text">
511
- <string>Refresh</string>
512
- </property>
513
- </widget>
514
- </item>
515
- <item>
516
- <widget class="QPushButton" name="pbCancel">
517
- <property name="text">
518
- <string>Cancel</string>
519
- </property>
520
- </widget>
521
- </item>
522
- <item>
523
- <widget class="QPushButton" name="pbOK">
524
- <property name="text">
525
- <string>OK</string>
526
- </property>
527
- </widget>
528
- </item>
529
- </layout>
530
- </item>
531
- </layout>
532
- </item>
533
- </layout>
534
- </widget>
535
- <resources/>
536
- <connections/>
537
- </ui>