Use unique_ptr for ui objects (#31)

This commit is contained in:
Tim Siebels 2017-10-02 11:41:28 +02:00 committed by xarkes
parent e4f3569a98
commit b8bd62efe2
56 changed files with 126 additions and 180 deletions

View File

@ -1,6 +1,6 @@
#include "MainWindow.h" #include "MainWindow.h"
#include "ui_MainWindow.h" #include "ui_MainWindow.h"
#include "dialogs/CreatenewDialog.h" #include "dialogs/CreateNewDialog.h"
#include "dialogs/CommentsDialog.h" #include "dialogs/CommentsDialog.h"
#include "dialogs/AboutDialog.h" #include "dialogs/AboutDialog.h"
#include "dialogs/RenameDialog.h" #include "dialogs/RenameDialog.h"
@ -38,7 +38,7 @@
#include "utils/Highlighter.h" #include "utils/Highlighter.h"
#include "utils/HexAsciiHighlighter.h" #include "utils/HexAsciiHighlighter.h"
#include "utils/Helpers.h" #include "utils/Helpers.h"
#include "dialogs/NewfileDialog.h" #include "dialogs/NewFileDialog.h"
#include "widgets/MemoryWidget.h" #include "widgets/MemoryWidget.h"
#include "widgets/functionswidget.h" #include "widgets/functionswidget.h"
@ -84,7 +84,7 @@ static void registerCustomFonts()
MainWindow::MainWindow(QWidget *parent) : MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent), QMainWindow(parent),
core(new CutterCore()), core(new CutterCore),
memoryDock(nullptr), memoryDock(nullptr),
notepadDock(nullptr), notepadDock(nullptr),
asmDock(nullptr), asmDock(nullptr),
@ -119,7 +119,6 @@ MainWindow::MainWindow(QWidget *parent) :
MainWindow::~MainWindow() MainWindow::~MainWindow()
{ {
qDeleteAll(asmSyntaxes); qDeleteAll(asmSyntaxes);
delete ui;
delete core; delete core;
} }
@ -752,7 +751,7 @@ void MainWindow::on_actionCalculator_triggered()
void MainWindow::on_actionCreate_File_triggered() void MainWindow::on_actionCreate_File_triggered()
{ {
createNewDialog *n = new createNewDialog(this); CreateNewDialog *n = new CreateNewDialog(this);
n->exec(); n->exec();
} }

View File

@ -3,6 +3,7 @@
#include <QMainWindow> #include <QMainWindow>
#include <QList> #include <QList>
#include <memory>
#include "radarewebserver.h" #include "radarewebserver.h"
#include "cutter.h" // only needed for ut64 #include "cutter.h" // only needed for ut64
@ -44,7 +45,7 @@ class MainWindow : public QMainWindow
Q_OBJECT Q_OBJECT
public: public:
CutterCore *core; CutterCore* core;
MemoryWidget *memoryDock; MemoryWidget *memoryDock;
Notepad *notepadDock; Notepad *notepadDock;
@ -185,7 +186,7 @@ private:
ut64 hexdumpBottomOffset; ut64 hexdumpBottomOffset;
QString filename; QString filename;
QList<DockWidget *> dockWidgets; QList<DockWidget *> dockWidgets;
Ui::MainWindow *ui; std::unique_ptr<Ui::MainWindow> ui;
Highlighter *highlighter; Highlighter *highlighter;
AsciiHighlighter *hex_highlighter; AsciiHighlighter *hex_highlighter;
GraphicsBar *graphicsBar; GraphicsBar *graphicsBar;

View File

