bec-widgets 2.8.3__py3-none-any.whl → 2.9.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. CHANGELOG.md +37 -0
  2. PKG-INFO +1 -1
  3. bec_widgets/cli/client.py +129 -0
  4. bec_widgets/utils/bec_dispatcher.py +6 -4
  5. bec_widgets/utils/crosshair.py +72 -9
  6. bec_widgets/widgets/control/device_input/base_classes/device_signal_input_base.py +13 -12
  7. bec_widgets/widgets/control/device_input/signal_combobox/signal_combobox.py +11 -5
  8. bec_widgets/widgets/plots/image/image.py +2 -0
  9. bec_widgets/widgets/plots/multi_waveform/multi_waveform.py +2 -0
  10. bec_widgets/widgets/plots/plot_base.py +27 -1
  11. bec_widgets/widgets/plots/scatter_waveform/scatter_waveform.py +2 -0
  12. bec_widgets/widgets/plots/setting_menus/axis_settings.py +3 -0
  13. bec_widgets/widgets/plots/setting_menus/axis_settings_horizontal.ui +111 -88
  14. bec_widgets/widgets/plots/setting_menus/axis_settings_vertical.ui +74 -43
  15. bec_widgets/widgets/plots/waveform/waveform.py +2 -0
  16. bec_widgets/widgets/utility/signal_label/register_signal_label.py +15 -0
  17. bec_widgets/widgets/utility/signal_label/signal_label.py +456 -0
  18. bec_widgets/widgets/utility/signal_label/signal_label.pyproject +1 -0
  19. bec_widgets/widgets/utility/signal_label/signal_label_plugin.py +54 -0
  20. {bec_widgets-2.8.3.dist-info → bec_widgets-2.9.0.dist-info}/METADATA +1 -1
  21. {bec_widgets-2.8.3.dist-info → bec_widgets-2.9.0.dist-info}/RECORD +25 -21
  22. pyproject.toml +1 -1
  23. {bec_widgets-2.8.3.dist-info → bec_widgets-2.9.0.dist-info}/WHEEL +0 -0
  24. {bec_widgets-2.8.3.dist-info → bec_widgets-2.9.0.dist-info}/entry_points.txt +0 -0
  25. {bec_widgets-2.8.3.dist-info → bec_widgets-2.9.0.dist-info}/licenses/LICENSE +0 -0
@@ -14,21 +14,78 @@
14
14
  <string>Form</string>
15
15
  </property>
16
16
  <layout class="QGridLayout" name="gridLayout">
17
- <item row="1" column="0">
18
- <widget class="QLabel" name="label">
19
- <property name="text">
20
- <string>Inner Axes</string>
21
- </property>
22
- </widget>
23
- </item>
24
- <item row="1" column="1">
25
- <widget class="ToggleSwitch" name="inner_axes"/>
26
- </item>
27
- <item row="1" column="2">
28
- <widget class="QLabel" name="label_outer_axes">
29
- <property name="text">
30
- <string>Outer Axes</string>
17
+ <item row="2" column="2" colspan="2">
18
+ <widget class="QGroupBox" name="y_axis_box">
19
+ <property name="title">
20
+ <string>Y Axis</string>
31
21
  </property>
