File indexing completed on 2024-05-12 05:36:58
0001 /* 0002 0003 SPDX-FileCopyrightText: 2019 Nicolas Fella <nicolas.fella@gmx.de> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #pragma once 0009 0010 #include <KQuickConfigModule> 0011 0012 #include <QFileInfo> 0013 #include <QObject> 0014 0015 class Module : public QObject 0016 { 0017 Q_OBJECT 0018 Q_PROPERTY(KQuickConfigModule *kcm READ kcm NOTIFY kcmChanged) 0019 Q_PROPERTY(QString path READ path WRITE setPath NOTIFY pathChanged) 0020 Q_PROPERTY(QString name READ name WRITE setPath NOTIFY nameChanged) 0021 QML_ELEMENT 0022 0023 public: 0024 KQuickConfigModule *kcm() const; 0025 QString path() const; 0026 void setPath(const QString &name); 0027 0028 QString name() const 0029 { 0030 return QFileInfo(m_path).baseName(); 0031 } 0032 0033 Q_SIGNALS: 0034 void kcmChanged(); 0035 void pathChanged(); 0036 void nameChanged(); 0037 0038 private: 0039 KQuickConfigModule *m_kcm = nullptr; 0040 QString m_path; 0041 };