UI: Use std::unique_ptr for ui variables

Most ui variables were using std::unique_ptr, but not all.
Went through all of the UI code to find where they were manually
deleted.
This commit is contained in:
cg2121 2022-02-17 08:33:56 -06:00 committed by Jim
parent b6b696fd89
commit 7b418d5be3
11 changed files with 28 additions and 66 deletions

View File

@ -97,10 +97,7 @@ BrowserToolbar::BrowserToolbar(QWidget *parent, OBSSource source)
ui->setupUi(this); ui->setupUi(this);
} }
BrowserToolbar::~BrowserToolbar() BrowserToolbar::~BrowserToolbar() {}
{
delete ui;
}
void BrowserToolbar::on_refresh_clicked() void BrowserToolbar::on_refresh_clicked()
{ {
@ -121,10 +118,7 @@ ComboSelectToolbar::ComboSelectToolbar(QWidget *parent, OBSSource source)
ui->setupUi(this); ui->setupUi(this);
} }
ComboSelectToolbar::~ComboSelectToolbar() ComboSelectToolbar::~ComboSelectToolbar() {}
{
delete ui;
}
static int FillPropertyCombo(QComboBox *c, obs_property_t *p, static int FillPropertyCombo(QComboBox *c, obs_property_t *p,
const std::string &cur_id, bool is_int = false) const std::string &cur_id, bool is_int = false)
@ -332,10 +326,7 @@ DeviceCaptureToolbar::DeviceCaptureToolbar(QWidget *parent, OBSSource source)
ui->activateButton->setText(active ? deactivateText : activateText); ui->activateButton->setText(active ? deactivateText : activateText);
} }
DeviceCaptureToolbar::~DeviceCaptureToolbar() DeviceCaptureToolbar::~DeviceCaptureToolbar() {}
{
delete ui;
}
void DeviceCaptureToolbar::on_activateButton_clicked() void DeviceCaptureToolbar::on_activateButton_clicked()
{ {
@ -406,10 +397,7 @@ GameCaptureToolbar::GameCaptureToolbar(QWidget *parent, OBSSource source)
UpdateWindowVisibility(); UpdateWindowVisibility();
} }
GameCaptureToolbar::~GameCaptureToolbar() GameCaptureToolbar::~GameCaptureToolbar() {}
{
delete ui;
}
void GameCaptureToolbar::UpdateWindowVisibility() void GameCaptureToolbar::UpdateWindowVisibility()
{ {
@ -469,10 +457,7 @@ ImageSourceToolbar::ImageSourceToolbar(QWidget *parent, OBSSource source)
ui->path->setText(file.c_str()); ui->path->setText(file.c_str());
} }
ImageSourceToolbar::~ImageSourceToolbar() ImageSourceToolbar::~ImageSourceToolbar() {}
{
delete ui;
}
void ImageSourceToolbar::on_browse_clicked() void ImageSourceToolbar::on_browse_clicked()
{ {
@ -530,10 +515,7 @@ ColorSourceToolbar::ColorSourceToolbar(QWidget *parent, OBSSource source)
UpdateColor(); UpdateColor();
} }
ColorSourceToolbar::~ColorSourceToolbar() ColorSourceToolbar::~ColorSourceToolbar() {}
{
delete ui;
}
void ColorSourceToolbar::UpdateColor() void ColorSourceToolbar::UpdateColor()
{ {
@ -623,10 +605,7 @@ TextSourceToolbar::TextSourceToolbar(QWidget *parent, OBSSource source)
ui->text->setText(text); ui->text->setText(text);
} }
TextSourceToolbar::~TextSourceToolbar() TextSourceToolbar::~TextSourceToolbar() {}
{
delete ui;
}
void TextSourceToolbar::on_selectFont_clicked() void TextSourceToolbar::on_selectFont_clicked()
{ {

View File

@ -39,7 +39,7 @@ public slots:
class BrowserToolbar : public SourceToolbar { class BrowserToolbar : public SourceToolbar {
Q_OBJECT Q_OBJECT
Ui_BrowserSourceToolbar *ui; std::unique_ptr<Ui_BrowserSourceToolbar> ui;
public: public:
BrowserToolbar(QWidget *parent, OBSSource source); BrowserToolbar(QWidget *parent, OBSSource source);
@ -53,7 +53,7 @@ class ComboSelectToolbar : public SourceToolbar {
Q_OBJECT Q_OBJECT
protected: protected:
Ui_DeviceSelectToolbar *ui; std::unique_ptr<Ui_DeviceSelectToolbar> ui;
const char *prop_name; const char *prop_name;
bool is_int = false; bool is_int = false;
@ -95,7 +95,7 @@ class DeviceCaptureToolbar : public QWidget {
OBSWeakSource weakSource; OBSWeakSource weakSource;
Ui_DeviceSelectToolbar *ui; std::unique_ptr<Ui_DeviceSelectToolbar> ui;
const char *activateText; const char *activateText;
const char *deactivateText; const char *deactivateText;
bool active; bool active;
@ -111,7 +111,7 @@ public slots:
class GameCaptureToolbar : public SourceToolbar { class GameCaptureToolbar : public SourceToolbar {
Q_OBJECT Q_OBJECT
Ui_GameCaptureToolbar *ui; std::unique_ptr<Ui_GameCaptureToolbar> ui;
void UpdateWindowVisibility(); void UpdateWindowVisibility();
@ -127,7 +127,7 @@ public slots:
class ImageSourceToolbar : public SourceToolbar { class ImageSourceToolbar : public SourceToolbar {
Q_OBJECT Q_OBJECT
Ui_ImageSourceToolbar *ui; std::unique_ptr<Ui_ImageSourceToolbar> ui;
public: public:
ImageSourceToolbar(QWidget *parent, OBSSource source); ImageSourceToolbar(QWidget *parent, OBSSource source);
@ -140,7 +140,7 @@ public slots:
class ColorSourceToolbar : public SourceToolbar { class ColorSourceToolbar : public SourceToolbar {
Q_OBJECT Q_OBJECT
Ui_ColorSourceToolbar *ui; std::unique_ptr<Ui_ColorSourceToolbar> ui;
QColor color; QColor color;
void UpdateColor(); void UpdateColor();
@ -156,7 +156,7 @@ public slots:
class TextSourceToolbar : public SourceToolbar { class TextSourceToolbar : public SourceToolbar {
Q_OBJECT Q_OBJECT
Ui_TextSourceToolbar *ui; std::unique_ptr<Ui_TextSourceToolbar> ui;
QFont font; QFont font;
QColor color; QColor color;

View File

@ -218,8 +218,6 @@ ScriptsTool::~ScriptsTool()
config_t *global_config = obs_frontend_get_global_config(); config_t *global_config = obs_frontend_get_global_config();
config_set_int(global_config, "scripts-tool", "prevScriptRow", config_set_int(global_config, "scripts-tool", "prevScriptRow",
ui->scripts->currentRow()); ui->scripts->currentRow());
delete ui;
} }
void ScriptsTool::RemoveScript(const char *path) void ScriptsTool::RemoveScript(const char *path)

View File

@ -2,6 +2,7 @@
#include <QWidget> #include <QWidget>
#include <QString> #include <QString>
#include <memory>
class Ui_ScriptsTool; class Ui_ScriptsTool;
@ -27,7 +28,7 @@ public slots:
class ScriptsTool : public QWidget { class ScriptsTool : public QWidget {
Q_OBJECT Q_OBJECT
Ui_ScriptsTool *ui; std::unique_ptr<Ui_ScriptsTool> ui;
QWidget *propertiesView = nullptr; QWidget *propertiesView = nullptr;
public: public:

View File

@ -76,10 +76,7 @@ MediaControls::MediaControls(QWidget *parent)
addAction(sliderBack); addAction(sliderBack);
} }
MediaControls::~MediaControls() MediaControls::~MediaControls() {}
{
delete ui;
}
bool MediaControls::MediaPaused() bool MediaControls::MediaPaused()
{ {

View File

@ -34,7 +34,7 @@ private:
static void OBSMediaPause(void *data, calldata_t *calldata); static void OBSMediaPause(void *data, calldata_t *calldata);
static void OBSMediaStarted(void *data, calldata_t *calldata); static void OBSMediaStarted(void *data, calldata_t *calldata);
Ui_MediaControls *ui; std::unique_ptr<Ui_MediaControls> ui;
private slots: private slots:
void on_playPauseButton_clicked(); void on_playPauseButton_clicked();

View File

@ -1175,8 +1175,6 @@ AutoConfigTestPage::AutoConfigTestPage(QWidget *parent)
AutoConfigTestPage::~AutoConfigTestPage() AutoConfigTestPage::~AutoConfigTestPage()
{ {
delete ui;
if (testThread.joinable()) { if (testThread.joinable()) {
{ {
unique_lock<mutex> ul(m); unique_lock<mutex> ul(m);

View File

@ -86,10 +86,7 @@ AutoConfigStartPage::AutoConfigStartPage(QWidget *parent)
} }
} }
AutoConfigStartPage::~AutoConfigStartPage() AutoConfigStartPage::~AutoConfigStartPage() {}
{
delete ui;
}
int AutoConfigStartPage::nextId() const int AutoConfigStartPage::nextId() const
{ {
@ -191,10 +188,7 @@ AutoConfigVideoPage::AutoConfigVideoPage(QWidget *parent)
ui->canvasRes->setCurrentIndex(0); ui->canvasRes->setCurrentIndex(0);
} }
AutoConfigVideoPage::~AutoConfigVideoPage() AutoConfigVideoPage::~AutoConfigVideoPage() {}
{
delete ui;
}
int AutoConfigVideoPage::nextId() const int AutoConfigVideoPage::nextId() const
{ {
@ -316,10 +310,7 @@ AutoConfigStreamPage::AutoConfigStreamPage(QWidget *parent)
SLOT(UpdateCompleted())); SLOT(UpdateCompleted()));
} }
AutoConfigStreamPage::~AutoConfigStreamPage() AutoConfigStreamPage::~AutoConfigStreamPage() {}
{
delete ui;
}
bool AutoConfigStreamPage::isComplete() const bool AutoConfigStreamPage::isComplete() const
{ {

View File

@ -129,7 +129,7 @@ class AutoConfigStartPage : public QWizardPage {
friend class AutoConfig; friend class AutoConfig;
Ui_AutoConfigStartPage *ui; std::unique_ptr<Ui_AutoConfigStartPage> ui;
public: public:
AutoConfigStartPage(QWidget *parent = nullptr); AutoConfigStartPage(QWidget *parent = nullptr);
@ -148,7 +148,7 @@ class AutoConfigVideoPage : public QWizardPage {
friend class AutoConfig; friend class AutoConfig;
Ui_AutoConfigVideoPage *ui; std::unique_ptr<Ui_AutoConfigVideoPage> ui;
public: public:
AutoConfigVideoPage(QWidget *parent = nullptr); AutoConfigVideoPage(QWidget *parent = nullptr);
@ -170,7 +170,7 @@ class AutoConfigStreamPage : public QWizardPage {
std::shared_ptr<Auth> auth; std::shared_ptr<Auth> auth;
Ui_AutoConfigStreamPage *ui; std::unique_ptr<Ui_AutoConfigStreamPage> ui;
QString lastService; QString lastService;
bool ready = false; bool ready = false;
@ -209,7 +209,7 @@ class AutoConfigTestPage : public QWizardPage {
QPointer<QFormLayout> results; QPointer<QFormLayout> results;
Ui_AutoConfigTestPage *ui; std::unique_ptr<Ui_AutoConfigTestPage> ui;
std::thread testThread; std::thread testThread;
std::condition_variable cv; std::condition_variable cv;
std::mutex m; std::mutex m;

View File

@ -440,10 +440,7 @@ OBSExtraBrowsers::OBSExtraBrowsers(QWidget *parent)
QAbstractItemView::EditTrigger::CurrentChanged); QAbstractItemView::EditTrigger::CurrentChanged);
} }
OBSExtraBrowsers::~OBSExtraBrowsers() OBSExtraBrowsers::~OBSExtraBrowsers() {}
{
delete ui;
}
void OBSExtraBrowsers::closeEvent(QCloseEvent *event) void OBSExtraBrowsers::closeEvent(QCloseEvent *event)
{ {

View File

@ -4,6 +4,7 @@
#include <QScopedPointer> #include <QScopedPointer>
#include <QAbstractTableModel> #include <QAbstractTableModel>
#include <QStyledItemDelegate> #include <QStyledItemDelegate>
#include <memory>
class Ui_OBSExtraBrowsers; class Ui_OBSExtraBrowsers;
class ExtraBrowsersModel; class ExtraBrowsersModel;
@ -13,7 +14,7 @@ class QCefWidget;
class OBSExtraBrowsers : public QDialog { class OBSExtraBrowsers : public QDialog {
Q_OBJECT Q_OBJECT
Ui_OBSExtraBrowsers *ui; std::unique_ptr<Ui_OBSExtraBrowsers> ui;
ExtraBrowsersModel *model; ExtraBrowsersModel *model;
public: public: