bec-widgets 0.99.0__py3-none-any.whl → 0.99.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.
CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## v0.99.1 (2024-08-27)
4
+
5
+ ### Fix
6
+
7
+ * fix(crosshair): emit all crosshair events, not just line coordinates ([`2265458`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/2265458dcc57970db18c62619f5877d542d72e81))
8
+
3
9
  ## v0.99.0 (2024-08-25)
4
10
 
5
11
  ### Documentation
@@ -147,27 +153,3 @@
147
153
  ### Test
148
154
 
149
155
  * test: added test for device browser ([`e870e5b`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/e870e5ba083c61df581c9c0305adabe72967f997))
150
-
151
- ## v0.94.7 (2024-08-20)
152
-
153
- ### Fix
154
-
155
- * fix: formatting of stdout, stderr captured text for logger ([`939f834`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/939f834a26ddbac0bdead0b60b1cdf52014f182f))
156
-
157
- ## v0.94.6 (2024-08-14)
158
-
159
- ### Fix
160
-
161
- * fix(server): emit heartbeat with state ([`bc2abe9`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/bc2abe945fb5adeec89ed5ac45e966db86ce6ffc))
162
-
163
- ## v0.94.5 (2024-08-14)
164
-
165
- ### Build
166
-
167
- * build: increased min version of bec to 2.21.4
168
-
169
- Since we now rely on reusing the BECClient singleton, we need the fix introduced with 2.21.4 in BEC. ([`4f96d0e`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/4f96d0e4a14edc4b2839c1dddeda384737dc7a8a))
170
-
171
- ### Fix
172
-
173
- * fix(rpc): use client singleton instead of dispatcher ([`ea9240d`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/ea9240d2f71931082f33fb6b68231469875c3d63))
PKG-INFO CHANGED
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: bec_widgets
3
- Version: 0.99.0
3
+ Version: 0.99.1
4
4
  Summary: BEC Widgets
5
5
  Project-URL: Bug Tracker, https://gitlab.psi.ch/bec/bec_widgets/issues
6
6
  Project-URL: Homepage, https://gitlab.psi.ch/bec/bec_widgets
@@ -9,6 +9,8 @@ from qtpy.QtCore import Signal as pyqtSignal
9
9
 
10
10
 
11
11
  class Crosshair(QObject):
12
+ positionChanged = pyqtSignal(tuple)
13
+ positionClicked = pyqtSignal(tuple)
12
14
  # Signal for 1D plot
13
15
  coordinatesChanged1D = pyqtSignal(tuple)
14
16
  coordinatesClicked1D = pyqtSignal(tuple)
