File indexing completed on 2024-04-28 16:44:32
0001 /* 0002 * SPDX-FileCopyrightText: 2014 Martin Gräßlin <mgraesslin@kde.org> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 #pragma once 0007 0008 #include "../src/private/decoratedclientprivate.h" 0009 0010 #include <QObject> 0011 0012 class MockClient : public QObject, public KDecoration2::ApplicationMenuEnabledDecoratedClientPrivate 0013 { 0014 Q_OBJECT 0015 public: 0016 explicit MockClient(KDecoration2::DecoratedClient *client, KDecoration2::Decoration *decoration); 0017 0018 Qt::Edges adjacentScreenEdges() const override; 0019 QString caption() const override; 0020 WId decorationId() const override; 0021 int desktop() const override; 0022 int height() const override; 0023 QIcon icon() const override; 0024 bool isActive() const override; 0025 bool isCloseable() const override; 0026 bool isKeepAbove() const override; 0027 bool isKeepBelow() const override; 0028 bool isMaximizeable() const override; 0029 bool isMaximized() const override; 0030 bool isMaximizedHorizontally() const override; 0031 bool isMaximizedVertically() const override; 0032 bool isMinimizeable() const override; 0033 bool isModal() const override; 0034 bool isMoveable() const override; 0035 bool isOnAllDesktops() const override; 0036 bool isResizeable() const override; 0037 bool isShadeable() const override; 0038 bool isShaded() const override; 0039 QPalette palette() const override; 0040 bool hasApplicationMenu() const override; 0041 bool isApplicationMenuActive() const override; 0042 bool providesContextHelp() const override; 0043 void requestClose() override; 0044 void requestContextHelp() override; 0045 void requestToggleMaximization(Qt::MouseButtons buttons) override; 0046 void requestMinimize() override; 0047 void requestShowWindowMenu(const QRect &rect) override; 0048 void requestShowApplicationMenu(const QRect &rect, int actionId) override; 0049 void requestToggleKeepAbove() override; 0050 void requestToggleKeepBelow() override; 0051 void requestToggleOnAllDesktops() override; 0052 void requestToggleShade() override; 0053 void requestShowToolTip(const QString &text) override; 0054 void requestHideToolTip() override; 0055 QSize size() const override; 0056 int width() const override; 0057 WId windowId() const override; 0058 QString windowClass() const override; 0059 0060 void showApplicationMenu(int actionId) override; 0061 0062 void setCloseable(bool set); 0063 void setMinimizable(bool set); 0064 void setProvidesContextHelp(bool set); 0065 void setShadeable(bool set); 0066 void setMaximizable(bool set); 0067 0068 void setWidth(int w); 0069 void setHeight(int h); 0070 0071 Q_SIGNALS: 0072 void closeRequested(); 0073 void minimizeRequested(); 0074 void quickHelpRequested(); 0075 void menuRequested(); 0076 void applicationMenuRequested(); 0077 0078 private: 0079 bool m_closeable = false; 0080 bool m_minimizable = false; 0081 bool m_contextHelp = false; 0082 bool m_keepAbove = false; 0083 bool m_keepBelow = false; 0084 bool m_shadeable = false; 0085 bool m_shaded = false; 0086 bool m_maximizable = false; 0087 bool m_maximizedVertically = false; 0088 bool m_maximizedHorizontally = false; 0089 bool m_onAllDesktops = false; 0090 int m_width = 0; 0091 int m_height = 0; 0092 };