22
+ <layout class="QGridLayout" name="gridLayout_5">
23
+ <item row="1" column="0" colspan="2">
24
+ <widget class="QLabel" name="y_min_label">
25
+ <property name="text">
26
+ <string>Min</string>
27
+ </property>
28
+ </widget>
29
+ </item>
30
+ <item row="0" column="2">
31
+ <widget class="QLineEdit" name="y_label"/>
32
+ </item>
33
+ <item row="3" column="0">
34
+ <widget class="QLabel" name="y_scale_label">
35
+ <property name="text">
36
+ <string>Log</string>
37
+ </property>
38
+ </widget>
39
+ </item>
40
+ <item row="0" column="0">
41
+ <widget class="QLabel" name="y_label_label">
42
+ <property name="text">
43
+ <string>Label</string>
44
+ </property>
45
+ </widget>
46
+ </item>
47
+ <item row="2" column="0">
48
+ <widget class="QLabel" name="y_max_label">
49
+ <property name="text">
50
+ <string>Max</string>
51
+ </property>
52
+ </widget>
53
+ </item>
54
+ <item row="4" column="0">
55
+ <widget class="QLabel" name="y_grid_label">
56
+ <property name="text">
57
+ <string>Grid</string>
58
+ </property>
59
+ </widget>
60
+ </item>
61
+ <item row="3" column="2">
62
+ <widget class="ToggleSwitch" name="y_log">
63
+ <property name="checked" stdset="0">
64
+ <bool>false</bool>
65
+ </property>
66
+ </widget>
67
+ </item>
68
+ <item row="4" column="2">
69
+ <widget class="ToggleSwitch" name="y_grid">
70
+ <property name="checked" stdset="0">
71
+ <bool>false</bool>
72
+ </property>
73
+ </widget>
74
+ </item>
75
+ <item row="1" column="2">
76
+ <widget class="BECSpinBox" name="y_min">
77
+ <property name="alignment">
78
+ <set>Qt::AlignmentFlag::AlignCenter</set>
79
+ </property>
80
+ <property name="buttonSymbols">
81
+ <enum>QAbstractSpinBox::ButtonSymbols::UpDownArrows</enum>
82
+ </property>
83
+ </widget>
84
+ </item>
85
+ <item row="2" column="2">
86
+ <widget class="BECSpinBox" name="y_max"/>
87
+ </item>
88
+ </layout>
32
89
  </widget>
33
90
  </item>
34
91
  <item row="1" column="3">
@@ -38,6 +95,13 @@
38
95
  </property>
39
96
  </widget>
40
97
  </item>
98
+ <item row="1" column="0">
99
+ <widget class="QLabel" name="label">
100
+ <property name="text">
101
+ <string>Inner Axes</string>
102
+ </property>
103
+ </widget>
104
+ </item>
41
105
  <item row="2" column="0" colspan="2">
42
106
  <widget class="QGroupBox" name="x_axis_box">
43
107
  <property name="title">
@@ -105,80 +169,6 @@
105
169
  </layout>
106
170
  </widget>
107
171
  </item>
108
- <item row="2" column="2" colspan="2">
109
- <widget class="QGroupBox" name="y_axis_box">
110
- <property name="title">
111
- <string>Y Axis</string>
112
- </property>
113
- <layout class="QGridLayout" name="gridLayout_5">
114
- <item row="1" column="0" colspan="2">
115
- <widget class="QLabel" name="y_min_label">
116
- <property name="text">
117
- <string>Min</string>
118
- </property>
119
- </widget>
120
- </item>
121
- <item row="0" column="2">
122
- <widget class="QLineEdit" name="y_label"/>
123
- </item>
124
- <item row="3" column="0">
125
- <widget class="QLabel" name="y_scale_label">
126
- <property name="text">
127
- <string>Log</string>
128
- </property>
129
- </widget>
130
- </item>
131
- <item row="0" column="0">
132
- <widget class="QLabel" name="y_label_label">
133
- <property name="text">
134
- <string>Label</string>
135
- </property>
136
- </widget>
137
- </item>
138
- <item row="2" column="0">
139
- <widget class="QLabel" name="y_max_label">
140
- <property name="text">
141
- <string>Max</string>
142
- </property>
143
- </widget>
144
- </item>
145
- <item row="4" column="0">
146
- <widget class="QLabel" name="y_grid_label">
147
- <property name="text">
148
- <string>Grid</string>
149
- </property>
150
- </widget>
151
- </item>
152
- <item row="3" column="2">
153
- <widget class="ToggleSwitch" name="y_log">
154
- <property name="checked" stdset="0">
155
- <bool>false</bool>
156
- </property>
157
- </widget>
158
- </item>
159
- <item row="4" column="2">
160
- <widget class="ToggleSwitch" name="y_grid">
161
- <property name="checked" stdset="0">
162
- <bool>false</bool>
163
- </property>
164
- </widget>
165
- </item>
166
- <item row="1" column="2">
167
- <widget class="BECSpinBox" name="y_min">
168
- <property name="alignment">
169
- <set>Qt::AlignmentFlag::AlignCenter</set>
170
- </property>
171
- <property name="buttonSymbols">
172
- <enum>QAbstractSpinBox::ButtonSymbols::UpDownArrows</enum>
173
- </property>
174
- </widget>
175
- </item>
176
- <item row="2" column="2">
177
- <widget class="BECSpinBox" name="y_max"/>
178
- </item>
179
- </layout>
180
- </widget>
181
- </item>
182
172
  <item row="0" column="0" colspan="4">
