20#ifndef LIBREPCB_EDITOR_DESKTOPINTEGRATION_H
21#define LIBREPCB_EDITOR_DESKTOPINTEGRATION_H
54 enum class Mode { Install, Uninstall };
This class represents absolute, well-formatted paths to files or directories.
Definition: filepath.h:129
Allow installing/uninstalling LibrePCB to the desktop environment.
Definition: desktopintegration.h:43
static void storeInstalledFiles(const QSet< FilePath > &files)
Definition: desktopintegration.cpp:236
static FilePath getDesktopFile() noexcept
Definition: desktopintegration.cpp:274
static Status getStatus() noexcept
Check which application is currently installed.
Definition: desktopintegration.cpp:56
static bool execDialog(Mode mode, QWidget *parent) noexcept
Execute dialog to install or uninstall the desktop integration.
Definition: desktopintegration.cpp:120
Mode
Definition: desktopintegration.h:54
static FilePath getExecutable() noexcept
Get the path to the executable to be installed.
Definition: desktopintegration.cpp:76
static void uninstall()
Uninstall this application from the desktop.
Definition: desktopintegration.cpp:103
Status
Definition: desktopintegration.h:48
static bool isSupported() noexcept
Check if this feature is available.
Definition: desktopintegration.cpp:43
static QSet< FilePath > loadInstalledFiles()
Definition: desktopintegration.cpp:222
static FilePath getShareDirectory() noexcept
Definition: desktopintegration.cpp:283
static void updateDatabase()
Definition: desktopintegration.cpp:252
static QHash< FilePath, QByteArray > getFileContentToInstall()
Definition: desktopintegration.cpp:190
static FilePath getConfigFile() noexcept
Definition: desktopintegration.cpp:279
static void install()
Install this application to the desktop.
Definition: desktopintegration.cpp:85
DesktopIntegration()=delete
Definition: occmodel.cpp:77