File indexing completed on 2024-04-28 09:26:08

0001 /*
0002  * SPDX-FileCopyrightText: 2014 Daniel Vratil <dvratil@redhat.com>
0003  *
0004  * SPDX-License-Identifier: LGPL-2.1-or-later
0005  *
0006  */
0007 
0008 #pragma once
0009 
0010 #include <QObject>
0011 
0012 #include "abstractbackend.h"
0013 #include "backendinterface.h"
0014 #include "configoperation.h"
0015 
0016 namespace KScreen
0017 {
0018 class ConfigOperationPrivate : public QObject
0019 {
0020     Q_OBJECT
0021 
0022 public:
0023     explicit ConfigOperationPrivate(ConfigOperation *qq);
0024     ~ConfigOperationPrivate() override;
0025 
0026     // For out-of-process
0027     void requestBackend();
0028     virtual void backendReady(org::kde::kscreen::Backend *backend);
0029 
0030     // For in-process
0031     KScreen::AbstractBackend *loadBackend();
0032 
0033 public Q_SLOTS:
0034     void doEmitResult();
0035 
0036 private:
0037     QString error;
0038     bool isExec;
0039 
0040 protected:
0041     ConfigOperation *const q_ptr;
0042     Q_DECLARE_PUBLIC(ConfigOperation)
0043 };
0044 
0045 }