Développement/Tutoriels

From KDE TechBase
Revision as of 15:56, 7 September 2020 by ChristianW (talk | contribs) (Created page with "Support de HiDPI")


Voici une liste des tutoriels actuellement disponibles pour développer les applications KDE ou KDE Plasma, ou en utilisant les environnements KDE pour développer des applications tierces.

Bases du développement avec les environnements KDE

Vous êtes intéressés par l'écriture d'applications avec les environnements KDE ? Cette série de tutoriels est adaptée aux nouveaux arrivants.

Configuration
Before you start writing and building KDE software, you'll need to prepare your tools first.
Bonjour le monde
Une introduction aux bases élémentaires de la programmation dans l'environnement KDE
Créer la fenêtre principale
Ce tutoriel montre la magie de l'une des choses les plus importantes dans une application : la fenêtre principale.
Utiliser Actions
Comment ajouter des actions aux menus et aux barres d'outils. Basé sur le tutoriel de la Fenêtre Principale
Sauvegarder et Charger
Présente la bibliothèque KIO en même temps qu'il ajoute à votre application un moyen pour charger ou sauvegarder.
Arguments de la ligne de comande
Ajoute la possibilité de spécifier pour notre éditeur de texte, le fichier à ouvrir à partir de la ligne de commande.
Erreurs communes de programmation
Diverses erreurs communes faites pendant le développement des applications Qt et KDE et comment les éviter.

Integrating with Workspaces

Gestion des sessions
Rendez votre application compatible avec les sessions X
Icônes
Livrer votre application avec les icônes automatiquement installées aux bons endroits. Basé sur le tutoriel Kaction.
Fichier du bureau
Permettre à votre application d'apparaître dans le menu K et dans les menus des applications. Basé sur le tutoriel des icônes.

Gérer les données de configuration avec KConfig

Introduction à KConfig
Un aperçu des classes KConfig et sur la manière de les utiliser dans le code de votre application.
Utiliser KConfig XT
Tutoriel sur la manière d'utiliser efficacement l'environnement de travail KConfig XT.
Mettre à jour les fichiers KConfig
Tutoriel sur la manière d'écrire un script de mise à jour qui garde les modifications dans le format du fichier de configuration de votre application, en synchronisation avec le fichier de configuration déjà présent chez l'utilisateur

Services: Applications et greffons

Introduction à l'environnement de travail des services
Un aperçu des services disponibles dans l'environnement KDE et ce qu'ils peuvent apporter au développeur d'applications. Couvre le sujet du cache de configuration système (SyCoCa), des fichiers de données source, et présente le rôle de l'information indexée.
Recherche des services en utilisant les requêtes Trader
Comment chercher des services comme les modules externes, ou les types Mime, qui sont indexés dans SyCoCa en utilisant la syntaxe des requêtes Trader
Créer et charger des modules externes en utilisant KService
Apprenez comment définir des types de modules externes personnalisés

, à rechercher les modules externes installés (y compris les modules tiers) et à les charger d'une manière facile et portable en utilisant KService.

Localisation

Voir aussi le portail de la localisation.

