bec-widgets 1.10.0__tar.gz → 1.11.0__tar.gz
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.
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/CHANGELOG.md +14 -13
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/PKG-INFO +1 -1
- bec_widgets-1.11.0/bec_widgets/qt_utils/collapsible_panel_manager.py +380 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/layout_manager/layout_manager.py +3 -3
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/pyproject.toml +1 -1
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.git_hooks/pre-commit +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.gitignore +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.gitlab/issue_templates/bug_report_template.md +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.gitlab/issue_templates/documentation_update_template.md +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.gitlab/issue_templates/feature_request_template.md +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.gitlab/merge_request_templates/default.md +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.gitlab-ci.yml +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.pylintrc +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/.readthedocs.yaml +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/LICENSE +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/README.md +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/applications/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/applications/alignment/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/applications/alignment/alignment_1d/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/applications/alignment/alignment_1d/alignment_1d.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/applications/alignment/alignment_1d/alignment_1d.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/applications/bec_app.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/assets/app_icons/BEC-General-App.png +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/assets/app_icons/alignment_1d.png +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/assets/app_icons/bec_widgets_icon.png +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/cli/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/cli/auto_updates.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/cli/client.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/cli/client_utils.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/cli/generate_cli.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/cli/rpc_register.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/cli/rpc_wigdet_handler.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/cli/server.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/general_app/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/general_app/general_app.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/general_app/general_app.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/general_app/web_links.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/jupyter_console/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/jupyter_console/jupyter_console_window.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/main.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/registertictactoe.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/taskmenuextension.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/tictactoe.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/tictactoeplugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/tictactoetaskmenu.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/compact_popup.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/error_popups.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/palette_viewer.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/redis_message_waiter.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/round_frame.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/settings_dialog.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/side_panel.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/qt_utils/toolbar.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/tests/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/tests/utils.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/bec_connector.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/bec_designer.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/bec_dispatcher.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/bec_signal_proxy.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/bec_table.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/bec_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/colors.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/container_utils.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/crosshair.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/entry_validator.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/filter_io.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/fps_counter.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/generate_designer_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/layout_manager.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/linear_region_selector.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/ophyd_kind_util.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/plot_indicator_items.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/plugin_templates/plugin.template +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/plugin_templates/register.template +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/plugin_utils.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/reference_utils.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/rpc_decorator.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/thread_checker.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/ui_loader.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/validator_delegate.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/widget_io.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/yaml_dialog.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/dock/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/dock/dock.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/dock/dock_area.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/dock/dock_area.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/dock/dock_area_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/dock/register_dock_area.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/figure.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/axis_settings.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/axis_settings.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/image/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/image/image.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/image/image_item.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/image/image_processor.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/motor_map/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/motor_map/motor_map.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/multi_waveform/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/multi_waveform/multi_waveform.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/plot_base.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/waveform/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/waveform/waveform.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/figure/plots/waveform/waveform_curve.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/layout_manager/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/main_window/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/containers/main_window/main_window.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_abort/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_abort/abort_button.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_abort/abort_button_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_abort/button_abort.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_abort/register_abort_button.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_reset/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_reset/button_reset.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_reset/register_reset_button.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_reset/reset_button.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_reset/reset_button_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_resume/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_resume/button_resume.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_resume/register_resume_button.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_resume/resume_button.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/button_resume/resume_button_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/stop_button/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/stop_button/register_stop_button.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/stop_button/stop_button.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/stop_button/stop_button.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/buttons/stop_button/stop_button_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/position_indicator/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/position_indicator/position_indicator.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/position_indicator/position_indicator.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/position_indicator/position_indicator_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/position_indicator/register_position_indicator.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/positioner_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/positioner_box.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/positioner_box.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/positioner_box_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/positioner_control_line.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/positioner_control_line.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/positioner_control_line.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/positioner_control_line_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/register_positioner_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_box/register_positioner_control_line.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_group/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_group/positioner_group.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_group/positioner_group.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_group/positioner_group_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_control/positioner_group/register_positioner_group.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/base_classes/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/base_classes/device_input_base.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/base_classes/device_signal_input_base.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_combobox/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_combobox/device_combo_box.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_combobox/device_combo_box_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_combobox/device_combobox.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_combobox/register_device_combo_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_line_edit/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_line_edit/device_line_edit.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_line_edit/device_line_edit.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_line_edit/device_line_edit_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/device_line_edit/register_device_line_edit.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_combobox/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_combobox/register_signal_combobox.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_combobox/signal_combobox.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_combobox/signal_combobox.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_combobox/signal_combobox_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_line_edit/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_line_edit/register_signal_line_edit.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_line_edit/signal_line_edit.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_line_edit/signal_line_edit.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/device_input/signal_line_edit/signal_line_edit_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/scan_control/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/scan_control/register_scan_control.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/scan_control/scan_control.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/scan_control/scan_control.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/scan_control/scan_control_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/control/scan_control/scan_group_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/dap_combo_box/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/dap_combo_box/dap_combo_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/dap_combo_box/dap_combo_box.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/dap_combo_box/dap_combo_box_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/dap_combo_box/register_dap_combo_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/lmfit_dialog/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/lmfit_dialog/lm_fit_dialog.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/lmfit_dialog/lm_fit_dialog_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/lmfit_dialog/lmfit_dialog.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/lmfit_dialog/lmfit_dialog_compact.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/lmfit_dialog/lmfit_dialog_vertical.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/dap/lmfit_dialog/register_lm_fit_dialog.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/console/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/console/console.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/console/console.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/console/console_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/console/register_console.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/jupyter_console/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/jupyter_console/jupyter_console.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/text_box/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/text_box/register_text_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/text_box/text_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/text_box/text_box.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/text_box/text_box_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/vscode/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/vscode/register_vs_code_editor.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/vscode/vs_code_editor.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/vscode/vs_code_editor_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/vscode/vscode.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/website/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/website/register_website_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/website/website.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/website/website_widget.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/editors/website/website_widget_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/image/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/image/bec_image_widget.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/image/bec_image_widget_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/image/image_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/image/register_bec_image_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/motor_map/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/motor_map/bec_motor_map_widget.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/motor_map/bec_motor_map_widget_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/motor_map/motor_map_dialog/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/motor_map/motor_map_dialog/motor_map_settings.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/motor_map/motor_map_dialog/motor_map_settings.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/motor_map/motor_map_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/motor_map/register_bec_motor_map_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/multi_waveform/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/multi_waveform/bec_multi_waveform_widget.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/multi_waveform/bec_multi_waveform_widget_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/multi_waveform/multi_waveform_controls.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/multi_waveform/multi_waveform_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/multi_waveform/register_bec_multi_waveform_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/bec_waveform_widget.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/bec_waveform_widget_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/register_bec_waveform_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/waveform_popups/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/waveform_popups/curve_dialog/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/waveform_popups/curve_dialog/curve_dialog.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/waveform_popups/curve_dialog/curve_dialog.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/waveform_popups/dap_summary_dialog/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/waveform_popups/dap_summary_dialog/dap_summary_dialog.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/plots/waveform/waveform_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/bec_progressbar/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/bec_progressbar/bec_progress_bar.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/bec_progressbar/bec_progress_bar_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/bec_progressbar/bec_progressbar.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/bec_progressbar/register_bec_progress_bar.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/ring_progress_bar/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/ring_progress_bar/register_ring_progress_bar.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/ring_progress_bar/ring.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/ring_progress_bar/ring_progress_bar.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/ring_progress_bar/ring_progress_bar.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/progress/ring_progress_bar/ring_progress_bar_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_queue/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_queue/bec_queue.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_queue/bec_queue.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_queue/bec_queue_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_queue/register_bec_queue.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_status_box/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_status_box/bec_status_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_status_box/bec_status_box.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_status_box/bec_status_box_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_status_box/register_bec_status_box.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/bec_status_box/status_item.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/device_browser/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/device_browser/device_browser.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/device_browser/device_browser.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/device_browser/device_browser.ui +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/device_browser/device_browser_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/device_browser/device_item/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/device_browser/device_item/device_item.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/services/device_browser/register_device_browser.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/spinner/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/spinner/register_spinner_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/spinner/spinner.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/spinner/spinner_widget.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/spinner/spinner_widget_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/toggle/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/toggle/register_toggle_switch.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/toggle/toggle.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/toggle/toggle_switch.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/toggle/toggle_switch_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/color_button/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/color_button/color_button.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/color_button/color_button.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/color_button/color_button_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/color_button/register_color_button.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_selector/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_selector/colormap_selector.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_selector/colormap_selector.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_selector/colormap_selector_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_selector/register_colormap_selector.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_widget/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_widget/bec_color_map_widget.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_widget/bec_color_map_widget_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_widget/colormap_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/colormap_widget/register_bec_color_map_widget.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/dark_mode_button/__init__.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/dark_mode_button/dark_mode_button.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/dark_mode_button/dark_mode_button.pyproject +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/dark_mode_button/dark_mode_button_plugin.py +0 -0
- {bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/widgets/utility/visual/dark_mode_button/register_dark_mode_button.py +0 -0
@@ -1,6 +1,20 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
3
|
|
4
|
+
## v1.11.0 (2024-12-11)
|
5
|
+
|
6
|
+
### Features
|
7
|
+
|
8
|
+
- **collapsible_panel_manager**: Panel manager to handle collapsing and expanding widgets from the
|
9
|
+
main widget added
|
10
|
+
([`a434d3e`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/a434d3ee574081356c32c096d2fd61f641e04542))
|
11
|
+
|
12
|
+
### Testing
|
13
|
+
|
14
|
+
- **collapsible_panel_manager**: Fixture changed to not use .show()
|
15
|
+
([`ff654b5`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/ff654b56ae98388a2b707c040d51220be6cbce13))
|
16
|
+
|
17
|
+
|
4
18
|
## v1.10.0 (2024-12-10)
|
5
19
|
|
6
20
|
### Features
|
@@ -197,16 +211,3 @@ Depending on the test, auto-updates are enabled or not.
|
|
197
211
|
|
198
212
|
- **crosshair**: Label of coordinates of TextItem displays numbers in general format
|
199
213
|
([`11e5937`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/11e5937ae0f3c1413acd4e66878a692ebe4ef7d0))
|
200
|
-
|
201
|
-
- **crosshair**: Label of coordinates of TextItem is updated according to the current theme of qapp
|
202
|
-
([`4f31ea6`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/4f31ea655cf6190e141e6a2720a2d6da517a2b5b))
|
203
|
-
|
204
|
-
### Features
|
205
|
-
|
206
|
-
- **crosshair**: Textitem to display crosshair coordinates
|
207
|
-
([`035136d`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/035136d5171ec5f4311d15a9aa5bad2bdbc1f6cb))
|
208
|
-
|
209
|
-
### Testing
|
210
|
-
|
211
|
-
- **crosshair**: Tests extended
|
212
|
-
([`64df805`](https://gitlab.psi.ch/bec/bec_widgets/-/commit/64df805a9ed92bb97e580ac3bc0a1bbd2b1cb81e))
|
@@ -0,0 +1,380 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
import sys
|
4
|
+
from typing import Literal
|
5
|
+
|
6
|
+
import pyqtgraph as pg
|
7
|
+
from qtpy.QtCore import Property, QEasingCurve, QObject, QPropertyAnimation
|
8
|
+
from qtpy.QtWidgets import (
|
9
|
+
QApplication,
|
10
|
+
QHBoxLayout,
|
11
|
+
QMainWindow,
|
12
|
+
QPushButton,
|
13
|
+
QSizePolicy,
|
14
|
+
QVBoxLayout,
|
15
|
+
QWidget,
|
16
|
+
)
|
17
|
+
from typeguard import typechecked
|
18
|
+
|
19
|
+
from bec_widgets.widgets.containers.layout_manager.layout_manager import LayoutManagerWidget
|
20
|
+
|
21
|
+
|
22
|
+
class DimensionAnimator(QObject):
|
23
|
+
"""
|
24
|
+
Helper class to animate the size of a panel widget.
|
25
|
+
"""
|
26
|
+
|
27
|
+
def __init__(self, panel_widget: QWidget, direction: str):
|
28
|
+
super().__init__()
|
29
|
+
self.panel_widget = panel_widget
|
30
|
+
self.direction = direction
|
31
|
+
self._size = 0
|
32
|
+
|
33
|
+
@Property(int)
|
34
|
+
def panel_width(self):
|
35
|
+
"""
|
36
|
+
Returns the current width of the panel widget.
|
37
|
+
"""
|
38
|
+
return self._size
|
39
|
+
|
40
|
+
@panel_width.setter
|
41
|
+
def panel_width(self, val: int):
|
42
|
+
"""
|
43
|
+
Set the width of the panel widget.
|
44
|
+
|
45
|
+
Args:
|
46
|
+
val(int): The width to set.
|
47
|
+
"""
|
48
|
+
self._size = val
|
49
|
+
self.panel_widget.setFixedWidth(val)
|
50
|
+
|
51
|
+
@Property(int)
|
52
|
+
def panel_height(self):
|
53
|
+
"""
|
54
|
+
Returns the current height of the panel widget.
|
55
|
+
"""
|
56
|
+
return self._size
|
57
|
+
|
58
|
+
@panel_height.setter
|
59
|
+
def panel_height(self, val: int):
|
60
|
+
"""
|
61
|
+
Set the height of the panel widget.
|
62
|
+
|
63
|
+
Args:
|
64
|
+
val(int): The height to set.
|
65
|
+
"""
|
66
|
+
self._size = val
|
67
|
+
self.panel_widget.setFixedHeight(val)
|
68
|
+
|
69
|
+
|
70
|
+
class CollapsiblePanelManager(QObject):
|
71
|
+
"""
|
72
|
+
Manager class to handle collapsible panels from a main widget using LayoutManagerWidget.
|
73
|
+
"""
|
74
|
+
|
75
|
+
def __init__(self, layout_manager: LayoutManagerWidget, reference_widget: QWidget, parent=None):
|
76
|
+
super().__init__(parent)
|
77
|
+
self.layout_manager = layout_manager
|
78
|
+
self.reference_widget = reference_widget
|
79
|
+
self.animations = {}
|
80
|
+
self.panels = {}
|
81
|
+
self.direction_settings = {
|
82
|
+
"left": {"property": b"maximumWidth", "default_size": 200},
|
83
|
+
"right": {"property": b"maximumWidth", "default_size": 200},
|
84
|
+
"top": {"property": b"maximumHeight", "default_size": 150},
|
85
|
+
"bottom": {"property": b"maximumHeight", "default_size": 150},
|
86
|
+
}
|
87
|
+
|
88
|
+
def add_panel(
|
89
|
+
self,
|
90
|
+
direction: Literal["left", "right", "top", "bottom"],
|
91
|
+
panel_widget: QWidget,
|
92
|
+
target_size: int | None = None,
|
93
|
+
duration: int = 300,
|
94
|
+
):
|
95
|
+
"""
|
96
|
+
Add a panel widget to the layout manager.
|
97
|
+
|
98
|
+
Args:
|
99
|
+
direction(Literal["left", "right", "top", "bottom"]): Direction of the panel.
|
100
|
+
panel_widget(QWidget): The panel widget to add.
|
101
|
+
target_size(int, optional): The target size of the panel. Defaults to None.
|
102
|
+
duration(int): The duration of the animation in milliseconds. Defaults to 300.
|
103
|
+
"""
|
104
|
+
if direction not in self.direction_settings:
|
105
|
+
raise ValueError("Direction must be one of 'left', 'right', 'top', 'bottom'.")
|
106
|
+
|
107
|
+
if target_size is None:
|
108
|
+
target_size = self.direction_settings[direction]["default_size"]
|
109
|
+
|
110
|
+
self.layout_manager.add_widget_relative(
|
111
|
+
widget=panel_widget, reference_widget=self.reference_widget, position=direction
|
112
|
+
)
|
113
|
+
panel_widget.setVisible(False)
|
114
|
+
|
115
|
+
# Set initial constraints as flexible
|
116
|
+
if direction in ["left", "right"]:
|
117
|
+
panel_widget.setMaximumWidth(0)
|
118
|
+
panel_widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
|
119
|
+
else:
|
120
|
+
panel_widget.setMaximumHeight(0)
|
121
|
+
panel_widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
|
122
|
+
|
123
|
+
self.panels[direction] = {
|
124
|
+
"widget": panel_widget,
|
125
|
+
"direction": direction,
|
126
|
+
"target_size": target_size,
|
127
|
+
"duration": duration,
|
128
|
+
"animator": None,
|
129
|
+
}
|
130
|
+
|
131
|
+
def toggle_panel(
|
132
|
+
self,
|
133
|
+
direction: Literal["left", "right", "top", "bottom"],
|
134
|
+
target_size: int | None = None,
|
135
|
+
duration: int | None = None,
|
136
|
+
easing_curve: QEasingCurve = QEasingCurve.InOutQuad,
|
137
|
+
ensure_max: bool = False,
|
138
|
+
scale: float | None = None,
|
139
|
+
animation: bool = True,
|
140
|
+
):
|
141
|
+
"""
|
142
|
+
Toggle the specified panel.
|
143
|
+
|
144
|
+
Parameters:
|
145
|
+
direction (Literal["left", "right", "top", "bottom"]): Direction of the panel to toggle.
|
146
|
+
target_size (int, optional): Override target size for this toggle.
|
147
|
+
duration (int, optional): Override the animation duration.
|
148
|
+
easing_curve (QEasingCurve): Animation easing curve.
|
149
|
+
ensure_max (bool): If True, animate as a fixed-size panel.
|
150
|
+
scale (float, optional): If provided, calculate target_size from main widget size.
|
151
|
+
animation (bool): If False, no animation is performed; panel instantly toggles.
|
152
|
+
"""
|
153
|
+
if direction not in self.panels:
|
154
|
+
raise ValueError(f"No panel found in direction '{direction}'.")
|
155
|
+
|
156
|
+
panel_info = self.panels[direction]
|
157
|
+
panel_widget = panel_info["widget"]
|
158
|
+
dir_settings = self.direction_settings[direction]
|
159
|
+
|
160
|
+
# Determine final target size
|
161
|
+
if scale is not None:
|
162
|
+
main_rect = self.reference_widget.geometry()
|
163
|
+
if direction in ["left", "right"]:
|
164
|
+
computed_target = int(main_rect.width() * scale)
|
165
|
+
else:
|
166
|
+
computed_target = int(main_rect.height() * scale)
|
167
|
+
final_target_size = computed_target
|
168
|
+
else:
|
169
|
+
if target_size is None:
|
170
|
+
final_target_size = panel_info["target_size"]
|
171
|
+
else:
|
172
|
+
final_target_size = target_size
|
173
|
+
|
174
|
+
if duration is None:
|
175
|
+
duration = panel_info["duration"]
|
176
|
+
|
177
|
+
expanding_property = dir_settings["property"]
|
178
|
+
currently_visible = panel_widget.isVisible()
|
179
|
+
|
180
|
+
if ensure_max:
|
181
|
+
if panel_info["animator"] is None:
|
182
|
+
panel_info["animator"] = DimensionAnimator(panel_widget, direction)
|
183
|
+
animator = panel_info["animator"]
|
184
|
+
|
185
|
+
if direction in ["left", "right"]:
|
186
|
+
prop_name = b"panel_width"
|
187
|
+
else:
|
188
|
+
prop_name = b"panel_height"
|
189
|
+
else:
|
190
|
+
animator = None
|
191
|
+
prop_name = expanding_property
|
192
|
+
|
193
|
+
if currently_visible:
|
194
|
+
# Hide the panel
|
195
|
+
if ensure_max:
|
196
|
+
start_value = final_target_size
|
197
|
+
end_value = 0
|
198
|
+
finish_callback = lambda w=panel_widget, d=direction: self._after_hide_reset(w, d)
|
199
|
+
else:
|
200
|
+
start_value = (
|
201
|
+
panel_widget.width()
|
202
|
+
if direction in ["left", "right"]
|
203
|
+
else panel_widget.height()
|
204
|
+
)
|
205
|
+
end_value = 0
|
206
|
+
finish_callback = lambda w=panel_widget: w.setVisible(False)
|
207
|
+
else:
|
208
|
+
# Show the panel
|
209
|
+
start_value = 0
|
210
|
+
end_value = final_target_size
|
211
|
+
finish_callback = None
|
212
|
+
if ensure_max:
|
213
|
+
# Fix panel exactly
|
214
|
+
if direction in ["left", "right"]:
|
215
|
+
panel_widget.setMinimumWidth(0)
|
216
|
+
panel_widget.setMaximumWidth(final_target_size)
|
217
|
+
panel_widget.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Expanding)
|
218
|
+
else:
|
219
|
+
panel_widget.setMinimumHeight(0)
|
220
|
+
panel_widget.setMaximumHeight(final_target_size)
|
221
|
+
panel_widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
|
222
|
+
else:
|
223
|
+
# Flexible mode
|
224
|
+
if direction in ["left", "right"]:
|
225
|
+
panel_widget.setMinimumWidth(0)
|
226
|
+
panel_widget.setMaximumWidth(final_target_size)
|
227
|
+
panel_widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
|
228
|
+
else:
|
229
|
+
panel_widget.setMinimumHeight(0)
|
230
|
+
panel_widget.setMaximumHeight(final_target_size)
|
231
|
+
panel_widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
|
232
|
+
|
233
|
+
panel_widget.setVisible(True)
|
234
|
+
|
235
|
+
if not animation:
|
236
|
+
# No animation: instantly set final state
|
237
|
+
if end_value == 0:
|
238
|
+
# Hiding
|
239
|
+
if ensure_max:
|
240
|
+
# Reset after hide
|
241
|
+
self._after_hide_reset(panel_widget, direction)
|
242
|
+
else:
|
243
|
+
panel_widget.setVisible(False)
|
244
|
+
else:
|
245
|
+
# Showing
|
246
|
+
if ensure_max:
|
247
|
+
# Already set fixed size
|
248
|
+
if direction in ["left", "right"]:
|
249
|
+
panel_widget.setFixedWidth(end_value)
|
250
|
+
else:
|
251
|
+
panel_widget.setFixedHeight(end_value)
|
252
|
+
else:
|
253
|
+
# Just set maximum dimension
|
254
|
+
if direction in ["left", "right"]:
|
255
|
+
panel_widget.setMaximumWidth(end_value)
|
256
|
+
else:
|
257
|
+
panel_widget.setMaximumHeight(end_value)
|
258
|
+
return
|
259
|
+
|
260
|
+
# With animation
|
261
|
+
animation = QPropertyAnimation(animator if ensure_max else panel_widget, prop_name)
|
262
|
+
animation.setDuration(duration)
|
263
|
+
animation.setStartValue(start_value)
|
264
|
+
animation.setEndValue(end_value)
|
265
|
+
animation.setEasingCurve(easing_curve)
|
266
|
+
|
267
|
+
if end_value == 0 and finish_callback:
|
268
|
+
animation.finished.connect(finish_callback)
|
269
|
+
elif end_value == 0 and not finish_callback:
|
270
|
+
animation.finished.connect(lambda w=panel_widget: w.setVisible(False))
|
271
|
+
|
272
|
+
animation.start()
|
273
|
+
self.animations[panel_widget] = animation
|
274
|
+
|
275
|
+
@typechecked
|
276
|
+
def _after_hide_reset(
|
277
|
+
self, panel_widget: QWidget, direction: Literal["left", "right", "top", "bottom"]
|
278
|
+
):
|
279
|
+
"""
|
280
|
+
Reset the panel widget after hiding it in ensure_max mode.
|
281
|
+
|
282
|
+
Args:
|
283
|
+
panel_widget(QWidget): The panel widget to reset.
|
284
|
+
direction(Literal["left", "right", "top", "bottom"]): The direction of the panel.
|
285
|
+
"""
|
286
|
+
# Called after hiding a panel in ensure_max mode
|
287
|
+
panel_widget.setVisible(False)
|
288
|
+
if direction in ["left", "right"]:
|
289
|
+
panel_widget.setMinimumWidth(0)
|
290
|
+
panel_widget.setMaximumWidth(0)
|
291
|
+
panel_widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
|
292
|
+
else:
|
293
|
+
panel_widget.setMinimumHeight(0)
|
294
|
+
panel_widget.setMaximumHeight(16777215)
|
295
|
+
panel_widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
|
296
|
+
|
297
|
+
|
298
|
+
####################################################################################################
|
299
|
+
# The following code is for the GUI control panel to interact with the CollapsiblePanelManager.
|
300
|
+
# It is not covered by any tests as it serves only as an example for the CollapsiblePanelManager class.
|
301
|
+
####################################################################################################
|
302
|
+
|
303
|
+
|
304
|
+
class MainWindow(QMainWindow): # pragma: no cover
|
305
|
+
def __init__(self):
|
306
|
+
super().__init__()
|
307
|
+
self.setWindowTitle("Panels with ensure_max, scale, and animation toggle")
|
308
|
+
self.resize(800, 600)
|
309
|
+
|
310
|
+
central_widget = QWidget()
|
311
|
+
self.setCentralWidget(central_widget)
|
312
|
+
main_layout = QVBoxLayout(central_widget)
|
313
|
+
main_layout.setContentsMargins(10, 10, 10, 10)
|
314
|
+
main_layout.setSpacing(10)
|
315
|
+
|
316
|
+
# Buttons
|
317
|
+
buttons_layout = QHBoxLayout()
|
318
|
+
self.btn_left = QPushButton("Toggle Left (ensure_max=True)")
|
319
|
+
self.btn_top = QPushButton("Toggle Top (scale=0.5, no animation)")
|
320
|
+
self.btn_right = QPushButton("Toggle Right (ensure_max=True, scale=0.3)")
|
321
|
+
self.btn_bottom = QPushButton("Toggle Bottom (no animation)")
|
322
|
+
|
323
|
+
buttons_layout.addWidget(self.btn_left)
|
324
|
+
buttons_layout.addWidget(self.btn_top)
|
325
|
+
buttons_layout.addWidget(self.btn_right)
|
326
|
+
buttons_layout.addWidget(self.btn_bottom)
|
327
|
+
|
328
|
+
main_layout.addLayout(buttons_layout)
|
329
|
+
|
330
|
+
self.layout_manager = LayoutManagerWidget()
|
331
|
+
main_layout.addWidget(self.layout_manager)
|
332
|
+
|
333
|
+
# Main widget
|
334
|
+
self.main_plot = pg.PlotWidget()
|
335
|
+
self.main_plot.plot([1, 2, 3, 4], [4, 3, 2, 1])
|
336
|
+
self.layout_manager.add_widget(self.main_plot, 0, 0)
|
337
|
+
|
338
|
+
self.panel_manager = CollapsiblePanelManager(self.layout_manager, self.main_plot)
|
339
|
+
|
340
|
+
# Panels
|
341
|
+
self.left_panel = pg.PlotWidget()
|
342
|
+
self.left_panel.plot([1, 2, 3], [3, 2, 1])
|
343
|
+
self.panel_manager.add_panel("left", self.left_panel, target_size=200)
|
344
|
+
|
345
|
+
self.right_panel = pg.PlotWidget()
|
346
|
+
self.right_panel.plot([10, 20, 30], [1, 10, 1])
|
347
|
+
self.panel_manager.add_panel("right", self.right_panel, target_size=200)
|
348
|
+
|
349
|
+
self.top_panel = pg.PlotWidget()
|
350
|
+
self.top_panel.plot([1, 2, 3], [1, 2, 3])
|
351
|
+
self.panel_manager.add_panel("top", self.top_panel, target_size=150)
|
352
|
+
|
353
|
+
self.bottom_panel = pg.PlotWidget()
|
354
|
+
self.bottom_panel.plot([2, 4, 6], [10, 5, 10])
|
355
|
+
self.panel_manager.add_panel("bottom", self.bottom_panel, target_size=150)
|
356
|
+
|
357
|
+
# Connect buttons
|
358
|
+
# Left with ensure_max
|
359
|
+
self.btn_left.clicked.connect(
|
360
|
+
lambda: self.panel_manager.toggle_panel("left", ensure_max=True)
|
361
|
+
)
|
362
|
+
# Top with scale=0.5 and no animation
|
363
|
+
self.btn_top.clicked.connect(
|
364
|
+
lambda: self.panel_manager.toggle_panel("top", scale=0.5, animation=False)
|
365
|
+
)
|
366
|
+
# Right with ensure_max, scale=0.3
|
367
|
+
self.btn_right.clicked.connect(
|
368
|
+
lambda: self.panel_manager.toggle_panel("right", ensure_max=True, scale=0.3)
|
369
|
+
)
|
370
|
+
# Bottom no animation
|
371
|
+
self.btn_bottom.clicked.connect(
|
372
|
+
lambda: self.panel_manager.toggle_panel("bottom", target_size=100, animation=False)
|
373
|
+
)
|
374
|
+
|
375
|
+
|
376
|
+
if __name__ == "__main__": # pragma: no cover
|
377
|
+
app = QApplication(sys.argv)
|
378
|
+
w = MainWindow()
|
379
|
+
w.show()
|
380
|
+
sys.exit(app.exec())
|
@@ -408,9 +408,9 @@ class LayoutManagerWidget(QWidget):
|
|
408
408
|
|
409
409
|
def remove(
|
410
410
|
self,
|
411
|
-
row:
|
412
|
-
col:
|
413
|
-
coordinates:
|
411
|
+
row: int | None = None,
|
412
|
+
col: int | None = None,
|
413
|
+
coordinates: Tuple[int, int] | None = None,
|
414
414
|
) -> None:
|
415
415
|
"""
|
416
416
|
Remove a widget from the layout. Can be removed by widget ID or by coordinates.
|
File without changes
|
File without changes
|
File without changes
|
{bec_widgets-1.10.0 → bec_widgets-1.11.0}/.gitlab/issue_templates/documentation_update_template.md
RENAMED
File without changes
|
{bec_widgets-1.10.0 → bec_widgets-1.11.0}/.gitlab/issue_templates/feature_request_template.md
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/__init__.py
RENAMED
File without changes
|
{bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/main.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/examples/plugin_example_pyside/tictactoe.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/plugin_templates/plugin.template
RENAMED
File without changes
|
{bec_widgets-1.10.0 → bec_widgets-1.11.0}/bec_widgets/utils/plugin_templates/register.template
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|