Wie kann eine Tridion-Befehlserweiterung herausfinden, welchen Befehl sie erweitert?

Mit der Benutzeroberfläche von Tridion können Sie bestimmte Befehle erweitern. Dies ist eine hervorragende Möglichkeit, das Verhalten bestimmter vorhandener Befehle zu ändern. In der Konfigurationsdatei des Editors geschieht dies mit einem Abschnitt wie diesem:

<ext:commands>
  <ext:command name="TextUnderline" extendingcommand="MyTextUnderline"/>
  <ext:command name="TextStrikethrough" extendingcommand="MyTextStrikethrough"/>

Ich arbeite an einer generischen Befehlserweiterungsklasse, mit der das Verhalten einer Reihe von Befehlen geändert werden kann:

<ext:commands>
  <ext:command name="TextUnderline" extendingcommand="MyCommandExtension"/>
  <ext:command name="TextStrikethrough" extendingcommand="MyCommandExtension"/>

In diesem zweiten Konfigurationsfragment haben wir dasselbeMyCommandExtension beide erweiternTextUnderline undTextStrikethrough.

Aber jetzt im JavaScript für meineMyCommandExtension, wie kann ich feststellen, welcher Befehl ursprünglich ausgelöst wurde?

MyCommandExtension.prototype.isAvailable = function (selection, pipeline) {
  ...
  console.log(this.properties.name);
  ...
};

In diesem Szenario ist diethis.properties.name wird als weniger-als-nützlich-aber-völlig-korrekt protokolliert:

"DisabledCommand"

Ich vermute, dass die Informationen irgendwo im Internet verfügbar sindpipeline Parameter, aber noch nicht gefunden.

Wie kann ich den ursprünglichen Befehl herausfinden?MyCommandExtension?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage