8#ifndef LAYERSHELLQTWINDOW_H
9#define LAYERSHELLQTWINDOW_H
15#include "layershellqt_export.h"
21class LAYERSHELLQT_EXPORT Window :
public QObject
24 Q_PROPERTY(Anchors anchors READ anchors WRITE setAnchors NOTIFY anchorsChanged)
25 Q_PROPERTY(QString scope READ scope WRITE setScope)
26 Q_PROPERTY(QMargins margins READ margins WRITE setMargins NOTIFY marginsChanged)
27 Q_PROPERTY(qint32 exclusionZone READ exclusionZone WRITE setExclusiveZone NOTIFY exclusionZoneChanged)
28 Q_PROPERTY(Layer layer READ layer WRITE setLayer NOTIFY layerChanged)
29 Q_PROPERTY(KeyboardInteractivity keyboardInteractivity READ keyboardInteractivity WRITE setKeyboardInteractivity NOTIFY keyboardInteractivityChanged)
30 Q_PROPERTY(ScreenConfiguration screenConfiguration READ screenConfiguration WRITE setScreenConfiguration)
43 Q_DECLARE_FLAGS(Anchors, Anchor)
59 enum KeyboardInteractivity {
60 KeyboardInteractivityNone = 0,
61 KeyboardInteractivityExclusive = 1,
62 KeyboardInteractivityOnDemand = 2,
64 Q_ENUM(KeyboardInteractivity)
71 enum ScreenConfiguration {
72 ScreenFromQWindow = 0,
73 ScreenFromCompositor = 1,
75 Q_ENUM(ScreenConfiguration)
77 void setAnchors(Anchors anchor);
78 Anchors anchors()
const;
80 void setExclusiveZone(int32_t zone);
81 int32_t exclusionZone()
const;
83 void setExclusiveEdge(Window::Anchor edge);
84 Window::Anchor exclusiveEdge()
const;
86 void setMargins(
const QMargins &margins);
87 QMargins margins()
const;
89 void setDesiredSize(
const QSize &size);
90 QSize desiredSize()
const;
92 void setKeyboardInteractivity(KeyboardInteractivity interactivity);
93 KeyboardInteractivity keyboardInteractivity()
const;
95 void setLayer(Layer layer);
98 void setScreenConfiguration(ScreenConfiguration screenConfiguration);
99 ScreenConfiguration screenConfiguration()
const;
108 void setScope(
const QString &scope);
109 QString scope()
const;
117 void setCloseOnDismissed(
bool close);
118 bool closeOnDismissed()
const;
126 static Window *qmlAttachedProperties(QObject *
object);
129 void anchorsChanged();
130 void exclusionZoneChanged();
131 void exclusiveEdgeChanged();
132 void marginsChanged();
133 void desiredSizeChanged();
134 void keyboardInteractivityChanged();
139 QScopedPointer<WindowPrivate> d;
KIOCORE_EXPORT TransferJob * get(const QUrl &url, LoadType reload=NoReload, JobFlags flags=DefaultFlags)