8#include "../decorationdefines.h"
9#include <kdecoration3/private/kdecoration3_private_export.h>
33class KDECORATIONS_PRIVATE_EXPORT DecoratedWindowPrivate
36 virtual ~DecoratedWindowPrivate();
37 virtual bool isActive()
const = 0;
38 virtual QString caption()
const = 0;
39 virtual bool isOnAllDesktops()
const = 0;
40 virtual bool isShaded()
const = 0;
41 virtual QIcon icon()
const = 0;
42 virtual bool isMaximized()
const = 0;
43 virtual bool isMaximizedHorizontally()
const = 0;
44 virtual bool isMaximizedVertically()
const = 0;
45 virtual bool isKeepAbove()
const = 0;
46 virtual bool isKeepBelow()
const = 0;
48 virtual bool isCloseable()
const = 0;
49 virtual bool isMaximizeable()
const = 0;
50 virtual bool isMinimizeable()
const = 0;
51 virtual bool providesContextHelp()
const = 0;
52 virtual bool isModal()
const = 0;
53 virtual bool isShadeable()
const = 0;
54 virtual bool isMoveable()
const = 0;
55 virtual bool isResizeable()
const = 0;
57 virtual qreal width()
const = 0;
58 virtual qreal height()
const = 0;
59 virtual QSizeF size()
const = 0;
60 virtual QPalette palette()
const = 0;
61 virtual Qt::Edges adjacentScreenEdges()
const = 0;
62 virtual qreal scale()
const = 0;
63 virtual qreal nextScale()
const = 0;
65 virtual void requestShowToolTip(
const QString &text) = 0;
66 virtual void requestHideToolTip() = 0;
67 virtual void requestClose() = 0;
69 virtual void requestMinimize() = 0;
70 virtual void requestContextHelp() = 0;
71 virtual void requestToggleOnAllDesktops() = 0;
72 virtual void requestToggleShade() = 0;
73 virtual void requestToggleKeepAbove() = 0;
74 virtual void requestToggleKeepBelow() = 0;
75 virtual void requestShowWindowMenu(
const QRect &rect) = 0;
77 Decoration *decoration();
78 Decoration *decoration()
const;
80 virtual QColor color(ColorGroup group, ColorRole role)
const;
81 virtual QString windowClass()
const = 0;
83 virtual bool hasApplicationMenu()
const = 0;
84 virtual bool isApplicationMenuActive()
const = 0;
86 virtual void showApplicationMenu(
int actionId) = 0;
87 virtual void requestShowApplicationMenu(
const QRect &rect,
int actionId) = 0;
90 explicit DecoratedWindowPrivate(DecoratedWindow *client, Decoration *decoration);
95 const std::unique_ptr<Private> d;
98class KDECORATIONS_PRIVATE_EXPORT DecoratedWindowPrivateV2 :
public DecoratedWindowPrivate
101 virtual QString applicationMenuServiceName()
const = 0;
102 virtual QString applicationMenuObjectPath()
const = 0;
105 explicit DecoratedWindowPrivateV2(DecoratedWindow *client, Decoration *decoration);
108class KDECORATIONS_PRIVATE_EXPORT DecoratedWindowPrivateV3 :
public DecoratedWindowPrivateV2
111 virtual void popup(
const Positioner &positioner, QMenu *menu) = 0;
114 explicit DecoratedWindowPrivateV3(DecoratedWindow *client, Decoration *decoration);
The Client which gets decorated.
Base class for the Decoration.
Framework for creating window decorations.