183
173
  <layout class="QHBoxLayout" name="horizontalLayout">
184
174
  <item>
@@ -191,8 +181,41 @@
191
181
  <item>
192
182
  <widget class="QLineEdit" name="title"/>
193
183
  </item>
184
+ <item>
185
+ <widget class="QLabel" name="label_2">
186
+ <property name="text">
187
+ <string>Precision</string>
188
+ </property>
189
+ </widget>
190
+ </item>
191
+ <item>
192
+ <widget class="QSpinBox" name="minimal_crosshair_precision">
193
+ <property name="toolTip">
194
+ <string>Minimal Crosshair Precision</string>
195
+ </property>
196
+ <property name="alignment">
197
+ <set>Qt::AlignmentFlag::AlignCenter</set>
198
+ </property>
199
+ <property name="maximum">
200
+ <number>20</number>
201
+ </property>
202
+ <property name="value">
203
+ <number>3</number>
204
+ </property>
205
+ </widget>
206
+ </item>
194
207
  </layout>
195
208
  </item>
209
+ <item row="1" column="2">
210
+ <widget class="QLabel" name="label_outer_axes">
211
+ <property name="text">
212
+ <string>Outer Axes</string>
213
+ </property>
214
+ </widget>
215
+ </item>
216
+ <item row="1" column="1">
217
+ <widget class="ToggleSwitch" name="inner_axes"/>
218
+ </item>
196
219
  </layout>
197
220
  </widget>
198
221
  <customwidgets>
@@ -6,15 +6,84 @@
6
6
  <rect>
7
7
  <x>0</x>
8
8
  <y>0</y>
9
- <width>241</width>
10
- <height>526</height>
9
+ <width>250</width>
10
+ <height>612</height>
11
11
  </rect>
12
12
  </property>
13
13
  <property name="windowTitle">
14
14
  <string>Form</string>
15
15
  </property>
16
- <layout class="QGridLayout" name="gridLayout">
17
- <item row="4" column="0" colspan="2">
16
+ <layout class="QVBoxLayout" name="verticalLayout">
17
+ <item>
18
+ <widget class="QGroupBox" name="general_box">
19
+ <property name="title">
20
+ <string>General</string>
21
+ </property>
22
+ <layout class="QGridLayout" name="gridLayout_2">
23
+ <item row="4" column="0">
24
+ <widget class="QLabel" name="label_outer_axes">
25
+ <property name="text">
26
+ <string>Outer Axes</string>
27
+ </property>
28
+ </widget>
29
+ </item>
30
+ <item row="4" column="1">
31
+ <widget class="ToggleSwitch" name="outer_axes">
32
+ <property name="checked" stdset="0">
33
+ <bool>false</bool>
34
+ </property>
35
+ </widget>
36
+ </item>
37
+ <item row="1" column="1">
38
+ <widget class="QLineEdit" name="title"/>
39
+ </item>
40
+ <item row="3" column="0">
41
+ <widget class="QLabel" name="label">
42
+ <property name="text">
43
+ <string>Inner Axes</string>
44
+ </property>
45
+ </widget>
46
+ </item>
47
+ <item row="1" column="0">
48
+ <widget class="QLabel" name="plot_title_label">
49
+ <property name="text">
50
+ <string>Plot Title</string>
51
+ </property>
52
+ </widget>
53
+ </item>
54
+ <item row="3" column="1">
55
+ <widget class="ToggleSwitch" name="inner_axes"/>
56
+ </item>
57
+ <item row="2" column="0">
58
+ <widget class="QLabel" name="label_2">
59
+ <property name="toolTip">
60
+ <string>Minimal Crosshair Precision</string>
61
+ </property>
62
+ <property name="text">
63
+ <string>Precision</string>
64
+ </property>
65
+ </widget>
66
+ </item>
67
+ <item row="2" column="1">
68
+ <widget class="QSpinBox" name="minimal_crosshair_precision">
69
+ <property name="toolTip">
70
+ <string>Minimal Crosshair Precision</string>
71
+ </property>
72
+ <property name="alignment">
73
+ <set>Qt::AlignmentFlag::AlignCenter</set>
74
+ </property>
75
+ <property name="maximum">
76
+ <number>20</number>
77
+ </property>
78
+ <property name="value">
79
+ <number>3</number>
80
+ </property>
81
+ </widget>
82
+ </item>
83
+ </layout>
84
+ </widget>
85
+ </item>
86
+ <item>
18
87
  <widget class="QGroupBox" name="x_axis_box">
