boris-behav-obs 8.16.6__py3-none-any.whl → 9.7.1__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.
Files changed (125) hide show
  1. boris/__init__.py +1 -1
  2. boris/__main__.py +1 -1
  3. boris/about.py +24 -40
  4. boris/add_modifier.py +88 -80
  5. boris/add_modifier_ui.py +235 -131
  6. boris/advanced_event_filtering.py +23 -29
  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 +16 -34
  23. boris/config.py +101 -49
  24. boris/config_file.py +55 -64
  25. boris/connections.py +105 -58
  26. boris/converters.py +13 -37
  27. boris/converters_ui.py +187 -110
  28. boris/cooccurence.py +250 -0
  29. boris/core.py +2108 -1275
  30. boris/core_qrc.py +15892 -10829
  31. boris/core_ui.py +941 -806
  32. boris/db_functions.py +17 -42
  33. boris/dev.py +134 -0
  34. boris/dialog.py +461 -242
  35. boris/duration_widget.py +9 -14
  36. boris/edit_event.py +61 -31
  37. boris/edit_event_ui.py +208 -97
  38. boris/event_operations.py +405 -281
  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 +180 -203
  43. boris/export_observation.py +60 -73
  44. boris/external_processes.py +123 -98
  45. boris/geometric_measurement.py +427 -218
  46. boris/gui_utilities.py +91 -14
  47. boris/image_overlay.py +4 -4
  48. boris/import_observations.py +190 -98
  49. boris/ipc_mpv.py +304 -0
  50. boris/irr.py +20 -57
  51. boris/latency.py +31 -24
  52. boris/measurement_widget.py +14 -18
  53. boris/media_file.py +17 -19
  54. boris/menu_options.py +16 -6
  55. boris/modifier_coding_map_creator.py +1013 -0
  56. boris/modifiers_coding_map.py +7 -9
  57. boris/mpv2.py +127 -36
  58. boris/observation.py +493 -210
  59. boris/observation_operations.py +1010 -391
  60. boris/observation_ui.py +573 -363
  61. boris/observations_list.py +51 -58
  62. boris/otx_parser.py +74 -68
  63. boris/param_panel.py +45 -59
  64. boris/param_panel_ui.py +254 -138
  65. boris/player_dock_widget.py +91 -56
  66. boris/plot_data_module.py +18 -53
  67. boris/plot_events.py +56 -153
  68. boris/plot_events_rt.py +16 -30
  69. boris/plot_spectrogram_rt.py +80 -56
  70. boris/plot_waveform_rt.py +23 -48
  71. boris/plugins.py +431 -0
  72. boris/portion/__init__.py +18 -8
  73. boris/portion/const.py +35 -18
  74. boris/portion/dict.py +5 -5
  75. boris/portion/func.py +2 -2
  76. boris/portion/interval.py +21 -41
  77. boris/portion/io.py +41 -32
  78. boris/preferences.py +298 -123
  79. boris/preferences_ui.py +664 -225
  80. boris/project.py +293 -270
  81. boris/project_functions.py +610 -537
  82. boris/project_import_export.py +204 -213
  83. boris/project_ui.py +673 -441
  84. boris/qrc_boris.py +6 -3
  85. boris/qrc_boris5.py +6 -3
  86. boris/select_modifiers.py +62 -90
  87. boris/select_observations.py +19 -197
  88. boris/select_subj_behav.py +67 -39
  89. boris/state_events.py +51 -33
  90. boris/subjects_pad.py +6 -8
  91. boris/synthetic_time_budget.py +25 -17
  92. boris/time_budget_functions.py +169 -169
  93. boris/time_budget_widget.py +71 -86
  94. boris/transitions.py +41 -41
  95. boris/utilities.py +562 -222
  96. boris/version.py +3 -3
  97. boris/video_equalizer.py +16 -14
  98. boris/video_equalizer_ui.py +199 -130
  99. boris/video_operations.py +78 -28
  100. boris/view_df.py +104 -0
  101. boris/view_df_ui.py +75 -0
  102. boris/write_event.py +240 -136
  103. boris_behav_obs-9.7.1.dist-info/METADATA +140 -0
  104. boris_behav_obs-9.7.1.dist-info/RECORD +109 -0
  105. {boris_behav_obs-8.16.6.dist-info → boris_behav_obs-9.7.1.dist-info}/WHEEL +1 -1
  106. boris_behav_obs-9.7.1.dist-info/entry_points.txt +2 -0
  107. boris/README.TXT +0 -22
  108. boris/add_modifier.ui +0 -323
  109. boris/converters.ui +0 -289
  110. boris/core.qrc +0 -37
  111. boris/core.ui +0 -1571
  112. boris/edit_event.ui +0 -233
  113. boris/icons/logo_eye.ico +0 -0
  114. boris/map_creator.py +0 -982
  115. boris/observation.ui +0 -814
  116. boris/param_panel.ui +0 -379
  117. boris/preferences.ui +0 -537
  118. boris/project.ui +0 -1074
  119. boris/vlc_local.py +0 -90
  120. boris_behav_obs-8.16.6.dist-info/LICENSE.TXT +0 -674
  121. boris_behav_obs-8.16.6.dist-info/METADATA +0 -134
  122. boris_behav_obs-8.16.6.dist-info/RECORD +0 -106
  123. boris_behav_obs-8.16.6.dist-info/entry_points.txt +0 -2
  124. {boris → boris_behav_obs-9.7.1.dist-info/licenses}/LICENSE.TXT +0 -0
  125. {boris_behav_obs-8.16.6.dist-info → boris_behav_obs-9.7.1.dist-info}/top_level.txt +0 -0
boris/preferences_ui.py CHANGED
@@ -1,313 +1,752 @@
1
1
  # -*- coding: utf-8 -*-
2
2
 
3
- # Form implementation generated from reading ui file 'preferences.ui'
4
- #
5
- # Created by: PyQt5 UI code generator 5.15.6
6
- #
7
- # WARNING: Any manual changes made to this file will be lost when pyuic5 is
8
- # run again. Do not edit this file unless you know what you are doing.
9
-
10
-
11
- from PyQt5 import QtCore, QtGui, QtWidgets
3
+ ################################################################################
4
+ ## Form generated from reading UI file 'preferences.ui'
5
+ ##
6
+ ## Created by: Qt User Interface Compiler version 6.9.0
7
+ ##
8
+ ## WARNING! All changes made in this file will be lost when recompiling UI file!
9
+ ################################################################################
12
10
 
11
+ from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,
12
+ QMetaObject, QObject, QPoint, QRect,
13
+ QSize, QTime, QUrl, Qt)
14
+ from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,
15
+ QFont, QFontDatabase, QGradient, QIcon,
16
+ QImage, QKeySequence, QLinearGradient, QPainter,
17
+ QPalette, QPixmap, QRadialGradient, QTransform)
18
+ from PySide6.QtWidgets import (QApplication, QCheckBox, QComboBox, QDialog,
19
+ QDoubleSpinBox, QFormLayout, QGroupBox, QHBoxLayout,
20
+ QLabel, QLineEdit, QListWidget, QListWidgetItem,
21
+ QPlainTextEdit, QPushButton, QSizePolicy, QSpacerItem,
22
+ QSpinBox, QSplitter, QTabWidget, QVBoxLayout,
23
+ QWidget)
13
24
 
14
25
  class Ui_prefDialog(object):
15
26
  def setupUi(self, prefDialog):
16
- prefDialog.setObjectName("prefDialog")
17
- prefDialog.setWindowModality(QtCore.Qt.WindowModal)
18
- prefDialog.resize(719, 554)
19
- self.gridLayout = QtWidgets.QGridLayout(prefDialog)
20
- self.gridLayout.setObjectName("gridLayout")
21
- self.verticalLayout_2 = QtWidgets.QVBoxLayout()
22
- self.verticalLayout_2.setObjectName("verticalLayout_2")
23
- self.tabWidget = QtWidgets.QTabWidget(prefDialog)
27
+ if not prefDialog.objectName():
28
+ prefDialog.setObjectName(u"prefDialog")
29
+ prefDialog.setWindowModality(Qt.WindowModality.WindowModal)
30
+ prefDialog.resize(904, 554)
31
+ self.horizontalLayout_17 = QHBoxLayout(prefDialog)
32
+ self.horizontalLayout_17.setObjectName(u"horizontalLayout_17")
33
+ self.verticalLayout_2 = QVBoxLayout()
34
+ self.verticalLayout_2.setObjectName(u"verticalLayout_2")
35
+ self.tabWidget = QTabWidget(prefDialog)
36
+ self.tabWidget.setObjectName(u"tabWidget")
24
37
  self.tabWidget.setEnabled(True)