@ -34,7 +34,7 @@ void AnalThread::start(MainWindow *main, int level, QList<QString> advanced)
void AnalThread::run() void AnalThread::run()
{ {
const auto optionsDialog = dynamic_cast<OptionsDialog *>(parent()); const auto optionsDialog = dynamic_cast<OptionsDialog *>(parent());
const auto ui = optionsDialog->ui; const auto& ui = optionsDialog->ui;
int va = ui->vaCheckBox->isChecked(); int va = ui->vaCheckBox->isChecked();
ut64 loadaddr = 0LL; ut64 loadaddr = 0LL;
ut64 mapaddr = 0LL; ut64 mapaddr = 0LL;

View File

@ -62,10 +62,8 @@ SOURCES += \
utils/RichTextPainter.cpp \ utils/RichTextPainter.cpp \
dialogs/OptionsDialog.cpp \ dialogs/OptionsDialog.cpp \
dialogs/AboutDialog.cpp \ dialogs/AboutDialog.cpp \
dialogs/AsmoptionsDialog.cpp \
dialogs/CommentsDialog.cpp \ dialogs/CommentsDialog.cpp \
dialogs/FlagDialog.cpp \ dialogs/FlagDialog.cpp \
dialogs/NewfileDialog.cpp \
dialogs/RenameDialog.cpp \ dialogs/RenameDialog.cpp \
dialogs/XrefsDialog.cpp \ dialogs/XrefsDialog.cpp \
MainWindow.cpp \ MainWindow.cpp \
@ -73,8 +71,10 @@ SOURCES += \
utils/HexAsciiHighlighter.cpp \ utils/HexAsciiHighlighter.cpp \
utils/HexHighlighter.cpp \ utils/HexHighlighter.cpp \
utils/Highlighter.cpp \ utils/Highlighter.cpp \
dialogs/CreatenewDialog.cpp \ utils/MdHighlighter.cpp \
utils/MdHighlighter.cpp dialogs/AsmOptionsDialog.cpp \
dialogs/CreateNewDialog.cpp \
dialogs/NewFileDialog.cpp
HEADERS += \ HEADERS += \
widgets/pieview.h \ widgets/pieview.h \
@ -110,16 +110,16 @@ HEADERS += \
dialogs/FlagDialog.h \ dialogs/FlagDialog.h \
dialogs/RenameDialog.h \ dialogs/RenameDialog.h \
dialogs/XrefsDialog.h \ dialogs/XrefsDialog.h \
dialogs/CreatenewDialog.h \
utils/Helpers.h \ utils/Helpers.h \
utils/HexAsciiHighlighter.h \ utils/HexAsciiHighlighter.h \
utils/HexHighlighter.h \ utils/HexHighlighter.h \
MainWindow.h \ MainWindow.h \
utils/Highlighter.h \ utils/Highlighter.h \
utils/MdHighlighter.h \ utils/MdHighlighter.h \
dialogs/NewfileDialog.h \
Settings.h \ Settings.h \
dialogs/OptionsDialog.h dialogs/OptionsDialog.h \
dialogs/CreateNewDialog.h \
dialogs/NewFileDialog.h
FORMS += \ FORMS += \
widgets/notepad.ui \ widgets/notepad.ui \
@ -144,10 +144,10 @@ FORMS += \
dialogs/FlagDialog.ui \ dialogs/FlagDialog.ui \
dialogs/RenameDialog.ui \ dialogs/RenameDialog.ui \
dialogs/XrefsDialog.ui \ dialogs/XrefsDialog.ui \
dialogs/CreatenewDialog.ui \
dialogs/NewfileDialog.ui \ dialogs/NewfileDialog.ui \
dialogs/OptionsDialog.ui \ dialogs/OptionsDialog.ui \
MainWindow.ui MainWindow.ui \
dialogs/CreateNewDialog.ui
RESOURCES += \ RESOURCES += \
resources.qrc resources.qrc

View File

@ -17,10 +17,7 @@ AboutDialog::AboutDialog(QWidget *parent) :
"Hugo Teso &lt;hugo.teso@gmail.org&gt;\nSoon to be thousands more!")); "Hugo Teso &lt;hugo.teso@gmail.org&gt;\nSoon to be thousands more!"));
} }
AboutDialog::~AboutDialog() AboutDialog::~AboutDialog() {}
{
delete ui;
}
void AboutDialog::on_buttonBox_rejected() void AboutDialog::on_buttonBox_rejected()
{ {

View File

@ -2,6 +2,7 @@
#define ABOUTDIALOG_H #define ABOUTDIALOG_H
#include <QDialog> #include <QDialog>
#include <memory>
namespace Ui namespace Ui
{ {
@ -20,7 +21,7 @@ private slots:
void on_buttonBox_rejected(); void on_buttonBox_rejected();
private: private:
Ui::AboutDialog *ui; std::unique_ptr<Ui::AboutDialog> ui;
}; };
#endif // ABOUTDIALOG_H #endif // ABOUTDIALOG_H

View File

@ -5,10 +5,11 @@
#include "utils/Helpers.h" #include "utils/Helpers.h"
AsmOptionsDialog::AsmOptionsDialog(CutterCore *core, QWidget *parent) : QDialog(parent), ui(new Ui::AsmOptionsDialog) AsmOptionsDialog::AsmOptionsDialog(CutterCore *core, QWidget *parent)
: QDialog(parent),
core(core),
ui(new Ui::AsmOptionsDialog)
{ {
this->core = core;
ui->setupUi(this); ui->setupUi(this);
ui->buttonBox->addButton(tr("Save as Defaults"), QDialogButtonBox::ButtonRole::ApplyRole); ui->buttonBox->addButton(tr("Save as Defaults"), QDialogButtonBox::ButtonRole::ApplyRole);
@ -21,10 +22,7 @@ AsmOptionsDialog::AsmOptionsDialog(CutterCore *core, QWidget *parent) : QDialog(
updateFromVars(); updateFromVars();
} }
AsmOptionsDialog::~AsmOptionsDialog() AsmOptionsDialog::~AsmOptionsDialog() {}
{
delete ui;
}
void AsmOptionsDialog::updateFromVars() void AsmOptionsDialog::updateFromVars()
{ {

View File

@ -4,6 +4,7 @@
#include <QDialog> #include <QDialog>
#include <QPushButton> #include <QPushButton>
#include <memory>
#include "cutter.h" #include "cutter.h"
@ -23,7 +24,7 @@ public:
private: private:
CutterCore *core; CutterCore *core;
Ui::AsmOptionsDialog *ui; std::unique_ptr<Ui::AsmOptionsDialog> ui;
void updateFromVars(); void updateFromVars();

View File

@ -9,10 +9,7 @@ CommentsDialog::CommentsDialog(QWidget *parent) :
setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint)); setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint));
} }
CommentsDialog::~CommentsDialog() CommentsDialog::~CommentsDialog() {}
{
delete ui;
}
void CommentsDialog::on_buttonBox_accepted() void CommentsDialog::on_buttonBox_accepted()
{ {

View File

@ -2,6 +2,7 @@
#define COMMENTSDIALOG_H #define COMMENTSDIALOG_H
#include <QDialog> #include <QDialog>
#include <memory>
namespace Ui namespace Ui
{ {
@ -24,7 +25,7 @@ private slots:
void on_buttonBox_rejected(); void on_buttonBox_rejected();
private: private:
Ui::CommentsDialog *ui; std::unique_ptr<Ui::CommentsDialog> ui;
}; };
#endif // COMMENTSDIALOG_H #endif // COMMENTSDIALOG_H

View File

@ -1,37 +1,34 @@
#include <QMessageBox> #include <QMessageBox>
#include "dialogs/NewfileDialog.h" #include "dialogs/NewFileDialog.h"
#include "dialogs/CreatenewDialog.h" #include "dialogs/CreateNewDialog.h"
#include "ui_CreatenewDialog.h" #include "ui_CreateNewDialog.h"
#include "r_util.h" #include "r_util.h"
createNewDialog::createNewDialog(QWidget *parent) : CreateNewDialog::CreateNewDialog(QWidget *parent) :
QDialog(parent), QDialog(parent),
ui(new Ui::createNewDialog) ui(new Ui::CreateNewDialog),
w(new MainWindow)
{ {
ui->setupUi(this); ui->setupUi(this);
setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint)); setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint));
w = new MainWindow(nullptr);
} }
createNewDialog::~createNewDialog() CreateNewDialog::~CreateNewDialog() {}
{
delete ui;
}
void createNewDialog::on_pushButton_2_clicked() void CreateNewDialog::on_pushButton_2_clicked()
{ {
// Close dialog and open OptionsDialog // Close dialog and open OptionsDialog
close(); close();
NewFileDialog *n = new NewFileDialog(nullptr); NewFileDialog *n = new NewFileDialog(nullptr); // TODO: This leaks
n->show(); n->show();
} }
void createNewDialog::on_pushButton_3_clicked() void CreateNewDialog::on_pushButton_3_clicked()
{ {
close(); close();
} }
void createNewDialog::on_exampleButton_clicked() void CreateNewDialog::on_exampleButton_clicked()
{ {
QString type = ui->comboType->currentText(); QString type = ui->comboType->currentText();
QString str; QString str;
@ -70,7 +67,7 @@ void createNewDialog::on_exampleButton_clicked()
// } // }
} }
void createNewDialog::on_buttonCreate_clicked() void CreateNewDialog::on_buttonCreate_clicked()
{ {
RCoreLocked lcore = w->core->core(); RCoreLocked lcore = w->core->core();
QString type = ui->comboType->currentText(); QString type = ui->comboType->currentText();
@ -219,6 +216,7 @@ void createNewDialog::on_buttonCreate_clicked()
__alert("TODO: non-raw fileformat is not yet supported"); __alert("TODO: non-raw fileformat is not yet supported");
created = false; created = false;
delete w->core; delete w->core;
w->core = nullptr;
} }
if (created) if (created)

