summaryrefslogtreecommitdiff
path: root/ui/memorymap.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/memorymap.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/memorymap.h')
-rw-r--r--ui/memorymap.h9
1 files changed, 4 insertions, 5 deletions
diff --git a/ui/memorymap.h b/ui/memorymap.h
index 98cbbd04..8e9df680 100644
--- a/ui/memorymap.h
+++ b/ui/memorymap.h
@@ -195,7 +195,6 @@ class BINARYNINJAUIAPI MemoryMapView : public QWidget, public View
Q_OBJECT
BinaryViewRef m_data;
- ViewFrame* m_view;
MemoryMapContainer* m_container;
SectionWidget* m_sectionWidget;
@@ -207,7 +206,7 @@ class BINARYNINJAUIAPI MemoryMapView : public QWidget, public View
void navigateToRawAddress(uint64_t address);
public:
- MemoryMapView(BinaryViewRef data, ViewFrame* view, MemoryMapContainer* container);
+ MemoryMapView(BinaryViewRef data, MemoryMapContainer* container);
BinaryViewRef getData() override { return m_data; }
uint64_t getCurrentOffset() override;
@@ -231,12 +230,11 @@ class BINARYNINJAUIAPI MemoryMapContainer : public QWidget, public ViewContainer
friend class StringsView;
- ViewFrame* m_view;
MemoryMapView* m_memoryMap;
MemoryMapSidebarWidget* m_widget;
public:
- MemoryMapContainer(BinaryViewRef data, ViewFrame* view, MemoryMapSidebarWidget* parent);
+ MemoryMapContainer(BinaryViewRef data, MemoryMapSidebarWidget* parent);
virtual View* getView() override { return m_memoryMap; }
MemoryMapView* getMemoryMapView() { return m_memoryMap; }
@@ -273,7 +271,7 @@ Q_OBJECT
MemoryMapContainer* m_container;
public:
- MemoryMapSidebarWidget(BinaryViewRef data, ViewFrame* frame);
+ MemoryMapSidebarWidget(BinaryViewRef data);
void focus() override;
};
@@ -286,6 +284,7 @@ class BINARYNINJAUIAPI MemoryMapSidebarWidgetType : public SidebarWidgetType
public:
MemoryMapSidebarWidgetType();
SidebarWidgetLocation defaultLocation() const override { return SidebarWidgetLocation::LeftContent; }
+ SidebarContextSensitivity contextSensitivity() const override { return PerViewTypeSidebarContext; }
SidebarWidget* createWidget(ViewFrame* frame, BinaryViewRef data) override;
virtual bool canUseAsPane(SplitPaneWidget*, BinaryViewRef) const override { return true; }
virtual Pane* createPane(SplitPaneWidget* panes, BinaryViewRef data) override;