/* This file is part of the KDE project SPDX-FileCopyrightText: 2007 Kevin Ottens SPDX-FileCopyrightText: 2007 David Faure SPDX-FileCopyrightText: 2023 Harald Sitter SPDX-FileCopyrightText: 2023 Kai Uwe Broulik SPDX-License-Identifier: LGPL-2.0-only */ #ifndef KFILEPLACESMODEL_P_H #define KFILEPLACESMODEL_P_H #include #include #include #include #include #include class KBookmarkManager; class KCoreDirLister; class KFilePlacesItem; class KFilePlacesModel; class QUrl; namespace Solid { class StorageAccess; } class KFilePlacesModelPrivate { public: explicit KFilePlacesModelPrivate(KFilePlacesModel *qq); KFilePlacesModel *const q; static QString ignoreMimeType(); static QString internalMimeType(const KFilePlacesModel *model); QList items; QList availableDevices; QMap setupInProgress; QMap teardownInProgress; QStringList supportedSchemes; Solid::Predicate predicate; KBookmarkManager *bookmarkManager; const bool fileIndexingEnabled; void reloadAndSignal(); QList loadBookmarkList(); int findNearestPosition(int source, int target); QList tags; const QString tagsUrlBase = QStringLiteral("tags:/"); KCoreDirLister *tagsLister = nullptr; void initDeviceList(); void deviceAdded(const QString &udi); void deviceRemoved(const QString &udi); void itemChanged(const QString &udi, const QList &roles); void reloadBookmarks(); void storageSetupDone(Solid::ErrorType error, const QVariant &errorData, Solid::StorageAccess *sender); void storageTeardownDone(const QString &filePath, Solid::ErrorType error, const QVariant &errorData, QObject *sender); private: bool isBalooUrl(const QUrl &url) const; }; #endif // KFILEPLACESMODEL_P_H