From db70442cc21247d20e6f6ad78ad0e1d3aca24bf7 Mon Sep 17 00:00:00 2001 From: appel_c Date: Thu, 30 Jan 2025 16:21:12 +0100 Subject: [PATCH] fix(signal_combo_box): added missing plugin modules for signal line_edit/combobox --- .../register_signal_combo_box.py | 17 ++++++ .../signal_combo_box.pyproject | 1 + .../signal_combo_box_plugin.py | 54 +++++++++++++++++++ .../signal_line_edit_plugin.py | 2 +- 4 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 bec_widgets/widgets/control/device_input/signal_combobox/register_signal_combo_box.py create mode 100644 bec_widgets/widgets/control/device_input/signal_combobox/signal_combo_box.pyproject create mode 100644 bec_widgets/widgets/control/device_input/signal_combobox/signal_combo_box_plugin.py diff --git a/bec_widgets/widgets/control/device_input/signal_combobox/register_signal_combo_box.py b/bec_widgets/widgets/control/device_input/signal_combobox/register_signal_combo_box.py new file mode 100644 index 00000000..907cb6a6 --- /dev/null +++ b/bec_widgets/widgets/control/device_input/signal_combobox/register_signal_combo_box.py @@ -0,0 +1,17 @@ +def main(): # pragma: no cover + from qtpy import PYSIDE6 + + if not PYSIDE6: + print("PYSIDE6 is not available in the environment. Cannot patch designer.") + return + from PySide6.QtDesigner import QPyDesignerCustomWidgetCollection + + from bec_widgets.widgets.control.device_input.signal_combobox.signal_combo_box_plugin import ( + SignalComboBoxPlugin, + ) + + QPyDesignerCustomWidgetCollection.addCustomWidget(SignalComboBoxPlugin()) + + +if __name__ == "__main__": # pragma: no cover + main() diff --git a/bec_widgets/widgets/control/device_input/signal_combobox/signal_combo_box.pyproject b/bec_widgets/widgets/control/device_input/signal_combobox/signal_combo_box.pyproject new file mode 100644 index 00000000..200f7e21 --- /dev/null +++ b/bec_widgets/widgets/control/device_input/signal_combobox/signal_combo_box.pyproject @@ -0,0 +1 @@ +{'files': ['signal_combobox.py']} \ No newline at end of file diff --git a/bec_widgets/widgets/control/device_input/signal_combobox/signal_combo_box_plugin.py b/bec_widgets/widgets/control/device_input/signal_combobox/signal_combo_box_plugin.py new file mode 100644 index 00000000..e8f77b79 --- /dev/null +++ b/bec_widgets/widgets/control/device_input/signal_combobox/signal_combo_box_plugin.py @@ -0,0 +1,54 @@ +# Copyright (C) 2022 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +from qtpy.QtDesigner import QDesignerCustomWidgetInterface + +from bec_widgets.utils.bec_designer import designer_material_icon +from bec_widgets.widgets.control.device_input.signal_combobox.signal_combobox import SignalComboBox + +DOM_XML = """ + + + + +""" + + +class SignalComboBoxPlugin(QDesignerCustomWidgetInterface): # pragma: no cover + def __init__(self): + super().__init__() + self._form_editor = None + + def createWidget(self, parent): + t = SignalComboBox(parent) + return t + + def domXml(self): + return DOM_XML + + def group(self): + return "BEC Input Widgets" + + def icon(self): + return designer_material_icon(SignalComboBox.ICON_NAME) + + def includeFile(self): + return "signal_combo_box" + + def initialize(self, form_editor): + self._form_editor = form_editor + + def isContainer(self): + return False + + def isInitialized(self): + return self._form_editor is not None + + def name(self): + return "SignalComboBox" + + def toolTip(self): + return "Signal ComboBox Example for BEC Widgets with autocomplete." + + def whatsThis(self): + return self.toolTip() diff --git a/bec_widgets/widgets/control/device_input/signal_line_edit/signal_line_edit_plugin.py b/bec_widgets/widgets/control/device_input/signal_line_edit/signal_line_edit_plugin.py index dde9db18..8238c35d 100644 --- a/bec_widgets/widgets/control/device_input/signal_line_edit/signal_line_edit_plugin.py +++ b/bec_widgets/widgets/control/device_input/signal_line_edit/signal_line_edit_plugin.py @@ -50,7 +50,7 @@ class SignalLineEditPlugin(QDesignerCustomWidgetInterface): # pragma: no cover return "SignalLineEdit" def toolTip(self): - return "" + return "Signal LineEdit Example for BEC Widgets with autocomplete." def whatsThis(self): return self.toolTip()