habe ich es geschafft, indem Sie die Artikel erwähnt eine neue Ribbon-Gruppe erhalten in How to create the custom buttons horizontally one below the other in ribbon of TridionJavascript auf Ribbon-Gruppe
Ich bin jetzt ein Javascript ausgeführt wird, wenn sich etwas ändert in der Gui (versteckt/zeigt Tasten) zu erhalten versuchen.
Ich habe dies in der Konfiguration:
<!-- In the cfg:groups part -->
<cfg:group name="ClientGuiMods.ContentGroup" description="">
<cfg:fileset>
<cfg:file type="script">/Scripts/CreateRibbonGroup.js</cfg:file>
</cfg:fileset>
<cfg:dependencies>
<cfg:dependency>Tridion.Web.UI.Editors.CME</cfg:dependency>
</cfg:dependencies>
</cfg:group>
<!-- In the ribbontoolbars add part -->
<ext:extension pageid="HomePage" name="Content" assignid="ContentGroupId">
<ext:group>~/Scripts/ContentGroup.ascx</ext:group>
<ext:dependencies>
<cfg:dependency>ClientGuiMods.ContentGroup</cfg:dependency>
</ext:dependencies>
<ext:apply>
<ext:view name="DashboardView">
<ext:control id="DashboardToolbar" />
</ext:view>
</ext:apply>
</ext:extension>
Und dies in der Javascript:
Type.registerNamespace("ClientGuiMods");
ClientGuiMods.ContentGroup = function ContentGroup(element)
{
console.log('RibbonGroupCreated');
Tridion.OO.enableInterface(this, "ClientGuiMods.ContentGroup");
this.addInterface("Tridion.Controls.RibbonItemsGroup", [element]);
};
ich verschiedene Argumente für this.addInterface() versucht haben, aber es wird nie genannt. Ist das der richtige Weg? Oder gibt es vielleicht einen anderen Weg, um ein Skript in der Home-Multifunktionsleisten-Symbolleiste aufzurufen?
Es ist überhaupt nicht klar, was Sie zu tun versuchen. Was meinst du mit "Ich versuche jetzt, ein Javascript laufen zu lassen, wenn sich etwas im Gui ändert (Schaltflächen verstecken/anzeigen)."? Normalerweise würden Sie einen Befehl implementieren, den Sie dann an eine Schaltfläche anschließen würden.Wenn der Befehl aktiviert ist, wird die Schaltfläche aktiviert usw. Wenn Sie auf die Schaltfläche klicken, wird der Befehl ausgeführt. Die Schaltflächen werden regelmäßig automatisch aktualisiert, z. B. wenn sich die Auswahl in der Liste ändert. –
@PeterKjaer: Ich habe eine Multifunktionsleisten-Schaltflächengruppe, die aus einem Ascx besteht. Diesen Teil habe ich geschafft, indem ich dem Artikel von Bart folgte. Ich habe jetzt eine Ribbon-Button-Gruppe mit einigen Buttons, die auch auf dem Home-Bereich sind und Bänder erstellen. Ich versuche nun, die nicht verfügbaren Schaltflächen (oder Befehle) zu verbergen, die auf der CreateRibbonPage vorkommen. Der Unterschied zu CreateRibbonPage ist, dass ich das alles in einer Ribbon-Gruppe mache. Ich könnte dies auf jedem Knopf tun, aber dann müsste ich wahrscheinlich jeden Knopf einzeln implementieren. –
Bottomline ist ich möchte das gleiche erreichen, was ich kann auf einer Multifunktionsleiste Seite, aber nur auf einer Multifunktionsleiste Gruppe. Die Lösung Ich habe Hooks in die Ribbon-Seite eingefügt, wo die Ribbon-Gruppe hinzugefügt wurde (Home in diesem Beispiel) und führe die Logik hier aus. Ich bin offen für eine bessere Lösung. –