From e9d163b1a811ee4f02e898bc7c2e6336d88e4a7f Mon Sep 17 00:00:00 2001 From: Sine Striker <trueful@163.com> Date: 周日, 28 7月 2024 18:09:03 +0800 Subject: [PATCH] Make hit-test items auto-delete --- src/widgets/widgetwindowagent.h | 20 ++++++++++++++++---- 1 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/widgets/widgetwindowagent.h b/src/widgets/widgetwindowagent.h index bc092d2..4a0f9c8 100644 --- a/src/widgets/widgetwindowagent.h +++ b/src/widgets/widgetwindowagent.h @@ -1,3 +1,7 @@ +// Copyright (C) 2023-2024 Stdware Collections (https://www.github.com/stdware) +// Copyright (C) 2021-2023 wangwenx190 (Yuhang Zhao) +// SPDX-License-Identifier: Apache-2.0 + #ifndef WIDGETWINDOWAGENT_H #define WIDGETWINDOWAGENT_H @@ -26,13 +30,21 @@ QWidget *systemButton(SystemButton button) const; void setSystemButton(SystemButton button, QWidget *w); +#ifdef Q_OS_MAC + // The system button area APIs are experimental, very likely to change 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); + void setHitTestVisible(QWidget *w, bool visible = true); Q_SIGNALS: - void titleBarWidgetChanged(const QWidget *w); - void systemButtonChanged(SystemButton button, const QWidget *w); + void titleBarChanged(QWidget *w); + void systemButtonChanged(SystemButton button, QWidget *w); protected: WidgetWindowAgent(WidgetWindowAgentPrivate &d, QObject *parent = nullptr); -- Gitblit v1.9.1