Die Tools API-Dienste verwenden

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Erweitern der IDE mit der Tools-API


Packages zum Erweitern der IDE müssen auf Editoren, Fenster, Menüs usw. zugreifen, um etwas Sinnvolles ausführen zu können. Diesen Zugriff vermitteln die Dienst-Interfaces.

Liste der allgemeinen Dienst-Interfaces der Tools-API

Die Tools API enthält viele Dienste, z. B. Aktionsdienste zur Dateiverarbeitung, Editor-Dienste für den Zugriff auf den Quelltext-Editor, Debugger-Dienste für die Arbeit mit dem Debugger usw. Die folgende Tabelle enthält einige der wichtigsten Dienst-Interfaces:

Interface Beschreibung

INTAServices

Ermöglicht den Zugriff auf IDE-Objekte: Hauptmenü, Aktionsliste, Bilderliste und Symbolleisten. Siehe Die Hauptobjekte der IDE verwenden.

IOTAActionServices

Führt grundlegende Dateioperationen aus: Öffnen, Schließen, Speichern und erneutes Laden einer Datei.

IOTACodeCompletionServices

Ermöglicht den Zugriff auf die Programmierhilfe, sodass ein Experte dafür eigene Manager installieren kann.

IOTADebuggerServices

Ermöglicht den Zugriff auf den Debugger.

IOTAEditorServices

Ermöglicht den Zugriff auf den Quelltext-Editor und dessen interne Puffer.

IOTAKeyBindingServices

Ermöglicht einem Experten die Registrierung eigener Tastaturbindungen.

IOTAKeyboardServices

Ermöglicht den Zugriff auf Tastaturmakros und -bindungen.

IOTAKeyboardDiagnostics

Schaltet das Debugging von Tastenanschlägen um.

IOTAMessageServices

Ermöglicht den Zugriff auf die Meldungsansicht.

IOTAModuleServices

Ermöglicht den Zugriff auf geöffnete Dateien.

IOTAPackageServices

Ermittelt die Namen aller installierten Packages und ihrer Komponenten.

IOTAServices

Verschiedene Dienste.

IOTAToDoServices

Ermöglicht den Zugriff auf die To-Do-Liste, sodass ein Experte eigene To-Do-Manager installieren kann.

IOTAToolsFilter

Registriert Notifier für Tool-Filter.

IOTAWizardServices

Registriert Experten oder hebt deren Registrierung auf.

Verwenden eines Dienst-Interface

Um ein Dienst-Interface zu verwenden, wandeln Sie die Variable BorlandIDEServices mit der globalen Funktion Supports in den gewünschten Dienst um. Zum Beispiel:

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;
}

Benötigt Ihr Experte einen bestimmten Dienst öfter, sollten Sie einen Zeiger auf diesen Dienst als Daten-Member Ihrer Experten-Klasse angeben.

Themen

Einige Spezialfälle beim Einsatz von Dienst-Interfaces der Tools-API werden in den folgenden Abschnitten behandelt:

Siehe auch