/* This file is part of KDDockWidgets. SPDX-FileCopyrightText: 2023 Klarälvdalens Datakonsult AB, a KDAB Group company Author: Sérgio Martins SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only Contact KDAB at for commercial licensing options. */ #include "TitleBar.h" #include #pragma once // Pimpl class so we can keep kdbindings private namespace KDDockWidgets { namespace Core { class TitleBar::Private { public: KDBindings::Signal<> titleChanged; KDBindings::Signal<> iconChanged; KDBindings::Signal<> isFocusedChanged; KDBindings::Signal<> numDockWidgetsChanged; KDBindings::Signal floatButtonVisibleChanged; KDBindings::Signal floatButtonToolTipChanged; /// @brief Emitted to tell the views to update their auto-hide button KDBindings::Signal autoHideButtonChanged; /// @brief Emitted to tell the views to update their minimize button KDBindings::Signal minimizeButtonChanged; /// @brief Emitted to tell the views to update their close button KDBindings::Signal closeButtonChanged; /// @brief Emitted to tell the views to update their maximize button KDBindings::Signal maximizeButtonChanged; KDBindings::ScopedConnection isFocusedChangedConnection; KDBindings::ScopedConnection isInMainWindowChangedConnection; KDBindings::ScopedConnection numDockWidgetsChangedConnection; /// Buttons which are forcibly hidden by the user's requirements (overriding kddw's default business logic) TitleBarButtonTypes m_userHiddenButtonTypes = {}; TitleBarButtonTypes m_buttonsToHideIfDisabled = {}; }; } }