@@ -164,6 +166,7 @@ class Crosshair(QObject):
164
166
  """
165
167
  pos = event[0]
166
168
  self.update_markers()
169
+ self.positionChanged.emit((pos.x(), pos.y()))
167
170
  if self.plot_item.vb.sceneBoundingRect().contains(pos):
168
171
  mouse_point = self.plot_item.vb.mapSceneToView(pos)
169
172
  self.v_line.setPos(mouse_point.x())
@@ -217,6 +220,7 @@ class Crosshair(QObject):
217
220
  if self.plot_item.vb.sceneBoundingRect().contains(event._scenePos):
218
221
  mouse_point = self.plot_item.vb.mapSceneToView(event._scenePos)
219
222
  x, y = mouse_point.x(), mouse_point.y()
223
+ self.positionClicked.emit((x, y))
220
224
 
221
225
  if self.is_log_x:
222
226
  x = 10**x
@@ -56,6 +56,8 @@ class BECViewBox(pg.ViewBox):
56
56
 
57
57
 
58
58
  class BECPlotBase(BECConnector, pg.GraphicsLayout):
59
+ crosshair_position_changed = Signal(tuple)
60
+ crosshair_position_clicked = Signal(tuple)
59
61
  crosshair_coordinates_changed = Signal(tuple)
60
62
  crosshair_coordinates_clicked = Signal(tuple)
61
63
  USER_ACCESS = [
@@ -328,6 +330,8 @@ class BECPlotBase(BECConnector, pg.GraphicsLayout):
328
330
  """Hook the crosshair to all plots."""
329
331
  if self.crosshair is None:
330
332
  self.crosshair = Crosshair(self.plot_item, precision=3)
333
+ self.crosshair.positionChanged.connect(self.crosshair_position_changed)
334
+ self.crosshair.positionClicked.connect(self.crosshair_position_clicked)
331
335
  self.crosshair.coordinatesChanged1D.connect(self.crosshair_coordinates_changed)
332
336
  self.crosshair.coordinatesClicked1D.connect(self.crosshair_coordinates_clicked)
333
337
  self.crosshair.coordinatesChanged2D.connect(self.crosshair_coordinates_changed)
@@ -336,6 +340,8 @@ class BECPlotBase(BECConnector, pg.GraphicsLayout):
336
340
  def unhook_crosshair(self) -> None:
337
341
  """Unhook the crosshair from all plots."""
338
342
  if self.crosshair is not None:
343
+ self.crosshair.positionChanged.disconnect(self.crosshair_position_changed)
344
+ self.crosshair.positionClicked.disconnect(self.crosshair_position_clicked)
339
345
  self.crosshair.coordinatesChanged1D.disconnect(self.crosshair_coordinates_changed)
340
346
  self.crosshair.coordinatesClicked1D.disconnect(self.crosshair_coordinates_clicked)
341
347
  self.crosshair.coordinatesChanged2D.disconnect(self.crosshair_coordinates_changed)
@@ -58,8 +58,14 @@ class BECWaveformWidget(BECWidget, QWidget):
58
58
  dap_summary_update = Signal(dict)
59
59
  autorange_signal = Signal()
60
60
  new_scan = Signal()
61
+ crosshair_position_changed = Signal(tuple)
62
+ crosshair_position_changed_string = Signal(str)
63
+ crosshair_position_clicked = Signal(tuple)
64
+ crosshair_position_clicked_string = Signal(str)
61
65
  crosshair_coordinates_changed = Signal(tuple)
66
+ crosshair_coordinates_changed_string = Signal(str)
62
67
  crosshair_coordinates_clicked = Signal(tuple)
68
+ crosshair_coordinates_clicked_string = Signal(str)
63
69
 
64
70
  def __init__(
65
71
  self,
@@ -136,6 +142,20 @@ class BECWaveformWidget(BECWidget, QWidget):
136
142
  self.waveform.new_scan.connect(self.new_scan)
137
143
  self.waveform.crosshair_coordinates_changed.connect(self.crosshair_coordinates_changed)
138
144
  self.waveform.crosshair_coordinates_clicked.connect(self.crosshair_coordinates_clicked)
145
+ self.waveform.crosshair_coordinates_changed.connect(
146
+ self._emit_crosshair_coordinates_changed_string
147
+ )
148
+ self.waveform.crosshair_coordinates_clicked.connect(
149
+ self._emit_crosshair_coordinates_clicked_string
150
+ )
151
+ self.waveform.crosshair_position_changed.connect(self.crosshair_position_changed)
152
+ self.waveform.crosshair_position_clicked.connect(self.crosshair_position_clicked)
153
+ self.waveform.crosshair_position_changed.connect(
154
+ self._emit_crosshair_position_changed_string
155
+ )
156
+ self.waveform.crosshair_position_clicked.connect(
157
+ self._emit_crosshair_position_clicked_string
158
+ )
139
159
 
140
160
  def _hook_actions(self):
141
161
  self.toolbar.widgets["save"].action.triggered.connect(self.export)
@@ -156,6 +176,22 @@ class BECWaveformWidget(BECWidget, QWidget):
156
176
  # lambda: self.save_config(path=None, gui=True)
157
177
  # )
158
178
 
179
+ @SafeSlot(tuple)
180
+ def _emit_crosshair_coordinates_changed_string(self, coordinates):
181
+ self.crosshair_coordinates_changed_string.emit(str(coordinates))
182
+
183
+ @SafeSlot(tuple)
184
+ def _emit_crosshair_coordinates_clicked_string(self, coordinates):
185
+ self.crosshair_coordinates_clicked_string.emit(str(coordinates))
186
+
187
+ @SafeSlot(tuple)
188
+ def _emit_crosshair_position_changed_string(self, position):
189
+ self.crosshair_position_changed_string.emit(str(position))
190
+
191
+ @SafeSlot(tuple)
192
+ def _emit_crosshair_position_clicked_string(self, position):
193
+ self.crosshair_position_clicked_string.emit(str(position))
194
+
159
195
  ###################################
160
196
  # Dialog Windows
161
197
  ###################################
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: bec_widgets
3
- Version: 0.99.0
3
+ Version: 0.99.1
4
4
  Summary: BEC Widgets
5
5
  Project-URL: Bug Tracker, https://gitlab.psi.ch/bec/bec_widgets/issues
6
6
  Project-URL: Homepage, https://gitlab.psi.ch/bec/bec_widgets
@@ -2,11 +2,11 @@
2
2
  .gitlab-ci.yml,sha256=9dZ_EvimZrDzG8MtII0qtBYMM_Nc6xqh2iFRds0rlvE,8370
3
3
  .pylintrc,sha256=eeY8YwSI74oFfq6IYIbCqnx3Vk8ZncKaatv96n_Y8Rs,18544
4
4
  .readthedocs.yaml,sha256=aSOc277LqXcsTI6lgvm_JY80lMlr69GbPKgivua2cS0,603
5
- CHANGELOG.md,sha256=b1ujyB3oupb7eRJMrfot1E2Ro8JyRtl8nMWKS9WNZVE,7591
5
+ CHANGELOG.md,sha256=TrmYDiypc90eYaa-faQzSvVKyS3bZt1pBLSqIpUqDeU,6964
6
6
  LICENSE,sha256=YRKe85CBRyP7UpEAWwU8_qSIyuy5-l_9C-HKg5Qm8MQ,1511
7
- PKG-INFO,sha256=__2d0MYZYp69v5s8h-OeHhSCzx5oPTAC2SCbzjaU3Wk,1325
7
+ PKG-INFO,sha256=MVPi_Ok7cGpSqZHITDtcZCuEBiWaMs7LXnzOk1olL-o,1325
8
8
  README.md,sha256=Od69x-RS85Hph0-WwWACwal4yUd67XkEn4APEfHhHFw,2649
9
- pyproject.toml,sha256=gMDfspJLGFZ8Bg4B0cJ1YPtCiKazJFCOTBpqCSTSIrw,2416
9
+ pyproject.toml,sha256=yN4Aw4TTp4pjQtn1s3UdvUKePIwRCP8wfcqGakRG7Rs,2416
10
10
  .git_hooks/pre-commit,sha256=n3RofIZHJl8zfJJIUomcMyYGFi_rwq4CC19z0snz3FI,286
11
11
  .gitlab/issue_templates/bug_report_template.md,sha256=gAuyEwl7XlnebBrkiJ9AqffSNOywmr8vygUFWKTuQeI,386
12
12
  .gitlab/issue_templates/documentation_update_template.md,sha256=FHLdb3TS_D9aL4CYZCjyXSulbaW5mrN2CmwTaeLPbNw,860
@@ -94,7 +94,7 @@ bec_widgets/utils/bec_table.py,sha256=nA2b8ukSeUfquFMAxGrUVOqdrzMoDYD6O_4EYbOG2z
94
94
  bec_widgets/utils/bec_widget.py,sha256=Bo2v1aP7rgSAQajW8GBJbI3iovTn_hGCsmeFMo7bT10,707
95
95
  bec_widgets/utils/colors.py,sha256=2lQZFfmin0YBJVrMH_81wSUPpmFz235_NYHpNRFlrbk,11383
96
96
  bec_widgets/utils/container_utils.py,sha256=0wr3ZfuMiAFKCrQHVjxjw-Vuk8wsHdridqcjy2eY840,1531
97
- bec_widgets/utils/crosshair.py,sha256=ywj4Pr2Xx8tFsD5qrHIocanKlNqDd51ElbEfxenuYM0,11363
97
+ bec_widgets/utils/crosshair.py,sha256=8lik9k69WI2WMj5FGLbrKtny9duxqXUJAhpX8tHoyp0,11543
98
98
  bec_widgets/utils/entry_validator.py,sha256=3skJIsUwTYicT76AMHm_M78RiWtUgyD2zb-Rxo2HdHQ,1313
99
99
  bec_widgets/utils/generate_designer_plugin.py,sha256=eidqauS8YLgoxkPntPL0oSG_lYqI2D7fSyOZvOtCU_U,5891
100
100
  bec_widgets/utils/layout_manager.py,sha256=H0nKsIMaPxRkof1MEXlSmW6w1dFxA6astaGzf4stI84,4727
@@ -167,7 +167,7 @@ bec_widgets/widgets/figure/figure.py,sha256=ArJ_fN6xvqzuK8p6YQJfMJwSTh-Rvk69TKIg
167
167
  bec_widgets/widgets/figure/plots/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
168
168
  bec_widgets/widgets/figure/plots/axis_settings.py,sha256=QxRpQwgfBr1H0HTjfOpiXi_-n8I0BaZhS8LRXNeVfFg,3544
169
169
  bec_widgets/widgets/figure/plots/axis_settings.ui,sha256=a2qIuK9lyi9HCyrSvPr6wxzmm1FymaWcpmyOhMIiFt8,11013
170
- bec_widgets/widgets/figure/plots/plot_base.py,sha256=30KsfR6SlbeuV_t96kILcPU17vf_qMHajlvFwfBvN2Y,13593
170
+ bec_widgets/widgets/figure/plots/plot_base.py,sha256=RLQeize3X02rzp5DyBzvQI7SdA4DiEuFH-Dzij1mohg,14029
171
171
  bec_widgets/widgets/figure/plots/image/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
172
172
  bec_widgets/widgets/figure/plots/image/image.py,sha256=y2MqgJv6Njv-huDN_exn0Fq1rAh5vs_assKCKHgQH6I,24941
173
173
  bec_widgets/widgets/figure/plots/image/image_item.py,sha256=RljjbkqJEr2cKDlqj1j5GQ1h89jpqOV-OpFz1TbED8I,10937
@@ -249,7 +249,7 @@ bec_widgets/widgets/waveform/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NM
249
249
  bec_widgets/widgets/waveform/bec_waveform_widget.pyproject,sha256=GLD8GN9dXx9wNbtnevrxqqcwk7vKV-Uv8QYSycdaoaI,33
250
250
  bec_widgets/widgets/waveform/bec_waveform_widget_plugin.py,sha256=Qt8E5nvk6f5JYwOqVn5UkbIW_JqsXkIMdv3CM41gXsU,1387
251
251
  bec_widgets/widgets/waveform/register_bec_waveform_widget.py,sha256=qZHVZH_lP2hvzkG1Ra0EyrXlMeLkRCy0aceH-bfJ1cs,490
252
- bec_widgets/widgets/waveform/waveform_widget.py,sha256=7oOLIIQbx1Oam89cjtAidRU1QFLphTk-ALSRbiessrY,20512
252
+ bec_widgets/widgets/waveform/waveform_widget.py,sha256=LD5nx6Z2wxiaMK7ukrFzwJDojrkj3pn_oG2eZqguulE,22152
253
253
  bec_widgets/widgets/waveform/waveform_popups/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
254
254
  bec_widgets/widgets/waveform/waveform_popups/curve_dialog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
255
255
  bec_widgets/widgets/waveform/waveform_popups/curve_dialog/curve_dialog.py,sha256=5e2BrKA97cfZCM04x7-S3z6sby82KKnUH1S0gVQUfLU,13090
@@ -408,8 +408,8 @@ tests/unit_tests/test_configs/config_device_no_entry.yaml,sha256=hdvue9KLc_kfNzG
408
408
  tests/unit_tests/test_configs/config_scan.yaml,sha256=vo484BbWOjA_e-h6bTjSV9k7QaQHrlAvx-z8wtY-P4E,1915
409
409
  tests/unit_tests/test_msgs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
410
410
  tests/unit_tests/test_msgs/available_scans_message.py,sha256=m_z97hIrjHXXMa2Ex-UvsPmTxOYXfjxyJaGkIY6StTY,46532
411
- bec_widgets-0.99.0.dist-info/METADATA,sha256=__2d0MYZYp69v5s8h-OeHhSCzx5oPTAC2SCbzjaU3Wk,1325
412
- bec_widgets-0.99.0.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
413
- bec_widgets-0.99.0.dist-info/entry_points.txt,sha256=3otEkCdDB9LZJuBLzG4pFLK5Di0CVybN_12IsZrQ-58,166
414
- bec_widgets-0.99.0.dist-info/licenses/LICENSE,sha256=YRKe85CBRyP7UpEAWwU8_qSIyuy5-l_9C-HKg5Qm8MQ,1511
415
- bec_widgets-0.99.0.dist-info/RECORD,,
411
+ bec_widgets-0.99.1.dist-info/METADATA,sha256=MVPi_Ok7cGpSqZHITDtcZCuEBiWaMs7LXnzOk1olL-o,1325
412
+ bec_widgets-0.99.1.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
413
+ bec_widgets-0.99.1.dist-info/entry_points.txt,sha256=3otEkCdDB9LZJuBLzG4pFLK5Di0CVybN_12IsZrQ-58,166
414
+ bec_widgets-0.99.1.dist-info/licenses/LICENSE,sha256=YRKe85CBRyP7UpEAWwU8_qSIyuy5-l_9C-HKg5Qm8MQ,1511
415
+ bec_widgets-0.99.1.dist-info/RECORD,,
pyproject.toml CHANGED
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "bec_widgets"
7
- version = "0.99.0"
7
+ version = "0.99.1"
8
8
  description = "BEC Widgets"
9
9
  requires-python = ">=3.10"
10
10
  classifiers = [