diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2020-12-13 13:44:44 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2020-12-17 13:03:56 -0800 |
commit | dc37ba7758a34fb9d5dd840d41902621030fec32 (patch) | |
tree | aa046e96fe4179a5f4f5c4506ecabe2d05323180 /desktop-widgets | |
parent | fa6eb6144bc756380c4148d05a67a99b0ac25ef3 (diff) | |
download | subsurface-dc37ba7758a34fb9d5dd840d41902621030fec32.tar.gz |
cleanup: remove QPointer instances
QPointer is a strange "smart" pointer class, which resets itself
when the pointed-to QObject is deleted. It does this by listening
to the corresponding signal and therefore is surprisingly heavy
for a plain pointer. A cynic would say that the existence of
QPointer is an expression of Qt's broken ownership model.
In any case, QPointer was only used at two places, were it was
100% useless: As a parameter to a function and as a locally scoped
pointer. It only makes sense if
a) there is a chance that the object disappears during the pointer's
lifetime and
b) it is actually checked for null before use
None of which was the case here. Remove.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'desktop-widgets')
-rw-r--r-- | desktop-widgets/btdeviceselectiondialog.h | 1 | ||||
-rw-r--r-- | desktop-widgets/printer.cpp | 4 | ||||
-rw-r--r-- | desktop-widgets/printer.h | 2 |
3 files changed, 3 insertions, 4 deletions
diff --git a/desktop-widgets/btdeviceselectiondialog.h b/desktop-widgets/btdeviceselectiondialog.h index ebdc53b7d..62cd0eb56 100644 --- a/desktop-widgets/btdeviceselectiondialog.h +++ b/desktop-widgets/btdeviceselectiondialog.h @@ -4,7 +4,6 @@ #include <QDialog> #include <QListWidgetItem> -#include <QPointer> #include <QtBluetooth/QBluetoothLocalDevice> #include <QtBluetooth/QBluetoothDeviceDiscoveryAgent> diff --git a/desktop-widgets/printer.cpp b/desktop-widgets/printer.cpp index 93155daa3..f38b661c5 100644 --- a/desktop-widgets/printer.cpp +++ b/desktop-widgets/printer.cpp @@ -31,7 +31,7 @@ Printer::~Printer() } void Printer::putProfileImage(const QRect &profilePlaceholder, const QRect &viewPort, QPainter *painter, - struct dive *dive, QPointer<ProfileWidget2> profile) + struct dive *dive, ProfileWidget2 *profile) { int x = profilePlaceholder.x() - viewPort.x(); int y = profilePlaceholder.y() - viewPort.y(); @@ -125,7 +125,7 @@ void Printer::flowRender() void Printer::render(int Pages = 0) { // keep original preferences - QPointer<ProfileWidget2> profile = MainWindow::instance()->graphics; + ProfileWidget2 *profile = MainWindow::instance()->graphics; int profileFrameStyle = profile->frameStyle(); int animationOriginal = qPrefDisplay::animation_speed(); double fontScale = profile->getFontPrintScale(); diff --git a/desktop-widgets/printer.h b/desktop-widgets/printer.h index 5c9fc661b..8030e9f75 100644 --- a/desktop-widgets/printer.h +++ b/desktop-widgets/printer.h @@ -32,7 +32,7 @@ private: void render(int Pages); void flowRender(); void putProfileImage(const QRect &box, const QRect &viewPort, QPainter *painter, - struct dive *dive, QPointer<ProfileWidget2> profile); + struct dive *dive, ProfileWidget2 *profile); private slots: void templateProgessUpdated(int value); |