From 7f6e54fdc8ff4a06fdcd3c510a37add337f04bac Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Thu, 18 Nov 2021 13:52:25 -0500 Subject: Refactor main area to use pane system --- ui/minigraph.h | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'ui/minigraph.h') diff --git a/ui/minigraph.h b/ui/minigraph.h index 90a0c318..69b59768 100644 --- a/ui/minigraph.h +++ b/ui/minigraph.h @@ -13,19 +13,31 @@ class FlowGraphWidget; class Menu; class ViewFrame; -class BINARYNINJAUIAPI MiniGraph: public SidebarWidget +class BINARYNINJAUIAPI MiniGraph: public SidebarWidget, public UIContextNotification { Q_OBJECT - ViewFrame* m_frame; + ViewFrame* m_frame = nullptr; FlowGraphWidget* m_flowGraphWidget = nullptr; + QWidget* m_header = nullptr; + bool m_popout; + QRect m_miniRenderRect; public: - MiniGraph(ViewFrame* frame); + MiniGraph(bool popout = false); ~MiniGraph(); + // Called when used in sidebar virtual void notifyViewChanged(ViewFrame* frame) override; + // Called when popped out of sidebar + virtual void OnViewChange(UIContext* context, ViewFrame* frame, const QString& type) override; + + virtual QWidget* headerWidget() override { return m_header; } + virtual QSize sizeHint() const override { return QSize(200, 200); } + + void setSource(ViewFrame* frame, FlowGraphWidget* graphView); + protected: virtual void contextMenuEvent(QContextMenuEvent* event) override; virtual void mouseMoveEvent(QMouseEvent* event) override; @@ -35,6 +47,8 @@ protected: public Q_SLOTS: void notifyUpdate(); + void graphDestroyed(); + void newPane(); }; -- cgit v1.3.1