From d0b2e5946696176af00c9947bd087c350be7f3d8 Mon Sep 17 00:00:00 2001 From: Florian Vahl <7vahl@informatik.uni-hamburg.de> Date: Tue, 13 Feb 2024 20:20:17 +0100 Subject: [PATCH] Use PyQt5 for GUI This enables type support for GUI components --- .../dsd_follower.py | 5 +---- .../dsd_visualization_plugin.py | 10 +++++----- .../interactive_graphics_view.py | 6 +++--- dynamic_stack_decider_visualization/package.xml | 9 ++++----- 4 files changed, 13 insertions(+), 17 deletions(-) diff --git a/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/dsd_follower.py b/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/dsd_follower.py index e77b6f2..442666e 100644 --- a/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/dsd_follower.py +++ b/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/dsd_follower.py @@ -3,7 +3,7 @@ from typing import Optional, Union import pydot -from python_qt_binding.QtGui import QStandardItem, QStandardItemModel +from PyQt5.QtGui import QStandardItem, QStandardItemModel from rclpy.node import Node from rclpy.qos import DurabilityPolicy, QoSProfile from std_msgs.msg import String @@ -254,9 +254,6 @@ def _append_debug_data_to_item( ): """ Appends debug_data of a given element and its children to a QStandardItem. - - :type parent_item: python_qt_binding.QtGui.QStandardItem - :type debug_data: dict or list or int or float or str or bool """ if isinstance(debug_data, list): for i, data in enumerate(debug_data): diff --git a/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/dsd_visualization_plugin.py b/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/dsd_visualization_plugin.py index c954890..057f346 100644 --- a/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/dsd_visualization_plugin.py +++ b/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/dsd_visualization_plugin.py @@ -35,11 +35,11 @@ import pydot from ament_index_python import get_package_share_directory -from python_qt_binding import loadUi -from python_qt_binding.QtCore import Qt -from python_qt_binding.QtGui import QIcon, QPainter, QStandardItemModel -from python_qt_binding.QtSvg import QSvgGenerator -from python_qt_binding.QtWidgets import QFileDialog, QGraphicsScene, QWidget +from PyQt5.QtCore import Qt +from PyQt5.QtGui import QIcon, QPainter, QStandardItemModel +from PyQt5.QtSvg import QSvgGenerator +from PyQt5.QtWidgets import QFileDialog, QGraphicsScene, QWidget +from PyQt5.uic import loadUi from qt_dotgraph.dot_to_qt import DotToQtGenerator from qt_dotgraph.pydotfactory import PydotFactory from rclpy.node import Node diff --git a/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/interactive_graphics_view.py b/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/interactive_graphics_view.py index 441bd31..23fc567 100644 --- a/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/interactive_graphics_view.py +++ b/dynamic_stack_decider_visualization/dynamic_stack_decider_visualization/interactive_graphics_view.py @@ -29,9 +29,9 @@ # POSSIBILITY OF SUCH DAMAGE. -from python_qt_binding.QtCore import QPointF, QRectF, Qt -from python_qt_binding.QtGui import QTransform -from python_qt_binding.QtWidgets import QGraphicsView +from PyQt5.QtCore import QPointF, QRectF, Qt +from PyQt5.QtGui import QTransform +from PyQt5.QtWidgets import QGraphicsView # ruff: noqa: N802 diff --git a/dynamic_stack_decider_visualization/package.xml b/dynamic_stack_decider_visualization/package.xml index 737c83c..b3dfc4f 100644 --- a/dynamic_stack_decider_visualization/package.xml +++ b/dynamic_stack_decider_visualization/package.xml @@ -15,14 +15,13 @@ MIT - python_qt_binding - python_qt_binding + dynamic_stack_decider + python3-pyqt5 qt_dotgraph - rosgraph_msgs rclpy - rqt_gui + rosgraph_msgs rqt_gui_py - dynamic_stack_decider + rqt_gui python3-pydot