File indexing completed on 2024-05-12 17:07:10
0001 /* 0002 SPDX-FileCopyrightText: 2020 Kevin Ottens <kevin.ottens@enioka.com> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <KCoreConfigSkeleton> 0010 0011 class XdgPathsSettingsStore; 0012 0013 class DesktopPathsSettings : public KCoreConfigSkeleton 0014 { 0015 Q_OBJECT 0016 public: 0017 DesktopPathsSettings(QObject *parent = nullptr); 0018 0019 QUrl desktopLocation() const; 0020 void setDesktopLocation(const QUrl &url); 0021 QUrl defaultDesktopLocation() const; 0022 0023 QUrl documentsLocation() const; 0024 void setDocumentsLocation(const QUrl &url); 0025 QUrl defaultDocumentsLocation() const; 0026 0027 QUrl downloadsLocation() const; 0028 void setDownloadsLocation(const QUrl &url); 0029 QUrl defaultDownloadsLocation() const; 0030 0031 QUrl musicLocation() const; 0032 void setMusicLocation(const QUrl &url); 0033 QUrl defaultMusicLocation() const; 0034 0035 QUrl picturesLocation() const; 0036 void setPicturesLocation(const QUrl &url); 0037 QUrl defaultPicturesLocation() const; 0038 0039 QUrl videosLocation() const; 0040 void setVideosLocation(const QUrl &url); 0041 QUrl defaultVideosLocation() const; 0042 0043 QUrl publicLocation() const; 0044 void setPublicLocation(const QUrl &url); 0045 QUrl defaultPublicLocation() const; 0046 0047 QUrl templatesLocation() const; 0048 void setTemplatesLocation(const QUrl &url); 0049 QUrl defaultTemplatesLocation() const; 0050 0051 Q_SIGNALS: 0052 void widgetChanged(); 0053 0054 private: 0055 void addItemInternal(const QByteArray &propertyName, const QVariant &defaultValue); 0056 0057 private: 0058 XdgPathsSettingsStore *const m_xdgPathsStore; 0059 };