View File

@ -3,19 +3,20 @@
#include <QDialog> #include <QDialog>
#include "MainWindow.h" #include "MainWindow.h"
#include <memory>
namespace Ui namespace Ui
{ {
class createNewDialog; class CreateNewDialog;
} }
class createNewDialog : public QDialog class CreateNewDialog : public QDialog
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit createNewDialog(QWidget *parent = 0); explicit CreateNewDialog(QWidget *parent = 0);
~createNewDialog(); ~CreateNewDialog();
private slots: private slots:
void on_pushButton_2_clicked(); void on_pushButton_2_clicked();
@ -27,7 +28,7 @@ private slots:
void on_buttonCreate_clicked(); void on_buttonCreate_clicked();
private: private:
Ui::createNewDialog *ui; std::unique_ptr<Ui::CreateNewDialog> ui;
MainWindow *w; MainWindow *w;
}; };

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"> <ui version="4.0">
<class>createNewDialog</class> <class>CreateNewDialog</class>
<widget class="QDialog" name="createNewDialog"> <widget class="QDialog" name="CreateNewDialog">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>0</x> <x>0</x>
@ -42,7 +42,7 @@
<string/> <string/>
</property> </property>
<property name="pixmap"> <property name="pixmap">
<pixmap resource="resources.qrc">:/img/logo-small.png</pixmap> <pixmap>:/img/logo-small.png</pixmap>
</property> </property>
<property name="alignment"> <property name="alignment">
<set>Qt::AlignCenter</set> <set>Qt::AlignCenter</set>
@ -451,8 +451,6 @@
</item> </item>
</layout> </layout>
</widget> </widget>
<resources> <resources/>
<include location="resources.qrc"/>
</resources>
<connections/> <connections/>
</ui> </ui>