25
- self.tabWidget.setObjectName("tabWidget")
26
- self.tab = QtWidgets.QWidget()
27
- self.tab.setObjectName("tab")
28
- self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.tab)
29
- self.verticalLayout_5.setObjectName("verticalLayout_5")
30
- self.horizontalLayout_14 = QtWidgets.QHBoxLayout()
31
- self.horizontalLayout_14.setObjectName("horizontalLayout_14")
32
- self.label = QtWidgets.QLabel(self.tab)
33
- self.label.setObjectName("label")
38
+ self.tab_project = QWidget()
39
+ self.tab_project.setObjectName(u"tab_project")
40
+ self.verticalLayout_5 = QVBoxLayout(self.tab_project)
41
+ self.verticalLayout_5.setObjectName(u"verticalLayout_5")
42
+ self.horizontalLayout_14 = QHBoxLayout()
43
+ self.horizontalLayout_14.setObjectName(u"horizontalLayout_14")
44
+ self.label = QLabel(self.tab_project)
45
+ self.label.setObjectName(u"label")
46
+
34
47
  self.horizontalLayout_14.addWidget(self.label)
35
- self.cbTimeFormat = QtWidgets.QComboBox(self.tab)
36
- self.cbTimeFormat.setObjectName("cbTimeFormat")
48
+
49
+ self.cbTimeFormat = QComboBox(self.tab_project)
37
50
  self.cbTimeFormat.addItem("")
38
51
  self.cbTimeFormat.addItem("")
52
+ self.cbTimeFormat.setObjectName(u"cbTimeFormat")
53
+
39
54
  self.horizontalLayout_14.addWidget(self.cbTimeFormat)
55
+
56
+
40
57
  self.verticalLayout_5.addLayout(self.horizontalLayout_14)
41
- self.horizontalLayout_15 = QtWidgets.QHBoxLayout()
42
- self.horizontalLayout_15.setObjectName("horizontalLayout_15")
43
- self.label_6 = QtWidgets.QLabel(self.tab)
44
- self.label_6.setObjectName("label_6")
58
+
59
+ self.horizontalLayout_15 = QHBoxLayout()
60
+ self.horizontalLayout_15.setObjectName(u"horizontalLayout_15")
61
+ self.label_6 = QLabel(self.tab_project)
62
+ self.label_6.setObjectName(u"label_6")
63
+
45
64
  self.horizontalLayout_15.addWidget(self.label_6)
46
- self.sbAutomaticBackup = QtWidgets.QSpinBox(self.tab)
65
+
66
+ self.sbAutomaticBackup = QSpinBox(self.tab_project)
67
+ self.sbAutomaticBackup.setObjectName(u"sbAutomaticBackup")
47
68
  self.sbAutomaticBackup.setMinimum(-10000)
48
69
  self.sbAutomaticBackup.setMaximum(10000)
49
- self.sbAutomaticBackup.setProperty("value", 10)
50
- self.sbAutomaticBackup.setObjectName("sbAutomaticBackup")
70
+ self.sbAutomaticBackup.setValue(10)
71
+
51
72
  self.horizontalLayout_15.addWidget(self.sbAutomaticBackup)
73
+
74
+
52
75
  self.verticalLayout_5.addLayout(self.horizontalLayout_15)
53
- self.horizontalLayout_13 = QtWidgets.QHBoxLayout()
54
- self.horizontalLayout_13.setObjectName("horizontalLayout_13")
55
- self.label_3 = QtWidgets.QLabel(self.tab)
56
- self.label_3.setObjectName("label_3")
76
+
77
+ self.horizontalLayout_13 = QHBoxLayout()
78
+ self.horizontalLayout_13.setObjectName(u"horizontalLayout_13")
79
+ self.label_3 = QLabel(self.tab_project)
80
+ self.label_3.setObjectName(u"label_3")
81
+
57
82
  self.horizontalLayout_13.addWidget(self.label_3)
58
- self.leSeparator = QtWidgets.QLineEdit(self.tab)
59
- self.leSeparator.setObjectName("leSeparator")
83
+
84
+ self.leSeparator = QLineEdit(self.tab_project)
85
+ self.leSeparator.setObjectName(u"leSeparator")
86
+
60
87
  self.horizontalLayout_13.addWidget(self.leSeparator)
88
+
89
+
61
90
  self.verticalLayout_5.addLayout(self.horizontalLayout_13)
62
- self.cbCheckForNewVersion = QtWidgets.QCheckBox(self.tab)
63
- self.cbCheckForNewVersion.setObjectName("cbCheckForNewVersion")
91
+
92
+ self.cbCheckForNewVersion = QCheckBox(self.tab_project)
93
+ self.cbCheckForNewVersion.setObjectName(u"cbCheckForNewVersion")
94
+
64
95
  self.verticalLayout_5.addWidget(self.cbCheckForNewVersion)
65
- self.horizontalLayout_11 = QtWidgets.QHBoxLayout()
66
- self.horizontalLayout_11.setObjectName("horizontalLayout_11")
67
- self.lb_hwdec = QtWidgets.QLabel(self.tab)
68
- self.lb_hwdec.setObjectName("lb_hwdec")
96
+
97
+ self.horizontalLayout_11 = QHBoxLayout()
98
+ self.horizontalLayout_11.setObjectName(u"horizontalLayout_11")
99
+ self.lb_hwdec = QLabel(self.tab_project)
100
+ self.lb_hwdec.setObjectName(u"lb_hwdec")
101
+
69
102
  self.horizontalLayout_11.addWidget(self.lb_hwdec)
70
- self.cb_hwdec = QtWidgets.QComboBox(self.tab)
71
- self.cb_hwdec.setObjectName("cb_hwdec")
103
+
104
+ self.cb_hwdec = QComboBox(self.tab_project)
105
+ self.cb_hwdec.setObjectName(u"cb_hwdec")
106
+
72
107
  self.horizontalLayout_11.addWidget(self.cb_hwdec)
108
+
109
+
73
110
  self.verticalLayout_5.addLayout(self.horizontalLayout_11)
74
- self.horizontalLayout_9 = QtWidgets.QHBoxLayout()
75
- self.horizontalLayout_9.setObjectName("horizontalLayout_9")
76
- self.lb_project_file_indent = QtWidgets.QLabel(self.tab)
77
- self.lb_project_file_indent.setObjectName("lb_project_file_indent")
111
+
112
+ self.horizontalLayout_9 = QHBoxLayout()
113
+ self.horizontalLayout_9.setObjectName(u"horizontalLayout_9")
114
+ self.lb_project_file_indent = QLabel(self.tab_project)
115
+ self.lb_project_file_indent.setObjectName(u"lb_project_file_indent")
116
+
78
117
  self.horizontalLayout_9.addWidget(self.lb_project_file_indent)
79
- self.combo_project_file_indentation = QtWidgets.QComboBox(self.tab)
80
- self.combo_project_file_indentation.setObjectName("combo_project_file_indentation")
118
+
119
+ self.combo_project_file_indentation = QComboBox(self.tab_project)
120
+ self.combo_project_file_indentation.setObjectName(u"combo_project_file_indentation")
121
+
81
122
  self.horizontalLayout_9.addWidget(self.combo_project_file_indentation)
123
+
124
+
82
125
  self.verticalLayout_5.addLayout(self.horizontalLayout_9)
