Ci-dessous figurent les descriptions des modifications principales de la plateforme Eclipse et de SWT pour la version 3.2.
Ce document contient également de nombreuses fonctions destinées aux utilisateurs finals de la plateforme qui apparaissent dans la section Nouveautés du guide d'utilisation du plan de travail.
Modifications de la plate-forme
|
|
Restructuration d'exécution |
Afin de rendre l'exécution d'Eclipse plus flexible et de permettre une utilisation indépendante des composants d'exécution, le plug-in org.eclipse.core.runtime a été découpé en différents plug-ins :
De nouvelles API ont été ajoutées pour faciliter le contrôle des parties d'exécution séparées. La restructuration d'exécution doit être transparente pour les autres plug-ins. Pour plus d'informations, consultez le guide de migration de la plateforme Eclipse 3.2. |
Navigateur commun |
Un nouveau plug-in, org.eclipse.ui.navigator, introduit une infrastructure permettant la génération d'afficheurs regroupant le contenu de plusieurs modèles de domaine.
L'infrastructure permet la contribution déclarative de contenu, libellés, actions, filtres et d'autres fonctions. Le plug-in org.eclipse.ui.navigator.resources fournit une utilisation concrète de cette infrastructure sous la forme d'une vue Explorateur de projets et des extensions d'afficheur déclaratif pour le modèle IResource.
|
Structure des propriétés sous forme d'onglets |
Une structure des propriétés sous forme d'onglets a été ajoutée. Elle fournit une page de propriétés de remplacement, permettant d'afficher les propriétés dans la vue correspondante à l'aide de commandes arbitraires. Elle contient différents onglets et sections contribués via le registre d'extension.
Consultez l'article The Eclipse Tabbed Properties View pour plus d'informations. |
API de système de fichiers |
Un nouveau plug-in, org.eclipse.core.filesystem, introduit une nouvelle API générique permettant d'interagir avec les systèmes de fichiers. La plateforme a été migrée afin d'utiliser cette API de système de fichiers au lieu des API java.io. Cela signifie que des ressources peuvent être créées dans des systèmes de fichiers de sauvegarde arbitraires, et des plug-ins peuvent fournir une prise en charge des nouveaux types de système de fichiers. Une prise en charge a été ajoutée aux assistants de projet et de ressources liées pour créer les ressources liées aux autres systèmes de fichiers. Les plug-ins qui définissent d'autres systèmes de fichiers peuvent intégrer cette prise en charge d'assistant à l'aide du point d'extension org.eclipse.ui.ide.filesystemSupport. |
Catégorisation ajoutée aux opérations d'importation et exportation |
Les points d'extension |
Infobulles pour les annotations dans les éditeurs de texte |
Le pointage d'annotation a été introduit à partir du texte JDT vers le texte de la plateforme. La prise en charge du pointage de la règle d'affichage, la règle verticale et du texte est installée par TextSourceViewerConfiguration qui est utilisé par les éditeurs de texte :
|
Navigation dans les annotations des éditeurs de texte |
La navigation dans les annotations a été introduite à partir du texte JDT vers le texte de la plateforme et est désormais disponible dans tous les éditeurs de texte.
|
Assistance de zone JFace |
JFace introduit une nouvelle prise en charge afin d'aider l'utilisateur à compléter les zones situées dans les boîtes de dialogue et les formulaires. Le package org.eclipse.jface.fieldassist contient des classes qui vous permettent de décorer des commandes arbitraires avec des images et le texte de survol correspondant. Ces commandes peuvent être utilisées, par exemple, pour marquer les zones obligatoires d'une boîte de dialogue, afficher des conditions d'erreur basées sur des zones ou des invites d'assistant de contenu. Le package permet également d'installer des propositions de contenu sur une commande, notamment une boîte de dialogue en incrustation contenant des propositions de contenu, des fenêtres en incrustation secondaires contenant des informations complémentaires et des options pour l'appel explicite de propositions ou dans un style automatique (frappe en continu).
|
Améliorations de l'afficheur d'arborescence JFace |
AbstractTreeViewer prend désormais en charge plusieurs éléments identiques dans une arborescence, chacun avec une chaîne parent différente. Cette prise en charge nécessite que les clients activent la mappe d'éléments en appelant setUseHashLookup(true). TreeViewer prend à présent en charge les arborescences SWT.VIRTUAL. Un fournisseur de contenu lent correspondant, ILazyTreeContentProvider, renvoie uniquement le contenu lorsque ce dernier est nécessaire. |
Prise en charge du contenu d'aide dynamique |
Le système d'aide prend désormais en charge la composition dynamique des tables des matières. Les rubriques créées en XHMTL peuvent contenir un marquage supplémentaire spécifique à Eclipse pour le filtrage automatique du contenu en fonction des valeurs os/ws/arch, de la présence des plug-ins, des fonctions activées, etc. Le contenu partagé peut être inclus dans plusieurs documents. Enfin, les plug-ins peuvent contribuer des fragments XHTML qui s'associent à des ancrages dans d'autres documents. Tout ces éléments permettent aux développeurs d'information de fournir des documents dynamiques qui s'adaptent au contexte lors de l'affichage. |
Améliorations de la recherche dans l'aide |
L'indexation de l'aide aux utilisateurs et la recherche ont été améliorées à différents égards. Des participants à la recherche supplémentaires peuvent être enregistrés via un point d'extension capable d'ajouter du contenu à l'index Lucene. L'aide ajoute à présent un participant à la recherche XHTML capable d'indexer des documents d'aide dynamique créés au format XHMTL (voir précédemment). Par ailleurs, les documents qui ne figuraient pas préalablement dans l'index n'apparaissent pas (par exemple, les aide-mémoire et les pages de bienvenue). Les résultats de la recherche peuvent avoir différentes icônes et l'action 'open' peut être déléguée au moteur de recherche. |
Possibilité de regrouper les erreurs |
Les erreurs de la vue Erreurs peuvent maintenant être regroupées. Il existe des regroupements par défaut selon la gravité et le type d'erreur et des groupes supplémentaires peuvent être définis à l'aide du point d'extension org.eclipse.ui.ide.markerSupport. |
Aide améliorée dans les boîtes de dialogue |
La plupart des boîtes de dialogue dans Eclipse disposent à présent d'un bouton d'aide situé dans le coin inférieur gauche. Ce bouton appelle l'aide contextuelle, exactement comme si vous appuyiez sur la touche F1 (sous Windows). En outre, la table des matières apparaît maintenant dans la zone de la boîte de dialogue au lieu d'apparaître dans une fenêtre séparée. Les boîtes de dialogue personnalisées peuvent hériter de cette fonctionnalité en sous-classant la nouvelle classe TrayDialog au lieu de Dialog. Les aide-mémoire peuvent aussi vous suivre dans les boîtes de dialogue (dans la zone) pour les étapes qui nécessitent l'ouverture de boîtes de dialogue. |
Inclure des liens vers des commandes dans le contenu de l'aide aux utilisateurs |
Les liens inclus dans l'Aide, les aide-mémoire et le contenu d'introduction peuvent à présent exécuter des commandes lorsqu'ils sont activés par l'utilisateur. Les liens vers des commandes peuvent être utilisés pour ouvrir des pages de préférences, des assistants de lancement, des vues, des perspectives, et bien d'autres fonctions. La structure des commandes est extensible. De nombreuses autres utilisations des liens sont possibles. Le document Plan de travail - Guide de l'utilisateur a été enrichi grâce à des nouveaux liens vers des commandes. L'illustration ci-dessous représente deux liens à une commande dans une rubrique d'aide :
|
Prise en charge des commandes de lancement à partir des aide-mémoire |
Les commandes peuvent désormais être lancées à partir des aide-mémoire.
Le fichier de contenu ci-dessous contient des commandes permettant d'ouvrir la vue Recherche et l'explorateur de packages.
<?xml version="1.0" encoding="UTF-8" ?> <cheatsheet title="Exemple de commandes dans un aide-mémoire"> <intro> <description>Un aide-mémoire affiche l'explorateur de packages</description> </intro> <item title="Afficher la vue Recherche"> <description>Cette étape comprenant une commande affiche la vue Recherche.</description> <command serialization= "org.eclipse.search.ui.views.SearchView"/> </item> <item title="Etape 2"> <description>Cette étape comprenant une commande et des paramètres, affiche l'explorateur de packages.</description> <command serialization="org.eclipse.ui.views.showView( org.eclipse.ui.views.showView.viewId= org.eclipse.jdt.ui.PackageExplorer)"/> <onCompletion> Fin de l'exemple de commande. </onCompletion> </item> </cheatsheet> |
Message d'achèvement |
Un message d'achèvement peut être ajouté à une étape dans un aide-mémoire qui s'affiche lorsque l'étape en question est terminée.
|
Aide-mémoire composites |
Les aide-mémoire sont nouveaux dans Eclipse 3.2.
Un aide-mémoire fournit des instructions relatives à un problème en le décomposant en plusieurs tâches, chacune possédant son propre aide-mémoire. Les tâches peuvent être organisées en groupes. Les aide-mémoire s'ouvrent dans la vue de l'aide-mémoire et sont lancées par le biais de la boîte de dialogue de sélection des aide-mémoire. Chaque tâche comporte une description et des hyperliens dirigent l'utilisateur à travers une série de tâches.
Les aide-mémoire composites possèdent une arborescence affichant les tâches ainsi que leur état. La sous-fenêtre de droite contient les tâches seules. Le contenu d'un aide-mémoire composite est défini dans un fichier XML. Le fichier de contenu peut indiquer quelles dépendances existent entre les tâches, si bien qu'une tâche ne démarre qu'une fois que les tâches préalablement requises sont achevées. |
Index des mot-clés de l'aide |
L'aide possède à présent un index des mot clés, dans lequel vous pouvez enregistrer des mot clés issus de votre documentation et fournir un lien vers un document d'aide correspondant. L'index est disponible à la fois dans la vue d'aide et la fenêtre d'aide (vue affichée ci-après).
Remarque : le contenu de l'index n'est pas encore disponible pour le kit SDK (l'index n'apparaîtra que si le contenu est disponible). |
Outil de conversion des documents d'aide XHTML |
L'environnement PDE dispose d'un nouvel utilitaire permettant de convertir rapidement des documents d'aide HTML de plug-in au format XHTML. Outre la conversion du format HTML au format XHTML, l'outil met à jour l'extension du nom de fichier, la table des matières et ajoute les liaisons nécessaires pour activer le contenu dynamique et la recherche de contenu XHTML. A l'issue de la conversion, les utilisateurs peuvent tirer partie des nouvelles fonctions d'aide de la version 3.2 telles que le filtrage du contenu dynamique, la réutilisation du contenu et la contribution de contenu dynamique qui requièrent tous le format XHTML.
Cette fonction peut être appelée via Outils PDE > Convertir les fichiers d'aide en XHTML dans le menu contextuel des projets de plug-in. |
Universal welcome |
S'appuyant sur l'expérience acquise auprès des implémentations de page de bienvenue concrètes, nous offrons désormais une page de bienvenue universelle configurable pouvant être utilisée par tous les produits. Les produits peuvent choisir entre 7 sections principales prédéfinies : Présentation, Premiers pas, Tutoriels, Exemples, Nouveautés, Ressources Web et Migrer (Le kit SDK Eclipse utilise quatre d'entre elles). Universal Welcome comporte des présentations de page configurables ainsi que des niveaux d'importance pour chaque contribution. Il est de plus compatible avec les thèmes.
Il offre également des présentations HTML et SWT, permettant ainsi une couverture intégrale de la plateforme.
Une page de préférence Page de bienvenue fournie par Universal Welcome affiche une personnalisation de la page de bienvenue aux utilisateurs finals, et peut être incluse dans n'importe quel produit souhaitant la proposer. Vous trouverez des informations supplémentaires relatives à cette fonction dans la section consacrée à la spécification Universal Welcome. |
Prise en charge de la configuration et des thèmes dans la page de bienvenue |
La structure d'introduction bénéficie d'une prise en charge de la configuration plus étendue. Un configurateur d'introduction intégrant un calcul simultané des enfants d'un groupe, la prise en charge de la substitution de variables et une résolution différée des chemins d'ancrage peut être ajouté. Cette prise en charge est fortement utilisée par Universal Welcome, mais peut également être utilisée par d'autres implémentations de bienvenue.
Les thèmes représentent des ensembles nommés de fichiers, de propriétés et d'images CSS qui définissent l'apparence du contenu de bienvenue. Universal Welcome utilise cette prise en charge en proposant une fonction de sélection des thèmes et deux thèmes concrets dans la version 3.2 : 'Circles' et 'Purple Mesh'. |
Prise en charge de l'espace de nom des points d'extension Ant |
Les points d'extension org.eclipse.ant.core antTasks et antTypes permettent maintenant la désignation d'un URI dans lequel doit résider la définition. Pour plus d'informations sur l'ensemble des modifications, voir le bogue 133190. |
Support d'équipe pour l'intégration des modèles logiques |
Une API permettant la participation des modèles logiques dans l'opération d'équipe a été ajoutée. Cette API permet aux fournisseurs d'équipe de :
|
Modifications SWT
|
|
Indicateur de tri dans les tableaux et les arborescences |
Les tableaux et les arborescences prennent en charge un indicateur du sens de tri dans l'en-tête de la colonne. Fragments SWT représentant le tri par colonne (simple) et le tri par colonne (tableau virtuel). |
Colonnes réorganisables dans les arborescences |
Dans Eclipse 3.1, nous avons ajouté la possibilité de réorganiser les colonnes dans un tableau. Cette prise en charge a été ajoutée à l'arborescence. L'ordre d'affichage des colonnes d'une arborescence peut être modifié en faisant glisser les en-têtes de colonnes ou peut également être défini par programmation. Fragment d'exemple. |
Prise en charge améliorée des thèmes XP |
Sous Windows XP, SWT peut désormais afficher l'arrière-plan texturé dans des dossiers. Les groupes, libellés, cases à cocher, etc. sont tous transparents pour cet arrière-plan. Les widgets personnalisés, comme StyledText, affichent également la bordure correcte du thème Windows XP appliqué. Consultez la section FAQ SWT pour obtenir des instructions relatives à l'exécution d'un thème Windows XP. |
Images GIF animées |
Les images GIF animées peuvent être enregistrées dans un fichier. Pour visualiser un exemple, reportez-vous au fragment SWT. |
Notification de l'affichage du bureau |
Lorsque les paramètres d'apparence comme le thème, la police ou les couleurs par défaut du bureau sont modifiés, un événement |
Notification Dispose |
Auparavant, lorsqu'un événement |
Infobulles pour les colonnes |
Du texte d'info-bulle peut être défini dans un en-tête de tableau ou de colonne à l'aide de |
CoolBar vertical |
Un composant coolbar vertical peut être créé à l'aide du style |
Prise en charge d'OpenGL |
Vous pouvez utiliser OpenGL dans les applications SWT. L'interface OpenGL utilise des bibliothèques OpenGL tierces comme LWJGL. Pour obtenir des exemples, reportez-vous aux fragments SWT |
Arborescence virtuelle |
L'arborescence prend désormais en charge le style SWT.VIRTUAL. Cela vous permet de créer rapidement des arborescences comportant de grandes quantités de données. Lorsque des éléments d'arborescence (TreeItems) sont requis, ceux-ci sont créés à la demande. Pour visualiser un exemple, reportez-vous au fragment SWT. |
Boutons avec une image et un texte |
Les boutons peuvent afficher une image ainsi que du texte. Cette fonction est prise en charge sous Windows XP, Mac OS X et GTK. |
HIView sous Mac OS X |
SWT utilise maintenant HIView sous Mac OS X. Cet outil résout bon nombre de problèmes de recadrage et de taille. |
Imbrication d'objets dans du texte |
TextLayout permet d'imbriquer des objets tels que des images ou des widgets dans du texte. Les mesures de glyphe, comme ascent, descent et width peuvent être indiquées. Les objets sont encapsulés avec le texte. Pour visualiser un exemple, reportez-vous au fragment SWT. |
Retrait, alignement et justification du texte |
TextLayout prend maintenant en charge le retrait, la justification et l'alignement du texte. Pour visualiser un exemple, reportez-vous au fragment SWT. |
Elévation de la ligne de base du texte |
TextLayout et TextStyle permettent maintenant d'indiquer l'élévation de la ligne de base pour une plage de texte. Pour visualiser un exemple, reportez-vous au fragment SWT. |
Prise en charge de la couleur HSB |
Une couleur peut être créée en spécifiant la nuance, la saturation et l'intensité. Des valeurs de nuance, de saturation et d'intensité peuvent être interrogées pour une couleur. Pour visualiser un exemple, reportez-vous au fragment SWT |
Alignement, retrait et justification de StyledText |
StyledText prend maintenant en charge le retrait, la justification et l'alignement du texte. Pour visualiser un exemple, reportez-vous au fragment SWT |
Objets imbriqués dans StyledText |
StyledText permet maintenant d'imbriquer des objets comme des images ou des widgets dans le texte. Les objets sont encapsulés avec le texte. Pour visualiser un exemple, reportez-vous au fragment SWT |
Image d'arrière-plan |
Une image d'arrière-plan peut être définie dans une commande. En outre, l'arrière-plan peut être hérité par les widgets enfants, tels que les libellés. Pour visualiser un exemple, reportez-vous au fragment SWT |
Chargement d'une image native |
Le constructeur |
Déplacement du texte |
Si l'événement Pour visualiser un exemple, reportez-vous au fragment SWT |
Nouveau widget ExpandBar |
Le widget ExpandBar permet à l'utilisateur d'afficher et de masquer des ensembles de widgets en cliquant sur un en-tête. Le widget ExpandBar contient plusieurs éléments possédant chacun une image et un titre dans l'en-tête. Pour visualiser un exemple, reportez-vous à ce fragment SWT. |
Puces dans StyledText |
StyledText peut à présent afficher des listes mises en forme dans différents styles, notamment des puces, des nombres, des majuscules ou des minuscules, ainsi que des styles définis par l'utilisateur. Pour visualiser un exemple, reportez-vous à ce fragment SWT. |
Arborescence tracée personnalisée |
Le widget Tree prend maintenant en charge le traçage personnalisé pour des cellules. Les applications peuvent améliorer la présentation native de l'arborescence grâce à l'affichage personnalisé des données. L'application contrôle la hauteur des lignes de sorte que plusieurs lignes de texte puissent être tracées. De plus, il peut présenter plusieurs images dans la même cellule, modifier la police ou les couleurs plusieurs fois et modifier la manière dont les sélections sont tracées. Pour obtenir des exemples, reportez-vous aux fragments suivants : |
Tableau tracé personnalisé |
Le widget Table prend maintenant en charge le traçage personnalisé pour des cellules. Tout en conservant la présentation du tableau, les utilisateurs peuvent personnaliser la manière dont les cellules sont tracées pour afficher les données sous une autre forme que du texte avec une image, pour afficher plusieurs lignes de texte dans la même cellule, pour remplacer le traçage de la sélection native, etc. Pour obtenir des exemples, reportez-vous aux fragments suivants : |
Effets de déplacement pour les widgets Table et Tree |
Les widgets Table et Tree fournissent désormais un retour d'informations visuel des éléments déplacés. |
Nouvelle classe Tooltip |
La nouvelle classe ToolTip permet d'afficher les infobulles qui ne sont pas directement associés à une commande. Ces infobulles peuvent être placés où vous le souhaitez, et peuvent prendre l'apparence par défaut de la plateforme ou l'apparence d'une bulle, comme le montre l'illustration ci-dessous. |