summaryrefslogtreecommitdiff
path: root/ui/typebrowser.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty.wagner@gmail.com>2024-02-01 18:31:40 -0500
committerRusty Wagner <rusty.wagner@gmail.com>2024-02-05 13:42:52 -0500
commitacbb7d86058e9603334a4d61807c1e06f59cdbd5 (patch)
treeeb9db95ec4d4a58d1079b87bf6156437a1208421 /ui/typebrowser.h
parentd6d462bd9b11377d896e2b68444c89aa3dce05ff (diff)
Use per view type context sensitivity for most sidebar widgets to significantly reduce resource usage when multiple panes are open
Diffstat (limited to 'ui/typebrowser.h')
-rw-r--r--ui/typebrowser.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/ui/typebrowser.h b/ui/typebrowser.h
index 783de834..b17a73ad 100644
--- a/ui/typebrowser.h
+++ b/ui/typebrowser.h
@@ -319,7 +319,6 @@ struct BINARYNINJAUIAPI TypeReference
class BINARYNINJAUIAPI TypeBrowserView : public QFrame, public View, public FilterTarget
{
Q_OBJECT
- ViewFrame* m_frame;
BinaryViewRef m_data;
class TypeBrowserContainer* m_container;
ContextMenuManager* m_contextMenuManager;
@@ -342,7 +341,7 @@ class BINARYNINJAUIAPI TypeBrowserView : public QFrame, public View, public Filt
QTextEdit* m_debugText;
public:
- TypeBrowserView(ViewFrame* frame, BinaryViewRef data, TypeBrowserContainer* container);
+ TypeBrowserView(BinaryViewRef data, TypeBrowserContainer* container);
TypeBrowserContainer* getContainer() { return m_container; }
TypeBrowserModel* getModel() { return m_model; }
@@ -460,7 +459,6 @@ class BINARYNINJAUIAPI TypeBrowserContainer : public QWidget, public ViewContain
{
Q_OBJECT
- ViewFrame* m_frame;
BinaryViewRef m_data;
TypeBrowserView* m_view;
FilteredView* m_filter;
@@ -469,10 +467,9 @@ class BINARYNINJAUIAPI TypeBrowserContainer : public QWidget, public ViewContain
UIActionHandler m_actionHandler;
public:
- TypeBrowserContainer(ViewFrame* frame, BinaryViewRef data, class TypeBrowserSidebarWidget* parent);
+ TypeBrowserContainer(BinaryViewRef data, class TypeBrowserSidebarWidget* parent);
virtual View* getView() override { return m_view; }
- ViewFrame* getViewFrame() { return m_frame; }
BinaryViewRef getData() { return m_data; }
TypeBrowserView* getTypeBrowserView() { return m_view; }
FilteredView* getFilter() { return m_filter; }
@@ -505,7 +502,7 @@ class BINARYNINJAUIAPI TypeBrowserSidebarWidget : public SidebarWidget
TypeBrowserContainer* m_container;
public:
- TypeBrowserSidebarWidget(ViewFrame* frame, BinaryViewRef data);
+ TypeBrowserSidebarWidget(BinaryViewRef data);
TypeBrowserContainer* container() { return m_container; }
virtual QWidget* headerWidget() override { return m_header; }
virtual void focus() override;
@@ -526,6 +523,7 @@ public:
virtual SidebarWidget* createWidget(ViewFrame* frame, BinaryViewRef data) override;
SidebarWidgetLocation defaultLocation() const override { return SidebarWidgetLocation::LeftContent; }
+ SidebarContextSensitivity contextSensitivity() const override { return PerViewTypeSidebarContext; }
virtual bool canUseAsPane(SplitPaneWidget*, BinaryViewRef) const override { return true; }
virtual Pane* createPane(SplitPaneWidget* panes, BinaryViewRef data) override;
};