Skip to content

Commit 768bf0d

Browse files
committed
Move all FeatureMap processing to the background.
1 parent e95dc2c commit 768bf0d

File tree

2 files changed

+4
-13
lines changed

2 files changed

+4
-13
lines changed

ui/featuremap.h

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class SplitPaneWidget;
3333
3434
\ingroup featuremap
3535
*/
36-
class BINARYNINJAUIAPI FeatureMap : public QWidget, public BinaryNinja::BinaryDataNotification
36+
class BINARYNINJAUIAPI FeatureMap : public QWidget
3737
{
3838
Q_OBJECT
3939

@@ -42,7 +42,6 @@ class BINARYNINJAUIAPI FeatureMap : public QWidget, public BinaryNinja::BinaryDa
4242
std::unique_ptr<QImage> m_staticImage = nullptr;
4343
std::vector<BNAddressRange> m_ranges;
4444

45-
SplitPaneWidget* m_owner = nullptr;
4645
BinaryViewRef m_data;
4746
std::unique_ptr<NotificationsDispatcher> m_dispatcher = nullptr;
4847

@@ -81,15 +80,7 @@ class BINARYNINJAUIAPI FeatureMap : public QWidget, public BinaryNinja::BinaryDa
8180

8281
void renderDataVariable(const BinaryNinja::DataVariable& var, bool ignoreString = false);
8382

84-
virtual void OnAnalysisFunctionAdded(BinaryNinja::BinaryView* data, BinaryNinja::Function* func) override;
85-
virtual void OnAnalysisFunctionRemoved(BinaryNinja::BinaryView* data, BinaryNinja::Function* func) override;
86-
virtual void OnAnalysisFunctionUpdated(BinaryNinja::BinaryView* data, BinaryNinja::Function* func) override;
87-
virtual void OnDataVariableAdded(BinaryNinja::BinaryView* data, const BinaryNinja::DataVariable& var) override;
88-
virtual void OnDataVariableRemoved(BinaryNinja::BinaryView* data, const BinaryNinja::DataVariable& var) override;
89-
virtual void OnDataVariableUpdated(BinaryNinja::BinaryView* data, const BinaryNinja::DataVariable& var) override;
90-
virtual void OnStringFound(BinaryNinja::BinaryView* data, BNStringType type, uint64_t offset, size_t len) override;
91-
virtual void OnStringRemoved(BinaryNinja::BinaryView* data, BNStringType type, uint64_t offset, size_t len) override;
92-
83+
uint8_t getSymbolColor(const SymbolRef& symbol);
9384
void drawImageRect(uint64_t addr, size_t len, uint8_t color);
9485

9586
virtual QSize sizeHint() const override;

ui/notificationsdispatcher.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,8 +165,8 @@ class NotificationEvent
165165
void addSource(NotificationType source) { m_source = static_cast<NotificationType>(static_cast<uint64_t>(m_source) | static_cast<uint64_t>(source)); }
166166
NotificationType getSource() const { return m_source; }
167167
NotificationTypes getSources() const { return static_cast<NotificationTypes>(m_source); }
168-
bool isObjectRemoval() const { return (m_source & (NotificationType::DataVariableRemoved | NotificationType::FunctionRemoved)); }
169-
bool isRemoval() const { return (m_source & (NotificationType::DataVariableRemoved | NotificationType::FunctionRemoved | NotificationType::SymbolRemoved)); }
168+
bool isObjectRemoval() const { return (m_source & (NotificationType::DataVariableRemoved | NotificationType::FunctionRemoved | NotificationType::StringRemoved)); }
169+
bool isRemoval() const { return (m_source & (NotificationType::DataVariableRemoved | NotificationType::FunctionRemoved | NotificationType::SymbolRemoved | NotificationType::StringRemoved)); }
170170
};
171171

172172

0 commit comments

Comments
 (0)