boris-behav-obs 9.0.6__py2.py3-none-any.whl → 9.0.7__py2.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.
boris/config.py CHANGED
@@ -254,13 +254,16 @@ MEDIA_FILE_PATH_IDX = 2
254
254
  HAS_AUDIO_IDX = 6
255
255
 
256
256
  STATE_EVENT = "State event"
257
+ STATE_EVENT_WITH_CODING_MAP = "State event with coding map"
258
+
257
259
  POINT_EVENT = "Point event"
260
+ POINT_EVENT_WITH_CODING_MAP = "Point event with coding map"
258
261
 
259
262
  BEHAVIOR_TYPES = [
260
- "Point event",
261
- "State event",
262
- "Point event with coding map",
263
- "State event with coding map",
263
+ POINT_EVENT,
264
+ STATE_EVENT,
265
+ POINT_EVENT_WITH_CODING_MAP,
266
+ STATE_EVENT_WITH_CODING_MAP,
264
267
  ]
265
268
 
266
269
  DEFAULT_BEHAVIOR_TYPE = "Point event"
boris/core.py CHANGED
@@ -2264,6 +2264,8 @@ class MainWindow(QMainWindow, Ui_MainWindow):
2264
2264
  """
2265
2265
  populate table view with events
2266
2266
  """
2267
+ logging.debug("populate tv_events")
2268
+
2267
2269
  model = self.tv_events.model()
2268
2270
  if model is not None:
2269
2271
  self.tv_events.setModel(None)
@@ -2273,7 +2275,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
2273
2275
  mem_behav: dict = {}
2274
2276
  state_events_list = util.state_behavior_codes(self.pj[cfg.ETHOGRAM])
2275
2277
 
2276
- state = [""] * len(self.pj[cfg.OBSERVATIONS][obs_id][cfg.EVENTS])
2278
+ state: list = [""] * len(self.pj[cfg.OBSERVATIONS][obs_id][cfg.EVENTS])
2277
2279
 
2278
2280
  for idx, row in enumerate(self.pj[cfg.OBSERVATIONS][obs_id][cfg.EVENTS]):
2279
2281
  code = row[cfg.PJ_OBS_FIELDS[self.playerType][cfg.BEHAVIOR_CODE]]
@@ -2339,17 +2341,16 @@ class MainWindow(QMainWindow, Ui_MainWindow):
2339
2341
 
2340
2342
  logging.debug(f"begin load events from obs in tableView: {obs_id}")
2341
2343
 
2342
- # t1 = time.time()
2344
+ # print(self.pj[cfg.OBSERVATIONS][obs_id][cfg.EVENTS])
2345
+
2343
2346
  self.populate_tv_events(
2344
2347
  obs_id,
2345
- [s.capitalize() for s in cfg.TW_EVENTS_FIELDS[self.playerType]],
2348
+ [s.capitalize() for s in cfg.TW_EVENTS_FIELDS[self.playerType]], # header
2346
2349
  self.timeFormat,
2347
2350
  self.filtered_behaviors,
2348
2351
  self.filtered_subjects,
2349
2352
  )
2350
2353
 
2351
- # print("load table view:", time.time() - t1)
2352
-
2353
2354
  return
2354
2355
 
2355
2356
  """
@@ -3931,11 +3932,6 @@ class MainWindow(QMainWindow, Ui_MainWindow):
3931
3932
  ethogram_idx = [x for x in self.pj[cfg.ETHOGRAM] if self.pj[cfg.ETHOGRAM][x][cfg.BEHAVIOR_CODE] == code][0]
3932
3933
 
3933
3934
  event = self.full_event(ethogram_idx)
3934
- # MEDIA / LIVE
3935
- """
3936
- if self.pj[cfg.OBSERVATIONS][self.observationId][cfg.TYPE] in (cfg.MEDIA, cfg.LIVE):
3937
- time_ = self.getLaps()
3938
- """
3939
3935
 
3940
3936
  # IMAGES
3941
3937
  if self.pj[cfg.OBSERVATIONS][self.observationId][cfg.TYPE] == cfg.IMAGES:
@@ -3948,11 +3944,6 @@ class MainWindow(QMainWindow, Ui_MainWindow):
3948
3944
 
3949
3945
  time_, cumulative_time = self.get_obs_time()
3950
3946
 
3951
- """
3952
- print(time_)
3953
- print(cumulative_time)
3954
- """
3955
-
3956
3947
  if self.pj[cfg.OBSERVATIONS][self.observationId].get(cfg.MEDIA_CREATION_DATE_AS_OFFSET, False):
3957
3948
  write_event.write_event(self, event, time_)
3958
3949
  else:
@@ -4795,7 +4786,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
4795
4786
  flag_player_playing = True
4796
4787
  self.pause_video()
4797
4788
 
4798
- self.codingMapWindow = modifiers_coding_map.ModifiersCodingMapWindowClass(
4789
+ self.codingMapWindow = modifiers_coding_map.ModifiersCodingMapWindow(
4799
4790
  self.pj[cfg.CODING_MAP][self.pj[cfg.ETHOGRAM][behavior_idx]["coding map"]]
4800
4791
  )
4801
4792
 
@@ -4872,7 +4863,6 @@ class MainWindow(QMainWindow, Ui_MainWindow):
4872
4863
 
4873
4864
  def keyPressEvent(self, event) -> None:
4874
4865
  """
4875
- http://qt-project.org/doc/qt-5.0/qtcore/qt.html#Key-enum
4876
4866
  https://github.com/pyqt/python-qt5/blob/master/PySide6/qml/builtins.qmltypes
4877
4867
 
4878
4868
  ESC: 16777216
@@ -5182,8 +5172,6 @@ class MainWindow(QMainWindow, Ui_MainWindow):
5182
5172
  else:
5183
5173
  write_event.write_event(self, event, memLaps)
5184
5174
 
5185
- # write_event.write_event(self, event, memLaps)
5186
-
5187
5175
  elif subject_idx is not None:
5188
5176
  self.update_subject(self.pj[cfg.SUBJECTS][subject_idx][cfg.SUBJECT_NAME])
5189
5177
 
@@ -39,7 +39,7 @@ from PySide6.QtWidgets import (
39
39
  )
40
40
 
41
41
 
42
- class ModifiersCodingMapWindowClass(QDialog):
42
+ class ModifiersCodingMapWindow(QDialog):
43
43
  class View(QGraphicsView):
44
44
  mousePress = Signal(QMouseEvent)
45
45
 
@@ -56,7 +56,7 @@ class ModifiersCodingMapWindowClass(QDialog):
56
56
  self.scene().update()
57
57
 
58
58
  def __init__(self, modifiers_coding_map):
59
- super(ModifiersCodingMapWindowClass, self).__init__()
59
+ super(ModifiersCodingMapWindow, self).__init__()
60
60
 
61
61
  self.areasList = {}
62
62
  self.polygonsList2 = {}
boris/utilities.py CHANGED
@@ -531,7 +531,7 @@ def state_behavior_codes(ethogram: dict) -> list:
531
531
  list: list of behavior codes defined as STATE event
532
532
 
533
533
  """
534
- return [ethogram[x][cfg.BEHAVIOR_CODE] for x in ethogram if ethogram[x][cfg.TYPE] == cfg.STATE_EVENT]
534
+ return [ethogram[x][cfg.BEHAVIOR_CODE] for x in ethogram if ethogram[x][cfg.TYPE] in (cfg.STATE_EVENT, cfg.STATE_EVENT_WITH_CODING_MAP)]
535
535
 
536
536
 
537
537
  def point_behavior_codes(ethogram: dict) -> list:
boris/version.py CHANGED
@@ -20,5 +20,5 @@ This file is part of BORIS.
20
20
 
21
21
  """
22
22
 
23
- __version__ = "9.0.6"
24
- __version_date__ = "2025-02-17"
23
+ __version__ = "9.0.7"
24
+ __version_date__ = "2025-02-27"
boris/write_event.py CHANGED
@@ -272,8 +272,6 @@ def write_event(self, event: dict, mem_time: dec) -> int:
272
272
  # check if editing (original_modifiers key)
273
273
  currentModifiers = event.get("original_modifiers", "")
274
274
 
275
- # print(f"{event=}")
276
-
277
275
  modifiers_selector = select_modifiers.ModifiersList(
278
276
  event[cfg.BEHAVIOR_CODE], eval(str(event[cfg.MODIFIERS])), currentModifiers
279
277
  )
@@ -351,8 +349,6 @@ def write_event(self, event: dict, mem_time: dec) -> int:
351
349
  if ev[cfg.EVENT_BEHAVIOR_FIELD_IDX] == cs:
352
350
  cm[cs] = ev[cfg.EVENT_MODIFIER_FIELD_IDX]
353
351
 
354
- # print(f"{cm=}")
355
-
356
352
  if flag_ask_at_stop:
357
353
  # set modifier to START behavior
358
354
  if event[cfg.BEHAVIOR_CODE] in csj:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: boris-behav-obs
3
- Version: 9.0.6
3
+ Version: 9.0.7
4
4
  Summary: BORIS - Behavioral Observation Research Interactive Software
5
5
  Author-email: Olivier Friard <olivier.friard@unito.it>
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -10,13 +10,13 @@ boris/behaviors_coding_map.py,sha256=Pat6U2JHxH8epWH42ZlwzZJ0Rmgl-BKQ5KARjp3GbNg
10
10
  boris/boris_cli.py,sha256=n0OiVvZM1gM6E7yKaff9wlgmpAGK4TK052VRi8AabJo,13196
11
11
  boris/cmd_arguments.py,sha256=oWb-FvhKLbKJhATlTHy9muWu8XnnUfOZ-3Fmz2M8Yzc,1848
12
12
  boris/coding_pad.py,sha256=fBKdp7DDyupySJosIYtqNd8s2E-GruzCgVhDFsoVWKE,10986
13
- boris/config.py,sha256=G5M8RtV3atjGYi1aPLEV3CqSHcmjPehJ5PelsEngZZs,17072
13
+ boris/config.py,sha256=19BiZHfFJqgjnAXFqQ5LGb0XSOSYgpQk9NsAs6Rijj4,17185
14
14
  boris/config_file.py,sha256=RC6lmO9UN_yKz_OgVmviz8rv2f4GXS-0VlRBSoSUcUg,13521
15
15
  boris/connections.py,sha256=7vTfpZjn225uvEx2VQdV1RgCDP1znW0XAMy8Zu-CSpg,19294
16
16
  boris/converters.py,sha256=c1Jps-URoglY5ILQHz-pCCf6-4DFUHZLtqr_ofsrFg0,11722
17
17
  boris/converters_ui.py,sha256=uu7LOBV_fKv2DBdOqsqPwjGsjgONr5ODBoscAA-EP48,9900
18
18
  boris/cooccurence.py,sha256=dzEMxJ0bLKychCZ7i5vS5LtKEHwISehUenc5k5RnPos,9826
19
- boris/core.py,sha256=9Ss8Y6GmQX0u3EUQ7A13EyD3eYUxeqcp6Yh04AiEaq0,233702
19
+ boris/core.py,sha256=P6xpIqnEZwE6SGfCFB2g2Flec6Wsx9CUXg7O8Hmh2bg,233322
20
20
  boris/core_qrc.py,sha256=T3ki5e2Pj0I0QBGz63MPUgZzl8F_VHZwSq074mRNBDU,650669
21
21
  boris/core_ui.py,sha256=SeC26uveDCjrCBLsRPuQ6FaapKfON_HIRcQStEDLhl4,76384
22
22
  boris/db_functions.py,sha256=Uw9wWH_Pe-qNzpV1k21YG_jKsoOmfY_iiK_7ARZHGDc,13352
@@ -42,7 +42,7 @@ boris/map_creator.py,sha256=-A7LvdPZ0vPiY9tifaLAFWZuOvl3GkQze1hd_3vASWw,29053
42
42
  boris/measurement_widget.py,sha256=lZV62KtK6TjdoNbKxj3uyNAuL5dfnQnn7mYwzMo-dOM,4480
43
43
  boris/media_file.py,sha256=QzUC0mT905SzlONvcXUJB2OCxhj8kJ0h0W6PN1ssSIY,4722
44
44
  boris/menu_options.py,sha256=UEB3GxRh6YKNCg67qbhOVhJW1ZOznuPe15bADc_CNTI,7062
45
- boris/modifiers_coding_map.py,sha256=wKJM379hjhmaZS2XFn3NZctBu8sRy164VUuiabIQu4o,4564
45
+ boris/modifiers_coding_map.py,sha256=oT56ZY_PXhEJsMoblEsyNMAPbDpv7ZMOCnvmt7Ibx_Y,4554
46
46
  boris/mpv-1.0.3.py,sha256=EXRtzQqFjOn4wMC6482Ilq3fNQ9N1GRP1VxwLzdeaBY,88077
47
47
  boris/mpv.py,sha256=EfzIHjPbgewG4w3smEtqEUPZoVwYmMQkL4Q8ZyW-a58,76410
48
48
  boris/mpv2.py,sha256=IUI4t4r9GYX7G5OXTjd3RhMMOkDdfal_15buBgksLsk,92152
@@ -77,14 +77,14 @@ boris/synthetic_time_budget.py,sha256=G26GDbScv4DviCDRIG_lo1sY6THGoVYqoR4cRpSuEG
77
77
  boris/time_budget_functions.py,sha256=vInLbWyswtB0OE_1VATjCCmEdhnwgHuQudNnvVWh2gQ,52022
78
78
  boris/time_budget_widget.py,sha256=2YRMe1h_X3K4aSs1AnGUDblvi-QYkdHAZwicudeN_Es,42418
79
79
  boris/transitions.py,sha256=_aZJfJWv3EBrtmQ7qsdTCayQo6uWU7BXqtQQgflEhr4,12250