View File

@ -3,23 +3,19 @@
FlagDialog::FlagDialog(CutterCore *core, RVA offset, QWidget *parent) : FlagDialog::FlagDialog(CutterCore *core, RVA offset, QWidget *parent) :
QDialog(parent), QDialog(parent),
ui(new Ui::FlagDialog) ui(new Ui::FlagDialog),
core(core),
offset(offset)
{ {
ui->setupUi(this); ui->setupUi(this);
setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint)); setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint));
this->core = core;
this->offset = offset;
auto size_validator = new QIntValidator(ui->sizeEdit); auto size_validator = new QIntValidator(ui->sizeEdit);
size_validator->setBottom(1); size_validator->setBottom(1);
ui->sizeEdit->setValidator(size_validator); ui->sizeEdit->setValidator(size_validator);
} }
FlagDialog::~FlagDialog() FlagDialog::~FlagDialog() {}
{
delete ui;
}
void FlagDialog::on_buttonBox_accepted() void FlagDialog::on_buttonBox_accepted()
{ {

View File

@ -2,6 +2,7 @@
#define FLAGDIALOG_H #define FLAGDIALOG_H
#include <QDialog> #include <QDialog>
#include <memory>
#include "cutter.h" #include "cutter.h"
namespace Ui namespace Ui
@ -22,7 +23,7 @@ private slots:
void on_buttonBox_rejected(); void on_buttonBox_rejected();
private: private:
Ui::FlagDialog *ui; std::unique_ptr<Ui::FlagDialog> ui;
CutterCore *core; CutterCore *core;
RVA offset; RVA offset;

View File

@ -1,6 +1,6 @@
#include "OptionsDialog.h" #include "OptionsDialog.h"
#include "dialogs/CreatenewDialog.h" #include "dialogs/CreateNewDialog.h"
#include "dialogs/NewfileDialog.h" #include "dialogs/NewFileDialog.h"
#include "ui_NewfileDialog.h" #include "ui_NewfileDialog.h"
#include <QFileDialog> #include <QFileDialog>
@ -111,10 +111,7 @@ NewFileDialog::NewFileDialog(QWidget *parent) :
settings.setValue("recentFileList", files); settings.setValue("recentFileList", files);
} }
NewFileDialog::~NewFileDialog() NewFileDialog::~NewFileDialog() {}
{
delete ui;
}
void NewFileDialog::on_loadFileButton_clicked() void NewFileDialog::on_loadFileButton_clicked()
{ {
@ -214,7 +211,7 @@ void NewFileDialog::on_createButton_clicked()
{ {
// Close dialog and open create new file dialog // Close dialog and open create new file dialog
close(); close();
createNewDialog *n = new createNewDialog(nullptr); CreateNewDialog *n = new CreateNewDialog(nullptr);
n->exec(); n->exec();
} }

View File

@ -3,6 +3,7 @@
#include <QDialog> #include <QDialog>
#include <QListWidgetItem> #include <QListWidgetItem>
#include <memory>
namespace Ui namespace Ui
{ {
@ -36,7 +37,7 @@ private slots:
void on_actionClear_all_triggered(); void on_actionClear_all_triggered();
private: private:
Ui::NewFileDialog *ui; std::unique_ptr<Ui::NewFileDialog> ui;
static const int MaxRecentFiles = 5; static const int MaxRecentFiles = 5;
}; };

View File

@ -1,7 +1,7 @@
#include "OptionsDialog.h" #include "OptionsDialog.h"
#include "ui_OptionsDialog.h" #include "ui_OptionsDialog.h"
#include "MainWindow.h" #include "MainWindow.h"
#include "dialogs/NewfileDialog.h" #include "dialogs/NewFileDialog.h"
#include "utils/Helpers.h" #include "utils/Helpers.h"
// TODO: remove us // TODO: remove us
@ -66,10 +66,7 @@ OptionsDialog::OptionsDialog(MainWindow *main):
this->main->core->tryFile(fi.filePath(), fi.isWritable()); this->main->core->tryFile(fi.filePath(), fi.isWritable());
} }
OptionsDialog::~OptionsDialog() OptionsDialog::~OptionsDialog() {}
{
delete ui;
}
void OptionsDialog::updateCPUComboBox() void OptionsDialog::updateCPUComboBox()
{ {

View File

@ -3,6 +3,7 @@
#include <QDialog> #include <QDialog>
#include <QStringList> #include <QStringList>
#include <memory>
#include "cutter.h" #include "cutter.h"
#include "analthread.h" #include "analthread.h"
#include "ui_OptionsDialog.h" #include "ui_OptionsDialog.h"
@ -46,7 +47,7 @@ private:
void updateCPUComboBox(); void updateCPUComboBox();
public: public:
Ui::OptionsDialog *ui; std::unique_ptr<Ui::OptionsDialog> ui;
QString getSelectedArch(); QString getSelectedArch();
QString getSelectedCPU(); QString getSelectedCPU();
int getSelectedBits(); int getSelectedBits();

View File

@ -9,10 +9,7 @@ RenameDialog::RenameDialog(QWidget *parent) :
setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint)); setWindowFlags(windowFlags() & (~Qt::WindowContextHelpButtonHint));
} }
RenameDialog::~RenameDialog() RenameDialog::~RenameDialog() {}
{
delete ui;
}
void RenameDialog::on_buttonBox_accepted() void RenameDialog::on_buttonBox_accepted()
{ {

View File

@ -2,6 +2,7 @@
#define RENAMEDIALOG_H #define RENAMEDIALOG_H
#include <QDialog> #include <QDialog>
#include <memory>
namespace Ui namespace Ui
{ {
@ -25,7 +26,7 @@ private slots:
void on_buttonBox_rejected(); void on_buttonBox_rejected();
private: private:
Ui::RenameDialog *ui; std::unique_ptr<Ui::RenameDialog> ui;
}; };
#endif // RENAMEDIALOG_H #endif // RENAMEDIALOG_H

View File

@ -26,10 +26,7 @@ XrefsDialog::XrefsDialog(MainWindow *main, QWidget *parent) :
connect(ui->previewTextEdit, SIGNAL(cursorPositionChanged()), this, SLOT(highlightCurrentLine())); connect(ui->previewTextEdit, SIGNAL(cursorPositionChanged()), this, SLOT(highlightCurrentLine()));
} }
XrefsDialog::~XrefsDialog() XrefsDialog::~XrefsDialog() {}
{
delete ui;
}
void XrefsDialog::fillRefs(QList<XrefDescription> refs, QList<XrefDescription> xrefs) void XrefsDialog::fillRefs(QList<XrefDescription> refs, QList<XrefDescription> xrefs)
{ {

View File

@ -3,6 +3,7 @@
#include <QDialog> #include <QDialog>
#include <QTreeWidgetItem> #include <QTreeWidgetItem>
#include <memory>
#include "utils/Highlighter.h" #include "utils/Highlighter.h"
#include "cutter.h" #include "cutter.h"
@ -40,7 +41,7 @@ private:
RVA addr; RVA addr;
QString func_name; QString func_name;
Ui::XrefsDialog *ui; std::unique_ptr<Ui::XrefsDialog> ui;
MainWindow *main; MainWindow *main;
Highlighter *highlighter; Highlighter *highlighter;

View File

@ -4,7 +4,7 @@
#include <QMessageBox> #include <QMessageBox>
#include "MainWindow.h" #include "MainWindow.h"
#include "dialogs/NewfileDialog.h" #include "dialogs/NewFileDialog.h"
#include "dialogs/OptionsDialog.h" #include "dialogs/OptionsDialog.h"
int main(int argc, char *argv[]) int main(int argc, char *argv[])

View File

@ -397,10 +397,7 @@ RVA MemoryWidget::readCurrentDisassemblyOffset()
return ele.toULongLong(0, 16); return ele.toULongLong(0, 16);
} }
MemoryWidget::~MemoryWidget() MemoryWidget::~MemoryWidget() {}
{
delete ui;
}
void MemoryWidget::setup() void MemoryWidget::setup()
{ {

View File

@ -10,6 +10,7 @@
#include <QUrl> #include <QUrl>
#include <QPlainTextEdit> #include <QPlainTextEdit>
#include <QMouseEvent> #include <QMouseEvent>
#include <memory>
#include "cutter.h" #include "cutter.h"
#include "utils/Highlighter.h" #include "utils/Highlighter.h"
#include "utils/HexAsciiHighlighter.h" #include "utils/HexAsciiHighlighter.h"
@ -96,7 +97,7 @@ protected:
bool eventFilter(QObject *obj, QEvent *event) override; bool eventFilter(QObject *obj, QEvent *event) override;
private: private:
Ui::MemoryWidget *ui; std::unique_ptr<Ui::MemoryWidget> ui;
ut64 hexdumpTopOffset; ut64 hexdumpTopOffset;
ut64 hexdumpBottomOffset; ut64 hexdumpBottomOffset;

View File

@ -32,10 +32,7 @@ CommentsWidget::CommentsWidget(MainWindow *main, QWidget *parent) :
ui->frame->hide(); ui->frame->hide();
} }
CommentsWidget::~CommentsWidget() CommentsWidget::~CommentsWidget() {}
{
delete ui;
}
void CommentsWidget::setup() void CommentsWidget::setup()
{ {

View File

@ -2,6 +2,7 @@
#define COMMENTSWIDGET_H #define COMMENTSWIDGET_H
#include "dockwidget.h" #include "dockwidget.h"
#include <memory>
class MainWindow; class MainWindow;
class QTreeWidgetItem; class QTreeWidgetItem;
@ -42,7 +43,7 @@ private slots:
void refreshTree(); void refreshTree();
private: private:
Ui::CommentsWidget *ui; std::unique_ptr<Ui::CommentsWidget> ui;
MainWindow *main; MainWindow *main;
}; };

