Details
-
User Story
-
Resolution: Done
-
P1: Critical
-
None
-
None
Description
The QtWidgets module includes several components that are not widget specific, and that should be moved out into a separate module, into QtGUI, or into QtCore.
Recommendations:
- Run a Qt Creator's clang checks on the code base first to identify (fix in Qt 5)
- Static invocations: Fix qApp->sendEvent() and similar to QCoreApplication::sendEvent() (reduce dependencies on QApplication)
- Use member initialization in private classes to reduce constructor #ifdefery
- Check the autotest of the class and port to Qt 5 signal slot connections and ideally also fix nullptr to get rid of things like (Class *)0.
- On no account introduce workarounds forward-declaring QtWidget classes from QtGui . This creates huge problems for Qt for Python.
- Test source compatibility by compiling Qt Designer
In conjunction with the QAction removal: it might make sense to move QShortcut out (that is, extract a QAbstractShortcut into QtGui) - depending on whether that makes sense for Quick controls (Friedemann, 6/19).
Attachments
Issue Links
- depends on
-
QTBUG-68080 we need to move popup event forwarding logic from QWidgetWindow::handleMouseEvent() to QGuiApplication
- Closed
-
QTBUG-41884 Split QSvgWidget out ot QtSvg to remove dependency on Widgets
- Closed
-
QTBUG-40040 Move Undo Framework out of widgets
- Closed
-
QTBUG-69478 Move QAction to QtGui
- Closed
-
QTBUG-79638 Move QShortcut out of QtWidgets
- Closed
- is duplicated by
-
QTBUG-66178 API to move out of Qt Widgets into Qt GUI in Qt 6
- Withdrawn
- relates to
-
QTBUG-76497 Move GraphicsView into separate module
- Closed