File indexing completed on 2024-06-02 05:24:51
0001 /* -*- mode: c++; c-basic-offset:4 -*- 0002 utils/path-helper.h 0003 0004 This file is part of Kleopatra, the KDE keymanager 0005 SPDX-FileCopyrightText: 2009 Klarälvdalens Datakonsult AB 0006 0007 SPDX-License-Identifier: GPL-2.0-or-later 0008 */ 0009 0010 #pragma once 0011 0012 #include <QtSystemDetection> 0013 0014 class QString; 0015 #include <QStringList> 0016 class QDir; 0017 class QFileInfo; 0018 0019 namespace Kleo 0020 { 0021 0022 QString heuristicBaseDirectory(const QStringList &files); 0023 QStringList makeRelativeTo(const QDir &dir, const QStringList &files); 0024 QStringList makeRelativeTo(const QString &dir, const QStringList &files); 0025 QString stripSuffix(const QString &fileName); 0026 0027 /** 0028 * Checks if the file/directory referenced by \p fi is writable. 0029 * 0030 * On Windows, a temporary file is created to check if a directory is writable. 0031 * \sa QFileInfo::isWritable 0032 */ 0033 bool isWritable(const QFileInfo &fi); 0034 0035 #ifdef Q_OS_WIN 0036 void recursivelyRemovePath(const QString &path); 0037 bool recursivelyCopy(const QString &src, const QString &dest); 0038 bool moveDir(const QString &src, const QString &dest); 0039 #endif 0040 }