View File

@ -153,10 +153,7 @@ ConsoleWidget::ConsoleWidget(CutterCore *core, QWidget *parent) :
historyOnDown->setContext(Qt::WidgetShortcut); historyOnDown->setContext(Qt::WidgetShortcut);
} }
ConsoleWidget::~ConsoleWidget() ConsoleWidget::~ConsoleWidget() {}
{
delete ui;
}
void ConsoleWidget::addOutput(const QString &msg) void ConsoleWidget::addOutput(const QString &msg)
{ {

View File

@ -2,9 +2,9 @@
#define CONSOLEWIDGET_H #define CONSOLEWIDGET_H
#include <QWidget> #include <QWidget>
#include <memory>
class CutterCore; class CutterCore;
class QAction; class QAction;
namespace Ui namespace Ui
@ -50,7 +50,7 @@ private:
void historyAdd(const QString &input); void historyAdd(const QString &input);
void invalidateHistoryPosition(); void invalidateHistoryPosition();
Ui::ConsoleWidget *ui; std::unique_ptr<Ui::ConsoleWidget> ui;
CutterCore *core; CutterCore *core;
QList<QAction *> actions; QList<QAction *> actions;
bool debugOutputEnabled; bool debugOutputEnabled;

View File

@ -22,10 +22,7 @@ Dashboard::Dashboard(MainWindow *main, QWidget *parent) :
//this->updateContents(); //this->updateContents();
} }
Dashboard::~Dashboard() Dashboard::~Dashboard() {}
{
delete ui;
}
void Dashboard::setup() void Dashboard::setup()
{ {

View File

@ -2,6 +2,7 @@
#define DASHBOARD_H #define DASHBOARD_H
#include "dockwidget.h" #include "dockwidget.h"
#include <memory>
class MainWindow; class MainWindow;
@ -25,7 +26,7 @@ public:
private: private:
void updateContents(); void updateContents();
Ui::Dashboard *ui; std::unique_ptr<Ui::Dashboard> ui;
MainWindow *main; MainWindow *main;
}; };

