atrooney-online-2/src/file_functions.cpp
TrickyLeifa c9f52b7223 Ported to CMake, ...
* Ported the project to CMake
  * Android and Mac support dropped for the time
being.
  * Tests, BASS and Discord-RPC are now options
* Restructured and reformated the project.
  * Merged `include` and `src`
  * Renamed `resource` to `data`
  * Renamed various files
  * External libraries headers are no longer included in `src`
  * Replaced header guards with #pragma once
  * Multiple refactors (keywords, headers)
  * Added Qt6 compatibility
* Removed various unused functions and headers
* Reworked AOPacket
  * When content is passed to AOPacket, it should be ensured that the content is already decoded.
  * Encoding/decoding are now static methods.
* Fixed various memory leaks
* Removed animation code for AOImage
  * AOImage is always using static images
* Simplified ChatLogPiece
2024-05-15 00:04:16 +02:00

55 lines
971 B
C++

#include "file_functions.h"
bool file_exists(QString file_path)
{
if (file_path.isEmpty())
{
return false;
}
QFileInfo check_file(file_path);
return check_file.exists() && check_file.isFile();
}
bool dir_exists(QString dir_path)
{
if (dir_path == "")
{
return false;
}
QDir check_dir(dir_path);
return check_dir.exists();
}
bool exists(QString p_path)
{
QFile file(p_path);
return file.exists();
}
QString get_base_path()
{
QString base_path;
#ifdef ANDROID
QString sdcard_storage = getenv("SECONDARY_STORAGE");
if (dir_exists(sdcard_storage + "/base/"))
{
base_path = sdcard_storage + "/base/";
}
else
{
QString external_storage = getenv("EXTERNAL_STORAGE");
base_path = external_storage + "/base/";
}
#elif defined(__APPLE__)
base_path = QCoreApplication::applicationDirPath() + "/../../../base/";
#else
base_path = QCoreApplication::applicationDirPath() + "/base/";
#endif
return base_path;
}