Fenêtre Explorateur de classes C++

De RAD Studio
Aller à : navigation, rechercher

Remonter à Menu Voir

Remarque: The C++ Class Explorer feature is only supported for the C++ classic compiler.

View > C++ Class Explorer

Vous permet d'effectuer les actions suivantes :

  • Examiner la structure des classes de votre projet
  • Examiner dans le source la déclaration d'un élément sélectionné.
  • Créer de nouveaux champs, méthodes et propriétés dans les unités managées de votre projet

Les trois volets de l'explorateur de classes C++

La fenêtre Explorateur de classes C++ est divisée en trois volets (voir une capture d'écran présentant le volet Graphe dans la rubrique Présentation de l'explorateur de classes C++) :

Volet Emplacement Description

Liste des types

Volet de gauche de la fenêtre Explorateur de classes C++

Présente une structure arborescente des types, classes, interfaces et espaces de nommage déclarés directement dans votre projet. Vous trouverez plus loin dans cette rubrique d'aide de plus amples informations sur la liste des types, notamment les descriptions des icônes d'affichage, des boutons de barre d'outils et le menu contextuel de la liste des types.

Vue Membres

Volet de droite supérieur

Affiche les membres (champs, propriétés et méthodes) des types actuellement sélectionnés dans la liste des types. Dans la vue Membres, les icônes des membres de classes peuvent comporter des "décorateurs" supplémentaires, comme suit :

  • Lock.png - Les icônes des membres de classes privés ont un décorateur "verrou" (tel que MemberPrivate.png pour une méthode privée).
  • Key.png - Les icônes des membres de classes protégés ont un décorateur "clé" (tel que MemberProtected.png pour une méthode protégée).

Fenêtre Source/Références/Graphe

Volet de droite inférieur

Les trois onglets affichent des informations différentes, comme suit :

  • L'onglet Source affiche le code source et se concentre sur la déclaration du dernier élément sélectionné dans la liste des types.
  • L'onglet Références liste les références aux symboles actuellement sélectionnés dans la liste des types. Pour chaque symbole
    • ClExplGoToDecl.png - Indique la déclaration du symbole (typiquement la première entrée).
    • ClExplGoToDef.png - Indique la définition, typiquement la deuxième entrée (si le compilateur a rencontré une définition).
    • ClExplReference.png - Indique les références au symbole, donnés par le nom du fichier et le numéro de ligne du source.
Un double-clic sur une entrée de l'onglet Références ouvre la fenêtre Editeur de code et navigue jusqu'à la référence.
  • L'onglet Graphe affiche des informations graphiques sur l'élément actuellement sélectionné dans la liste des types. Par exemple, si vous sélectionnez quelques classes dans la liste des types, l'onglet Graphe affiche la hiérarchie des symboles sélectionnés. Voir l'illustration du volet Graphe dans la rubrique Présentation de l'explorateur de classes C++.

Structure de l'arborescence de la liste des types

La liste des types affiche tous les types, classes, interfaces et espaces de nommage déclarés dans les unités directement utilisées dans votre projet. Par défaut, les noeuds (unités, classes, interfaces, types) de l'arborescence sont affichés dans l'ordre alphabétique.

