summaryrefslogtreecommitdiff
path: root/ui
diff options
context:
space:
mode:
authorGalen Williamson <galen@vector35.com>2023-04-03 20:18:30 -0400
committerGalen Williamson <galen@vector35.com>2023-04-03 20:18:30 -0400
commit1c149ea85298f99db4e07ee804aeefff91d37584 (patch)
tree448c27c7daa1c27be5bd2f88e8e228d4875f6193 /ui
parentb6781dc806c1311b11467373ed8cfb8f31781750 (diff)
added option to display tag counts for each type in the tags list tree
Diffstat (limited to 'ui')
-rw-r--r--ui/taglist.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/ui/taglist.h b/ui/taglist.h
index 9b3198d4..985642bc 100644
--- a/ui/taglist.h
+++ b/ui/taglist.h
@@ -22,7 +22,7 @@
\ingroup taglist
*/
-class BINARYNINJAUIAPI TagListModel : public QAbstractItemModel
+class BINARYNINJAUIAPI TagListModel : public QAbstractItemModel, public BinaryNinja::BinaryDataNotification
{
Q_OBJECT
@@ -32,6 +32,7 @@ class BINARYNINJAUIAPI TagListModel : public QAbstractItemModel
std::map<TagTypeRef, size_t> m_typeIndexes;
std::vector<std::pair<TagTypeRef, std::vector<BinaryNinja::TagReference>>> m_refs;
std::map<int, QSize> m_sectionSizeHints;
+ std::map<std::string, uint64_t> m_count;
DisassemblySettingsRef m_settings;
private:
@@ -51,6 +52,7 @@ class BINARYNINJAUIAPI TagListModel : public QAbstractItemModel
public:
TagListModel(QWidget* parent, BinaryViewRef data);
+ virtual ~TagListModel();
BinaryNinja::TagReference& GetRef(const QModelIndex& index);
const BinaryNinja::TagReference& GetRef(const QModelIndex& index) const;
@@ -71,6 +73,9 @@ class BINARYNINJAUIAPI TagListModel : public QAbstractItemModel
virtual Qt::ItemFlags flags(const QModelIndex& i) const override;
virtual void sort(int column, Qt::SortOrder order) override;
+ virtual void OnTagAdded(BinaryNinja::BinaryView*, const BinaryNinja::TagReference&) override;
+ virtual void OnTagRemoved(BinaryNinja::BinaryView*, const BinaryNinja::TagReference&) override;
+
bool setModelData(const std::vector<std::pair<TagTypeRef, std::vector<BinaryNinja::TagReference>>>& refs,
QItemSelectionModel* selectionModel, int sortColumn, Qt::SortOrder sortOrder, bool& selectionUpdated);
};