summaryrefslogtreecommitdiff
path: root/ui/options.h
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2021-12-28 15:59:31 -0500
committerGlenn Smith <glenn@vector35.com>2022-01-17 20:42:22 -0500
commite88ed98d60b046cbeb5f4c96fc374c7576d7b57a (patch)
treee937ffccba9868cb259e4ec817157b255dc74652 /ui/options.h
parentdc2a99e1159c3951b91935490ec8d2da5fc8e1e7 (diff)
OptionsDialog/SettingsView + ProgressTask fixes
Diffstat (limited to 'ui/options.h')
-rw-r--r--ui/options.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/ui/options.h b/ui/options.h
new file mode 100644
index 00000000..d6288657
--- /dev/null
+++ b/ui/options.h
@@ -0,0 +1,48 @@
+#pragma once
+
+#include <QtWidgets/QComboBox>
+#include <QtWidgets/QDialog>
+#include <QtWidgets/QLabel>
+#include <QtCore/QObject>
+#include <QtCore/QString>
+#include <QtWidgets/QTabWidget>
+#include <QtWidgets/QWidget>
+#include "binaryninjaapi.h"
+#include "viewtype.h"
+#include "filecontext.h"
+
+#include <string>
+#include <tuple>
+#include <vector>
+
+class BINARYNINJAUIAPI OptionsDialog: public QDialog
+{
+ Q_OBJECT
+
+ QString m_fileName;
+ QLabel* m_fileLabel;
+ QLabel* m_objectLabel;
+ QComboBox* m_objectCombo;
+ QTabWidget* m_tab;
+ QLabel* m_notification;
+
+ bool m_isDatabase;
+ FileContext* m_file = nullptr;
+ FileMetadataRef m_fileMetadata = nullptr;
+ BinaryViewRef m_rawData = nullptr;
+ std::vector<std::tuple<std::string, size_t, std::string, uint64_t, uint64_t, std::string>> m_objects;
+
+public:
+ OptionsDialog(QWidget* parent, const QString& name);
+ virtual ~OptionsDialog();
+
+Q_SIGNALS:
+ void openFile(FileContext* file);
+
+private Q_SLOTS:
+ void cancel();
+ void open();
+ void addSettingsViewForType(const std::string& bvtName);
+ void queryViewTypes();
+ void viewTabCloseRequested(int index);
+};