From 76924a335f40a0c3cc13805b4cb9429c336d33ca Mon Sep 17 00:00:00 2001 From: SineStriker <trueful@163.com> Date: 周五, 29 12月 2023 11:34:22 +0800 Subject: [PATCH] Optimize system button area APIs --- src/widgets/widgetwindowagent.h | 20 ++++++++++++++------ 1 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/widgets/widgetwindowagent.h b/src/widgets/widgetwindowagent.h index d13d628..d159448 100644 --- a/src/widgets/widgetwindowagent.h +++ b/src/widgets/widgetwindowagent.h @@ -20,18 +20,26 @@ public: bool setup(QWidget *w); - const QWidget *titleBar() const; - void setTitleBar(const QWidget *w); + QWidget *titleBar() const; + void setTitleBar(QWidget *w); - const QWidget *systemButton(SystemButton button) const; - void setSystemButton(SystemButton button, const QWidget *w); + QWidget *systemButton(SystemButton button) const; + void setSystemButton(SystemButton button, QWidget *w); + +#ifdef Q_OS_MAC + // The system button area APIs are experimental, may be changed in the future. + QWidget *systemButtonArea() const; + void setSystemButtonArea(QWidget *widget); + + ScreenRectCallback systemButtonAreaCallback() const; + void setSystemButtonAreaCallback(const ScreenRectCallback &callback); +#endif bool isHitTestVisible(const QWidget *w) const; void setHitTestVisible(const QWidget *w, bool visible = true); - void setHitTestVisible(const QRect &rect, bool visible = true); Q_SIGNALS: - void titleBarWidgetChanged(const QWidget *w); + void titleBarChanged(const QWidget *w); void systemButtonChanged(SystemButton button, const QWidget *w); protected: -- Gitblit v1.9.1