diff options
| author | Rusty Wagner <rusty@vector35.com> | 2015-02-21 20:15:09 -0500 |
|---|---|---|
| committer | Rusty Wagner <rusty@vector35.com> | 2015-02-21 20:15:09 -0500 |
| commit | e931fbb18ed367745411592e3c408c1a04155a57 (patch) | |
| tree | f6aa9c84b678e6d5ee20c19c968ab82d44f6a207 | |
| parent | f3a02f93e175ac5c509aa6e135653a4f58af32ce (diff) | |
Handle sizing and complete event for disassembly view
| -rw-r--r-- | binaryninjaapi.h | 7 | ||||
| -rw-r--r-- | functiongraph.cpp | 29 |
2 files changed, 16 insertions, 20 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h index 21d46554..ce400e38 100644 --- a/binaryninjaapi.h +++ b/binaryninjaapi.h @@ -722,13 +722,12 @@ namespace BinaryNinja void StartLayout(); bool IsLayoutComplete(); void OnComplete(const std::function<void()>& func); + void ClearOnComplete(); std::vector<Ref<FunctionGraphBlock>> GetBlocks() const; - int GetLeftExtent() const; - int GetTopExtent() const; - int GetRightExtent() const; - int GetBottomExtent() const; + int GetWidth() const; + int GetHeight() const; std::vector<Ref<FunctionGraphBlock>> GetBlocksInRegion(int left, int top, int right, int bottom); }; } diff --git a/functiongraph.cpp b/functiongraph.cpp index 476c2fe2..405046ea 100644 --- a/functiongraph.cpp +++ b/functiongraph.cpp @@ -65,6 +65,15 @@ void FunctionGraph::OnComplete(const std::function<void()>& func) } +void FunctionGraph::ClearOnComplete() +{ + // Must clear the callback with the core before clearing our own function object, as until it + // is cleared in the core it can be called at any time from a different thread. + BNClearFunctionGraphCompleteCallback(m_graph); + m_completeFunc = []() {}; +} + + vector<Ref<FunctionGraphBlock>> FunctionGraph::GetBlocks() const { size_t count; @@ -79,27 +88,15 @@ vector<Ref<FunctionGraphBlock>> FunctionGraph::GetBlocks() const } -int FunctionGraph::GetLeftExtent() const -{ - return BNGetFunctionGraphLeftExtent(m_graph); -} - - -int FunctionGraph::GetTopExtent() const -{ - return BNGetFunctionGraphTopExtent(m_graph); -} - - -int FunctionGraph::GetRightExtent() const +int FunctionGraph::GetWidth() const { - return BNGetFunctionGraphRightExtent(m_graph); + return BNGetFunctionGraphWidth(m_graph); } -int FunctionGraph::GetBottomExtent() const +int FunctionGraph::GetHeight() const { - return BNGetFunctionGraphBottomExtent(m_graph); + return BNGetFunctionGraphHeight(m_graph); } |