View File

@ -26,10 +26,7 @@ EntrypointWidget::EntrypointWidget(MainWindow *main, QWidget *parent) :
ui->entrypointTreeWidget->hideColumn(0); ui->entrypointTreeWidget->hideColumn(0);
} }
EntrypointWidget::~EntrypointWidget() EntrypointWidget::~EntrypointWidget() {}
{
delete ui;
}
void EntrypointWidget::setup() void EntrypointWidget::setup()
{ {

View File

@ -4,6 +4,7 @@
#include "dockwidget.h" #include "dockwidget.h"
#include <QStyledItemDelegate> #include <QStyledItemDelegate>
#include <QTreeWidgetItem> #include <QTreeWidgetItem>
#include <memory>
class MainWindow; class MainWindow;
class QTreeWidget; class QTreeWidget;
@ -29,7 +30,7 @@ private slots:
void on_entrypointTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column); void on_entrypointTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column);
private: private:
Ui::EntrypointWidget *ui; std::unique_ptr<Ui::EntrypointWidget> ui;
MainWindow *main; MainWindow *main;
void fillEntrypoint(); void fillEntrypoint();

View File

@ -145,10 +145,7 @@ ExportsWidget::ExportsWidget(MainWindow *main, QWidget *parent) :
ui->exportsTreeView->sortByColumn(ExportsModel::OFFSET, Qt::AscendingOrder); ui->exportsTreeView->sortByColumn(ExportsModel::OFFSET, Qt::AscendingOrder);
} }
ExportsWidget::~ExportsWidget() ExportsWidget::~ExportsWidget() {}
{
delete ui;
}
void ExportsWidget::setup() void ExportsWidget::setup()
{ {

View File

@ -3,6 +3,7 @@
#include <QAbstractListModel> #include <QAbstractListModel>
#include <QSortFilterProxyModel> #include <QSortFilterProxyModel>
#include <memory>
#include "cutter.h" #include "cutter.h"
#include "dockwidget.h" #include "dockwidget.h"
@ -73,7 +74,7 @@ private slots:
void on_exportsTreeView_doubleClicked(const QModelIndex &index); void on_exportsTreeView_doubleClicked(const QModelIndex &index);
private: private:
Ui::ExportsWidget *ui; std::unique_ptr<Ui::ExportsWidget> ui;
MainWindow *main; MainWindow *main;
ExportsModel *exports_model; ExportsModel *exports_model;

View File

@ -140,10 +140,7 @@ FlagsWidget::FlagsWidget(MainWindow *main, QWidget *parent) :
connect(main->core, SIGNAL(flagsChanged()), this, SLOT(flagsChanged())); connect(main->core, SIGNAL(flagsChanged()), this, SLOT(flagsChanged()));
} }
FlagsWidget::~FlagsWidget() FlagsWidget::~FlagsWidget() {}
{
delete ui;
}
void FlagsWidget::setup() void FlagsWidget::setup()
{ {

View File

@ -3,6 +3,7 @@
#include <QAbstractItemModel> #include <QAbstractItemModel>
#include <QSortFilterProxyModel> #include <QSortFilterProxyModel>
#include <memory>
#include "cutter.h" #include "cutter.h"
#include "dockwidget.h" #include "dockwidget.h"
@ -72,7 +73,7 @@ private slots:
void flagsChanged(); void flagsChanged();
private: private:
Ui::FlagsWidget *ui; std::unique_ptr<Ui::FlagsWidget> ui;
MainWindow *main; MainWindow *main;
FlagsModel *flags_model; FlagsModel *flags_model;

View File

@ -380,10 +380,7 @@ FunctionsWidget::FunctionsWidget(MainWindow *main, QWidget *parent) :
this, SLOT(showTitleContextMenu(const QPoint &))); this, SLOT(showTitleContextMenu(const QPoint &)));
} }
FunctionsWidget::~FunctionsWidget() FunctionsWidget::~FunctionsWidget() {}
{
delete ui;
}
void FunctionsWidget::setup() void FunctionsWidget::setup()
{ {

View File

@ -3,6 +3,7 @@
#include <QSortFilterProxyModel> #include <QSortFilterProxyModel>
#include <QTreeView> #include <QTreeView>
#include <memory>
#include "cutter.h" #include "cutter.h"
#include "dockwidget.h" #include "dockwidget.h"
@ -111,7 +112,7 @@ protected:
private: private:
QTreeView *getCurrentTreeView(); QTreeView *getCurrentTreeView();
Ui::FunctionsWidget *ui; std::unique_ptr<Ui::FunctionsWidget> ui;
MainWindow *main; MainWindow *main;
QList<FunctionDescription> functions; QList<FunctionDescription> functions;

View File

@ -34,13 +34,11 @@ void CMyDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, c
ImportsWidget::ImportsWidget(MainWindow *main, QWidget *parent) : ImportsWidget::ImportsWidget(MainWindow *main, QWidget *parent) :
DockWidget(parent), DockWidget(parent),
ui(new Ui::ImportsWidget) ui(new Ui::ImportsWidget),
main(main)
{ {
ui->setupUi(this); ui->setupUi(this);
// Radare core found in:
this->main = main;
// Delegate // Delegate
//CMyDelegate* delegate = new CMyDelegate(ui->importsTreeWidget); //CMyDelegate* delegate = new CMyDelegate(ui->importsTreeWidget);
//ui->importsTreeWidget->setItemDelegate(delegate); //ui->importsTreeWidget->setItemDelegate(delegate);
@ -48,10 +46,7 @@ ImportsWidget::ImportsWidget(MainWindow *main, QWidget *parent) :
ui->importsTreeWidget->hideColumn(0); ui->importsTreeWidget->hideColumn(0);
} }
ImportsWidget::~ImportsWidget() ImportsWidget::~ImportsWidget() {}
{
delete ui;
}
void ImportsWidget::setup() void ImportsWidget::setup()
{ {

View File

@ -4,6 +4,7 @@
#include "dockwidget.h" #include "dockwidget.h"
#include <QStyledItemDelegate> #include <QStyledItemDelegate>
#include <QTreeWidgetItem> #include <QTreeWidgetItem>
#include <memory>
class MainWindow; class MainWindow;
class QTreeWidget; class QTreeWidget;
@ -29,7 +30,7 @@ private slots:
void on_importsTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column); void on_importsTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column);
private: private:
Ui::ImportsWidget *ui; std::unique_ptr<Ui::ImportsWidget> ui;
MainWindow *main; MainWindow *main;
void fillImports(); void fillImports();

View File

@ -42,10 +42,7 @@ Notepad::Notepad(MainWindow *main, QWidget *parent) :
this, SLOT(showNotepadContextMenu(const QPoint &))); this, SLOT(showNotepadContextMenu(const QPoint &)));
} }
Notepad::~Notepad() Notepad::~Notepad() {}
{
delete ui;
}
void Notepad::setup() void Notepad::setup()
{ {

View File

@ -2,6 +2,7 @@
#define NOTEPAD_H #define NOTEPAD_H
#include "dockwidget.h" #include "dockwidget.h"
#include <memory>
class MainWindow; class MainWindow;
class MdHighlighter; class MdHighlighter;
@ -71,7 +72,7 @@ private slots:
void on_actionHexdump_function_triggered(); void on_actionHexdump_function_triggered();
private: private:
Ui::Notepad *ui; std::unique_ptr<Ui::Notepad> ui;
MdHighlighter *highlighter; MdHighlighter *highlighter;
Highlighter *disasm_highlighter; Highlighter *disasm_highlighter;
bool isFirstTime; bool isFirstTime;

View File

@ -17,10 +17,7 @@ RelocsWidget::RelocsWidget(MainWindow *main, QWidget *parent) :
ui->relocsTreeWidget->hideColumn(0); ui->relocsTreeWidget->hideColumn(0);
} }
RelocsWidget::~RelocsWidget() RelocsWidget::~RelocsWidget() {}
{
delete ui;
}
void RelocsWidget::setup() void RelocsWidget::setup()
{ {

View File

@ -2,6 +2,7 @@
#define RELOCSWIDGET_H #define RELOCSWIDGET_H
#include "dashboard.h" #include "dashboard.h"
#include <memory>
class MainWindow; class MainWindow;
class QTreeWidgetItem; class QTreeWidgetItem;
@ -27,7 +28,7 @@ private slots:
void on_relocsTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column); void on_relocsTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column);
private: private:
Ui::RelocsWidget *ui; std::unique_ptr<Ui::RelocsWidget> ui;
MainWindow *main; MainWindow *main;
void fillTreeWidget(); void fillTreeWidget();

