mirror of
https://github.com/Qv2ray/Qv2ray.git
synced 2025-05-21 11:20:49 +08:00
62 lines
1.7 KiB
C++
62 lines
1.7 KiB
C++
#ifndef UTILS_H
|
|
#define UTILS_H
|
|
|
|
#include "Qv2rayBase.h"
|
|
#include <QMessageBox>
|
|
#include <QUuid>
|
|
|
|
namespace Qv2ray
|
|
{
|
|
namespace Utils
|
|
{
|
|
QTranslator *getTranslator(const QString *lang);
|
|
|
|
QStringList getFileList(QDir *dir);
|
|
|
|
QString Base64Encode(QString string);
|
|
QString Base64Decode(QString string);
|
|
|
|
bool CheckFile(QDir *dir, QString fileName);
|
|
|
|
void SetConfigDirPath(const QString *path);
|
|
QString GetConfigDirPath();
|
|
|
|
void SetGlobalConfig(const Qv2rayConfig *conf);
|
|
Qv2rayConfig GetGlobalConfig();
|
|
|
|
void SaveGlobalConfig();
|
|
void LoadGlobalConfig();
|
|
|
|
void QvMessageBox(QWidget *parent, QString title, QString text);
|
|
int QvMessageBoxAsk(QWidget *parent, QString title, QString text, QMessageBox::StandardButton extraButtons = QMessageBox::NoButton);
|
|
//
|
|
bool StringToFile(const QString *text, QFile *target);
|
|
QString StringFromFile(QFile *sourceFile);
|
|
//
|
|
QJsonObject JsonFromString(QString string);
|
|
QString JsonToString(QJsonObject json);
|
|
//
|
|
QString Stringify(list<string> list, QString saperator = ";");
|
|
QString Stringify(QList<QString> list, QString saperator = ";");
|
|
//
|
|
//
|
|
template <typename TYPE>
|
|
QString StructToJsonString(const TYPE t)
|
|
{
|
|
return QString::fromStdString(X::tojson(t, "", 4, ' '));
|
|
}
|
|
//
|
|
//
|
|
template <typename TYPE>
|
|
TYPE StructFromJsonString(const QString &str)
|
|
{
|
|
TYPE v;
|
|
X::loadjson(str.toStdString(), v, false);
|
|
return v;
|
|
}
|
|
}
|
|
}
|
|
|
|
using namespace Qv2ray::Utils;
|
|
#endif // UTILS_H
|