Accès aux services de l'API Tools

De RAD Studio
Aller à : navigation, rechercher

Remonter à Extension de l'EDI par l'utilisation de l'API Tools


Pour effectuer des actions, les packages qui étendent l'EDI doivent pouvoir accéder à ses éditeurs, fenêtres, menus, etc. C'est le rôle des interfaces de service.

Liste des interfaces de service courantes de l'API Tools

L'API Tools propose de nombreux services, dont des services action pour effectuer des actions sur les fichiers, des services d'édition pour accéder à l'éditeur de code source, des services de débogage pour accéder au débogueur, etc. Le tableau suivant résume quelques-unes des plus importantes interfaces de service :

Interface Description

INTAServices

Donne accès aux objets natifs de l'EDI : menu principal, liste d'actions, liste d'images et barres d'outils. Voir Utilisation d'objets natifs de l'EDI.

INTACodeEditorServices

Permet aux utilisateurs de s'inscrire aux événements de l'éditeur.

INTAWelcomePageBackgroundService

Interface d'implémentation de l'arrière-plan de la page d'accueil.

INTAWelcomePagePluginService

Fournit les services du Service de la page d'accueil.

IOTAActionServices

Effectue les actions de base sur les fichiers : ouverture, fermeture, enregistrement et rechargement d'un fichier.

IOTACodeCompletionServices

Donne accès à l'achèvement de code, ce qui permet à un expert d'installer un gestionnaire personnalisé d'achèvement de code.

IOTADebuggerServices

Donne accès au débogueur.

IOTAEditorServices

Donne accès à l'éditeur de code source et aux tampons internes.

IOTAIDEThemingServices

Donne accès aux StyleServices de l'EDI, vous permet de vérifier si les thèmes sont activés, vous permet d'enregistrer vos fiches pour qu'elles soient dessinées dans le même style que les fiches intégrées de l'EDI, etc.

IOTAKeyBindingServices

Permet à un expert de recenser des liaisons de clavier personnalisées.

IOTAKeyboardServices

Donne accès aux macros et liaisons clavier.

IOTAKeyboardDiagnostics

Inverse le débogage des frappes au clavier.

IOTAMessageServices

Donne accès à la vue des messages.

IOTAModuleServices

Donne accès aux fichiers ouverts.

IOTAPackageServices

Obtient le nom de tous les packages installés et de leurs composants.

IOTAServices

Services divers.

IOTASplashScreenServices

Interface de l'écran d'accueil

IOTAToDoServices

Donne accès à la liste des tâches, ce qui permet à un expert d'installer un gestionnaire personnalisé de la liste de tâches.

IOTAToolsFilter

Recense les notificateurs d'outils de filtrage.

IOTAWizardServices

Recense ou annule le recensement des experts.

Images High DPI dans l'API Tools

Toutes les API qui transmettent des images, comme les services d'écran d'accueil, la boîte de dialogue A propos, IDE Insight et d'autres éléments, prennent en charge des images haute résolution (High DPI).

Chaque interface possède une nouvelle surcharge de méthodes pertinentes qui prennent en charge TGraphicArray, défini comme un ensemble d'éléments TGraphic. Vous pouvez ainsi transmettre plusieurs résolutions d'une même icône, qui sont ajoutées à la collection d'images internes et utilisées avec une liste d'images virtuelles.

Bien que ces méthodes prennent en charge un large éventail d'éléments TGraphic, nous vous recommandons d'utiliser des images PNG.

Utilisation d'une interface de service

Pour utiliser une interface de service, transtypez la variable BorlandIDEServices dans le service souhaité à l'aide de la fonction globale Supports. Par exemple :

Delphi :

procedure SetKeystrokeDebugging(Debugging: Boolean);
var
  Dialog: IOTAKeyboardDiagnostics
begin
  if Supports(BorlandIDEServices, IOTAKeyboardDiagnostics, Dialog) then
    Dialog.KeyTracing := Debugging;
end;

C++ :

void SetKeystrokeDebugging(bool Debugging)
{
  _di_IOTAKeyboardDiagnostics Dialog;
  if (BorlandIDEServices->Supports(Dialog))
    Dialog->KeyTracing = Debugging;
}

Si votre expert a besoin d'utiliser fréquemment un service donné, vous pouvez conserver un pointeur sur ce service comme donnée membre de la classe de votre expert.

Rubriques

Les rubriques suivantes décrivent en détail l'utilisation des services d'interfaces de l'API Tools :

Voir aussi