Introduction à Unicode
Une introduction sur ce qu'est Unicode, mais aussi comment manipuler les données Unicode dans les applications KDE.
Ecrire des applications en voulant utiliser la localisation
Ce tutoriel couvre ce que la localisation représente, pourquoi elle est importante, et comment s'assurer que votre application est prête à être localisée. Devrait être lu par tous les développeurs d'applications.
Eviter de tomber dans les pièges communs de la localisation
Il existe plusieurs erreurs communes qui empêchent les applications d'être localisées correctement. Le but de ce tutoriel est de les trouver et comment faire pour les éviter facilement.
Compiler un module de localisation KDE
Compiler et installer le support de langue à partir du module de localisation de KDE (l10n) est une bonne idée pour ceux qui travaillent sur des applications du répertoire principal du dépôt KDE. Ainsi, cela vous permet de tester votre application dans une autre langue et localisez les zones problématiques. Vous apprendrez cela dans ce même tutoriel.
Insérer i18n dans le système de Build
Une fois que votre application est prête à être localisée, l'étape suivante consiste à s'assurer que les fichiers de traduction sont construits automatiquement et qu'ils sont à jour. Ce tutoriel couvre le sujet des fichiers CMakeFiles.txt additionnels nécessaires ainsi que le processus de distribution de votre application avec les catalogues de messages qui en résultent.
Défits et solutions communes de i18n
Ce tutoriel couvre les challenges que vous auriez éventuellement à affronter, comme la traduction des manuels ou autres données qui existent en dehors du code source, les fusions de produits, la gestion des fichiers .po obsolètes, les points de blocage, le codages dans des langues différentes de l'anglais et la création de versions indépendantes ou le déplacement d'applications entre modules KDE.
Marquage sémantique des messages
Pour assurer d'une présentation cohérente et des représentations plus significatives des messages applicatifs, le marquage sémantique peut être appliqué aux messages marqués 'à traduire' en utilisant le système KUIT. Ce tutoriel décrit comment marche le système.
Vérification automatique des codes i18n
Le vérificateur de code Krazy analyse le code KDE et signale les erreurs i18n communes.
Gérer les changements de langue
Ce tutoriel couvre la gestion du changement de langue: Comment ajouter la fonction pour changer de langue et ensuite comment mettre à jour dynamiquement l'interface utilisateur quand la langue a été changée.
Comprendre comment les messages apparaissent aux traducteurs
Une introduction sur les informations de contexte qui sont extraites du code source (et de ce qui ne l'est pas) afin d'être affichées aux traducteurs.

Automatisation des applications et conception des scripts

D-Bus

Introduction à D-Bus
Une introduction très directe sur les principes système avec D-Bus du point de vue d'un développeur d'applications, ce tutoriel couvre ce qu'est un D-Bus et comment il peut être utilisé par les applications.
Accès aux interfaces D-Bus
Un guide pas à pas pour appeler les méthodes D-Bus et se connecter aux signaux D-Bus en utilisant QtDBus.
D-Bus intermédiaire
Trucs pour utiliser QtDBus avec des interfaces du monde réel qui posent problème.
Créer des interfaces D-Bus
Apprenez comment exposer les fonctionalités de votre application en créant et en utilisant des interfaces D-Bus. Couvre la génération des descriptions XML, l'instanciation des interfaces au moment de l'exécution et la création du build avec CMake.
Utilisation de types personnalisés avec D-Bus
Apprenez à utiliser vos propres types dans les classes exportées sur D-Bus. Couvre le marshaling et le unmarshaling des objets, l'intégration de types personnalisés dans les descriptions XML et l'enregistrement des types personnalisés avec le système Qt Meta Object.
Démarrage automatique des services D-Bus
Transformez votre application en service D-Bus à démarrage automatique à l'aide de ce tutoriel. Cette fonction D-Bus connue également sous le nom de "activation du service D-Bus", va garantir que même lorque votre application ne s'exécute pas, cet appel de D-Bus fonctionnera en se basant sur le démon D-Bus lui-même qui démarrera votre application lorsque ce sera nécessaire.

Dolphin

Créer des menus de services Dolphin
Ce tutoriel vous montre comment créer des actions spécifiques au type de mime dans le menu de contexte Dolphin (aka "servicemenus").

Kross

Introduction à Kross
Une introduction à l'environnement de script Kross.
Bonjour le monde
Une première application avec du code Kross opérationnel.
Appel de fonctions dans Kross
Simple démonstration sur l'appel de fonctions de script
Connecter les signaux aux intervalles dans Kross
Simple démonstration de la connexion des objets signaux avec les intervalles de script
Les scripts en tant que greffons dans Kross
Ce tutoriel est une introduction pas à pas sur la manière d'intégrer les scripts en tant que greffons dans une application KDE.
Mettre les actions de script dans vos menus d'applications
Simple démonstration sur la manière d'étendre vos menus d'applications pour exécuter des fichiers scripts.

Comment utiliser ActionCollection

Un petit tutoriel sur la manière d'utiliser Kross::ActionCollections.

Calligra Plugin Tutorials

Calligra Overview
This document shows an overview of the different Calligra plugin types and tells you what each of their purpose and strengths are. If you are new with Calligra plugins, this is the place to start.
Calligra Plugin Creation
This gives a technical overview of what it means to write a Calligra plugin.
Creating Calligra Flake Plugins
This tutorial shows you how you can build a plugin for Calligra applications to allow you embed content in ODF documents using Flake.
Calligra Words Scripting
This tutorial shows how to script Calligra Words with Python, or JavaScript using Kross.
Calligra Sheets Scripting
This tutorial shows how to script Calligra Sheets with Python, or JavaScript using Kross.


Activité système

Ecrire des actions de script pour menu contextuel des processus
Ce tutoriel montre comment ajouter une action de menu contextuel pour afficher des informations utilisateur concernant un processus.

KWin

KWin tutoriel de script
Ce tutoriel montre comment écrire un script utile pour KWin.
Apparences du QML Window Switcher
Ce tutoriel documente les nouvelles présentations QML du KWin Window Switcher

Modules externes et KParts

Utiliser KParts
Un kPart est un plugin que vous pouvez simplement charger dans votre application. Par exemple, il est facile d'intégrer un éditeur (le katePart) ou une console (le konsolePart) dans la fenêtre de votre application.
Ecrire des modules externes pour Kontact
Les modules externes de Kontact sont des KParts. Ce tutoriel décrit comment en écire un.
Ecire des modules externes Qt Designer
Ajouter vos widgets dans Qt Designer et ainsi rendez-les utilisables dans les fichiers d'interface utilisateur.
Comment faire avec KCM
KCM sont des plugins chargés par la configuration du système pour afficher les éléments de configuration. Ils ne peuvent être utilisés qu'à l'intérieur d'une application.

Inventaire du matériel (Solid)

Introduction à Solid
Une introduction sur l'effort de Solid en général et de sa bibliothèque en particulier.
Lister les périphériques
Comment utiliser la bibliothèque Solid du coeur pour découvrir le matériel et interagir avec le système.
Accéder aux informations réseau
Comment utiliser le système Solid pour obtenir des informations concernant le réseau
Créer une action de périphérique
Lorsque votre application est intéressée pour enregistrer les actions avec le système concernant le matériel amovible

Elargissement des droits et des privileges (KAuth)

Notions de base sur KAuth
Un aperçu des concepts et des connaissances de base pour comprendre et utiliser KAuth efficacement
Utiliser les actions KAuth dans votre application
Comment exécuter les actions KAuth dans votre application, et comment les intégrer en douceur dans votre interface utilisateur
Créer une aide KAuth pour réaliser une action privilégiée
Vous apprendrez comment utiliser les aides KAuth et les fonctions d'escalade progressive, et à faire en sorte qu'une partie privilégiée de votre application puisse interagir de manière transparente avec une partie non privilégiée.
La création d'un KCM nécessite une autorisation lors de l'enregistrement
Apprenez comment utiliser l'API KCModule de haut niveau pour créer des KCModules gérant les autorisations, et leur intégration automatique dans les interfaces utilisateurs.

Multimédia (Phonon)

Phonon
Introduction à Phonon montre comment compiler et exécuter le code. Si vous aimez travailler en Python, essayez cette version du même tutoriel
Ecrire les backends
Comment commencer en créant un nouveau backend pour l'API multimédia
Ressources
Veuillez lire la documentation en ligne pour les informations concernant l'API Phonon. Si vous préférez utiliser Qt Assistant ou Qt Creator vous pouvez aussi voir notre documentation hors connexion.

Plasma 5

Voir les tutoriels Plasma.

Gestion des informations personnelles (Akonadi)

Utiliser Akonadi dans les applications
Afficher et modifier les données fournies par Akonadi
Développer des ressources Akonadi
Les ressources Akonadi sont des programmes agent qui transportent des données PIM entre Akonadi et les backend (fichiers, serveurs, etc)
Utiliser les types de données communs avec Akonadi
Akonadi peut gérer des données arbitraires comme les données d'information des éléments, à travers l'utilisation d'un framework sérialisé basé sur les plugin.

Kate / KWrite

Bien commencer avec les greffons KTextEditor
Créer votre premier module externe KTextEditor
Developper un greffon avec un dialogue de configuration
Ajouter un dialogue de configuration à l'exemple Temps & Date
Un petit éditeur
Créer une petite application en utilisant KTextEditor

KDevelop

Créer un modèle de classe
Instructions pour créer un modèle de classe, qui peut être utilisé pour générer rapidement des classes à partir de KDevelop.
Créer un modèle de projet
Instructions pour créer un modèle de projet, qui peut être utilisé pour démarrer un nouveau projet avec KDevelop.
Introduction à KDevelop-PG-Qt
Informations sur le générateur d'analyseur de KDevelop, utile pour les plugins de langue.

Impression

KDE utilise principalement l' infrastructure d'impression de Qt.

Bonjour le monde
Introduction au système d'impression de KDE

kioslaves

Coopération

Ouvrir les services de collaboration (libattica)

Introduction à Attica
Dans ce tutoriel on crée un simple widget qui affiche les informations concernant une personne qui est sur le serveur.

Obtenir du nouveau matériel

Get Hot New Stuff 3 - Téléchargement
Comment utiliser KHotNewStuff3 dans votre application.
Get New Stuff 3 - Vérifier les mises à jour
Comment vérifier que les mises à jour concernant un matériau installé sont disponibles sans afficher le dialogue/widget.
Get Hot New Stuff 3 - Téléversement
Comment ajouter un dialogue de téléversement à votre application.

Autres langages de programmation

Python (PyQt4)

Note
The tutorials below apply to an older version of Qt only. While there are stable Python bindings available for Qt 5, bindings for KDE Frameworks 5 are still under development.
Une introduction sur PyQt
Décollage avec une introduction à PyQt4
Using PyKDE4
Introduction to PyKDE4
Tutoriel du kit web PyKDE
Un application simple de navigateur web en PyKDE
101 Introduction aux signaux et aux positions
Une simple introduction aux signaux Qt et à l'architecture des emplacements.
Tutoriel PyKDE DBus
Une introduction sur la communication DBus en utilisant PyKDE
Tutoriel de PyKDE KNotify
Une introduction à Knotify (Notifications et KJobs) en utilisant PyKDE

Ruby

Note
The tutorials below apply to an older version of Qt only. There are currently no Ruby bindings for Qt 5 and KDE Frameworks 5 available.
Turotiel KDE Ruby Korundum
Une version de Ruby du tutoriel KDE de Antonio Larrosa Jiménez par Richard Dale. Voir le coin des développeurs Ruby pour les tutoriels Qt et autres informations.
Tutoriel Qt4 Ruby
Tutoriel d'introduction fabuleux de Nokia sur Qt, traduit pour Ruby.
Créer un widget Plasma avec Ruby
Tutoriel montrant comment créer votre première Applet Plasma en utilisant le langage Ruby.
Developper des applications Qt4 en utilisant Qt Designer et Ruby sous Kubuntu
Tutoriel montrant comment concevoir une interface utilisateur simple dans Qt Designer, puis utiliser le widget obtenu dans une application Qt Ruby que nous créons à partir de zéro.
Livre Ruby-Qt/KDE
Il existe également une approche permettant de créer un livre Ruby-Qt/KDE sous licence libre. Le contenu sera créé dans ce wiki.

Le shell

Script Shell avec des dialogues KDE (Lien original)
Tutoriel de Brad Hards qui décrit comment utiliser les dialogues KDE dans les scripts du shell avec kdialog. Il est présenté comme un tutoriel d'exemple de base.

Programmation graphique

Présentation QPainter
Conseils pour éviter les erreurs communes qui conduisent à de piètres performances quand vous utilisez QPainter
Support de HiDPI
How to render sharp GUI for HiDPI display
Migrate Qt Quick Controls 1
Qt Quick Controls 1 is not supported so please follow the guide to upgrade to Qt Quick Controls 2

Utiliser les bibliothèques de jeu de KDE

KStandardGameAction
Utiliser libkdegames pour que votre jeu suive le standard kdegames
Les plus grands scores
Implémenter un simple tableau des plus grands scores dans votre jeu
Sélecteur de thème
Utiliser le dialogue de sélection de thème libkdegames
Les slicers Palapeli
Créer un plugin slicer pour Palapeli

Autres tutoriels

Graphes 2D à points (KPlotWidget)

Utilisation de l'application KDE data-plotting
Ce tutoriel présente KPlotWidget, qui est utilisé pour le traçage de données 2D. Il comprend des informations sur une utilisation simple du widget (notamment l'ajout et la modification d'ensembles de données, ainsi que la personnalisation des axes et des étiquettes du tracé), ainsi qu'une personnalisation avancée (y compris l'extension du widget via des sous-classes).
Simulation Physique
Comment réaliser une simulation physique : animation et diagramme

