summaryrefslogtreecommitdiff
path: root/ui/addressdialog.h
diff options
context:
space:
mode:
Diffstat (limited to 'ui/addressdialog.h')
-rw-r--r--ui/addressdialog.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/ui/addressdialog.h b/ui/addressdialog.h
index e3d02338..eee9d836 100644
--- a/ui/addressdialog.h
+++ b/ui/addressdialog.h
@@ -75,3 +75,36 @@ public:
~AddressDialogWithPreview() { delete m_updateThread; }
uint64_t getOffset() const { return m_addr; }
};
+
+class BINARYNINJAUIAPI FileOffsetDialogWithPreview: public QDialog
+{
+ Q_OBJECT
+
+ QComboBox* m_combo;
+ QLabel* m_previewText;
+ BinaryViewRef m_view;
+ uint64_t m_fileOffset;
+ uint64_t m_here;
+ bool m_resultValid;
+ QTimer* m_updateTimer;
+ QStringList m_historyEntries;
+ int m_historySize;
+ QColor m_defaultColor;
+ QFont m_defaultFont;
+ QString m_prompt;
+ bool m_initialTextSelection;
+
+ void commitHistory();
+
+private Q_SLOTS:
+ void updateTimerEvent();
+ void accepted();
+ void updatePreview();
+ void updatePreview(QString data);
+
+public:
+ FileOffsetDialogWithPreview(QWidget* parent, BinaryViewRef view, uint64_t here,
+ const QString& title = "Go to File Offset", const QString& prompt = "Enter Expression", bool defaultToCurrent = false);
+ ~FileOffsetDialogWithPreview() {}
+ uint64_t getOffset() const { return m_fileOffset; }
+}; \ No newline at end of file