| Das KDevelop-Programmierhandbuch: Leitfaden zur C++-Anwendungsentwicklung für das K Desktop Environment (KDE) mit Hilfe der KDevelop-IDE in der Version 1.2 | ||
|---|---|---|
| Zurück | Kapitel 14. File System Usage for KDevelop Projects | Vor |
The KApplication class offers the following methods to access the KDE File System:
void invokeHTMLHelp ( QString aFilename, QString aTopic ) const static const QString& kde_htmldir () static const QString& kde_appsdir () static const QString& kde_icondir () static const QString& kde_datadir () static const QString& kde_localedir () static const QString& kde_cgidir () static const QString& kde_sounddir () static const QString& kde_toolbardir () static const QString& kde_wallpaperdir () static const QString& kde_bindir () static const QString& kde_configdir () static const QString& kde_mimedir () static QString localkdedir () static QString localconfigdir () static QString findFile ( const char *file ) |
&#;define kapp KApplication::getKApplication()
Therefore, the methods are generally used like this:
QString sounddir=kapp->kde_sounddir(); |
Within these methods,
void invokeHTMLHelp( QString aFilename, QString aTopic ) const [public] |
takes a special position to invoke the KDE help. Generally, you should use it everywhere a user needs to access information, e.g. when he is presented a modal dialog. The F1 key will not work to invoke the help contents, also the user should be presented the according help page. To make a good use of it, add a "Help" button to your dialog and create a slot that is used to connect on signal pressed(). In this method, use invokeHTMLHelp() with the according page and subject; in case your application's documentation isn't written completely yet, leave this open to complete it after the documentation is in sync with the application.
The documentation of KApplication says:
Invoke the kdehelp HTML help viewer.
Parameters: aTopic This allows context-sensitive help. Its value will be appended to the filename, prefixed with a "&#;" (hash) character.
aFilename: The filename that is to be loaded. Its location is computed automatically according to the KFSSTND. If aFilename is empty, the logical appname with .html appended to it is used.
The methods of KApplication will retrieve the following path's.
kde_htmldir() kdedir()/share/doc/HTML Returns the directory where KDE stores
its HTML documentation
kde_appsdir() kdedir()/share/applnk Returns the directory where KDE applications
store their .kdelnk file
kde_icondir() kdedir()/share/icons Returns the directory where KDE icons are stored
kde_datadir() kdedir()/share/apps Returns the directory where KDE applications
store their specific data
kde_localedir() kdedir()/share/locale Returns the directory where locale-specific
information (like translated on-screen messages) are stored
kde_cgidir() kdedir()/cgi-bin Returns the directory where cgi scripts are stored
kde_sounddir() kdedir()/share/sounds Returns the directory where sound data are stored.
This directory is for KDE specific sounds.
Sound data of Applications should go
into kde_datadir()
kde_toolbardir() kdedir()/share/toolbar Returns the directory where toolbar icons are stored
kde_wallpaperdir() kdedir()/share/wallpapers Returns the directory where KDE wallpaper files are stored
kde_bindir() kdedir()/bin Returns the directory where KDE application binaries are stored
kde_configdir() kdedir()/share/config Returns the directory where config files are stored
kde_mimedir() kdedir()/share/mimelnk Returns the directory where mimetypes are stored
localkdedir() $HOME/.kde Get the local KDE base dir
localconfigdir() $HOME/.kde/share/config Get the local KDE config dir |
To search for a specific file, use findFile(const char *file) which will search several path's of the KDE File System:
$KDEDIR,
$KDEPATH,
"&[;KDE Setup&];:Path=" entry in a config file.
If the file is not found, the QString method isEmpty() will return True