Bien que l'implémentation d'un éditeur de plan de travail soit spécifique à votre plug-in et aux ressources à éditer, le plan de travail fournit une structure générale pour la génération d'un éditeur. Les concepts ci-dessous s'appliquent à tous les éditeurs du plan de travail.
Un éditeur doit implémenter IEditorPart et est souvent constitué à partir de l'extension de la classe EditorPart. Un éditeur implémente son interface utilisateur dans la méthode createPartControl. Cette dernière est utilisée pour assembler les widgets SWT ou les afficheurs JFace qui présentent le contenu des éditeurs.
Une entrée d'éditeur est la description de quelque chose à éditer. Vous pouvez envisager une entrée d'éditeur comme un nom de fichier, bien que cela soit plus général. IEditorInput définit le protocole pour une entrée d'éditeur, y compris le nom de l'entrée et l'image devant être utilisés pour la représenter dans les libellés en haut de l'éditeur.
Deux entrées d'éditeur génériques sont fournies dans la plateforme. IFileEditorInput représente une entrée qui est un fichier du système de fichiers. IStorageEditorInput représente une entrée qui est un flux d'octets. Ces octets peuvent émaner de sources autres que le système de fichiers.
Si votre éditeur peut prendre en charge le remplacement de l'objet d'entrée, vous devez implémenter IReusableEditor. L'implémentation de cette interface permet au plan de travail de "recycler" votre éditeur. Les préférences utilisateur du plan de travail permettent à l'utilisateur de décider si des éditeurs doivent être réemployer après l'ouverture d'un certain nombre.
Pour implémenter un historique de navigation dans votre éditeur, vous devez d'abord implémenter INavigationLocationProvider. Le plan de travail dispose ainsi d'un mécanisme de recherche à l'emplacement de navigation en cours (INavigationLocation) , comme requis pour conserver un historique de navigation. Le plan de travail gère le mécanisme de l'interface utilisateur de navigation. INavigationLocation reçoit une notification lorsqu'il doit restaurer l'éditeur à l'emplacement qu'il représente.
Le reste de l'implémentation de votre éditeur dépend du contenu que vous tentez de présenter. Nous allons à présent aborder le type d'éditeur le plus courant : l'éditeur de texte.