83
- spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
84
- self.verticalLayout_5.addItem(spacerItem)
85
- self.tabWidget.addTab(self.tab, "")
86
- self.tab_results = QtWidgets.QWidget()
87
- self.tab_results.setObjectName("tab_results")
88
- self.verticalLayout = QtWidgets.QVBoxLayout(self.tab_results)
89
- self.verticalLayout.setObjectName("verticalLayout")
90
- self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
91
- self.horizontalLayout_4.setObjectName("horizontalLayout_4")
92
- self.label_4 = QtWidgets.QLabel(self.tab_results)
93
- self.label_4.setObjectName("label_4")
126
+
127
+ self.cb_check_integrity_at_opening = QCheckBox(self.tab_project)
128
+ self.cb_check_integrity_at_opening.setObjectName(u"cb_check_integrity_at_opening")
129
+
130
+ self.verticalLayout_5.addWidget(self.cb_check_integrity_at_opening)
131
+
132
+ self.verticalSpacer_2 = QSpacerItem(20, 40, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
133
+
134
+ self.verticalLayout_5.addItem(self.verticalSpacer_2)
135
+
136
+ self.tabWidget.addTab(self.tab_project, "")
137
+ self.tab_observations = QWidget()
138
+ self.tab_observations.setObjectName(u"tab_observations")
139
+ self.verticalLayout = QVBoxLayout(self.tab_observations)
140
+ self.verticalLayout.setObjectName(u"verticalLayout")
141
+ self.horizontalLayout_4 = QHBoxLayout()
142
+ self.horizontalLayout_4.setObjectName(u"horizontalLayout_4")
143
+ self.label_4 = QLabel(self.tab_observations)
144
+ self.label_4.setObjectName(u"label_4")
145
+
94
146
  self.horizontalLayout_4.addWidget(self.label_4)
95
- self.sbffSpeed = QtWidgets.QSpinBox(self.tab_results)
147
+
148
+ self.sbffSpeed = QSpinBox(self.tab_observations)
149
+ self.sbffSpeed.setObjectName(u"sbffSpeed")
96
150
  self.sbffSpeed.setMinimum(0)
97
151
  self.sbffSpeed.setMaximum(10000)
98
- self.sbffSpeed.setProperty("value", 10)
99
- self.sbffSpeed.setObjectName("sbffSpeed")
152
+ self.sbffSpeed.setValue(10)
153
+
100
154
  self.horizontalLayout_4.addWidget(self.sbffSpeed)
155
+
156
+
101
157
  self.verticalLayout.addLayout(self.horizontalLayout_4)
102
- self.cb_adapt_fast_jump = QtWidgets.QCheckBox(self.tab_results)
103
- self.cb_adapt_fast_jump.setObjectName("cb_adapt_fast_jump")
158
+
159
+ self.cb_adapt_fast_jump = QCheckBox(self.tab_observations)
160
+ self.cb_adapt_fast_jump.setObjectName(u"cb_adapt_fast_jump")
161
+
104
162
  self.verticalLayout.addWidget(self.cb_adapt_fast_jump)
105
- self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
106
- self.horizontalLayout_5.setObjectName("horizontalLayout_5")
107
- self.label_5 = QtWidgets.QLabel(self.tab_results)
108
- self.label_5.setObjectName("label_5")
163
+
164
+ self.horizontalLayout_5 = QHBoxLayout()
165
+ self.horizontalLayout_5.setObjectName(u"horizontalLayout_5")
166
+ self.label_5 = QLabel(self.tab_observations)
167
+ self.label_5.setObjectName(u"label_5")
168
+
109
169
  self.horizontalLayout_5.addWidget(self.label_5)
110
- self.sbSpeedStep = QtWidgets.QDoubleSpinBox(self.tab_results)
170
+
171
+ self.sbSpeedStep = QDoubleSpinBox(self.tab_observations)
172
+ self.sbSpeedStep.setObjectName(u"sbSpeedStep")
111
173
  self.sbSpeedStep.setDecimals(1)
112
- self.sbSpeedStep.setMinimum(0.1)
113
- self.sbSpeedStep.setMaximum(10.0)
114
- self.sbSpeedStep.setSingleStep(0.1)
115
- self.sbSpeedStep.setProperty("value", 0.1)
116
- self.sbSpeedStep.setObjectName("sbSpeedStep")
174
+ self.sbSpeedStep.setMinimum(0.100000000000000)
175
+ self.sbSpeedStep.setMaximum(10.000000000000000)
176
+ self.sbSpeedStep.setSingleStep(0.100000000000000)
177
+ self.sbSpeedStep.setValue(0.100000000000000)
178
+
117
179
  self.horizontalLayout_5.addWidget(self.sbSpeedStep)
180
+
181
+
118
182
  self.verticalLayout.addLayout(self.horizontalLayout_5)
119
- self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
120
- self.horizontalLayout_6.setObjectName("horizontalLayout_6")
121
- self.label_2 = QtWidgets.QLabel(self.tab_results)
122
- self.label_2.setObjectName("label_2")
183
+
184
+ self.horizontalLayout_6 = QHBoxLayout()
185
+ self.horizontalLayout_6.setObjectName(u"horizontalLayout_6")
186
+ self.label_2 = QLabel(self.tab_observations)
187
+ self.label_2.setObjectName(u"label_2")
188
+
123
189
  self.horizontalLayout_6.addWidget(self.label_2)
124
- self.sbRepositionTimeOffset = QtWidgets.QSpinBox(self.tab_results)
190
+
191
+ self.sbRepositionTimeOffset = QSpinBox(self.tab_observations)
192
+ self.sbRepositionTimeOffset.setObjectName(u"sbRepositionTimeOffset")
125
193
  self.sbRepositionTimeOffset.setMinimum(-10000)
126
194
  self.sbRepositionTimeOffset.setMaximum(10000)
127
- self.sbRepositionTimeOffset.setProperty("value", -3)
128
- self.sbRepositionTimeOffset.setObjectName("sbRepositionTimeOffset")
195
+ self.sbRepositionTimeOffset.setValue(-3)
196
+
129
197
  self.horizontalLayout_6.addWidget(self.sbRepositionTimeOffset)
198
+
199
+
130
200
  self.verticalLayout.addLayout(self.horizontalLayout_6)
131
- self.cbConfirmSound = QtWidgets.QCheckBox(self.tab_results)
132
- self.cbConfirmSound.setObjectName("cbConfirmSound")
201
+
202
+ self.cbConfirmSound = QCheckBox(self.tab_observations)
203
+ self.cbConfirmSound.setObjectName(u"cbConfirmSound")
204
+
133
205
  self.verticalLayout.addWidget(self.cbConfirmSound)
134
- self.cbCloseSameEvent = QtWidgets.QCheckBox(self.tab_results)
135
- self.cbCloseSameEvent.setObjectName("cbCloseSameEvent")
206
+
207
+ self.cbCloseSameEvent = QCheckBox(self.tab_observations)
208
+ self.cbCloseSameEvent.setObjectName(u"cbCloseSameEvent")
209
+
136
210
  self.verticalLayout.addWidget(self.cbCloseSameEvent)
137
- self.horizontalLayout_8 = QtWidgets.QHBoxLayout()
138
- self.horizontalLayout_8.setObjectName("horizontalLayout_8")
139
- self.label_8 = QtWidgets.QLabel(self.tab_results)
140
- self.label_8.setObjectName("label_8")
211
+
212
+ self.horizontalLayout_8 = QHBoxLayout()
213
+ self.horizontalLayout_8.setObjectName(u"horizontalLayout_8")
214
+ self.label_8 = QLabel(self.tab_observations)
215
+ self.label_8.setObjectName(u"label_8")
216
+
141
217
  self.horizontalLayout_8.addWidget(self.label_8)
142
- self.sbBeepEvery = QtWidgets.QSpinBox(self.tab_results)
143
- self.sbBeepEvery.setObjectName("sbBeepEvery")
218
+
219
+ self.sbBeepEvery = QSpinBox(self.tab_observations)
220
+ self.sbBeepEvery.setObjectName(u"sbBeepEvery")
221
+
144
222
  self.horizontalLayout_8.addWidget(self.sbBeepEvery)
223
+
224
+
145
225
  self.verticalLayout.addLayout(self.horizontalLayout_8)
146
- self.cb_display_subtitles = QtWidgets.QCheckBox(self.tab_results)
147
- self.cb_display_subtitles.setObjectName("cb_display_subtitles")
226
+
227
+ self.cb_display_subtitles = QCheckBox(self.tab_observations)
228
+ self.cb_display_subtitles.setObjectName(u"cb_display_subtitles")
229
+
148
230
  self.verticalLayout.addWidget(self.cb_display_subtitles)
149
- self.cbTrackingCursorAboveEvent = QtWidgets.QCheckBox(self.tab_results)
150
- self.cbTrackingCursorAboveEvent.setObjectName("cbTrackingCursorAboveEvent")
231
+
232
+ self.cbTrackingCursorAboveEvent = QCheckBox(self.tab_observations)
233
+ self.cbTrackingCursorAboveEvent.setObjectName(u"cbTrackingCursorAboveEvent")
234
+
151
235
  self.verticalLayout.addWidget(self.cbTrackingCursorAboveEvent)
152
- self.cbAlertNoFocalSubject = QtWidgets.QCheckBox(self.tab_results)
153
- self.cbAlertNoFocalSubject.setObjectName("cbAlertNoFocalSubject")
236
+
237
+ self.cbAlertNoFocalSubject = QCheckBox(self.tab_observations)
238
+ self.cbAlertNoFocalSubject.setObjectName(u"cbAlertNoFocalSubject")
239
+
154
240
  self.verticalLayout.addWidget(self.cbAlertNoFocalSubject)
155
- self.cb_pause_before_addevent = QtWidgets.QCheckBox(self.tab_results)
156
- self.cb_pause_before_addevent.setObjectName("cb_pause_before_addevent")
241
+
242
+ self.cb_pause_before_addevent = QCheckBox(self.tab_observations)
243
+ self.cb_pause_before_addevent.setObjectName(u"cb_pause_before_addevent")
244
+
157
245
  self.verticalLayout.addWidget(self.cb_pause_before_addevent)
158
- spacerItem1 = QtWidgets.QSpacerItem(20, 391, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
159
- self.verticalLayout.addItem(spacerItem1)
160
- self.tabWidget.addTab(self.tab_results, "")
161
- self.tab_2 = QtWidgets.QWidget()
162
- self.tab_2.setObjectName("tab_2")
163
- self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.tab_2)
164
- self.verticalLayout_4.setObjectName("verticalLayout_4")
165
- self.verticalLayout_3 = QtWidgets.QVBoxLayout()
166
- self.verticalLayout_3.setObjectName("verticalLayout_3")
167
- self.lbFFmpegPath = QtWidgets.QLabel(self.tab_2)
246
+
247
+ self.verticalSpacer_4 = QSpacerItem(20, 391, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
248
+
249
+ self.verticalLayout.addItem(self.verticalSpacer_4)
250
+
251
+ self.tabWidget.addTab(self.tab_observations, "")
252
+ self.tab_analysis_plugins = QWidget()
253
+ self.tab_analysis_plugins.setObjectName(u"tab_analysis_plugins")
254
+ self.verticalLayout_15 = QVBoxLayout(self.tab_analysis_plugins)
255
+ self.verticalLayout_15.setObjectName(u"verticalLayout_15")
256
+ self.splitter_2 = QSplitter(self.tab_analysis_plugins)
257
+ self.splitter_2.setObjectName(u"splitter_2")
258
+ self.splitter_2.setOrientation(Qt.Orientation.Horizontal)
259
+ self.widget = QWidget(self.splitter_2)
260
+ self.widget.setObjectName(u"widget")
261
+ self.verticalLayout_11 = QVBoxLayout(self.widget)
262
+ self.verticalLayout_11.setObjectName(u"verticalLayout_11")
263
+ self.verticalLayout_11.setContentsMargins(0, 0, 0, 0)
264
+ self.label_13 = QLabel(self.widget)
265
+ self.label_13.setObjectName(u"label_13")
266
+
267
+ self.verticalLayout_11.addWidget(self.label_13)
268
+
269
+ self.lv_all_plugins = QListWidget(self.widget)
270
+ self.lv_all_plugins.setObjectName(u"lv_all_plugins")
271
+
272
+ self.verticalLayout_11.addWidget(self.lv_all_plugins)
273
+
274
+ self.label_15 = QLabel(self.widget)
275
+ self.label_15.setObjectName(u"label_15")
276
+
277
+ self.verticalLayout_11.addWidget(self.label_15)
278
+
279
+ self.horizontalLayout_16 = QHBoxLayout()
280
+ self.horizontalLayout_16.setObjectName(u"horizontalLayout_16")
281
+ self.le_personal_plugins_dir = QLineEdit(self.widget)
282
+ self.le_personal_plugins_dir.setObjectName(u"le_personal_plugins_dir")
283
+ self.le_personal_plugins_dir.setReadOnly(True)
284
+
285
+ self.horizontalLayout_16.addWidget(self.le_personal_plugins_dir)
286
+
287
+ self.pb_browse_plugins_dir = QPushButton(self.widget)
288
+ self.pb_browse_plugins_dir.setObjectName(u"pb_browse_plugins_dir")
289
+
290
+ self.horizontalLayout_16.addWidget(self.pb_browse_plugins_dir)
291
+
292
+
293
+ self.verticalLayout_11.addLayout(self.horizontalLayout_16)
294
+
295
+ self.lw_personal_plugins = QListWidget(self.widget)
296
+ self.lw_personal_plugins.setObjectName(u"lw_personal_plugins")
297
+
298
+ self.verticalLayout_11.addWidget(self.lw_personal_plugins)
299
+
300
+ self.splitter_2.addWidget(self.widget)
301
+ self.splitter = QSplitter(self.splitter_2)
302
+ self.splitter.setObjectName(u"splitter")
303
+ self.splitter.setOrientation(Qt.Orientation.Vertical)
304
+ self.widget1 = QWidget(self.splitter)
305
+ self.widget1.setObjectName(u"widget1")
306
+ self.verticalLayout_12 = QVBoxLayout(self.widget1)
307
+ self.verticalLayout_12.setObjectName(u"verticalLayout_12")
308
+ self.verticalLayout_12.setContentsMargins(0, 0, 0, 0)
309
+ self.label_14 = QLabel(self.widget1)
310
+ self.label_14.setObjectName(u"label_14")
311
+
312
+ self.verticalLayout_12.addWidget(self.label_14)
313
+
314
+ self.pte_plugin_description = QPlainTextEdit(self.widget1)
315
+ self.pte_plugin_description.setObjectName(u"pte_plugin_description")
316
+ self.pte_plugin_description.setReadOnly(True)
317
+
318
+ self.verticalLayout_12.addWidget(self.pte_plugin_description)
319
+
320
+ self.splitter.addWidget(self.widget1)
321
+ self.widget2 = QWidget(self.splitter)
322
+ self.widget2.setObjectName(u"widget2")
323
+ self.verticalLayout_14 = QVBoxLayout(self.widget2)
324
+ self.verticalLayout_14.setObjectName(u"verticalLayout_14")
325
+ self.verticalLayout_14.setContentsMargins(0, 0, 0, 0)
326
+ self.label_23 = QLabel(self.widget2)
327
+ self.label_23.setObjectName(u"label_23")
328
+
329
+ self.verticalLayout_14.addWidget(self.label_23)
330
+
331
+ self.pte_plugin_code = QPlainTextEdit(self.widget2)
332
+ self.pte_plugin_code.setObjectName(u"pte_plugin_code")
333
+ self.pte_plugin_code.setLineWrapMode(QPlainTextEdit.LineWrapMode.NoWrap)
334
+
335
+ self.verticalLayout_14.addWidget(self.pte_plugin_code)
336
+
337
+ self.splitter.addWidget(self.widget2)
338
+ self.splitter_2.addWidget(self.splitter)
339
+
340
+ self.verticalLayout_15.addWidget(self.splitter_2)
341
+
342
+ self.tabWidget.addTab(self.tab_analysis_plugins, "")
343
+ self.tab_ffmpeg = QWidget()
344
+ self.tab_ffmpeg.setObjectName(u"tab_ffmpeg")
345
+ self.verticalLayout_4 = QVBoxLayout(self.tab_ffmpeg)
346
+ self.verticalLayout_4.setObjectName(u"verticalLayout_4")
347
+ self.verticalLayout_3 = QVBoxLayout()
348
+ self.verticalLayout_3.setObjectName(u"verticalLayout_3")
349
+ self.lbFFmpegPath = QLabel(self.tab_ffmpeg)
350
+ self.lbFFmpegPath.setObjectName(u"lbFFmpegPath")
168
351
  self.lbFFmpegPath.setScaledContents(False)
169
352
  self.lbFFmpegPath.setWordWrap(True)
170
- self.lbFFmpegPath.setObjectName("lbFFmpegPath")
353
+
171
354
  self.verticalLayout_3.addWidget(self.lbFFmpegPath)
172
- self.horizontalLayout = QtWidgets.QHBoxLayout()
173
- self.horizontalLayout.setObjectName("horizontalLayout")
355
+
356
+ self.horizontalLayout = QHBoxLayout()
357
+ self.horizontalLayout.setObjectName(u"horizontalLayout")
358
+
174
359
  self.verticalLayout_3.addLayout(self.horizontalLayout)
175
- self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
176
- self.horizontalLayout_3.setObjectName("horizontalLayout_3")
177
- self.lbFFmpegCacheDir = QtWidgets.QLabel(self.tab_2)
178
- self.lbFFmpegCacheDir.setObjectName("lbFFmpegCacheDir")
360
+
361
+ self.horizontalLayout_3 = QHBoxLayout()
362
+ self.horizontalLayout_3.setObjectName(u"horizontalLayout_3")
363
+ self.lbFFmpegCacheDir = QLabel(self.tab_ffmpeg)
364
+ self.lbFFmpegCacheDir.setObjectName(u"lbFFmpegCacheDir")
365
+
179
366
  self.horizontalLayout_3.addWidget(self.lbFFmpegCacheDir)
180
- self.leFFmpegCacheDir = QtWidgets.QLineEdit(self.tab_2)
181
- self.leFFmpegCacheDir.setObjectName("leFFmpegCacheDir")
367
+
368
+ self.leFFmpegCacheDir = QLineEdit(self.tab_ffmpeg)
369
+ self.leFFmpegCacheDir.setObjectName(u"leFFmpegCacheDir")
370
+
182
371
  self.horizontalLayout_3.addWidget(self.leFFmpegCacheDir)
183
- self.pbBrowseFFmpegCacheDir = QtWidgets.QPushButton(self.tab_2)
184
- self.pbBrowseFFmpegCacheDir.setObjectName("pbBrowseFFmpegCacheDir")
372
+
373
+ self.pbBrowseFFmpegCacheDir = QPushButton(self.tab_ffmpeg)
374
+ self.pbBrowseFFmpegCacheDir.setObjectName(u"pbBrowseFFmpegCacheDir")
375
+
185
376
  self.horizontalLayout_3.addWidget(self.pbBrowseFFmpegCacheDir)
377
+
378
+
186
379
  self.verticalLayout_3.addLayout(self.horizontalLayout_3)
187
- spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
188
- self.verticalLayout_3.addItem(spacerItem2)
380
+
381
+ self.verticalSpacer = QSpacerItem(20, 40, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
382
+
383
+ self.verticalLayout_3.addItem(self.verticalSpacer)
384
+
385
+
189
386
  self.verticalLayout_4.addLayout(self.verticalLayout_3)
190
- self.tabWidget.addTab(self.tab_2, "")
191
- self.tab_4 = QtWidgets.QWidget()
192
- self.tab_4.setObjectName("tab_4")
193
- self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.tab_4)
194
- self.verticalLayout_8.setObjectName("verticalLayout_8")
195
- self.horizontalLayout_7 = QtWidgets.QHBoxLayout()
196
- self.horizontalLayout_7.setObjectName("horizontalLayout_7")
197
- self.label_7 = QtWidgets.QLabel(self.tab_4)
198
- self.label_7.setObjectName("label_7")
387
+
388
+ self.tabWidget.addTab(self.tab_ffmpeg, "")
389
+ self.tab_spectro = QWidget()
390
+ self.tab_spectro.setObjectName(u"tab_spectro")
391
+ self.verticalLayout_13 = QVBoxLayout(self.tab_spectro)
392
+ self.verticalLayout_13.setObjectName(u"verticalLayout_13")
393
+ self.groupBox = QGroupBox(self.tab_spectro)
394
+ self.groupBox.setObjectName(u"groupBox")
395
+ self.verticalLayout_8 = QVBoxLayout(self.groupBox)
396
+ self.verticalLayout_8.setObjectName(u"verticalLayout_8")
397
+ self.horizontalLayout_7 = QHBoxLayout()
398
+ self.horizontalLayout_7.setObjectName(u"horizontalLayout_7")
399
+ self.label_7 = QLabel(self.groupBox)
400
+ self.label_7.setObjectName(u"label_7")
401
+
199
402
  self.horizontalLayout_7.addWidget(self.label_7)
200
- self.cbSpectrogramColorMap = QtWidgets.QComboBox(self.tab_4)
201
- self.cbSpectrogramColorMap.setObjectName("cbSpectrogramColorMap")
403
+
404
+ self.cbSpectrogramColorMap = QComboBox(self.groupBox)
405
+ self.cbSpectrogramColorMap.setObjectName(u"cbSpectrogramColorMap")
406
+
202
407
  self.horizontalLayout_7.addWidget(self.cbSpectrogramColorMap)
408
+
409
+ self.horizontalSpacer_2 = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
410
+
411
+ self.horizontalLayout_7.addItem(self.horizontalSpacer_2)
412
+
413
+
203
414
  self.verticalLayout_8.addLayout(self.horizontalLayout_7)
204
- self.horizontalLayout_10 = QtWidgets.QHBoxLayout()
205
- self.horizontalLayout_10.setObjectName("horizontalLayout_10")
206
- self.label_12 = QtWidgets.QLabel(self.tab_4)
207
- self.label_12.setObjectName("label_12")
415
+
416
+ self.horizontalLayout_10 = QHBoxLayout()
417
+ self.horizontalLayout_10.setObjectName(u"horizontalLayout_10")
418
+ self.label_12 = QLabel(self.groupBox)
419
+ self.label_12.setObjectName(u"label_12")
420
+
208
421
  self.horizontalLayout_10.addWidget(self.label_12)
209
- self.sb_time_interval = QtWidgets.QSpinBox(self.tab_4)
422
+
423
+ self.sb_time_interval = QSpinBox(self.groupBox)
424
+ self.sb_time_interval.setObjectName(u"sb_time_interval")
210
425
  self.sb_time_interval.setMinimum(2)
211
426
  self.sb_time_interval.setMaximum(360)
212
- self.sb_time_interval.setProperty("value", 10)
213
- self.sb_time_interval.setObjectName("sb_time_interval")
427
+ self.sb_time_interval.setValue(10)
428
+
214
429
  self.horizontalLayout_10.addWidget(self.sb_time_interval)
430
+
431
+ self.horizontalSpacer_3 = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
432
+
433
+ self.horizontalLayout_10.addItem(self.horizontalSpacer_3)
434
+
435
+
215
436
  self.verticalLayout_8.addLayout(self.horizontalLayout_10)
216
- spacerItem3 = QtWidgets.QSpacerItem(20, 319, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
217
- self.verticalLayout_8.addItem(spacerItem3)
218
- self.tabWidget.addTab(self.tab_4, "")
219
- self.tab_5 = QtWidgets.QWidget()
220
- self.tab_5.setObjectName("tab_5")
221
- self.verticalLayout_10 = QtWidgets.QVBoxLayout(self.tab_5)
222
- self.verticalLayout_10.setObjectName("verticalLayout_10")
223
- self.horizontalLayout_12 = QtWidgets.QHBoxLayout()
224
- self.horizontalLayout_12.setObjectName("horizontalLayout_12")
225
- self.verticalLayout_6 = QtWidgets.QVBoxLayout()
226
- self.verticalLayout_6.setObjectName("verticalLayout_6")
227
- self.label_10 = QtWidgets.QLabel(self.tab_5)
437
+
438
+ self.horizontalLayout_18 = QHBoxLayout()
439
+ self.horizontalLayout_18.setObjectName(u"horizontalLayout_18")
440
+ self.label_16 = QLabel(self.groupBox)
441
+ self.label_16.setObjectName(u"label_16")
442
+
443
+ self.horizontalLayout_18.addWidget(self.label_16)
444
+
445
+ self.cb_window_type = QComboBox(self.groupBox)
446
+ self.cb_window_type.addItem("")
447
+ self.cb_window_type.addItem("")
448
+ self.cb_window_type.addItem("")
449
+ self.cb_window_type.setObjectName(u"cb_window_type")
450
+
451
+ self.horizontalLayout_18.addWidget(self.cb_window_type)
452
+
453
+ self.horizontalSpacer_4 = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
454
+
455
+ self.horizontalLayout_18.addItem(self.horizontalSpacer_4)
456
+
457
+
458
+ self.verticalLayout_8.addLayout(self.horizontalLayout_18)
459
+
460
+ self.horizontalLayout_19 = QHBoxLayout()
461
+ self.horizontalLayout_19.setObjectName(u"horizontalLayout_19")
462
+ self.label_17 = QLabel(self.groupBox)
463
+ self.label_17.setObjectName(u"label_17")
464
+
465
+ self.horizontalLayout_19.addWidget(self.label_17)
466
+
467
+ self.cb_NFFT = QComboBox(self.groupBox)
468
+ self.cb_NFFT.addItem("")
469
+ self.cb_NFFT.addItem("")
470
+ self.cb_NFFT.addItem("")
471
+ self.cb_NFFT.addItem("")
472
+ self.cb_NFFT.setObjectName(u"cb_NFFT")
473
+
474
+ self.horizontalLayout_19.addWidget(self.cb_NFFT)
475
+
476
+ self.horizontalSpacer_5 = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
477
+
478
+ self.horizontalLayout_19.addItem(self.horizontalSpacer_5)
479
+
480
+
481
+ self.verticalLayout_8.addLayout(self.horizontalLayout_19)
482
+
483
+ self.horizontalLayout_20 = QHBoxLayout()
484
+ self.horizontalLayout_20.setObjectName(u"horizontalLayout_20")
485
+ self.label_18 = QLabel(self.groupBox)
486
+ self.label_18.setObjectName(u"label_18")
487
+
488
+ self.horizontalLayout_20.addWidget(self.label_18)
489
+
490
+ self.sb_noverlap = QSpinBox(self.groupBox)
491
+ self.sb_noverlap.setObjectName(u"sb_noverlap")
492
+ self.sb_noverlap.setMaximum(900)
493
+ self.sb_noverlap.setSingleStep(10)
494
+ self.sb_noverlap.setValue(128)
495
+
496
+ self.horizontalLayout_20.addWidget(self.sb_noverlap)
497
+
498
+ self.horizontalSpacer_6 = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
499
+
500
+ self.horizontalLayout_20.addItem(self.horizontalSpacer_6)
501
+
502
+
503
+ self.verticalLayout_8.addLayout(self.horizontalLayout_20)
504
+
505
+ self.horizontalLayout_21 = QHBoxLayout()
506
+ self.horizontalLayout_21.setObjectName(u"horizontalLayout_21")
507
+ self.label_19 = QLabel(self.groupBox)
508
+ self.label_19.setObjectName(u"label_19")
509
+
510
+ self.horizontalLayout_21.addWidget(self.label_19)
511
+
512
+ self.sb_vmin = QSpinBox(self.groupBox)
513
+ self.sb_vmin.setObjectName(u"sb_vmin")
514
+ self.sb_vmin.setMinimum(-200)
515
+ self.sb_vmin.setMaximum(0)
516
+ self.sb_vmin.setValue(-100)
517
+
518
+ self.horizontalLayout_21.addWidget(self.sb_vmin)
519
+
520
+ self.label_21 = QLabel(self.groupBox)
521
+ self.label_21.setObjectName(u"label_21")
522
+
523
+ self.horizontalLayout_21.addWidget(self.label_21)
524
+
525
+ self.horizontalSpacer_7 = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
526
+
527
+ self.horizontalLayout_21.addItem(self.horizontalSpacer_7)
528
+
529
+
530
+ self.verticalLayout_8.addLayout(self.horizontalLayout_21)
531
+
532
+ self.horizontalLayout_22 = QHBoxLayout()
533
+ self.horizontalLayout_22.setObjectName(u"horizontalLayout_22")
534
+ self.label_20 = QLabel(self.groupBox)
535
+ self.label_20.setObjectName(u"label_20")
536
+
537
+ self.horizontalLayout_22.addWidget(self.label_20)
538
+
539
+ self.sb_vmax = QSpinBox(self.groupBox)
540
+ self.sb_vmax.setObjectName(u"sb_vmax")
541
+ self.sb_vmax.setMinimum(-40)
542
+ self.sb_vmax.setMaximum(0)
543
+ self.sb_vmax.setValue(-20)
544
+
545
+ self.horizontalLayout_22.addWidget(self.sb_vmax)
546
+
547
+ self.label_22 = QLabel(self.groupBox)
548
+ self.label_22.setObjectName(u"label_22")
549
+
550
+ self.horizontalLayout_22.addWidget(self.label_22)
551
+
552
+ self.horizontalSpacer_8 = QSpacerItem(40, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
553
+
554
+ self.horizontalLayout_22.addItem(self.horizontalSpacer_8)
555
+
556
+
557
+ self.verticalLayout_8.addLayout(self.horizontalLayout_22)
558
+
559
+
560
+ self.verticalLayout_13.addWidget(self.groupBox)
561
+
562
+ self.verticalSpacer_3 = QSpacerItem(20, 319, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
563
+
564
+ self.verticalLayout_13.addItem(self.verticalSpacer_3)
565
+
566
+ self.tabWidget.addTab(self.tab_spectro, "")
567
+ self.tab_colors = QWidget()
568
+ self.tab_colors.setObjectName(u"tab_colors")
569
+ self.verticalLayout_10 = QVBoxLayout(self.tab_colors)
570
+ self.verticalLayout_10.setObjectName(u"verticalLayout_10")
571
+ self.horizontalLayout_12 = QHBoxLayout()
572
+ self.horizontalLayout_12.setObjectName(u"horizontalLayout_12")
573
+ self.verticalLayout_6 = QVBoxLayout()
574
+ self.verticalLayout_6.setObjectName(u"verticalLayout_6")
575
+ self.label_10 = QLabel(self.tab_colors)
576
+ self.label_10.setObjectName(u"label_10")
228
577
  self.label_10.setOpenExternalLinks(True)
229
- self.label_10.setObjectName("label_10")
578
+
230
579
  self.verticalLayout_6.addWidget(self.label_10)
231
- self.te_behav_colors = QtWidgets.QPlainTextEdit(self.tab_5)
232
- self.te_behav_colors.setObjectName("te_behav_colors")
580
+
581
+ self.te_behav_colors = QPlainTextEdit(self.tab_colors)
582
+ self.te_behav_colors.setObjectName(u"te_behav_colors")
583
+
233
584
  self.verticalLayout_6.addWidget(self.te_behav_colors)
234
- self.pb_reset_behav_colors = QtWidgets.QPushButton(self.tab_5)
235
- self.pb_reset_behav_colors.setObjectName("pb_reset_behav_colors")
585
+
586
+ self.pb_reset_behav_colors = QPushButton(self.tab_colors)
587
+ self.pb_reset_behav_colors.setObjectName(u"pb_reset_behav_colors")
588
+
236
589
  self.verticalLayout_6.addWidget(self.pb_reset_behav_colors)
590
+
591
+
237
592
  self.horizontalLayout_12.addLayout(self.verticalLayout_6)
238
- self.verticalLayout_9 = QtWidgets.QVBoxLayout()
239
- self.verticalLayout_9.setObjectName("verticalLayout_9")
240
- self.label_11 = QtWidgets.QLabel(self.tab_5)
593
+
594
+ self.verticalLayout_9 = QVBoxLayout()
595
+ self.verticalLayout_9.setObjectName(u"verticalLayout_9")
596
+ self.label_11 = QLabel(self.tab_colors)
597
+ self.label_11.setObjectName(u"label_11")
241
598
  self.label_11.setOpenExternalLinks(True)
242
- self.label_11.setObjectName("label_11")
599
+
243
600
  self.verticalLayout_9.addWidget(self.label_11)
244
- self.te_category_colors = QtWidgets.QPlainTextEdit(self.tab_5)
245
- self.te_category_colors.setObjectName("te_category_colors")
601
+
602
+ self.te_category_colors = QPlainTextEdit(self.tab_colors)
603
+ self.te_category_colors.setObjectName(u"te_category_colors")
604
+
246
605
  self.verticalLayout_9.addWidget(self.te_category_colors)
247
- self.pb_reset_category_colors = QtWidgets.QPushButton(self.tab_5)
248
- self.pb_reset_category_colors.setObjectName("pb_reset_category_colors")
606
+
607
+ self.pb_reset_category_colors = QPushButton(self.tab_colors)
608
+ self.pb_reset_category_colors.setObjectName(u"pb_reset_category_colors")
609
+
249
610
  self.verticalLayout_9.addWidget(self.pb_reset_category_colors)
611
+
612
+
250
613
  self.horizontalLayout_12.addLayout(self.verticalLayout_9)
614
+
615
+
251
616
  self.verticalLayout_10.addLayout(self.horizontalLayout_12)
252
- self.tabWidget.addTab(self.tab_5, "")
617
+
618
+ self.tabWidget.addTab(self.tab_colors, "")
619
+ self.tab_interface = QWidget()
620
+ self.tab_interface.setObjectName(u"tab_interface")
621
+ self.verticalLayout_7 = QVBoxLayout(self.tab_interface)
622
+ self.verticalLayout_7.setObjectName(u"verticalLayout_7")
623
+ self.formLayout = QFormLayout()
624
+ self.formLayout.setObjectName(u"formLayout")
625
+ self.label_9 = QLabel(self.tab_interface)
626
+ self.label_9.setObjectName(u"label_9")
627
+
628
+ self.formLayout.setWidget(0, QFormLayout.ItemRole.LabelRole, self.label_9)
629
+
630
+ self.sb_toolbar_icon_size = QSpinBox(self.tab_interface)
631
+ self.sb_toolbar_icon_size.setObjectName(u"sb_toolbar_icon_size")
632
+ self.sb_toolbar_icon_size.setMinimum(12)
633
+ self.sb_toolbar_icon_size.setMaximum(128)
634
+ self.sb_toolbar_icon_size.setValue(24)
635
+
636
+ self.formLayout.setWidget(0, QFormLayout.ItemRole.FieldRole, self.sb_toolbar_icon_size)
637
+
638
+
639
+ self.verticalLayout_7.addLayout(self.formLayout)
640
+
641
+ self.verticalSpacer_5 = QSpacerItem(20, 386, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Expanding)
642
+
643
+ self.verticalLayout_7.addItem(self.verticalSpacer_5)
644
+
645
+ self.tabWidget.addTab(self.tab_interface, "")
646
+
253
647
  self.verticalLayout_2.addWidget(self.tabWidget)
254
- self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
255
- self.horizontalLayout_2.setObjectName("horizontalLayout_2")
256
- spacerItem4 = QtWidgets.QSpacerItem(241, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
257
- self.horizontalLayout_2.addItem(spacerItem4)
258
- self.pb_refresh = QtWidgets.QPushButton(prefDialog)
259
- self.pb_refresh.setObjectName("pb_refresh")
648
+
649
+ self.horizontalLayout_2 = QHBoxLayout()
650
+ self.horizontalLayout_2.setObjectName(u"horizontalLayout_2")
651
+ self.horizontalSpacer = QSpacerItem(241, 20, QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Minimum)
652
+
653
+ self.horizontalLayout_2.addItem(self.horizontalSpacer)
654
+
655
+ self.pb_refresh = QPushButton(prefDialog)
656
+ self.pb_refresh.setObjectName(u"pb_refresh")
657
+
260
658
  self.horizontalLayout_2.addWidget(self.pb_refresh)
261
- self.pbCancel = QtWidgets.QPushButton(prefDialog)
262
- self.pbCancel.setObjectName("pbCancel")
659
+
660
+ self.pbCancel = QPushButton(prefDialog)
661
+ self.pbCancel.setObjectName(u"pbCancel")
662
+
263
663
  self.horizontalLayout_2.addWidget(self.pbCancel)
264
- self.pbOK = QtWidgets.QPushButton(prefDialog)
265
- self.pbOK.setObjectName("pbOK")
664
+
665
+ self.pbOK = QPushButton(prefDialog)
666
+ self.pbOK.setObjectName(u"pbOK")
667
+
266
668
  self.horizontalLayout_2.addWidget(self.pbOK)
669
+
670
+
267
671
  self.verticalLayout_2.addLayout(self.horizontalLayout_2)
268
- self.gridLayout.addLayout(self.verticalLayout_2, 0, 0, 1, 1)
672
+
673
+
674
+ self.horizontalLayout_17.addLayout(self.verticalLayout_2)
675
+
269
676
 
270
677
  self.retranslateUi(prefDialog)
271
- self.tabWidget.setCurrentIndex(0)
272
- QtCore.QMetaObject.connectSlotsByName(prefDialog)
678
+
679
+ self.tabWidget.setCurrentIndex(2)
680
+
681
+
682
+ QMetaObject.connectSlotsByName(prefDialog)
683
+ # setupUi
273
684
 
274
685
  def retranslateUi(self, prefDialog):
275
- _translate = QtCore.QCoreApplication.translate
276
- prefDialog.setWindowTitle(_translate("prefDialog", "Preferences"))
277
- self.label.setText(_translate("prefDialog", "Default project time format"))
278
- self.cbTimeFormat.setItemText(0, _translate("prefDialog", "seconds"))
279
- self.cbTimeFormat.setItemText(1, _translate("prefDialog", "hh:mm:ss.mss"))
280
- self.label_6.setText(_translate("prefDialog", "Auto-save project every (minutes)"))
281
- self.label_3.setText(_translate("prefDialog", "Separator for behavioural strings (events export)"))
282
- self.leSeparator.setText(_translate("prefDialog", "|"))
283
- self.cbCheckForNewVersion.setText(_translate("prefDialog", "Check for new version and news"))
284
- self.lb_hwdec.setText(_translate("prefDialog", "MPV player hardware video decoding"))
285
- self.lb_project_file_indent.setText(_translate("prefDialog", "Project file indentation type"))
286
- self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("prefDialog", "Project"))
287
- self.label_4.setText(_translate("prefDialog", "Fast forward/backward value (seconds)"))
288
- self.cb_adapt_fast_jump.setText(_translate("prefDialog", "Adapt the fast forward/backward jump to playback speed"))
289
- self.label_5.setText(_translate("prefDialog", "Playback speed step value"))
290
- self.label_2.setText(_translate("prefDialog", "Time offset for video/audio reposition (seconds)"))
291
- self.cbConfirmSound.setText(_translate("prefDialog", "Play sound when a key is pressed"))
292
- self.cbCloseSameEvent.setText(_translate("prefDialog", "Close the same current event independently of modifiers"))
293
- self.label_8.setText(_translate("prefDialog", "Beep every (seconds)"))
294
- self.cb_display_subtitles.setText(_translate("prefDialog", "Display subtitles"))
295
- self.cbTrackingCursorAboveEvent.setText(_translate("prefDialog", "Tracking cursor above current event"))
296
- self.cbAlertNoFocalSubject.setText(_translate("prefDialog", "Alert if focal subject is not set"))
297
- self.cb_pause_before_addevent.setText(_translate("prefDialog", "Pause media before \"Add event\" command"))
298
- self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_results), _translate("prefDialog", "Observations"))
299
- self.lbFFmpegPath.setText(_translate("prefDialog", "FFmpeg path:"))
300
- self.lbFFmpegCacheDir.setText(_translate("prefDialog", "FFmpeg cache directory"))
301
- self.pbBrowseFFmpegCacheDir.setText(_translate("prefDialog", "..."))
302
- self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("prefDialog", "FFmpeg framework"))
303
- self.label_7.setText(_translate("prefDialog", "Spectrogram color map"))
304
- self.label_12.setText(_translate("prefDialog", "Default time interval (s)"))
305
- self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_4), _translate("prefDialog", "Spectrogram/Wave form"))
306
- self.label_10.setText(_translate("prefDialog", "<html><head/><body><p>List of colors for behaviors. See <a href=\"https://matplotlib.org/api/colors_api.html\"><span style=\" text-decoration: underline; color:#0000ff;\">matplotlib colors</span></a></p></body></html>"))
307
- self.pb_reset_behav_colors.setText(_translate("prefDialog", "Reset colors to default"))
308
- self.label_11.setText(_translate("prefDialog", "<html><head/><body><p>List of colors for behavioral categories. See <a href=\"https://matplotlib.org/api/colors_api.html\"><span style=\" text-decoration: underline; color:#0000ff;\">matplotlib colors</span></a></p></body></html>"))
309
- self.pb_reset_category_colors.setText(_translate("prefDialog", "Reset colors to default"))
310
- self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_5), _translate("prefDialog", "Plot colors"))
311
- self.pb_refresh.setText(_translate("prefDialog", "Refresh"))
312
- self.pbCancel.setText(_translate("prefDialog", "Cancel"))
313
- self.pbOK.setText(_translate("prefDialog", "OK"))
686
+ prefDialog.setWindowTitle(QCoreApplication.translate("prefDialog", u"Preferences", None))
687
+ self.label.setText(QCoreApplication.translate("prefDialog", u"Default project time format", None))
688
+ self.cbTimeFormat.setItemText(0, QCoreApplication.translate("prefDialog", u"seconds", None))
689
+ self.cbTimeFormat.setItemText(1, QCoreApplication.translate("prefDialog", u"hh:mm:ss.mss", None))
690
+
691
+ self.label_6.setText(QCoreApplication.translate("prefDialog", u"Auto-save project every (minutes)", None))
692
+ self.label_3.setText(QCoreApplication.translate("prefDialog", u"Separator for behavioural strings (events export)", None))
693
+ self.leSeparator.setText(QCoreApplication.translate("prefDialog", u"|", None))
694
+ self.cbCheckForNewVersion.setText(QCoreApplication.translate("prefDialog", u"Check for new version and news", None))
695
+ self.lb_hwdec.setText(QCoreApplication.translate("prefDialog", u"MPV player hardware video decoding", None))
696
+ self.lb_project_file_indent.setText(QCoreApplication.translate("prefDialog", u"Project file indentation type", None))
697
+ self.cb_check_integrity_at_opening.setText(QCoreApplication.translate("prefDialog", u"Check project integrity when opening and saving project (recommended)", None))
698
+ self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_project), QCoreApplication.translate("prefDialog", u"Project", None))
699
+ self.label_4.setText(QCoreApplication.translate("prefDialog", u"Fast forward/backward value (seconds)", None))
700
+ self.cb_adapt_fast_jump.setText(QCoreApplication.translate("prefDialog", u"Adapt the fast forward/backward jump to playback speed", None))
701
+ self.label_5.setText(QCoreApplication.translate("prefDialog", u"Playback speed step value", None))
702
+ self.label_2.setText(QCoreApplication.translate("prefDialog", u"Time offset for video/audio reposition (seconds)", None))
703
+ self.cbConfirmSound.setText(QCoreApplication.translate("prefDialog", u"Play sound when a key is pressed", None))
704
+ self.cbCloseSameEvent.setText(QCoreApplication.translate("prefDialog", u"Close the same current event independently of modifiers", None))
705
+ self.label_8.setText(QCoreApplication.translate("prefDialog", u"Beep every (seconds)", None))
706
+ self.cb_display_subtitles.setText(QCoreApplication.translate("prefDialog", u"Display subtitles", None))
707
+ self.cbTrackingCursorAboveEvent.setText(QCoreApplication.translate("prefDialog", u"Tracking cursor above current event", None))
708
+ self.cbAlertNoFocalSubject.setText(QCoreApplication.translate("prefDialog", u"Alert if focal subject is not set", None))
709
+ self.cb_pause_before_addevent.setText(QCoreApplication.translate("prefDialog", u"Pause media before \"Add event\" command", None))
710
+ self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_observations), QCoreApplication.translate("prefDialog", u"Observations", None))
711
+ self.label_13.setText(QCoreApplication.translate("prefDialog", u"BORIS plugins", None))
712
+ self.label_15.setText(QCoreApplication.translate("prefDialog", u"Personal plugins", None))
713
+ self.pb_browse_plugins_dir.setText(QCoreApplication.translate("prefDialog", u"Browse", None))
714
+ self.label_14.setText(QCoreApplication.translate("prefDialog", u"Plugin info", None))
715
+ self.label_23.setText(QCoreApplication.translate("prefDialog", u"Plugin code", None))
716
+ self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_analysis_plugins), QCoreApplication.translate("prefDialog", u"Analysis plugins", None))
717
+ self.lbFFmpegPath.setText(QCoreApplication.translate("prefDialog", u"FFmpeg path:", None))
718
+ self.lbFFmpegCacheDir.setText(QCoreApplication.translate("prefDialog", u"FFmpeg cache directory", None))
719
+ self.pbBrowseFFmpegCacheDir.setText(QCoreApplication.translate("prefDialog", u"...", None))
720
+ self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_ffmpeg), QCoreApplication.translate("prefDialog", u"FFmpeg framework", None))
721
+ self.groupBox.setTitle(QCoreApplication.translate("prefDialog", u"Spectrogram", None))
722
+ self.label_7.setText(QCoreApplication.translate("prefDialog", u"Color map", None))
723
+ self.label_12.setText(QCoreApplication.translate("prefDialog", u"Default time interval (s)", None))
724
+ self.label_16.setText(QCoreApplication.translate("prefDialog", u"Window type", None))
725
+ self.cb_window_type.setItemText(0, QCoreApplication.translate("prefDialog", u"hanning", None))
726
+ self.cb_window_type.setItemText(1, QCoreApplication.translate("prefDialog", u"hamming", None))
727
+ self.cb_window_type.setItemText(2, QCoreApplication.translate("prefDialog", u"blackmanharris", None))
728
+
729
+ self.label_17.setText(QCoreApplication.translate("prefDialog", u"NFFT", None))
730
+ self.cb_NFFT.setItemText(0, QCoreApplication.translate("prefDialog", u"256", None))
731
+ self.cb_NFFT.setItemText(1, QCoreApplication.translate("prefDialog", u"512", None))
732
+ self.cb_NFFT.setItemText(2, QCoreApplication.translate("prefDialog", u"1024", None))
733
+ self.cb_NFFT.setItemText(3, QCoreApplication.translate("prefDialog", u"2048", None))
734
+
735
+ self.label_18.setText(QCoreApplication.translate("prefDialog", u"noverlap", None))
736
+ self.label_19.setText(QCoreApplication.translate("prefDialog", u"vmin", None))
737
+ self.label_21.setText(QCoreApplication.translate("prefDialog", u"dBFS", None))
738
+ self.label_20.setText(QCoreApplication.translate("prefDialog", u"vmax", None))
739
+ self.label_22.setText(QCoreApplication.translate("prefDialog", u"dBFS", None))
740
+ self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_spectro), QCoreApplication.translate("prefDialog", u"Spectrogram/Wave form", None))
741
+ self.label_10.setText(QCoreApplication.translate("prefDialog", u"<html><head/><body><p>List of colors for behaviors. See <a href=\"https://matplotlib.org/api/colors_api.html\"><span style=\" text-decoration: underline; color:#0000ff;\">matplotlib colors</span></a></p></body></html>", None))
742
+ self.pb_reset_behav_colors.setText(QCoreApplication.translate("prefDialog", u"Reset colors to default", None))
743
+ self.label_11.setText(QCoreApplication.translate("prefDialog", u"<html><head/><body><p>List of colors for behavioral categories. See <a href=\"https://matplotlib.org/api/colors_api.html\"><span style=\" text-decoration: underline; color:#0000ff;\">matplotlib colors</span></a></p></body></html>", None))
744
+ self.pb_reset_category_colors.setText(QCoreApplication.translate("prefDialog", u"Reset colors to default", None))
745
+ self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_colors), QCoreApplication.translate("prefDialog", u"Plot colors", None))
746
+ self.label_9.setText(QCoreApplication.translate("prefDialog", u"Toolbar icons size", None))
747
+ self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_interface), QCoreApplication.translate("prefDialog", u"Interface", None))
748
+ self.pb_refresh.setText(QCoreApplication.translate("prefDialog", u"Refresh", None))
749
+ self.pbCancel.setText(QCoreApplication.translate("prefDialog", u"Cancel", None))
750
+ self.pbOK.setText(QCoreApplication.translate("prefDialog", u"OK", None))
751
+ # retranslateUi
752
+