Kirigami-addons

kwindowstatesaverquick.cpp
1// SPDX-FileCopyrightText: 2024 Joshua Goins <josh@redstrate.com>
2// SPDX-License-Identifier: LGPL-2.0-or-later
3
4#include "kwindowstatesaverquick.h"
5
6#include <QQuickItem>
7#include <QQuickWindow>
8
9#include <KWindowStateSaver>
10
11void KWindowStateSaverQuick::classBegin()
12{
13}
14
15void KWindowStateSaverQuick::componentComplete()
16{
17 const auto parentItem = qobject_cast<QQuickItem *>(parent());
18 if (!parentItem) {
19 qWarning() << "WindowStateSaver requires a parent item";
20 return;
21 }
22
23 const auto window = qobject_cast<QWindow *>(parentItem->window());
24 if (!window) {
25 qWarning() << "WindowStateSaver requires the parent to be a type that inherits QWindow";
26 return;
27 }
28
29 new KWindowStateSaver(window, m_configGroupName);
30}
31
32void KWindowStateSaverQuick::setConfigGroupName(const QString &name)
33{
34 if (m_configGroupName != name) {
35 m_configGroupName = name;
36 Q_EMIT configGroupNameChanged();
37 }
38}
39
40QString KWindowStateSaverQuick::configGroupName() const
41{
42 return m_configGroupName;
43}
44
45#include "moc_kwindowstatesaverquick.cpp"
QString name(GameStandardAction id)
QWidget * window(QObject *job)
Q_EMITQ_EMIT
QObject * parent() const const
T qobject_cast(QObject *object)
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Jul 26 2024 11:54:39 by doxygen 1.11.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.