File indexing completed on 2024-12-22 05:09:25
0001 /* 0002 SPDX-FileCopyrightText: 2017 Marco Martin <notmart@gmail.com> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 #ifndef KWAYLAND_CLIENT_XDGFOREIGN_P_H 0007 #define KWAYLAND_CLIENT_XDGFOREIGN_P_H 0008 0009 #include "xdgforeign.h" 0010 #include <QObject> 0011 0012 namespace KWayland 0013 { 0014 namespace Client 0015 { 0016 0017 class Q_DECL_HIDDEN XdgExporter::Private 0018 { 0019 public: 0020 Private(); 0021 virtual ~Private(); 0022 0023 virtual XdgExported *exportTopLevelV2(Surface *surface, QObject *parent) = 0; 0024 0025 virtual void setupV2(zxdg_exporter_v2 *arg) = 0; 0026 virtual zxdg_exporter_v2 *exporterV2() = 0; 0027 0028 virtual void release() = 0; 0029 virtual void destroy() = 0; 0030 virtual bool isValid() = 0; 0031 0032 EventQueue *queue = nullptr; 0033 }; 0034 0035 class Q_DECL_HIDDEN XdgImporter::Private 0036 { 0037 public: 0038 Private(); 0039 virtual ~Private(); 0040 0041 virtual XdgImported *importTopLevelV2(const QString &handle, QObject *parent) = 0; 0042 0043 virtual void setupV2(zxdg_importer_v2 *arg) = 0; 0044 virtual zxdg_importer_v2 *importerV2() = 0; 0045 0046 virtual void release() = 0; 0047 virtual void destroy() = 0; 0048 virtual bool isValid() = 0; 0049 0050 EventQueue *queue = nullptr; 0051 }; 0052 0053 class Q_DECL_HIDDEN XdgExported::Private 0054 { 0055 public: 0056 Private(XdgExported *q); 0057 virtual ~Private(); 0058 0059 virtual void setupV2(zxdg_exported_v2 *) = 0; 0060 virtual zxdg_exported_v2 *exportedV2() = 0; 0061 0062 virtual void release() = 0; 0063 virtual void destroy() = 0; 0064 virtual bool isValid() = 0; 0065 0066 QString handle; 0067 0068 protected: 0069 XdgExported *q; 0070 }; 0071 0072 class Q_DECL_HIDDEN XdgImported::Private 0073 { 0074 public: 0075 Private(XdgImported *q); 0076 virtual ~Private(); 0077 0078 virtual void setupV2(zxdg_imported_v2 *) = 0; 0079 virtual zxdg_imported_v2 *importedV2() = 0; 0080 0081 virtual void setParentOf(Surface *surface) = 0; 0082 virtual void release() = 0; 0083 virtual void destroy() = 0; 0084 virtual bool isValid() = 0; 0085 0086 protected: 0087 XdgImported *q; 0088 }; 0089 0090 } 0091 } 0092 0093 #endif