summaryrefslogtreecommitdiff
path: root/ui/symbolsview.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty.wagner@gmail.com>2021-06-02 11:27:24 -0400
committerRusty Wagner <rusty.wagner@gmail.com>2021-07-28 19:31:25 -0400
commitc08ddcab02433cb5078b6cfea11bf972e47b3169 (patch)
tree02f05276ac497521a76e1591f3776e4f1cfe31d9 /ui/symbolsview.h
parent8c0fa1737552e548909a435ddcc2b661a71b5da9 (diff)
Add sidebar and move some dock widgets to it
Diffstat (limited to 'ui/symbolsview.h')
-rw-r--r--ui/symbolsview.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/ui/symbolsview.h b/ui/symbolsview.h
index da857521..26a0a7d0 100644
--- a/ui/symbolsview.h
+++ b/ui/symbolsview.h
@@ -2,17 +2,16 @@
#include <QtCore/QTimer>
#include "binaryninjaapi.h"
-#include "dockhandler.h"
+#include "sidebar.h"
#include "filter.h"
#include "symbollist.h"
class ViewFrame;
class SymbolList;
-class BINARYNINJAUIAPI SymbolsView: public QWidget, public DockContextHandler, public BinaryNinja::BinaryDataNotification
+class BINARYNINJAUIAPI SymbolsView: public SidebarWidget, public BinaryNinja::BinaryDataNotification
{
Q_OBJECT
- Q_INTERFACES(DockContextHandler)
friend class SymbolList;
@@ -20,6 +19,7 @@ class BINARYNINJAUIAPI SymbolsView: public QWidget, public DockContextHandler, p
SymbolList* m_funcList;
FilteredView* m_funcFilter;
+ QWidget* m_header;
bool m_updatesPending;
QTimer* m_updateTimer;
@@ -48,11 +48,20 @@ public:
void toggleLocalFunctions() { m_funcList->toggleLocalFunctions(); }
void toggleLocalDataVars() { m_funcList->toggleLocalDataVars(); }
+ virtual QWidget* headerWidget() override { return m_header; }
+
protected:
virtual void contextMenuEvent(QContextMenuEvent* event) override;
virtual void notifyFontChanged() override;
- virtual bool shouldBeVisible(ViewFrame* frame) override;
private Q_SLOTS:
void updateTimerEvent();
+ void showContextMenu();
+};
+
+class BINARYNINJAUIAPI SymbolsViewSidebarWidgetType: public SidebarWidgetType
+{
+public:
+ SymbolsViewSidebarWidgetType();
+ virtual SidebarWidget* createWidget(ViewFrame* frame, BinaryViewRef data) override;
};