summaryrefslogtreecommitdiff
path: root/ui/tabwidget.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty.wagner@gmail.com>2021-10-07 16:43:42 -0600
committerRusty Wagner <rusty.wagner@gmail.com>2021-10-07 16:43:42 -0600
commitd15232d88c6f0c2ed3bbbbd3998d565521e75bd0 (patch)
tree4b223fc5065dfe93afbcac2f4ae455cd443ad468 /ui/tabwidget.h
parentb11394f052d3b4303af6a5a8011d347c8065c1d4 (diff)
Modify tab bar to span entire top of window
Diffstat (limited to 'ui/tabwidget.h')
-rw-r--r--ui/tabwidget.h21
1 files changed, 16 insertions, 5 deletions
diff --git a/ui/tabwidget.h b/ui/tabwidget.h
index 58f6ac83..fd982b9d 100644
--- a/ui/tabwidget.h
+++ b/ui/tabwidget.h
@@ -133,20 +133,34 @@ protected:
virtual void wheelEvent(QWheelEvent* event) override;
};
+class BINARYNINJAUIAPI DockableTabBarWithCornerWidget: public QWidget
+{
+ DockableTabBar* m_bar;
+ QHBoxLayout* m_barLayout;
+
+protected:
+ virtual void paintEvent(QPaintEvent* event) override;
+
+public:
+ DockableTabBarWithCornerWidget(DockableTabBar* bar);
+ DockableTabBar* tabBar() const { return m_bar; }
+ void setCornerWidget(QWidget* widget, Qt::Corner corner = Qt::TopRightCorner);
+};
+
class BINARYNINJAUIAPI DockableTabWidget: public QWidget
{
Q_OBJECT
DockableTabCollection* m_collection;
DockableTabBar* m_bar;
- QHBoxLayout* m_barLayout;
+ DockableTabBarWithCornerWidget* m_cornerWidget;
QStackedWidget* m_widgets;
void addReparentedTab(DockableTabWidget* source, int idx, QWidget* widget,
const QString& title, const QString& toolTip);
public:
- DockableTabWidget(DockableTabCollection* collection);
+ DockableTabWidget(DockableTabCollection* collection, DockableTabBar* bar = nullptr);
int addTab(QWidget* widget, const QString& title);
int insertTab(int idx, QWidget* widget, const QString& title);
@@ -169,9 +183,6 @@ public:
virtual QSize sizeHint() const override;
-protected:
- virtual void paintEvent(QPaintEvent* event) override;
-
Q_SIGNALS:
void tabCloseRequested(int idx);
void currentChanged(int idx);