From 3958fa914c8a524ed4b6a5b035b794e12708fa1d Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Thu, 1 Mar 2018 22:42:01 +0000 Subject: Import ultracopier_1.4.0.4.orig.tar.xz [dgit import orig ultracopier_1.4.0.4.orig.tar.xz] --- ResourcesManager.h | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 ResourcesManager.h (limited to 'ResourcesManager.h') diff --git a/ResourcesManager.h b/ResourcesManager.h new file mode 100644 index 0000000..fec25da --- /dev/null +++ b/ResourcesManager.h @@ -0,0 +1,54 @@ +/** \file ResourcesManager.h +\brief Define the class to manage and load the resources linked with the themes +\author alpha_one_x86 +\licence GPL3, see the file COPYING */ + +#ifndef RESOURCES_MANAGER_H +#define RESOURCES_MANAGER_H + +#include +#include +#include +#include + +#include "Environment.h" + +/** \brief Define the class to manage and load the resources linked with the themes + +This class provide a core load and manage the resources */ +class ResourcesManager : public QObject +{ + Q_OBJECT + public: + /// \brief Create the manager and load the default variable + ResourcesManager(); + /// \brief Destroy the resource manager + ~ResourcesManager(); + static ResourcesManager *resourcesManager; + /** \brief Get folder presence and the path + \return Empty QString if not found */ + std::string getFolderReadPath(const std::string &path) const; + /** \brief Get folder presence, the path and check in the folder and sub-folder the file presence + \return Empty QString if not found */ + std::string getFolderReadPathMultiple(const std::string &path,const std::vector &fileToCheck) const; + bool checkFolderContent(const std::string &path,const std::vector &fileToCheck) const; + /// \brief add / or \ in function of the platform at the end of path if both / and \ are not found + static std::string AddSlashIfNeeded(const std::string &path); + /// \brief get the writable path + const std::string &getWritablePath() const; + /// \brief disable the writable path, if ultracopier is unable to write into + bool disableWritablePath(); + /// \brief get the read path + const std::vector &getReadPath() const; + /// \brief remove folder + static bool removeFolder(const std::string &dir); + private: + /// \brief List of the path to read only access + std::vector searchPath; + /// \brief The writable path, empty if not found + std::string writablePath; + /// \brief match with slash end + static std::regex slashEnd; +}; + +#endif // RESOURCES_MANAGER_H -- cgit v1.2.3