diff options
| author | Rusty Wagner <rusty.wagner@gmail.com> | 2025-08-15 14:11:55 -0400 |
|---|---|---|
| committer | Rusty Wagner <rusty.wagner@gmail.com> | 2025-08-29 15:42:09 -0400 |
| commit | 112b1ed7e58e8cb14ecba18bba74fc3bde372431 (patch) | |
| tree | 247e54945ebac2c44e35d9e1e05399ddc17ddbac /ui/xrefstate.h | |
| parent | 0cf8ae794f97626d4560a87165b30870a313a743 (diff) | |
Add a modal dialog option for cross references
Diffstat (limited to 'ui/xrefstate.h')
| -rw-r--r-- | ui/xrefstate.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/ui/xrefstate.h b/ui/xrefstate.h index e81be4a0..56b46881 100644 --- a/ui/xrefstate.h +++ b/ui/xrefstate.h @@ -1,14 +1,22 @@ #pragma once +#include <QtCore/QModelIndex> #include "binaryninjaapi.h" #include "uicontext.h" +#include "viewframe.h" class SplitPaneContainer; class SplitPaneWidget; class BINARYNINJAUIAPI CrossReferenceState { - std::map<SplitPaneContainer*, std::map<QString, SelectionInfoForXref>> m_curXref; + struct Selection + { + SelectionInfoForXref selectionInfo; + std::optional<int> previousDialogSelection; + }; + + std::map<SplitPaneContainer*, std::map<QString, Selection>> m_selections; SplitPaneContainer* m_currentContainer = nullptr; QString m_currentDataType; @@ -16,6 +24,7 @@ public: CrossReferenceState(); std::optional<SelectionInfoForXref> getCurrentSelection() const; + std::optional<int> getPreviousDialogSelection() const; void updateCrossReferences(ViewFrame* frame, const SelectionInfoForXref& selection); void beginNavigationForCrossReference(ViewFrame* frame, const SelectionInfoForXref& selection); @@ -25,6 +34,8 @@ public: void newPinnedTab(); void newPinnedPane(); + void modalDialog(); + void focusSidebar(); void bindActions(UIContext* context); }; |
