You can create a command plugin for the global toolbar in the Episerver user interface. To add commands to the global toolbar, create a Command Provider for the toolbar and add it to the global command registry. The global command registry maps command providers against keys.
Creating a command provider for the global toolbar
The following example shows how to create a provider that adds three commands to the areas inside the global toolbar.
JavaScript
define([
"dojo/_base/declare",
"dijit/form/Button",
"dijit/form/ToggleButton",
"epi-cms/component/command/_GlobalToolbarCommandProvider",
"samples/TestCommand",
"samples/MyToggleCommand"
], function (declare, Button, ToggleButton, _GlobalToolbarCommandProvider, TestCommand, MyToggleCommand) {
return declare([_GlobalToolbarCommandProvider], {
constructor: function () {
this.inherited(arguments);
this.addToLeading(new TestCommand({
label:"First command"
}), {showLabel:true, widget:Button});
this.addToCenter(new MyToggleCommand({
label:"Second command"
}), {showLabel:true, widget:ToggleButton});
this.addToTrailing(new TestCommand({
label:"Third command"
}), {showLabel:true, widget:Button});
}
});
});
The following code shows the test commands
JavaScript
define([
"dojo/_base/declare",
"epi/shell/command/_Command"
],
function (declare, _Command) {
return declare([_Command], {
name: "Test",
label: "Test command",
tooltip: "Click to execute me",
iconClass: "dijitIconNewPage",
canExecute: true,
_execute: function () {
alert("label:", this.label);
}
});
});
define([
"dojo/_base/declare",
"epi/shell/command/ToggleCommand"
],
function (declare, _Command) {
return declare([ToggleCommand], {
name: "Test",
label: "Click here to toggle",
tooltip: "Click to toggle me",
iconClass: "dijitIconNewPage",
canExecute: true,
_execute: function () {
alert("Label: " + this.label);
}
});
});
For the system to find your command provider, you must register it in the global command registry.
JavaScript
var commandregistry = dependency.resolve("epi.globalcommandregistry");
commandregistry.registerProvider("epi.cms.globalToolbar", new MyCommandProvider());
Do you find this information helpful? Please log in to provide feedback.