Contrôle de l'orthographe et de la grammaire (Sonnet)

Ajouter le contrôle orthographique ou grammatical aux applications KDE
Ce tutoriel présente Sonnet et comment l’utiliser pour ajouter la correction linguistique dans votre application KDE. Les fonctions auxiliaires de Sonnet seront décrites dans un tutoriel séparé.

Utiliser l'API KDE Wallet pour la sauvegarde sécurisée

KWallet
"Brève introduction sur l'API KWallet qui peut être utilisée pour ranger toutes sortes d'informations sensibles."

Deprecated Material

Warning
Tutorials in this section are outdated and are no longer relevant to the current state of KDE software. They are being retained here for historical purposes only. Please do not use them.


Accessibilité

Aperçu sur l'accessibilité
Une liste de tutoriels et d'informations générales accessibles.
Points de contrôle concernant l'accessibilté
Ce qu'il faut chercher dans votre application pour la rendre accessible au plus grand nombre possible de personnes.
Lecteur d'écran
Ce tutoriel explique quelques détails concernant l'utilisation les lecteurs d'écran avec les applications KDE.
Texte vers parole
Comment utiliser dans vos applications, le service texte vers parole Jovie

D-Bus

Portage de DCOP vers D-Bus
Portez vos applications de DCOP à D-Bus avec ce guide pratique.

