diff options
Diffstat (limited to 'tools/qtpy2cpp_lib/visitor.py')
-rw-r--r-- | tools/qtpy2cpp_lib/visitor.py | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/tools/qtpy2cpp_lib/visitor.py b/tools/qtpy2cpp_lib/visitor.py index e70cd1fee..a49da2e74 100644 --- a/tools/qtpy2cpp_lib/visitor.py +++ b/tools/qtpy2cpp_lib/visitor.py @@ -48,15 +48,7 @@ from .formatter import (CppFormatter, format_for_loop, format_literal, format_reference, format_start_function_call, write_import, write_import_from) from .nodedump import debug_format_node - - -_QT_STACK_CLASSES = ["QApplication", "QColorDialog", "QCoreApplication", - "QFile", "QFileDialog", "QFileInfo", "QFontDialog", - "QGuiApplication", "QIcon", "QLine", "QLineF", - "QMessageBox", "QPainter", "QPixmap", "QPoint", "QPointF", - "QQmlApplicationEngine", "QQmlComponent", "QQmlEngine", - "QQuickView", "QRect", "QRectF", "QSaveFile", "QSettings", - "QSize", "QSizeF", "QTextStream"] +from .qt import ClassFlag, qt_class_flags def _is_qt_constructor(assign_node): @@ -138,7 +130,7 @@ class ConvertVisitor(ast.NodeVisitor, CppFormatter): self.INDENT() qt_class = _is_qt_constructor(node) - on_stack = qt_class and qt_class in _QT_STACK_CLASSES + on_stack = qt_class and qt_class_flags(qt_class) & ClassFlag.INSTANTIATE_ON_STACK # Is this a free variable and not a member assignment? Instantiate # on stack or give a type |