6 #include <QDesktopServices>
8 # define WIN32_LEAN_AND_MEAN
9 # include <qt_windows.h>
10 # include <shellapi.h>
16 ShellExecuteW(0, L
"open", path.toStdWString().c_str(),
nullptr,
nullptr, SW_SHOWNORMAL);
19 return QProcess::startDetached(path, {});
36 ShellExecuteW(0, L
"open", L
"explorer.exe", p.toStdWString().c_str(),
nullptr, SW_SHOWNORMAL);
38 #elif defined Q_OS_UNIX
41 return QProcess::startDetached(
"nautilus", {path});
50 data.replace(
"+",
"%2B");
51 data.replace(
"/",
"%2F");
52 data.replace(
"=",
"%3D");
58 data.replace(
"%2B",
"+");
59 data.replace(
"%2F",
"/");
60 data.replace(
"%3D",
"=");
66 data.replace(
"+",
"%2B");
67 data.replace(
"/",
"%2F");
68 data.replace(
"=",
"%3D");
74 data.replace(
"%2B",
"+");
75 data.replace(
"%2F",
"/");
76 data.replace(
"%3D",
"=");
82 #if TTK_QT_VERSION_CHECK(5,0,0)
83 data = QUrl(data).toString(QUrl::FullyEncoded);
85 data = QUrl(data).toEncoded();
92 #if TTK_QT_VERSION_CHECK(5,0,0)
93 data = QUrl(data).toString();
95 data = QByteArray::fromPercentEncoding(data.toUtf8());
102 #if TTK_QT_VERSION_CHECK(5,0,0)
103 data = QUrl(data).toString(QUrl::FullyEncoded).toUtf8();
105 data = QUrl(data).toEncoded();
112 #if TTK_QT_VERSION_CHECK(5,0,0)
113 data = QUrl::fromEncoded(data).toString(QUrl::FullyDecoded).toUtf8();
115 data = QByteArray::fromPercentEncoding(data);
TTK_MODULE_EXPORT QString urlEncode(QString &data)
TTK_MODULE_EXPORT bool execute(const QString &path)
TTK_MODULE_EXPORT QString urlPrettyEncode(QString &data)
TTK_MODULE_EXPORT QString urlDecode(QString &data)
TTK_MODULE_EXPORT bool openUrl(const QString &path, bool local=true)
TTK_MODULE_EXPORT QString urlPrettyDecode(QString &data)