19
88
  <property name="title">
20
89
  <string>X Axis</string>
@@ -81,28 +150,7 @@
81
150
  </layout>
82
151
  </widget>
83
152
  </item>
84
- <item row="0" column="0" colspan="2">
85
- <layout class="QHBoxLayout" name="horizontalLayout">
86
- <item>
87
- <widget class="QLabel" name="plot_title_label">
88
- <property name="text">
89
- <string>Plot Title</string>
90
- </property>
91
- </widget>
92
- </item>
93
- <item>
94
- <widget class="QLineEdit" name="title"/>
95
- </item>
96
- </layout>
97
- </item>
98
- <item row="2" column="0">
99
- <widget class="QLabel" name="label_outer_axes">
100
- <property name="text">
101
- <string>Outer Axes</string>
102
- </property>
103
- </widget>
104
- </item>
105
- <item row="5" column="0" colspan="2">
153
+ <item>
106
154
  <widget class="QGroupBox" name="y_axis_box">
107
155
  <property name="title">
108
156
  <string>Y Axis</string>
@@ -169,23 +217,6 @@
169
217
  </layout>
170
218
  </widget>
171
219
  </item>
172
- <item row="2" column="1">
173
- <widget class="ToggleSwitch" name="outer_axes">
174
- <property name="checked" stdset="0">
175
- <bool>false</bool>
176
- </property>
177
- </widget>
178
- </item>
179
- <item row="1" column="0">
180
- <widget class="QLabel" name="label">
181
- <property name="text">
182
- <string>Inner Axes</string>
183
- </property>
184
- </widget>
185
- </item>
186
- <item row="1" column="1">
187
- <widget class="ToggleSwitch" name="inner_axes"/>
188
- </item>
189
220
  </layout>
190
221
  </widget>
191
222
  <customwidgets>
@@ -86,6 +86,8 @@ class Waveform(PlotBase):
86
86
  "y_log.setter",
87
87
  "legend_label_size",
88
88
  "legend_label_size.setter",
89
+ "minimal_crosshair_precision",
90
+ "minimal_crosshair_precision.setter",
89
91
  # Waveform Specific RPC Access
90
92
  "curves",
91
93
  "x_mode",
@@ -0,0 +1,15 @@
1
+ def main(): # pragma: no cover
2
+ from qtpy import PYSIDE6
3
+
4
+ if not PYSIDE6:
5
+ print("PYSIDE6 is not available in the environment. Cannot patch designer.")
6
+ return
7
+ from PySide6.QtDesigner import QPyDesignerCustomWidgetCollection
8
+
9
+ from bec_widgets.widgets.utility.signal_label.signal_label_plugin import SignalLabelPlugin
10
+
11
+ QPyDesignerCustomWidgetCollection.addCustomWidget(SignalLabelPlugin())
12
+
13
+
14
+ if __name__ == "__main__": # pragma: no cover
15
+ main()