summaryrefslogtreecommitdiff
path: root/ui/pane.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty.wagner@gmail.com>2022-11-15 18:44:56 -0700
committerRusty Wagner <rusty.wagner@gmail.com>2022-11-17 21:02:37 -0500
commitc6e07b63821ed6cec2b193bf9018cc019f6dda7e (patch)
treeb6bfc00382c0a066427a43771d20d43ecf897365 /ui/pane.h
parent23f33aa2f5f4a886716e39727c29004bbc57899b (diff)
Remove QGraphicsEffect as it's causing instability
Diffstat (limited to 'ui/pane.h')
-rw-r--r--ui/pane.h42
1 files changed, 41 insertions, 1 deletions
diff --git a/ui/pane.h b/ui/pane.h
index 02bec3b0..25877111 100644
--- a/ui/pane.h
+++ b/ui/pane.h
@@ -11,6 +11,8 @@
class ViewFrame;
class FeatureMap;
class PaneHeader;
+class PaneHeaderContainer;
+class PaneHeaderFade;
class CloseButton;
class TabDragIndicator;
class SyncGroup;
@@ -30,7 +32,8 @@ class BINARYNINJAUIAPI Pane : public QWidget
Q_OBJECT
QWidget* m_widget;
- QWidget* m_headerContainer = nullptr;
+ PaneHeaderContainer* m_headerContainer = nullptr;
+ PaneHeaderFade* m_headerFade = nullptr;
PaneHeader* m_header = nullptr;
CloseButton* m_closeButton = nullptr;
bool m_active = false;
@@ -70,6 +73,7 @@ class BINARYNINJAUIAPI Pane : public QWidget
void splitButtonClicked(Qt::Orientation orientation);
void closeButtonClicked();
void headerClicked();
+ void headerResized(QSize size);
void movePaneRequested(Pane* target, Qt::Edge edge);
void newWindowForPaneRequested(QScreen* screen, QPoint pos);
};
@@ -141,6 +145,42 @@ class BINARYNINJAUIAPI PaneHeader : public QWidget
void headerClicked();
};
+/*!
+
+ \ingroup pane
+*/
+class BINARYNINJAUIAPI PaneHeaderContainer : public QWidget
+{
+ Q_OBJECT
+
+public:
+ PaneHeaderContainer() {}
+
+protected:
+ virtual void resizeEvent(QResizeEvent* event) override;
+
+Q_SIGNALS:
+ void resize(QSize size);
+};
+
+/*!
+
+ \ingroup pane
+*/
+class BINARYNINJAUIAPI PaneHeaderFade : public QWidget
+{
+ Q_OBJECT
+
+ bool m_active = false;
+
+public:
+ PaneHeaderFade(QWidget* parent);
+ void setActive(bool active);
+
+protected:
+ virtual void paintEvent(QPaintEvent* event) override;
+};
+
class ViewFrame;
class ViewPaneHeader;