summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorXusheng <xusheng@vector35.com>2020-07-30 16:02:12 +0800
committerXusheng <xusheng@vector35.com>2020-08-27 23:59:18 +0800
commitb31008fbcd3f38190c44bba8e9f7757b45b40654 (patch)
tree0c1ee7d4d21661ad189f1dbf9cf4120d0bca5980 /examples
parent03ab2b6b83a3cc6e7723be071bdfac72208ac34d (diff)
make setSelectionOffsets() pure virtual
Diffstat (limited to 'examples')
-rw-r--r--examples/triage/byte.cpp6
-rw-r--r--examples/triage/byte.h1
-rw-r--r--examples/triage/view.cpp6
-rw-r--r--examples/triage/view.h1
4 files changed, 14 insertions, 0 deletions
diff --git a/examples/triage/byte.cpp b/examples/triage/byte.cpp
index 9fdb80be..58835ed7 100644
--- a/examples/triage/byte.cpp
+++ b/examples/triage/byte.cpp
@@ -158,6 +158,12 @@ BNAddressRange ByteView::getSelectionOffsets()
return { start, end };
}
+void ByteView::setSelectionOffsets(BNAddressRange range)
+{
+ navigate(range.start);
+ m_selectionStartAddr = range.start;
+ m_cursorAddr = range.end;
+}
void ByteView::updateRanges()
{
diff --git a/examples/triage/byte.h b/examples/triage/byte.h
index f98e7472..61cb51a4 100644
--- a/examples/triage/byte.h
+++ b/examples/triage/byte.h
@@ -83,6 +83,7 @@ public:
virtual QFont getFont() override;
virtual uint64_t getCurrentOffset() override;
virtual BNAddressRange getSelectionOffsets() override;
+ virtual void setSelectionOffsets(BNAddressRange range) override;
virtual bool navigate(uint64_t addr) override;
virtual void updateFonts() override;
virtual void selectAll();
diff --git a/examples/triage/view.cpp b/examples/triage/view.cpp
index 6f5729b4..417006b2 100644
--- a/examples/triage/view.cpp
+++ b/examples/triage/view.cpp
@@ -125,6 +125,12 @@ BNAddressRange TriageView::getSelectionOffsets()
return { m_currentOffset, m_currentOffset };
}
+void TriageView::setSelectionOffsets(BNAddressRange range)
+{
+ // for subclass of View who does not have a meaningful setSelectionOffsets() behavior,
+ // we navigate to the start of the selection range
+ navigate(range.start);
+}
void TriageView::setCurrentOffset(uint64_t offset)
{
diff --git a/examples/triage/view.h b/examples/triage/view.h
index 973ab83a..37e53e7c 100644
--- a/examples/triage/view.h
+++ b/examples/triage/view.h
@@ -19,6 +19,7 @@ public:
virtual BinaryViewRef getData() override;
virtual uint64_t getCurrentOffset() override;
virtual BNAddressRange getSelectionOffsets() override;
+ virtual void setSelectionOffsets(BNAddressRange range) override;
virtual QFont getFont() override;
virtual bool navigate(uint64_t addr) override;