80
- boris/utilities.py,sha256=MHGP0aV_Uat4N7MfILBxoHYfjJSZFVkeDsU8NWV70ww,52707
81
- boris/version.py,sha256=Qrwo_OgrRl21fbEwyTlh8deRovsnJZd__1oHI35Mbzw,787
80
+ boris/utilities.py,sha256=hqlKgKvdYHdpQ6nhXDruS_3NOvB9CXRi3b7RpEamU0c,52742
81
+ boris/version.py,sha256=QP01PQ3_fv1198HqhcBKklHPnQx00Fli6Ppc0oTgo0Y,787
82
82
  boris/video_equalizer.py,sha256=FartoGghFK-T53zklP70rPKYqTuzL8qdvfGlsOF2wwc,5854
83
83
  boris/video_equalizer_ui.py,sha256=1CG3s79eM4JAbaCx3i1ILZXLceb41_gGXlOLNfpBgnw,10142
84
84
  boris/video_operations.py,sha256=mh3iR__Sm2KnV44L_sW2pOo3AgLwlM7wiTnnqQiAVs4,9381
85
85
  boris/view_df.py,sha256=AKScLASX2Uatw7rqPbsnio83eVT4GZYCFhL091eMvlY,3370
86
86
  boris/view_df_ui.py,sha256=CaMeRH_vQ00CTDDFQn73ZZaS-r8BSTWpL-dMCFqzJ_Q,2775
87
- boris/write_event.py,sha256=vcgoKwd5I9iKVz9LjV0Fj91XoVkEfUh7UFSMiz5yrMk,23835
87
+ boris/write_event.py,sha256=LV6HT1PMAz2-2EotEIbKsHiO7E4IBxp01BCphWyoAOk,23766
88
88
  boris/analysis_plugins/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
89
  boris/analysis_plugins/number_of_occurences.py,sha256=GU3TSKnmZ7_wEcKu7mw9-7FUz3jTh6BQffOphbFjLS0,2017
90
90
  boris/analysis_plugins/number_of_occurences_by_independent_variable.py,sha256=fkyOuc1AiOSnrz7L6Ocd742XmDHhhQEtgi2KSiTOG4c,2252
@@ -95,9 +95,9 @@ boris/portion/dict.py,sha256=SyHxc7PfDw2ufNLFQycwJtzmRfL48rDp4UrM2KN7IWc,11282
95
95
  boris/portion/func.py,sha256=3TkQtFKLfsqntwd27HSGHceFhnXHmT-EbNMqktElC5Q,2174
96
96
  boris/portion/interval.py,sha256=bAdUiJjGeUAPgsBAImwNeviiwfQq5odfhFZccAWzOTA,20299
97
97
  boris/portion/io.py,sha256=ppNeRpiLNrocF1yzGeuEUIhYMf2LfsR-cji3d0nmvUs,6371
98
- boris_behav_obs-9.0.6.dist-info/LICENSE.TXT,sha256=WJ7YI-moTFb-uVrFjnzzhGJrnL9P2iqQe8NuED3hutI,35141
99
- boris_behav_obs-9.0.6.dist-info/METADATA,sha256=UHFCvEhJreg4tOaNf5inmNMuBQ9e56pLziR8wYKKqQs,42102
100
- boris_behav_obs-9.0.6.dist-info/WHEEL,sha256=9Hm2OB-j1QcCUq9Jguht7ayGIIZBRTdOXD1qg9cCgPM,109
101
- boris_behav_obs-9.0.6.dist-info/entry_points.txt,sha256=-Vl37ZFjZYK5wTSDf5LAzd2cVLON1Pfy1xkx490Wxak,47
102
- boris_behav_obs-9.0.6.dist-info/top_level.txt,sha256=fJSgm62S7WesiwTorGbOO4nNN0yzgZ3klgfGi3Px4qI,6
103
- boris_behav_obs-9.0.6.dist-info/RECORD,,
98
+ boris_behav_obs-9.0.7.dist-info/LICENSE.TXT,sha256=WJ7YI-moTFb-uVrFjnzzhGJrnL9P2iqQe8NuED3hutI,35141
99
+ boris_behav_obs-9.0.7.dist-info/METADATA,sha256=yCgZy-GA2MFqCQVwhqubnJ5RWq1ZMJyORXwmEuoRIUI,42102
100
+ boris_behav_obs-9.0.7.dist-info/WHEEL,sha256=rF4EZyR2XVS6irmOHQIJx2SUqXLZKRMUrjsg8UwN-XQ,109
101
+ boris_behav_obs-9.0.7.dist-info/entry_points.txt,sha256=-Vl37ZFjZYK5wTSDf5LAzd2cVLON1Pfy1xkx490Wxak,47
102
+ boris_behav_obs-9.0.7.dist-info/top_level.txt,sha256=fJSgm62S7WesiwTorGbOO4nNN0yzgZ3klgfGi3Px4qI,6
103
+ boris_behav_obs-9.0.7.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.0)
2
+ Generator: setuptools (75.8.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py2-none-any
5
5
  Tag: py3-none-any