Pour développer ou replier les noeuds de la liste des types, cliquez sur les noeuds de l'arborescence :

  • NodePlus.png indique un noeud replié. (Cliquer sur l'icône ouvre le noeud.)
  • NodeMinus.png indique un noeud développé. (Cliquer sur l'icône ferme le noeud.)

Si aucune icône n'est affichée devant un noeud, le noeud est un noeud terminal, c'est-à-dire qu'il n'a pas de sous-noeuds qui peuvent être développés ou repliés.

Cliquer sur un noeud (ou se déplacer d'un noeud à un autre au moyen des touches fléchées) charge le fichier source correspondant dans la fenêtre Source en lecture seule et focalise la fenêtre sur la déclaration de l'élément sélectionné.

Icônes utilisées dans la liste des types et la vue Membres

Les icônes suivantes sont utilisées à la fois dans la liste des types et la vue Membres :

Icône Description Icône Description

Icône Plus

Noeud replié

Icône Moins

Noeud développé

Fichier source

Fichier source

Icône d'espace de noms

Espace de nommage

Icône de classe

Classe

Icône de l'interface

Interface1

Icône Méthode ou Opération

Méthode ou opération2

Icône Champ ou Variable

Champ ou variable3

Icône de la propriété

Propriété

Icône d'événement

Evénement

Icône Typedef

Typedef4

Icône du Union

Union

Icône d'énumération

Enumération4

Icône de membre d'énumération

Membre d'énumération

Icône Structure

Structure

Icône de groupe

Groupe (groupe par défaut ou groupe personnalisé)

Icône Décorateur pour un membre privé

Membre de classe privé

Icône Décorateur pour un membre protégé

Membre de classe protégé

Remarques:
  1. Par défaut, une interface est définie comme une classe/structure qui ne contient pas de données et contient seulement des méthodes virtuelles pures. Vous pouvez modifier la définition d'une interface à des fins de visualisation en définissant les options de la boîte de dialogue Outils > Options > Options C++ > Explorateur de classes. L'option "Les interfaces doivent dériver de IUnknown" détermine si les types ActiveX/COM sont affichés comme des interfaces, et vous pouvez désactiver l'option "Afficher les classes abstraites comme des interfaces".
  2. La même icône est utilisée pour une méthode, une opération, une procédure ou une fonction. Les méthodes ne peuvent être ajoutées (en utilisant le bouton ClExplAddMethod.png) qu'à une unité managée.
  3. Les champs ne peuvent être ajoutés (en utilisant le bouton ClExplAddField.png) qu'à une unité managée.
  4. Vous pouvez contrôler l'affichage des typedefs et énumérations en utilisant les boutons ClExplTypedef.png et ClExplEnum.png, ainsi que la boîte de dialogue Propriétés.

Champ Chercher de la liste des typesClExplSearchWGlyph.png

Au sommet de la liste des types se trouve un champ de recherche incrémentielle, indiqué par une icône en forme de loupe Loupe Chercher.

Au fur et à mesure que vous entrez une chaîne dans le champ de recherche, la liste des types s'ajuste pour n'afficher que les éléments qui contiennent cette chaîne. La recherche établit une correspondance avec les noms de tous les éléments contenus (tels que les membres d'une classe), même si le nom de la classe lui-même ne contient pas la chaîne. Le champ de recherche comporte un menu déroulant qui vous permet de contrôler certains aspects cruciaux de la recherche. Cliquez sur l'icône Chercher pour afficher le menu suivant :

Elément Description

Tous

Fait correspondre tout élément qui contient la chaîne de recherche, même si la chaîne apparaît dans un paramètre ou un ancêtre. Par défaut, cette option est activée.

Nom seulement

Ne fait correspondre que les types dont les noms contiennent la chaîne de recherche. Par défaut, cette option est désactivée.

Insensible à la casse

Nécessite que les éléments doivent correspondre à la chaîne de recherche sans se soucier de la casse. Par défaut, cette option est activée (insensible à la casse).

Icônes de la barre d'outils

Les icônes suivantes apparaissent sur les boutons de la barre d'outils de l'explorateur de classes :

Icône Description

Trier par types

Trier par types, vers l'avant ou dans l'ordre inverse. ClExplSortType.png Trie les divers types dans l'ordre suivant :

  • Classes
  • Interfaces
  • Structures
  • Enumérations
  • Typedefs
  • Méthodes
  • Variables

Le bouton d'inversion ClExplSortByTypes.png trie les divers types dans l'ordre inverse. Dans les deux cas, la liste des types affiche les types dans l'ordre alphabétique (la vue par défaut).

Tri alphabétique

Trier alphabétiquement par nom, vers l'avant (A-Z). Le bouton d'inversion ClExplSortAlph.png trie vers l'arrière (Z-A).

Ne pas grouper les types

Ne pas grouper les types. Les types sont présentés selon un affichage linéaire, en tant que noeuds racine, au lieu d'être associés à des noeuds parent (noeuds espace de nommage, fichier ou groupe de fichiers personnalisé).

Grouper les types par hiérarchies d'héritage

Grouper les types par hiérarchies d'héritage. Les types sont présentés sous leurs noeuds de type de base ; ou linéairement en l'absence de type de base.

Grouper par espace de nommage

Grouper les types par leurs espaces de nommage. Chaque noeud est représenté par une icône espace de nommage GroupTypesByNamespace.png, et les types de l'espace de nommage sont listés sous cette icône.

Grouper les types par fichiers

Grouper les types par leurs fichiers. Affiche une icône fichier (ClExplFile.png) pour chaque fichier (.cpp, .h ou .hpp) et liste les éléments définis dans chaque fichier.

Configurer les groupes de fichiers personnalisés

Grouper les types au moyen de groupes de fichiers personnalisés. Utilise les groupes d'affichage par défaut, ainsi que les groupes personnalisés que vous avez créés.

Actualiser la liste des types

Actualiser la liste des types. Analyse les fichiers source modifiés et met à jour la liste des types.

Icône Annuler

Annuler les compilations de navigateur actives.

Effacer les informations

Effacer toutes les informations de navigateur.

Icône Ajouter une méthode

Ajouter une nouvelle méthode à cette classe. Ouvre la boîte de dialogue Ajouter une méthode (C++). Seulement activée pour les unités managées.

Icône Ajouter un champ

Ajouter un nouveau champ à cette classe. Ouvre la boîte de dialogue Ajouter un champ (C++). Seulement activée pour les unités managées.

Icône Ajouter une propriété

Ajouter une nouvelle propriété à cette classe. Ouvre la boîte de dialogue Ajouter une propriété (C++). Seulement activée pour les unités managées.

Filtrer les types de fichiers

Configurer les groupes de fichiers personnalisés. Ouvre la boîte de dialogue Groupes de fichiers de l'explorateur, vous permettant d'effectuer les actions suivantes :

  • Créer vos propres groupes de fichiers dans la liste des types
  • Activer/désactiver l'affichage de groupes spécifiques
  • Etablir l'ordre d'affichage des groupes dans la liste des types

Afficher les Typedefs

Afficher les typedefs de niveau supérieur dans la liste des types. Par défaut, cette option est désactivée.

Afficher les énumérations

Afficher les énumérations de niveau supérieur dans la liste des types. Par défaut, cette option est activée (affichage).

Afficher les fonctions dans la liste des types

Afficher les fonctions de niveau supérieur dans la liste des types. Par défaut, cette option est désactivée.

Afficher les variables dans la liste des types

Afficher les variables (globales) de niveau supérieur dans la liste des types. Par défaut, cette option est désactivée.

Afficher les membres hérités

Inclure les membres hérités. Par défaut, la vue Membres inclut les membres de classe hérités en affichant les membres du type ancêtre au-dessous des membres du type sélectionné. Par exemple, TForm3 est suivi par son type ancêtre, TForm. Quand ce bouton n'est pas appuyé, seuls les membres définis localement sont affichés. Par défaut, cette option est activée.

Aller à la déclaration

Aller à la déclaration du noeud sélectionné. Ouvre le source dans l'éditeur de code et met en surbrillance la déclaration de l'élément sélectionné.

Aller à la définition

Aller à la définition de cette déclaration. Ouvre le source dans l'éditeur de code et met en surbrillance la définition de l'élément sélectionné. Le compilateur C++ préserve des informations, telles que : quand chaque symbole est défini et quand il est par la suite utilisé. Ces informations sont utilisées pour effectuer la commande Aller à la définition.

Menu contextuel de la liste des types

Cliquer avec le bouton droit sur un élément de la liste des types affiche les commandes de menu contextuel suivantes.

Remarque: Les commandes de menu contextuel sont seulement activées pour les éléments qui sont déclarés dans une unité managée ; c'est-à-dire que les fichiers .CPP et .H doivent appartenir au projet que vous explorez avec l'explorateur de classes C++. Par exemple, vous ne pouvez pas ajouter des champs, des méthodes ou des propriétés aux éléments VCL ou FireMonkey avec l'explorateur de classes C++.
Nom Description

Aller à la déclaration

Ouvre la fenêtre Editeur de code et active la focalisation sur la déclaration de l'élément sélectionné. Activée seulement quand un élément déclaré dans une unité managée est sélectionné.

Aller à la définition

Ouvre la fenêtre Editeur de code et active la focalisation sur la définition de l'élément sélectionné. Activée seulement quand un élément défini dans une unité managée est sélectionné.

Tout replier

Ferme tous les noeuds, dossiers ou groupes qui sont ouverts dans la liste des types.

Groupe

Spécifie le groupage à utiliser dans l'explorateur de classes. Sélectionnez l'une des options suivantes :

  • Fichier (fichier unité, fichier .cpp)
  • Espace de nommage
  • Groupes personnalisés (VCL, FireMonkey, RTL, <votreProjet>, et ainsi de suite)
  • Aucun (ne pas grouper)

Afficher

Spécifie que certains éléments sont affichés dans, ou omis du niveau supérieur de la vue Explorateur de classes. Sélectionnez l'une des options suivantes :

  • Typedefs
  • Enumérations

L'inclusion d'un ou de ces deux éléments dans la vue, ou leur élimination de la vue, peut vous permettre de voir plus de détails sur les éléments spécifiques que vous voulez visualiser.

Remarque: Quand l'un de ces éléments est désactivé, les éléments du type exclus sont toujours visibles dans la structure de la classe. En effet, seuls les éléments de niveau supérieur sont affectés par la commande Afficher.

Trier

Spécifie le tri à utiliser dans l'explorateur de classes. Vous pouvez trier tous les éléments alphabétiquement ou par type. Sélectionnez l'une des options suivantes :

  • Alphabétiquement
  • Type

Ajouter un champ

Ouvre la boîte de dialogue Ajouter un champ, vous permettant d'ajouter un nouveau champ à l'élément sélectionné. Activée seulement quand un élément déclaré dans une unité managée est sélectionné, et si vous détenez un droit d'accès en écriture au source.

Ajouter une méthode

Ouvre la boîte de dialogue Ajouter une méthode, vous permettant d'ajouter une nouvelle méthode à l'élément sélectionné. Activée seulement quand un élément déclaré dans une unité managée est sélectionné, et si vous détenez un droit d'accès en écriture au source.

Ajouter une propriété

Ouvre la boîte de dialogue Ajouter une propriété, vous permettant d'ajouter une nouvelle propriété à l'élément sélectionné. Activée seulement quand un élément déclaré dans une unité managée est sélectionné, et si vous détenez un droit d'accès en écriture au source.

Propriétés

Ouvre la boîte de dialogue Propriétés (la même boîte de dialogue que celle obtenue par Outils > Options > Options d'environnement > Options C++ > Explorateur de classes). Vous pouvez définir trois types d'options :

  • Options de compilation du navigateur
    • Activer les en-têtes précompilés
    • Afficher les messages du compilateur dans la 'Vue Message'
  • Options de ligne de commande Personnaliser pour le compilateur C++
  • Options Types présentés
    • Afficher en tant qu'interface seulement les classes ayant seulement des fonctions virtuelles pures
    • Et afficher seulement les classes qui héritent de IUnknown
  • Options Chercher
    • Recherche insensible à la casse
    • Autoriser les caractères génériques (?*)

Voir aussi