View File

@ -93,10 +93,7 @@ void SdbDock::on_treeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column)
} }
} }
SdbDock::~SdbDock() SdbDock::~SdbDock() {}
{
delete ui;
}
void SdbDock::setup() void SdbDock::setup()
{ {

View File

@ -2,6 +2,7 @@
#define SDBDOCK_H #define SDBDOCK_H
#include "dockwidget.h" #include "dockwidget.h"
#include <memory>
class MainWindow; class MainWindow;
class QTreeWidgetItem; class QTreeWidgetItem;
@ -31,7 +32,7 @@ private slots:
void on_treeWidget_itemChanged(QTreeWidgetItem *item, int column); void on_treeWidget_itemChanged(QTreeWidgetItem *item, int column);
private: private:
Ui::SdbDock *ui; std::unique_ptr<Ui::SdbDock> ui;
QString path; QString path;
MainWindow *main; MainWindow *main;

View File

@ -25,10 +25,7 @@ SectionsDock::SectionsDock(MainWindow *main, QWidget *parent) :
this, SLOT(showSectionsContextMenu(const QPoint &))); this, SLOT(showSectionsContextMenu(const QPoint &)));
} }
SectionsDock::~SectionsDock() SectionsDock::~SectionsDock() {}
{
delete ui;
}
void SectionsDock::setup() void SectionsDock::setup()
{ {

View File

@ -2,6 +2,7 @@
#define SECTIONSDOCK_H #define SECTIONSDOCK_H
#include "dockwidget.h" #include "dockwidget.h"
#include <memory>
class MainWindow; class MainWindow;
class SectionsWidget; class SectionsWidget;
@ -35,7 +36,7 @@ private slots:
void on_actionHorizontal_triggered(); void on_actionHorizontal_triggered();
private: private:
Ui::SectionsDock *ui; std::unique_ptr<Ui::SectionsDock> ui;
MainWindow *main; MainWindow *main;
SectionsWidget *sectionsWidget; SectionsWidget *sectionsWidget;
}; };

