L'environnement de bureau K

14.2. Méthodes de KApplication

La classe KApplication offre les méthodes suivantes pour accéder au système de fichiers KDE :
 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 )

Les méthodes sont généralement utilisées avec l'instance de KApplication de votre application, où KApplication offre une macro kapp destinée à recevoir le pointeur :

&#;define kapp KApplication::getKApplication()

Les méthodes sont donc généralement utilisées de la façon suivante :
 QString sounddir=kapp->kde_sounddir();
Cet exemple enregistre le chemin du répertoire son de KDE sous forme d'une QString, où vous ajouterez par exemple le nom d'un fichier son. Vous pouvez ensuite utiliser cette information et jouer un fichier son qui se trouve là. Vous devriez toujours tester l'existence d'un fichier en utilisant la méthode exists() de la classe QFileInfo.

Au sein de ces méthodes,

 void invokeHTMLHelp( QString aFilename, QString aTopic ) const [public]

occupe une place privilégiée, puisqu'elle sert à appeler l'aide de KDE. Généralement, vous devriez l'employer partout où l'utilisateur peut avoir besoin d'aide, par exemple lorsqu'on lui présente une boîte de dialogue. La touche F1 ne servira pas à afficher le contenu de l'aide, mais la page d'aide correspondante. Pour en faire bon usage, ajoutez un bouton "Aide" à votre boîte de dialogue et créez un slot à connecter au signal pressed(). Dans cette méthode, utilisez invokeHTMLHelp() avec la page et le sujet correspondants ; au cas où la documentation de votre application n'est pas terminée, laissez cette section vide afin de la compléter par la suite.

La documentation de KApplication dit :

Appelle le visualiseur d'aide HTML kdehelp.

Paramètres& ;: aTopic& ;: cela permet l'aide contextuelle. Sa valeur sera concaténée au nom de fichier, précédé d'un "&#;" (dièse).

aFilename& ;: le nom du fichier à charger. Son emplacement est déterminé automatiquement selon le KFSSTND. Si aFilename est vide, on utilise le nom logique de l'application (appname) suivi de .html.

Les méthodes de KApplication extrairont les chemins suivants :

 kde_htmldir()         kdedir()/share/doc/HTML         Renvoie le répertoire où KDE enregistre
                                                       sa documentation HTML
 
 kde_appsdir()         kdedir()/share/applnk           Renvoie le répertoire où les applications KDE
                                                       enregistrent leur fichier .kdelnk
 
 kde_icondir()         kdedir()/share/icons            Renvoie le répertoire où les icônes KDE sont stockées
 
 kde_datadir()         kdedir()/share/apps             Renvoie le répertoire où les applications KDE
                                                       enregistrent leurs données propres
 
 kde_localedir()       kdedir()/share/locale           Renvoie le répertoire où les information relatives aux pays
                                                       (comme les messages traduits par exemple) sont enregistrées
 
 kde_cgidir()          kdedir()/cgi-bin                Renvoie le répertoire où sont stockés les scripts cgi
 
 kde_sounddir()        kdedir()/share/sounds           Renvoie le répertoire où les données sonores sont stockées.
                                                       Ce répertoire est destiné aux sons spécifiques à KDE.
                                                       Les données sonores des applications devraient aller
                                                       dans le répertoire kde_datadir()
 
 kde_toolbardir()      kdedir()/share/toolbar          Renvoie le répertoire où les icônes de barres d'outils sont stockées
 
 kde_wallpaperdir()    kdedir()/share/wallpapers       Renvoie le répertoire où les fonds d'écran KDE sont stockés
 
 kde_bindir()          kdedir()/bin                    Renvoie le répertoire où les binaires des applications KDE sont stockés
 
 kde_configdir()       kdedir()/share/config           Renvoie le répertoire où les fichiers de configuration sont stockés
 
 kde_mimedir()         kdedir()/share/mimelnk          Renvoie le répertoire où les types MIME sont stockés
 
 localkdedir()         $HOME/.kde                      Renvoie le répertoire de base de KDE
 
 localconfigdir()      $HOME/.kde/share/config         Renvoie le répertoire de configuration local de KDE

Pour rechercher un fichier particulier, utilisez findFile(const char *file) qui recherchera parmi plusieurs chemins du Système de Fichiers de KDE :

  1. $KDEDIR

  2. $KDEPATH

  3. "&[;KDE Setup&];:Path=" entrée dans un fichier de configuration

Si le fichier est introuvable, la méthode isEmpty() de la classe QString renverra True (Vrai)