Personal Information Management (Akonadi)

Portage des applications qui utilisent KResource API
Les applications qui utilisent les API KResource actuellement obsolètes de KDE, comme par exemple KABC ou KCal, doivent être portées pour utiliser leurs équivalents Akonadi

Get Hot New Stuff (Recevoir les nouveautés)

Anciens liens pour le contenu de KNS2 et KNS1 :

Introduction à Get Hot New Stuff 2
Un court tutoriel sur la manière d'utiliser KHotNewStuff2 dans votre application. Obsolète, utiliser la version 3
Introduction à Get Hot New Stuff
Une introduction au système de mise à jour réseau convivial pour les développeurs qui permet aux applications KDE d'extraire de nouvelles données d'application lors de l'exécution, de manière conviviale.
KNewStuff Sécurisé (Lien original)
Tutoriel montrant comment partager des ressources d'une manière sécurisée (KDE 3.4 et supérieur). Par András Mantia <[email protected]>.

Goya

Introduction à l'utilisation de Goya
Une introduction à l'utilisation du sous-système Goya, qui vous permet d'ajouter facilement des widgets à vos vues d'éléments et de connecter leurs signaux à votre code, comme s'ils étaient de vrais widgets.
Introduction à l'utilisation de Goya (2ième partie)
La seconde partie du tutoriel, avec un exemple un peu plus complexe que dans la première partie.

Using the KDE PIM Libraries

fonctions iCalendar
Utiliser kcal pour gérer les fichiers iCalendar

Cache Pixmap (KPixmapCache)

Utilisation du cache KDE pixmap
Ce tutoriel montre comment utiliser KPixmapCache pour mettre en cache par exemple les pixmaps générées à partir de SVGs ou de quelques données.

Portage d'une application de KSystemTrayIcon vers KStatusNotifierItem

Portage de KSystemTrayIcon vers KStatusNotifierItem
Ce tutoriel indique comment porter sous KStatusNotifierItem une application qui utilise KSystemTrayIcon

Editer un wiki avec Libmediawiki

Libmediawiki
Ce tutoriel indique comment modifier un wiki avec Libmediawiki.

Matériels pour KDE2 et KDE3

Tutoriels KDE3
Ces tutoriels couvrent les sujets relatifs à KDE3.
Tutoriels KDE2
Ces tutoriels couvrent les sujets relatifs à KDE2.