KIO::DesktopExecParser
#include <KIO/DesktopExecParser>
Public Member Functions | |
DesktopExecParser (const KService &service, const QList< QUrl > &urls) | |
~DesktopExecParser () | |
QString | errorMessage () const |
QStringList | resultingArguments () const |
void | setSuggestedFileName (const QString &suggestedFileName) |
void | setUrlsAreTempFiles (bool tempFiles) |
Static Public Member Functions | |
static QString | executableName (const QString &execLine) |
static QString | executablePath (const QString &execLine) |
static bool | hasSchemeHandler (const QUrl &url) |
static bool | isProtocolInSupportedList (const QUrl &url, const QStringList &supportedProtocols) |
static QStringList | supportedProtocols (const KService &service) |
Detailed Description
Parses the Exec= line from a .desktop file, and process all the '%' placeholders, e.g. handling URLs vs local files.
The processing actually happens when calling resultingArguments(), after setting everything up.
- Since
- 5.0
Constructor & Destructor Documentation
◆ DesktopExecParser()
Creates a parser for a desktop file Exec line.
- Parameters
-
service the service to extract information from. The KService instance must remain alive as long as the parser is alive. urls The urls the service should open.
Definition at line 251 of file desktopexecparser.cpp.
◆ ~DesktopExecParser()
KIO::DesktopExecParser::~DesktopExecParser | ( | ) |
Destructor.
Definition at line 256 of file desktopexecparser.cpp.
Member Function Documentation
◆ errorMessage()
QString KIO::DesktopExecParser::errorMessage | ( | ) | const |
- Returns
- an error message for when resultingArguments() returns an empty list
- Since
- 5.71
Definition at line 570 of file desktopexecparser.cpp.
◆ executableName()
Given a full command line (e.g. the Exec= line from a .desktop file), extract the name of the executable being run (removing the path, if specified).
- Parameters
-
execLine the full command line
- Returns
- the name of the executable to run, example: "ls"
Definition at line 576 of file desktopexecparser.cpp.
◆ executablePath()
Given a full command line (e.g. the Exec= line from a .desktop file), extract the name of the executable being run, including its full path, if specified.
- Parameters
-
execLine the full command line
- Returns
- the name of the executable to run, example: "/bin/ls"
Definition at line 583 of file desktopexecparser.cpp.
◆ hasSchemeHandler()
|
static |
Returns true if protocol
should be opened by a "handler" application, i.e. an application associated to all URLs using this protocol (a.k.a.
scheme).
Definition at line 220 of file desktopexecparser.cpp.
◆ isProtocolInSupportedList()
|
static |
Returns true if protocol
is in the list of protocols returned by supportedProtocols().
The only reason for this method is the special handling of "KIO".
Definition at line 210 of file desktopexecparser.cpp.
◆ resultingArguments()
QStringList KIO::DesktopExecParser::resultingArguments | ( | ) | const |
- Returns
- a list of arguments suitable for QProcess. Returns an empty list on error, check errorMessage() for details.
Definition at line 325 of file desktopexecparser.cpp.
◆ setSuggestedFileName()
void KIO::DesktopExecParser::setSuggestedFileName | ( | const QString & | suggestedFileName | ) |
Sets the file name to use in the case of downloading the file to a tempfile in order to give to a non-url-aware application.
Some apps rely on the extension to determine the MIME type of the file. Usually the file name comes from the URL, but in the case of the HTTP Content-Disposition header, we need to override the file name.
Definition at line 265 of file desktopexecparser.cpp.
◆ setUrlsAreTempFiles()
void KIO::DesktopExecParser::setUrlsAreTempFiles | ( | bool | tempFiles | ) |
If tempFiles
is set to true and the urls given to the constructor are local files, they will be deleted when the application exits.
Definition at line 260 of file desktopexecparser.cpp.
◆ supportedProtocols()
|
static |
Returns the list of protocols which the application supports.
This can be a list of actual protocol names, or just "KIO" for KIO-based apps.
Definition at line 181 of file desktopexecparser.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Nov 8 2024 11:56:20 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.