From c08ddcab02433cb5078b6cfea11bf972e47b3169 Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Wed, 2 Jun 2021 11:27:24 -0400 Subject: Add sidebar and move some dock widgets to it --- ui/symbolsview.h | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'ui/symbolsview.h') 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 #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; }; -- cgit v1.3.1