View File

@ -33,10 +33,7 @@ SideBar::SideBar(MainWindow *main) :
} }
} }
SideBar::~SideBar() SideBar::~SideBar() {}
{
delete ui;
}
void SideBar::on_tabsButton_clicked() void SideBar::on_tabsButton_clicked()
{ {

View File

@ -2,6 +2,7 @@
#define SIDEBAR_H #define SIDEBAR_H
#include <QWidget> #include <QWidget>
#include <memory>
class MainWindow; class MainWindow;
@ -44,7 +45,7 @@ private slots:
void on_refreshButton_clicked(); void on_refreshButton_clicked();
private: private:
Ui::SideBar *ui; std::unique_ptr<Ui::SideBar> ui;
MainWindow *main; MainWindow *main;
}; };

View File

@ -17,10 +17,7 @@ StringsWidget::StringsWidget(MainWindow *main, QWidget *parent) :
ui->stringsTreeWidget->hideColumn(0); ui->stringsTreeWidget->hideColumn(0);
} }
StringsWidget::~StringsWidget() StringsWidget::~StringsWidget() {}
{
delete ui;
}
void StringsWidget::setup() void StringsWidget::setup()
{ {

View File

@ -2,6 +2,7 @@
#define STRINGSWIDGET_H #define STRINGSWIDGET_H
#include "dockwidget.h" #include "dockwidget.h"
#include <memory>
class MainWindow; class MainWindow;
class QTreeWidgetItem; class QTreeWidgetItem;
@ -29,7 +30,7 @@ private slots:
void on_stringsTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column); void on_stringsTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column);
private: private:
Ui::StringsWidget *ui; std::unique_ptr<Ui::StringsWidget> ui;
MainWindow *main; MainWindow *main;
void fillTreeWidget(); void fillTreeWidget();

View File

@ -17,10 +17,7 @@ SymbolsWidget::SymbolsWidget(MainWindow *main, QWidget *parent) :
ui->symbolsTreeWidget->hideColumn(0); ui->symbolsTreeWidget->hideColumn(0);
} }
SymbolsWidget::~SymbolsWidget() SymbolsWidget::~SymbolsWidget() {}
{
delete ui;
}
void SymbolsWidget::setup() void SymbolsWidget::setup()
{ {

View File

@ -2,6 +2,7 @@
#define SYMBOLSWIDGET_H #define SYMBOLSWIDGET_H
#include "dockwidget.h" #include "dockwidget.h"
#include <memory>
class MainWindow; class MainWindow;
class QTreeWidgetItem; class QTreeWidgetItem;
@ -27,7 +28,7 @@ private slots:
void on_symbolsTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column); void on_symbolsTreeWidget_itemDoubleClicked(QTreeWidgetItem *item, int column);
private: private:
Ui::SymbolsWidget *ui; std::unique_ptr<Ui::SymbolsWidget> ui;
MainWindow *main; MainWindow *main;
void fillSymbols(); void fillSymbols();