Browse Source

Replace QScopedPointer with std::unqiue_ptr

These 2 types are very similar and we should prefer the one from C++
standard library, this reduces the number of types in our code base.

Also see:
https://stackoverflow.com/questions/40346393/should-i-use-qscopedpointer-or-stdunique-ptr#comment67966940_40346991
adaptive-webui-19844
Chocobo1 6 years ago
parent
commit
5e3fddf456
No known key found for this signature in database
GPG Key ID: 210D9C873253A68C
  1. 4
      src/app/main.cpp
  2. 8
      src/base/profile.cpp
  3. 5
      src/base/profile.h
  4. 1
      src/base/rss/rss_feed.cpp
  5. 5
      src/gui/addnewtorrentdialog.h
  6. 9
      src/gui/fspathedit.cpp
  7. 2
      src/gui/fspathedit.h

4
src/app/main.cpp

@ -30,13 +30,13 @@ @@ -30,13 +30,13 @@
#include <QtGlobal>
#include <cstdlib>
#include <memory>
#if !defined Q_OS_WIN && !defined Q_OS_HAIKU
#include <unistd.h>
#endif
#include <QDebug>
#include <QScopedPointer>
#include <QThread>
#ifndef DISABLE_GUI
@ -117,7 +117,7 @@ int main(int argc, char *argv[]) @@ -117,7 +117,7 @@ int main(int argc, char *argv[])
try {
// Create Application
const QString appId = QLatin1String("qBittorrent-") + Utils::Misc::getUserIDString();
QScopedPointer<Application> app(new Application(appId, argc, argv));
std::unique_ptr<Application> app(new Application(appId, argc, argv));
const QBtCommandLineParameters params = app->commandLineArgs();

8
src/base/profile.cpp

@ -29,8 +29,6 @@ @@ -29,8 +29,6 @@
#include "profile.h"
#include <QCoreApplication>
#include "private/profile_p.h"
Profile *Profile::m_instance = nullptr;
@ -50,14 +48,14 @@ Profile::~Profile() = default; @@ -50,14 +48,14 @@ Profile::~Profile() = default;
void Profile::initialize(const QString &rootProfilePath, const QString &configurationName,
bool convertPathsToProfileRelative)
{
QScopedPointer<Private::Profile> profile(rootProfilePath.isEmpty()
std::unique_ptr<Private::Profile> profile(rootProfilePath.isEmpty()
? static_cast<Private::Profile *>(new Private::DefaultProfile(configurationName))
: static_cast<Private::Profile *>(new Private::CustomProfile(rootProfilePath, configurationName)));
QScopedPointer<Private::PathConverter> converter(convertPathsToProfileRelative
std::unique_ptr<Private::PathConverter> converter(convertPathsToProfileRelative
? static_cast<Private::PathConverter *>(new Private::Converter(profile->baseDirectory()))
: static_cast<Private::PathConverter *>(new Private::NoConvertConverter()));
m_instance = new Profile(profile.take(), converter.take());
m_instance = new Profile(profile.release(), converter.release());
}
const Profile &Profile::instance()

5
src/base/profile.h

@ -32,7 +32,6 @@ @@ -32,7 +32,6 @@
#include <memory>
#include <QScopedPointer>
#include <QSettings>
#include <QString>
@ -78,8 +77,8 @@ private: @@ -78,8 +77,8 @@ private:
bool convertPathsToProfileRelative);
void ensureDirectoryExists(SpecialFolder folder);
QScopedPointer<Private::Profile> m_profileImpl;
QScopedPointer<Private::PathConverter> m_pathConverterImpl;
const std::unique_ptr<Private::Profile> m_profileImpl;
const std::unique_ptr<Private::PathConverter> m_pathConverterImpl;
static Profile *m_instance;
};

1
src/base/rss/rss_feed.cpp

@ -39,7 +39,6 @@ @@ -39,7 +39,6 @@
#include <QJsonDocument>
#include <QJsonObject>
#include <QJsonValue>
#include <QScopedPointer>
#include <QUrl>
#include "../asyncfilestorage.h"

5
src/gui/addnewtorrentdialog.h

@ -29,8 +29,9 @@ @@ -29,8 +29,9 @@
#ifndef ADDNEWTORRENTDIALOG_H
#define ADDNEWTORRENTDIALOG_H
#include <memory>
#include <QDialog>
#include <QScopedPointer>
#include <QShortcut>
#include "base/bittorrent/addtorrentparams.h"
@ -113,7 +114,7 @@ private: @@ -113,7 +114,7 @@ private:
BitTorrent::TorrentInfo m_torrentInfo;
QByteArray m_headerState;
int m_oldIndex;
QScopedPointer<TorrentFileGuard> m_torrentGuard;
std::unique_ptr<TorrentFileGuard> m_torrentGuard;
BitTorrent::AddTorrentParams m_torrentParams;
};

9
src/gui/fspathedit.cpp

@ -28,6 +28,8 @@ @@ -28,6 +28,8 @@
#include "fspathedit.h"
#include <memory>
#include <QAction>
#include <QApplication>
#include <QCoreApplication>
@ -74,7 +76,7 @@ class FileSystemPathEdit::FileSystemPathEditPrivate @@ -74,7 +76,7 @@ class FileSystemPathEdit::FileSystemPathEditPrivate
QString dialogCaptionOrDefault() const;
FileSystemPathEdit *q_ptr;
QScopedPointer<Private::FileEditorWithCompletion> m_editor;
std::unique_ptr<Private::FileEditorWithCompletion> m_editor;
QAction *m_browseAction;
QToolButton *m_browseBtn;
QString m_fileNameFilter;
@ -192,7 +194,10 @@ FileSystemPathEdit::FileSystemPathEdit(Private::FileEditorWithCompletion *editor @@ -192,7 +194,10 @@ FileSystemPathEdit::FileSystemPathEdit(Private::FileEditorWithCompletion *editor
connect(d->m_browseAction, &QAction::triggered, this, [this]() { this->d_func()->browseActionTriggered(); });
}
FileSystemPathEdit::~FileSystemPathEdit() = default;
FileSystemPathEdit::~FileSystemPathEdit()
{
delete d_ptr;
}
QString FileSystemPathEdit::selectedPath() const
{

2
src/gui/fspathedit.h

@ -105,7 +105,7 @@ private: @@ -105,7 +105,7 @@ private:
Q_DISABLE_COPY(FileSystemPathEdit)
class FileSystemPathEditPrivate;
Q_DECLARE_PRIVATE(FileSystemPathEdit)
QScopedPointer<FileSystemPathEditPrivate> const d_ptr;
FileSystemPathEditPrivate *d_ptr;
};
/// Widget which uses QLineEdit for path editing

Loading…
Cancel
Save