diff options
Diffstat (limited to 'launcher/DesktopServices.h')
-rw-r--r-- | launcher/DesktopServices.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/launcher/DesktopServices.h b/launcher/DesktopServices.h new file mode 100644 index 00000000..1c081da4 --- /dev/null +++ b/launcher/DesktopServices.h @@ -0,0 +1,36 @@ +#pragma once + +#include <QUrl> +#include <QString> + +/** + * This wraps around QDesktopServices and adds workarounds where needed + * Use this instead of QDesktopServices! + */ +namespace DesktopServices +{ + /** + * Open a file in whatever application is applicable + */ + bool openFile(const QString &path); + + /** + * Open a file in the specified application + */ + bool openFile(const QString &application, const QString &path, const QString & workingDirectory = QString(), qint64 *pid = 0); + + /** + * Run an application + */ + bool run(const QString &application,const QStringList &args, const QString & workingDirectory = QString(), qint64 *pid = 0); + + /** + * Open a directory + */ + bool openDirectory(const QString &path, bool ensureExists = false); + + /** + * Open the URL, most likely in a browser. Maybe. + */ + bool openUrl(const QUrl &url); +} |