# orion.navigate.command

The `orion.navigate.command` service is used to contribute commands to the drop-down menu next to each file and folder. When the service is executed, the currently selected item in the Navigator is passed to the service's `run` method. The command can perform some operation on the provided selection, and optionally return an URL that the user will navigate to when clicking the command.

## Service methods

Implementations of `orion.navigate.command` must define the following function:

run(selection)
  Takes the navigator selection as an argument, and returns a URL string.

## Service attributes

Implementations of `orion.navigate.command` may define the following attributes:

image
  The URL of an icon to associate with the command
name
  The command text show to the user
id
  The command id
forceSingleItem
  A boolean attribute specifying whether the command supports only a single selected item or multiple items
href
  A boolean attribute indicating whether the command returns a link. If this attribute is specified and true, the command will render as a hyperlink and the user will navigate to the URL provided by the run method's return value.
tooltip
  Tooltip text shown to the user when they hover on the command

## Example

Here is a sample plug-in that contributes a link to a Google search for the selected file's name:

     var provider = new eclipse.PluginProvider({postInstallUrl:"/plugin/list.html"});
     provider.registerServiceProvider("orion.navigate.command", {
       run : function(item) {
         return "http://www.google.com/#q=" + item.Name;
       }
     }, {
       image: "http://www.google.com/favicon.ico",
       name: "Google Search",
       id: "sample.commands.sample4",
       forceSingleItem: true,
       href: true,
       tooltip: "Link to google search for this file name"
     });
     provider.connect();

When this plug-in is installed, the user will see the google search command in the Navigator menu as follows:

For more examples of contributing Navigator commands see the sample commands plugin.