6#include <score_lib_base_export.h>
10struct DocumentContext;
51 QString documentFolder() const noexcept;
61QString pickerStartFolder(
62 const QString& current, const
PathRoots& roots, const QString& userDocuments,
63 const QString& workingDir) noexcept;
72QString locateFilePath(const QString& filename, const
PathRoots& roots) noexcept;
78QString relativizeFilePath(const QString& filename, const
PathRoots& roots) noexcept;
84bool isUnderFolder(const QString& path, const QString& folder) noexcept;
88bool isProjectRelativePath(const QString& path) noexcept;
90bool isLibraryRelativePath(const QString& path) noexcept;
97QString sanitizeFileName(const QString& name) noexcept;
102bool sameFileContents(const QString& lhs, const QString& rhs) noexcept;
119 bool collectLibraryFiles =
false;
123 bool useKindSubfolders =
true;
127 bool keepSourceFolderName =
false;
153 bool alreadyInProject{};
159 Placement place(
const QString& absoluteSource,
FileKind kind);
161 const QString& projectFolder() const noexcept {
return m_root; }
162 const ConsolidateOptions& options() const noexcept {
return m_opts; }
165 QString subfolderFor(
const QString& absoluteSource, FileKind kind)
const;
168 QString m_canonicalRoot;
169 ConsolidateOptions m_opts;
170 QHash<QString, Placement> m_placed;
171 QSet<QString> m_claimed;
179 const QString& source,
const QString& destination, CopyMode mode, QString& error);
Decides where each source file goes inside a project folder.
Definition ProjectFiles.hpp:144
Base toolkit upon which the software is built.
Definition Application.cpp:113
FileKind guessFileKind(const QString &path) noexcept
Definition ProjectFiles.cpp:30
QString mediaSubfolder(FileKind k) noexcept
Name of the project sub-folder collected files of that kind go into.
Definition ProjectFiles.cpp:76
bool materializeFile(const QString &source, const QString &destination, CopyMode mode, QString &error)
Definition ProjectFiles.cpp:422
CopyMode
How a collected file is materialized in the project folder.
Definition ProjectFiles.hpp:106
@ Symlink
A symbolic link to the original.
@ Copy
An independent copy.
FileKind
Definition ProjectFiles.hpp:15
Definition ProjectFiles.hpp:113
Definition DocumentContext.hpp:18
Definition ProjectFiles.hpp:149
QString destination
Absolute destination path.
Definition ProjectFiles.hpp:151
Definition ProjectFiles.hpp:43
QString library
Absolute path of the user library root. May be empty.
Definition ProjectFiles.hpp:48
QString documentFile
Definition ProjectFiles.hpp:46
Definition PluginRequirements_QtInterface.hpp:13