Template Extension point

Identifier:
org.eclipse.cdt.core.templates

Since:
CDT 4.0

Description:
This templates extension point facilitates the users to contribute their Template XMLs to the Template Engine plug-in.

Configuration Markup:

<!ELEMENT extension (template+ , category*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>

Extension point added to Template Engine plugin. Any plugin, which intends to contribute XML templates to the Template Engine must extend this extension point, and add the template element.



<!ELEMENT template (toolChain* , parentCategory*)>

<!ATTLIST template

id                                  CDATA #REQUIRED

location                            CDATA #REQUIRED

projectType                         CDATA #IMPLIED

isCategory                          (true | false)

filterPattern                       CDATA #IMPLIED

pagesAfterTemplateSelectionProvider CDATA #IMPLIED>

By adding the templates extension point the users can contribute their Template XMLs to the Template Engine plugin.



<!ELEMENT toolChain EMPTY>

<!ATTLIST toolChain

id CDATA #REQUIRED>

This element is used to reference an existing toolchain by its unique identifier.



<!ELEMENT category (parentCategory*)>

<!ATTLIST category

id    CDATA #REQUIRED

label CDATA #REQUIRED>

Used to arrange templates in a hierarchy in the UI.



<!ELEMENT parentCategory EMPTY>

<!ATTLIST parentCategory

id CDATA #REQUIRED>

id of parent category.



Examples:
The following is an example of the extension point usage:


   <extension point="org.eclipse.cdt.core.templates">
      <template
         id="org.foobar.templates.MyExampleTemplate"
         location="templates/MyExampleTemplate/template.xml"
         projectType="org.eclipse.cdt.build.core.buildArtefactType.exe"
         filterPattern=".*">
      </template>
   </extension>
For more details on how to define your own templates, please check examples provided under org.eclipse.cdt.ui.templateengine

Supplied Implementation:
An implementation of this extension point is supplied in org.eclipse.cdt.templateengine


Copyright (c) 2007 Symbian Software Limited and others. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ SPDX-License-Identifier: EPL-2.0 Contributors: Symbian - Initial API and implementation