<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>

<!--

   Copyright (c) 2009 Thales Corporate Services S.A.S.
   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
  
   Contributors:
       Thales Corporate Services S.A.S - initial API and implementation

-->

<plugin>

  <!-- ================================================================================= -->
  <!-- JetPattern Model                                                                  -->
  <!-- ================================================================================= -->

  <extension 
    point="org.eclipse.emf.edit.itemProviderAdapterFactories"
  >
    <factory
      uri="http://www.eclipse.org/egf/1.0.0/javapattern"
      class="org.eclipse.egf.model.javapattern.provider.JavaPatternItemProviderAdapterFactory"
      supportedTypes=
        "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
         org.eclipse.emf.edit.provider.IStructuredItemContentProvider
         org.eclipse.emf.edit.provider.ITreeItemContentProvider
         org.eclipse.emf.edit.provider.IItemLabelProvider
         org.eclipse.emf.edit.provider.IItemPropertySource
         org.eclipse.emf.edit.provider.ITableItemLabelProvider
         org.eclipse.emf.edit.provider.ITableItemColorProvider
         org.eclipse.emf.edit.provider.ITableItemFontProvider
         org.eclipse.emf.edit.provider.IItemColorProvider
         org.eclipse.emf.edit.provider.IItemFontProvider"
    />
   </extension>

  <extension 
    point="org.eclipse.emf.edit.childCreationExtenders"
  >
    <extender
      uri="http://www.eclipse.org/egf/1.0.0/pattern"
      class="org.eclipse.egf.model.javapattern.provider.JavaPatternItemProviderAdapterFactory$PatternChildCreationExtender"
    />
  </extension>

</plugin>
