File indexing completed on 2024-05-19 05:00:39
0001 /* 0002 * SPDX-FileCopyrightText: 2014 Daniel Vrátil <dvratil@redhat.com> 0003 * SPDX-FileCopyrightText: 2016 Elvis Angelaccio <elvis.angelaccio@kde.org> 0004 * SPDX-FileCopyrightText: 2019 David Barchiesi <david@barchie.si> 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 * 0008 */ 0009 0010 #ifndef GDRIVEURL_U 0011 #define GDRIVEURL_U 0012 0013 #include <QUrl> 0014 0015 class GDriveUrl 0016 { 0017 public: 0018 explicit GDriveUrl(const QUrl &url); 0019 0020 QString account() const; 0021 QString filename() const; 0022 bool isRoot() const; 0023 bool isAccountRoot() const; 0024 bool isNewAccountPath() const; 0025 bool isTopLevel() const; 0026 bool isSharedWithMeRoot() const; 0027 bool isSharedWithMeTopLevel() const; 0028 bool isSharedWithMe() const; 0029 bool isSharedDrivesRoot() const; 0030 bool isSharedDrive() const; 0031 bool isTrashDir() const; 0032 bool isTrashed() const; 0033 QUrl url() const; 0034 QString parentPath() const; 0035 QStringList pathComponents() const; 0036 0037 static QString buildSharedDrivePath(const QString &accountId, const QString &drive); 0038 0039 static const QString Scheme; 0040 static const QString SharedWithMeDir; 0041 static const QString SharedDrivesDir; 0042 static const QString TrashDir; 0043 static const QString NewAccountPath; 0044 0045 private: 0046 QUrl m_url; 0047 QStringList m_components; 0048 }; 0049 0050 #endif // GDRIVEURL_U