File indexing completed on 2024-04-14 04:52:21

0001 /*
0002  * SPDX-FileCopyrightText: 2022 Kai Uwe Broulik <kde@broulik.de>
0003  * SPDX-License-Identifier: GPL-2.0-or-later
0004  */
0005 
0006 #pragma once
0007 
0008 #include <QString>
0009 #include <QUrl>
0010 
0011 class AfcUrl
0012 {
0013 public:
0014     explicit AfcUrl(const QUrl &url);
0015 
0016     enum class BrowseMode { None, FileSystem, Apps };
0017 
0018     QUrl url() const;
0019 
0020     BrowseMode browseMode() const;
0021 
0022     // NOTE make sure to resolve friendly names
0023     QString device() const;
0024     QString appId() const;
0025     QString path() const;
0026 
0027     bool isValid() const;
0028 
0029 private:
0030     QUrl m_url;
0031     BrowseMode m_browseMode = BrowseMode::None;
0032     QString m_device;
0033     QString m_appId;
0034     QString m_path;
0035 };