# Marker Navigation Providers Extension Point

###### Identifier:

org.eclipse.gmf.runtime.common.ui.services.markerNavigationProviders

###### Description:

This extension point facilitates the configuration of providers for the marker navigation service (`org.eclipse.gmf.runtime.common.ui.services.marker.MarkerNavigationService`).

The marker navigation service enables Xtools clients to perform the navigation feedback when the user double clicks on or "goes to" a marker reference. The attribute values defined on the marker identify a location or locations in the resource that are of interest to the user. The feedback associated with navigation to that location depends upon the resource and its associated editors. The feedback might simply be selecting the appropriate object(s) specified by the marker's location or the feedback could involve a separate dialog to describe the reason for the marker (e.g., errors).

In order to make use of the marker navigation service, an Xtools client should define its own marker types and creates the marker instances on the appropriate resources. Markers created on the workspace root are not navigable.

###### Configuration Markup:

<!ELEMENT extension (MarkerNavigationProvider)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED

>

- point - The identifier of the extension point, e.g. `org.eclipse.gmf.runtime.common.ui.services.markerNavigationProviders`.
- id - The identifier of the extension, e.g. markerNavigationProviders.
- name - The name of the extension, e.g. %ext.markerNavigationProviders.

<!ELEMENT MarkerNavigationProvider (Priority , MarkerType+ , Policy?)>

<!ATTLIST MarkerNavigationProvider

class CDATA #REQUIRED

>

- class - The provider class. Providers implement service functionality (operations).

<!ELEMENT Priority EMPTY>

<!ATTLIST Priority

name (Lowest|Low|Medium|High|Highest)

>

- name - The name of the provider priority, i.e. Lowest, Low, Medium, High, or Highest.

<!ELEMENT MarkerType EMPTY>

<!ATTLIST MarkerType

name CDATA #REQUIRED

>

- name - The name of the marker type that the provider understands.

<!ELEMENT Policy EMPTY>

<!ATTLIST Policy

class CDATA #REQUIRED

>

- class - The provider policy class. Provider policies can optionally be associated with providers to determine whether the providers provide a given operation.

###### Examples:

Following is an example of a marker navigation provider extension:

       <extension
          id="markerNavigationProviders"
          name="%ext.markerNavigationProviders"
          point="org.eclipse.gmf.runtime.common.ui.services.markerNavigationProviders">
          <MarkerNavigationProvider
             class="org.eclipse.test.project.ui.providers.ModelerMarkerNavigationProvider">
             <Priority
                name="Highest">
             </Priority>
             <MarkerType
                name="org.eclipse.test.bookmark">
             </MarkerType>
          </MarkerNavigationProvider>
       </extension>

Copyright (c) 2003 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html